@sigmashake/ssg 0.29.76 → 0.29.77

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,37 +1,37 @@
1
- var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var l=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function ee(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var k=/\/+/g;function A(e,t){return typeof e==`object`&&e&&e.key!=null?ee(``+e.key):t.toString(36)}function j(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function te(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,te(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+A(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(k,`$&/`)+`/`),te(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(k,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+A(a,u),c+=te(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+A(a,u++),c+=te(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return te(j(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function ne(e,t,n){if(e==null)return e;var r=[],i=0;return te(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function re(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var M=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},N={map:ne,forEach:function(e,t,n){ne(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ne(e,function(){t++}),t},toArray:function(e){return ne(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=N,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:re}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.4`})),u=o(((e,t)=>{t.exports=l()})),d=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&A(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&A(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var ee=new MessageChannel,k=ee.port2;ee.port1.onmessage=D,O=function(){k.postMessage(null)}}else O=function(){_(D,0)};function A(t,n){C=_(function(){t(e.unstable_now())},n)}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(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,A(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),f=o(((e,t)=>{t.exports=d()})),p=o((e=>{var t=u();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.4`})),m=o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=p()})),h=o((e=>{var t=f(),n=u(),r=m();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function d(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function p(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=p(e),t!==null)return t;e=e.sibling}return null}var h=Object.assign,g=Symbol.for(`react.element`),_=Symbol.for(`react.transitional.element`),v=Symbol.for(`react.portal`),y=Symbol.for(`react.fragment`),b=Symbol.for(`react.strict_mode`),x=Symbol.for(`react.profiler`),S=Symbol.for(`react.consumer`),C=Symbol.for(`react.context`),w=Symbol.for(`react.forward_ref`),T=Symbol.for(`react.suspense`),E=Symbol.for(`react.suspense_list`),D=Symbol.for(`react.memo`),O=Symbol.for(`react.lazy`),ee=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),A=Symbol.iterator;function j(e){return typeof e!=`object`||!e?null:(e=A&&e[A]||e[`@@iterator`],typeof e==`function`?e:null)}var te=Symbol.for(`react.client.reference`);function ne(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===te?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case y:return`Fragment`;case x:return`Profiler`;case b:return`StrictMode`;case T:return`Suspense`;case E:return`SuspenseList`;case ee:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case v:return`Portal`;case C:return e.displayName||`Context`;case S:return(e._context.displayName||`Context`)+`.Consumer`;case w:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case D:return t=e.displayName||null,t===null?ne(e.type)||`Memo`:t;case O:t=e._payload,e=e._init;try{return ne(e(t))}catch{}}return null}var re=Array.isArray,M=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ie={pending:!1,data:null,method:null,action:null},ae=[],oe=-1;function P(e){return{current:e}}function F(e){0>oe||(e.current=ae[oe],ae[oe]=null,oe--)}function I(e,t){oe++,ae[oe]=e.current,e.current=t}var L=P(null),R=P(null),se=P(null),ce=P(null);function le(e,t){switch(I(se,t),I(R,e),I(L,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}F(L),I(L,e)}function ue(){F(L),F(R),F(se)}function de(e){e.memoizedState!==null&&I(ce,e);var t=L.current,n=Hd(t,e.type);t!==n&&(I(R,e),I(L,n))}function fe(e){R.current===e&&(F(L),F(R)),ce.current===e&&(F(ce),Qf._currentValue=ie)}var pe,me;function he(e){if(pe===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);pe=t&&t[1]||``,me=-1<e.stack.indexOf(`
1
+ var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},c=(n,r,a)=>(a=n==null?{}:e(i(n)),s(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var l=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function ee(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var k=/\/+/g;function A(e,t){return typeof e==`object`&&e&&e.key!=null?ee(``+e.key):t.toString(36)}function j(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function te(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,te(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+A(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(k,`$&/`)+`/`),te(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(k,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+A(a,u),c+=te(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+A(a,u++),c+=te(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return te(j(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function ne(e,t,n){if(e==null)return e;var r=[],i=0;return te(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function re(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var M=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},N={map:ne,forEach:function(e,t,n){ne(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ne(e,function(){t++}),t},toArray:function(e){return ne(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=N,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:re}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.4`})),u=o(((e,t)=>{t.exports=l()})),d=o((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m)if(n(c)!==null)m=!0,S||(S=!0,O());else{var t=n(l);t!==null&&A(x,t.startTime-e)}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function D(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&A(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?O():S=!1}}}var O;if(typeof y==`function`)O=function(){y(D)};else if(typeof MessageChannel<`u`){var ee=new MessageChannel,k=ee.port2;ee.port1.onmessage=D,O=function(){k.postMessage(null)}}else O=function(){_(D,0)};function A(t,n){C=_(function(){t(e.unstable_now())},n)}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(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,A(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,O()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),f=o(((e,t)=>{t.exports=d()})),p=o((e=>{var t=u();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.4`})),m=o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=p()})),h=o((e=>{var t=f(),n=u(),r=m();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function d(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function p(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=p(e),t!==null)return t;e=e.sibling}return null}var h=Object.assign,g=Symbol.for(`react.element`),_=Symbol.for(`react.transitional.element`),v=Symbol.for(`react.portal`),y=Symbol.for(`react.fragment`),b=Symbol.for(`react.strict_mode`),x=Symbol.for(`react.profiler`),S=Symbol.for(`react.consumer`),C=Symbol.for(`react.context`),w=Symbol.for(`react.forward_ref`),T=Symbol.for(`react.suspense`),E=Symbol.for(`react.suspense_list`),D=Symbol.for(`react.memo`),O=Symbol.for(`react.lazy`),ee=Symbol.for(`react.activity`),k=Symbol.for(`react.memo_cache_sentinel`),A=Symbol.iterator;function j(e){return typeof e!=`object`||!e?null:(e=A&&e[A]||e[`@@iterator`],typeof e==`function`?e:null)}var te=Symbol.for(`react.client.reference`);function ne(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===te?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case y:return`Fragment`;case x:return`Profiler`;case b:return`StrictMode`;case T:return`Suspense`;case E:return`SuspenseList`;case ee:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case v:return`Portal`;case C:return e.displayName||`Context`;case S:return(e._context.displayName||`Context`)+`.Consumer`;case w:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case D:return t=e.displayName||null,t===null?ne(e.type)||`Memo`:t;case O:t=e._payload,e=e._init;try{return ne(e(t))}catch{}}return null}var re=Array.isArray,M=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,ie={pending:!1,data:null,method:null,action:null},ae=[],oe=-1;function P(e){return{current:e}}function F(e){0>oe||(e.current=ae[oe],ae[oe]=null,oe--)}function I(e,t){oe++,ae[oe]=e.current,e.current=t}var se=P(null),L=P(null),ce=P(null),le=P(null);function ue(e,t){switch(I(ce,t),I(L,e),I(se,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}F(se),I(se,e)}function de(){F(se),F(L),F(ce)}function fe(e){e.memoizedState!==null&&I(le,e);var t=se.current,n=Hd(t,e.type);t!==n&&(I(L,e),I(se,n))}function pe(e){L.current===e&&(F(se),F(L)),le.current===e&&(F(le),Qf._currentValue=ie)}var me,he;function R(e){if(me===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);me=t&&t[1]||``,he=-1<e.stack.indexOf(`
2
2
  at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
3
- `+pe+e+me}var ge=!1;function z(e,t){if(!e||ge)return``;ge=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
3
+ `+me+e+he}var ge=!1;function _e(e,t){if(!e||ge)return``;ge=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,`props`,{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,`name`,{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
4
4
  `),l=s.split(`
5
5
  `);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
6
- `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{ge=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?he(n):``}function _e(e,t){switch(e.tag){case 26:case 27:case 5:return he(e.type);case 16:return he(`Lazy`);case 13:return e.child!==t&&t!==null?he(`Suspense Fallback`):he(`Suspense`);case 19:return he(`SuspenseList`);case 0:case 15:return z(e.type,!1);case 11:return z(e.type.render,!1);case 1:return z(e.type,!0);case 31:return he(`Activity`);default:return``}}function ve(e){try{var t=``,n=null;do t+=_e(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
6
+ `+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{ge=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?R(n):``}function ve(e,t){switch(e.tag){case 26:case 27:case 5:return R(e.type);case 16:return R(`Lazy`);case 13:return e.child!==t&&t!==null?R(`Suspense Fallback`):R(`Suspense`);case 19:return R(`SuspenseList`);case 0:case 15:return _e(e.type,!1);case 11:return _e(e.type.render,!1);case 1:return _e(e.type,!0);case 31:return R(`Activity`);default:return``}}function ye(e){try{var t=``,n=null;do t+=ve(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
7
7
  Error generating stack: `+e.message+`
8
- `+e.stack}}var ye=Object.prototype.hasOwnProperty,be=t.unstable_scheduleCallback,xe=t.unstable_cancelCallback,Se=t.unstable_shouldYield,Ce=t.unstable_requestPaint,we=t.unstable_now,Te=t.unstable_getCurrentPriorityLevel,Ee=t.unstable_ImmediatePriority,De=t.unstable_UserBlockingPriority,Oe=t.unstable_NormalPriority,B=t.unstable_LowPriority,ke=t.unstable_IdlePriority,V=t.log,Ae=t.unstable_setDisableYieldValue,je=null,Me=null;function Ne(e){if(typeof V==`function`&&Ae(e),Me&&typeof Me.setStrictMode==`function`)try{Me.setStrictMode(je,e)}catch{}}var Pe=Math.clz32?Math.clz32:Le,Fe=Math.log,Ie=Math.LN2;function Le(e){return e>>>=0,e===0?32:31-(Fe(e)/Ie|0)|0}var Re=256,ze=262144,Be=4194304;function Ve(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function He(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ve(n))):i=Ve(o):i=Ve(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ve(n))):i=Ve(o)):i=Ve(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Ue(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function We(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ge(){var e=Be;return Be<<=1,!(Be&62914560)&&(Be=4194304),e}function Ke(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qe(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Je(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Pe(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&Ye(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Ye(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Pe(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Xe(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Pe(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function Ze(e,t){var n=t&-t;return n=n&42?1:Qe(n),(n&(e.suspendedLanes|t))===0?n:0}function Qe(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function $e(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function et(){var e=N.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function tt(e,t){var n=N.p;try{return N.p=e,t()}finally{N.p=n}}var nt=Math.random().toString(36).slice(2),rt=`__reactFiber$`+nt,it=`__reactProps$`+nt,at=`__reactContainer$`+nt,ot=`__reactEvents$`+nt,st=`__reactListeners$`+nt,ct=`__reactHandles$`+nt,lt=`__reactResources$`+nt,ut=`__reactMarker$`+nt;function dt(e){delete e[rt],delete e[it],delete e[ot],delete e[st],delete e[ct]}function ft(e){var t=e[rt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[at]||n[rt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[rt])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function pt(e){if(e=e[rt]||e[at]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function mt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function ht(e){var t=e[lt];return t||=e[lt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function gt(e){e[ut]=!0}var _t=new Set,vt={};function yt(e,t){bt(e,t),bt(e+`Capture`,t)}function bt(e,t){for(vt[e]=t,e=0;e<t.length;e++)_t.add(t[e])}var xt=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),St={},Ct={};function wt(e){return ye.call(Ct,e)?!0:ye.call(St,e)?!1:xt.test(e)?Ct[e]=!0:(St[e]=!0,!1)}function Tt(e,t,n){if(wt(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}function Et(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Dt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Ot(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function kt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function At(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function jt(e){if(!e._valueTracker){var t=kt(e)?`checked`:`value`;e._valueTracker=At(e,t,``+e[t])}}function Mt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=kt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Nt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var Pt=/[\n"\\]/g;function Ft(e){return e.replace(Pt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function It(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Ot(t)):e.value!==``+Ot(t)&&(e.value=``+Ot(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Rt(e,o,Ot(n)):Rt(e,o,Ot(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Ot(s):e.removeAttribute(`name`)}function Lt(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){jt(e);return}n=n==null?``:``+Ot(n),t=t==null?n:``+Ot(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),jt(e)}function Rt(e,t,n){t===`number`&&Nt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function zt(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Ot(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Bt(e,t,n){if(t!=null&&(t=``+Ot(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+Ot(n)}function Vt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(re(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Ot(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),jt(e)}function Ht(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Ut=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Wt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Ut.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Gt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Wt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Wt(e,o,t[o])}function Kt(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var qt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),Jt=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Yt(e){return Jt.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function Xt(){}var Zt=null;function Qt(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var $t=null,en=null;function tn(e){var t=pt(e);if(t&&(e=t.stateNode)){var n=e[it]||null;a:switch(e=t.stateNode,t.type){case`input`:if(It(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Ft(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[it]||null;if(!a)throw Error(i(90));It(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Mt(r)}break a;case`textarea`:Bt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&zt(e,!!n.multiple,t,!1)}}}var nn=!1;function rn(e,t,n){if(nn)return e(t,n);nn=!0;try{return e(t)}finally{if(nn=!1,($t!==null||en!==null)&&(vu(),$t&&(t=$t,e=en,en=$t=null,tn(t),e)))for(t=0;t<e.length;t++)tn(e[t])}}function an(e,t){var n=e.stateNode;if(n===null)return null;var r=n[it]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var on=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),sn=!1;if(on)try{var cn={};Object.defineProperty(cn,`passive`,{get:function(){sn=!0}}),window.addEventListener(`test`,cn,cn),window.removeEventListener(`test`,cn,cn)}catch{sn=!1}var ln=null,un=null,dn=null;function fn(){if(dn)return dn;var e,t=un,n=t.length,r,i=`value`in ln?ln.value:ln.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return dn=i.slice(e,1<r?1-r:void 0)}function pn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function mn(){return!0}function hn(){return!1}function gn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?mn:hn,this.isPropagationStopped=hn,this}return h(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=mn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=mn)},persist:function(){},isPersistent:mn}),t}var _n={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},vn=gn(_n),yn=h({},_n,{view:0,detail:0}),H=gn(yn),bn,xn,Sn,Cn=h({},yn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Nn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Sn&&(Sn&&e.type===`mousemove`?(bn=e.screenX-Sn.screenX,xn=e.screenY-Sn.screenY):xn=bn=0,Sn=e),bn)},movementY:function(e){return`movementY`in e?e.movementY:xn}}),wn=gn(Cn),Tn=gn(h({},Cn,{dataTransfer:0})),En=gn(h({},yn,{relatedTarget:0})),Dn=gn(h({},_n,{animationName:0,elapsedTime:0,pseudoElement:0})),On=gn(h({},_n,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),kn=gn(h({},_n,{data:0})),U={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},An={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`},jn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function Mn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=jn[e])?!!t[e]:!1}function Nn(){return Mn}var Pn=gn(h({},yn,{key:function(e){if(e.key){var t=U[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=pn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?An[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Nn,charCode:function(e){return e.type===`keypress`?pn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?pn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Fn=gn(h({},Cn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),In=gn(h({},yn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Nn})),W=gn(h({},_n,{propertyName:0,elapsedTime:0,pseudoElement:0})),Ln=gn(h({},Cn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Rn=gn(h({},_n,{newState:0,oldState:0})),zn=[9,13,27,32],Bn=on&&`CompositionEvent`in window,Vn=null;on&&`documentMode`in document&&(Vn=document.documentMode);var Hn=on&&`TextEvent`in window&&!Vn,Un=on&&(!Bn||Vn&&8<Vn&&11>=Vn),Wn=` `,Gn=!1;function Kn(e,t){switch(e){case`keyup`:return zn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function qn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Jn=!1;function Yn(e,t){switch(e){case`compositionend`:return qn(t);case`keypress`:return t.which===32?(Gn=!0,Wn):null;case`textInput`:return e=t.data,e===Wn&&Gn?null:e;default:return null}}function Xn(e,t){if(Jn)return e===`compositionend`||!Bn&&Kn(e,t)?(e=fn(),dn=un=ln=null,Jn=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Un&&t.locale!==`ko`?null:t.data;default:return null}}var Zn={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 Qn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Zn[e.type]:t===`textarea`}function $n(e,t,n,r){$t?en?en.push(r):en=[r]:$t=r,t=Td(t,`onChange`),0<t.length&&(n=new vn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var er=null,G=null;function tr(e){vd(e,0)}function nr(e){if(Mt(mt(e)))return e}function rr(e,t){if(e===`change`)return t}var ir=!1;if(on){var K;if(on){var ar=`oninput`in document;if(!ar){var q=document.createElement(`div`);q.setAttribute(`oninput`,`return;`),ar=typeof q.oninput==`function`}K=ar}else K=!1;ir=K&&(!document.documentMode||9<document.documentMode)}function J(){er&&(er.detachEvent(`onpropertychange`,Y),G=er=null)}function Y(e){if(e.propertyName===`value`&&nr(G)){var t=[];$n(t,G,e,Qt(e)),rn(tr,t)}}function or(e,t,n){e===`focusin`?(J(),er=t,G=n,er.attachEvent(`onpropertychange`,Y)):e===`focusout`&&J()}function sr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return nr(G)}function cr(e,t){if(e===`click`)return nr(t)}function lr(e,t){if(e===`input`||e===`change`)return nr(t)}function X(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var ur=typeof Object.is==`function`?Object.is:X;function dr(e,t){if(ur(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!ye.call(t,i)||!ur(e[i],t[i]))return!1}return!0}function fr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function pr(e,t){var n=fr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=fr(n)}}function mr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?mr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function hr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Nt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Nt(e.document)}return t}function gr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var _r=on&&`documentMode`in document&&11>=document.documentMode,vr=null,yr=null,br=null,xr=!1;function Sr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;xr||vr==null||vr!==Nt(r)||(r=vr,`selectionStart`in r&&gr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),br&&dr(br,r)||(br=r,r=Td(yr,`onSelect`),0<r.length&&(t=new vn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=vr)))}function Cr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var wr={animationend:Cr(`Animation`,`AnimationEnd`),animationiteration:Cr(`Animation`,`AnimationIteration`),animationstart:Cr(`Animation`,`AnimationStart`),transitionrun:Cr(`Transition`,`TransitionRun`),transitionstart:Cr(`Transition`,`TransitionStart`),transitioncancel:Cr(`Transition`,`TransitionCancel`),transitionend:Cr(`Transition`,`TransitionEnd`)},Tr={},Er={};on&&(Er=document.createElement(`div`).style,`AnimationEvent`in window||(delete wr.animationend.animation,delete wr.animationiteration.animation,delete wr.animationstart.animation),`TransitionEvent`in window||delete wr.transitionend.transition);function Dr(e){if(Tr[e])return Tr[e];if(!wr[e])return e;var t=wr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Er)return Tr[e]=t[n];return e}var Or=Dr(`animationend`),kr=Dr(`animationiteration`),Ar=Dr(`animationstart`),jr=Dr(`transitionrun`),Mr=Dr(`transitionstart`),Nr=Dr(`transitioncancel`),Pr=Dr(`transitionend`),Fr=new Map,Ir=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);Ir.push(`scrollEnd`);function Lr(e,t){Fr.set(e,t),yt(t,[e])}var Rr=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},zr=[],Br=0,Vr=0;function Hr(){for(var e=Br,t=Vr=Br=0;t<e;){var n=zr[t];zr[t++]=null;var r=zr[t];zr[t++]=null;var i=zr[t];zr[t++]=null;var a=zr[t];if(zr[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&Kr(n,i,a)}}function Ur(e,t,n,r){zr[Br++]=e,zr[Br++]=t,zr[Br++]=n,zr[Br++]=r,Vr|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function Wr(e,t,n,r){return Ur(e,t,n,r),qr(e)}function Gr(e,t){return Ur(e,null,null,t),qr(e)}function Kr(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Pe(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function qr(e){if(50<lu)throw lu=0,uu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Jr={};function Yr(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Xr(e,t,n,r){return new Yr(e,t,n,r)}function Zr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Qr(e,t){var n=e.alternate;return n===null?(n=Xr(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function $r(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function ei(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)Zr(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,L.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case ee:return e=Xr(31,n,t,a),e.elementType=ee,e.lanes=o,e;case y:return ti(n.children,a,o,t);case b:s=8,a|=24;break;case x:return e=Xr(12,n,t,a|2),e.elementType=x,e.lanes=o,e;case T:return e=Xr(13,n,t,a),e.elementType=T,e.lanes=o,e;case E:return e=Xr(19,n,t,a),e.elementType=E,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case C:s=10;break a;case S:s=9;break a;case w:s=11;break a;case D:s=14;break a;case O:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=Xr(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function ti(e,t,n,r){return e=Xr(7,e,r,t),e.lanes=n,e}function ni(e,t,n){return e=Xr(6,e,null,t),e.lanes=n,e}function ri(e){var t=Xr(18,null,null,0);return t.stateNode=e,t}function ii(e,t,n){return t=Xr(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var ai=new WeakMap;function oi(e,t){if(typeof e==`object`&&e){var n=ai.get(e);return n===void 0?(t={value:e,source:t,stack:ve(t)},ai.set(e,t),t):n}return{value:e,source:t,stack:ve(t)}}var si=[],ci=0,li=null,ui=0,di=[],fi=0,pi=null,mi=1,hi=``;function gi(e,t){si[ci++]=ui,si[ci++]=li,li=e,ui=t}function _i(e,t,n){di[fi++]=mi,di[fi++]=hi,di[fi++]=pi,pi=e;var r=mi;e=hi;var i=32-Pe(r)-1;r&=~(1<<i),n+=1;var a=32-Pe(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,mi=1<<32-Pe(t)+i|n<<i|r,hi=a+e}else mi=1<<a|n<<i|r,hi=e}function vi(e){e.return!==null&&(gi(e,1),_i(e,1,0))}function yi(e){for(;e===li;)li=si[--ci],si[ci]=null,ui=si[--ci],si[ci]=null;for(;e===pi;)pi=di[--fi],di[fi]=null,hi=di[--fi],di[fi]=null,mi=di[--fi],di[fi]=null}function bi(e,t){di[fi++]=mi,di[fi++]=hi,di[fi++]=pi,mi=t.id,hi=t.overflow,pi=e}var xi=null,Si=null,Ci=!1,wi=null,Ti=!1,Ei=Error(i(519));function Di(e){throw Ni(oi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Ei}function Oi(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[rt]=e,t[it]=r,n){case`dialog`:$(`cancel`,t),$(`close`,t);break;case`iframe`:case`object`:case`embed`:$(`load`,t);break;case`video`:case`audio`:for(n=0;n<gd.length;n++)$(gd[n],t);break;case`source`:$(`error`,t);break;case`img`:case`image`:case`link`:$(`error`,t),$(`load`,t);break;case`details`:$(`toggle`,t);break;case`input`:$(`invalid`,t),Lt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:$(`invalid`,t);break;case`textarea`:$(`invalid`,t),Vt(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||jd(t.textContent,n)?(r.popover!=null&&($(`beforetoggle`,t),$(`toggle`,t)),r.onScroll!=null&&$(`scroll`,t),r.onScrollEnd!=null&&$(`scrollend`,t),r.onClick!=null&&(t.onclick=Xt),t=!0):t=!1,t||Di(e,!0)}function ki(e){for(xi=e.return;xi;)switch(xi.tag){case 5:case 31:case 13:Ti=!1;return;case 27:case 3:Ti=!0;return;default:xi=xi.return}}function Ai(e){if(e!==xi)return!1;if(!Ci)return ki(e),Ci=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Ud(e.type,e.memoizedProps)),n=!n),n&&Si&&Di(e),ki(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Si=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Si=uf(e)}else t===27?(t=Si,Zd(e.type)?(e=lf,lf=null,Si=e):Si=t):Si=xi?cf(e.stateNode.nextSibling):null;return!0}function ji(){Si=xi=null,Ci=!1}function Mi(){var e=wi;return e!==null&&(Yl===null?Yl=e:Yl.push.apply(Yl,e),wi=null),e}function Ni(e){wi===null?wi=[e]:wi.push(e)}var Pi=P(null),Fi=null,Ii=null;function Li(e,t,n){I(Pi,t._currentValue),t._currentValue=n}function Ri(e){e._currentValue=Pi.current,F(Pi)}function zi(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Bi(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),zi(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),zi(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Vi(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;ur(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===ce.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[Qf]:e.push(Qf))}a=a.return}e!==null&&Bi(t,e,n,r),t.flags|=262144}function Hi(e){for(e=e.firstContext;e!==null;){if(!ur(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ui(e){Fi=e,Ii=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Wi(e){return Ki(Fi,e)}function Gi(e,t){return Fi===null&&Ui(e),Ki(e,t)}function Ki(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Ii===null){if(e===null)throw Error(i(308));Ii=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Ii=Ii.next=t;return n}var qi=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},Ji=t.unstable_scheduleCallback,Yi=t.unstable_NormalPriority,Xi={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Zi(){return{controller:new qi,data:new Map,refCount:0}}function Qi(e){e.refCount--,e.refCount===0&&Ji(Yi,function(){e.controller.abort()})}var $i=null,ea=0,ta=0,na=null;function ra(e,t){if($i===null){var n=$i=[];ea=0,ta=ud(),na={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ea++,t.then(ia,ia),t}function ia(){if(--ea===0&&$i!==null){na!==null&&(na.status=`fulfilled`);var e=$i;$i=null,ta=0,na=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function aa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var oa=M.S;M.S=function(e,t){Ql=we(),typeof t==`object`&&t&&typeof t.then==`function`&&ra(e,t),oa!==null&&oa(e,t)};var sa=P(null);function ca(){var e=sa.current;return e===null?Pl.pooledCache:e}function la(e,t){t===null?I(sa,sa.current):I(sa,t.pool)}function ua(){var e=ca();return e===null?null:{parent:Xi._currentValue,pool:e}}var da=Error(i(460)),fa=Error(i(474)),pa=Error(i(542)),ma={then:function(){}};function ha(e){return e=e.status,e===`fulfilled`||e===`rejected`}function ga(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Xt,Xt),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,ba(e),e;default:if(typeof t.status==`string`)t.then(Xt,Xt);else{if(e=Pl,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,ba(e),e}throw va=t,da}}function _a(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(va=e,da):e}}var va=null;function ya(){if(va===null)throw Error(i(459));var e=va;return va=null,e}function ba(e){if(e===da||e===pa)throw Error(i(483))}var xa=null,Sa=0;function Ca(e){var t=Sa;return Sa+=1,xa===null&&(xa=[]),ga(xa,e,t)}function wa(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Ta(e,t){throw t.$$typeof===g?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Ea(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=Qr(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=ni(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===y?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===O&&_a(i)===t.type)?(t=a(t,n.props),wa(t,n),t.return=e,t):(t=ei(n.type,n.key,n.props,null,e.mode,r),wa(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=ii(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=ti(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=ni(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case _:return n=ei(t.type,t.key,t.props,null,e.mode,n),wa(n,t),n.return=e,n;case v:return t=ii(t,e.mode,n),t.return=e,t;case O:return t=_a(t),f(e,t,n)}if(re(t)||j(t))return t=ti(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Ca(t),n);if(t.$$typeof===C)return f(e,Gi(e,t),n);Ta(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case _:return n.key===i?l(e,t,n,r):null;case v:return n.key===i?u(e,t,n,r):null;case O:return n=_a(n),p(e,t,n,r)}if(re(n)||j(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Ca(n),r);if(n.$$typeof===C)return p(e,t,Gi(e,n),r);Ta(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case _:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case v:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case O:return r=_a(r),m(e,t,n,r,i)}if(re(r)||j(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,Ca(r),i);if(r.$$typeof===C)return m(e,t,n,Gi(t,r),i);Ta(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Ci&&gi(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return Ci&&gi(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),Ci&&gi(i,h),l}function g(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),Ci&&gi(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return Ci&&gi(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),Ci&&gi(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===y&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case _:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===y){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===O&&_a(l)===r.type){n(e,r.sibling),c=a(r,o.props),wa(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===y?(c=ti(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=ei(o.type,o.key,o.props,null,e.mode,c),wa(c,o),c.return=e,e=c)}return s(e);case v:a:{for(l=o.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=ii(o,e.mode,c),c.return=e,e=c}return s(e);case O:return o=_a(o),b(e,r,o,c)}if(re(o))return h(e,r,o,c);if(j(o)){if(l=j(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,Ca(o),c);if(o.$$typeof===C)return b(e,r,Gi(e,o),c);Ta(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=ni(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Sa=0;var i=b(e,t,n,r);return xa=null,i}catch(t){if(t===da||t===pa)throw t;var a=Xr(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Da=Ea(!0),Oa=Ea(!1),ka=!1;function Aa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ja(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ma(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Na(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Nl&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=qr(e),Kr(e,null,n),t}return Ur(e,r,t,n),qr(e)}function Pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xe(e,n)}}function Fa(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ia=!1;function La(){if(Ia){var e=na;if(e!==null)throw e}}function Ra(e,t,n,r){Ia=!1;var i=e.updateQueue;ka=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Fl&f)===f:(r&f)===f){f!==0&&f===ta&&(Ia=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(m=g.payload,typeof m==`function`){d=m.call(_,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=g.payload,f=typeof m==`function`?m.call(_,d,f):m,f==null)break a;d=h({},d,f);break a;case 2:ka=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Ul|=o,e.lanes=o,e.memoizedState=d}}function za(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Ba(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)za(n[e],t)}var Va=P(null),Ha=P(0);function Ua(e,t){e=Vl,I(Ha,e),I(Va,t),Vl=e|t.baseLanes}function Wa(){I(Ha,Vl),I(Va,Va.current)}function Ga(){Vl=Ha.current,F(Va),F(Ha)}var Ka=P(null),qa=null;function Ja(e){var t=e.alternate;I($a,$a.current&1),I(Ka,e),qa===null&&(t===null||Va.current!==null||t.memoizedState!==null)&&(qa=e)}function Ya(e){I($a,$a.current),I(Ka,e),qa===null&&(qa=e)}function Xa(e){e.tag===22?(I($a,$a.current),I(Ka,e),qa===null&&(qa=e)):Za(e)}function Za(){I($a,$a.current),I(Ka,Ka.current)}function Qa(e){F(Ka),qa===e&&(qa=null),F($a)}var $a=P(0);function eo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||af(n)||of(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var to=0,Z=null,no=null,ro=null,io=!1,ao=!1,oo=!1,so=0,co=0,lo=null,uo=0;function fo(){throw Error(i(321))}function po(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!ur(e[n],t[n]))return!1;return!0}function mo(e,t,n,r,i,a){return to=a,Z=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,M.H=e===null||e.memoizedState===null?js:Ms,oo=!1,a=n(r,i),oo=!1,ao&&(a=go(t,n,r,i)),ho(e),a}function ho(e){M.H=As;var t=no!==null&&no.next!==null;if(to=0,ro=no=Z=null,io=!1,co=0,lo=null,t)throw Error(i(300));e===null||Ys||(e=e.dependencies,e!==null&&Hi(e)&&(Ys=!0))}function go(e,t,n,r){Z=e;var a=0;do{if(ao&&(lo=null),co=0,ao=!1,25<=a)throw Error(i(301));if(a+=1,ro=no=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}M.H=Ns,o=t(n,r)}while(ao);return o}function _o(){var e=M.H,t=e.useState()[0];return t=typeof t.then==`function`?wo(t):t,e=e.useState()[0],(no===null?null:no.memoizedState)!==e&&(Z.flags|=1024),t}function vo(){var e=so!==0;return so=0,e}function yo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function bo(e){if(io){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}io=!1}to=0,ro=no=Z=null,ao=!1,co=so=0,lo=null}function xo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ro===null?Z.memoizedState=ro=e:ro=ro.next=e,ro}function So(){if(no===null){var e=Z.alternate;e=e===null?null:e.memoizedState}else e=no.next;var t=ro===null?Z.memoizedState:ro.next;if(t!==null)ro=t,no=e;else{if(e===null)throw Z.alternate===null?Error(i(467)):Error(i(310));no=e,e={memoizedState:no.memoizedState,baseState:no.baseState,baseQueue:no.baseQueue,queue:no.queue,next:null},ro===null?Z.memoizedState=ro=e:ro=ro.next=e}return ro}function Co(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function wo(e){var t=co;return co+=1,lo===null&&(lo=[]),e=ga(lo,e,t),t=Z,(ro===null?t.memoizedState:ro.next)===null&&(t=t.alternate,M.H=t===null||t.memoizedState===null?js:Ms),e}function To(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return wo(e);if(e.$$typeof===C)return Wi(e)}throw Error(i(438,String(e)))}function Eo(e){var t=null,n=Z.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Z.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Co(),Z.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=k;return t.index++,n}function Do(e,t){return typeof t==`function`?t(e):t}function Oo(e){return ko(So(),no,e)}function ko(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(to&f)===f:(Fl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===ta&&(d=!0);else if((to&p)===p){u=u.next,p===ta&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,Z.lanes|=p,Ul|=p;f=u.action,oo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,Z.lanes|=f,Ul|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!ur(o,e.memoizedState)&&(Ys=!0,d&&(n=na,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Ao(e){var t=So(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);ur(o,t.memoizedState)||(Ys=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function jo(e,t,n){var r=Z,a=So(),o=Ci;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!ur((no||a).memoizedState,n);if(s&&(a.memoizedState=n,Ys=!0),a=a.queue,ns(Po.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||ro!==null&&ro.memoizedState.tag&1){if(r.flags|=2048,Zo(9,{destroy:void 0},No.bind(null,r,a,n,t),null),Pl===null)throw Error(i(349));o||to&127||Mo(r,t,n)}return n}function Mo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Z.updateQueue,t===null?(t=Co(),Z.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function No(e,t,n,r){t.value=n,t.getSnapshot=r,Fo(t)&&Io(e)}function Po(e,t,n){return n(function(){Fo(t)&&Io(e)})}function Fo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!ur(e,n)}catch{return!0}}function Io(e){var t=Gr(e,2);t!==null&&pu(t,e,2)}function Lo(e){var t=xo();if(typeof e==`function`){var n=e;if(e=n(),oo){Ne(!0);try{n()}finally{Ne(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:e},t}function Ro(e,t,n,r){return e.baseState=n,ko(e,no,typeof r==`function`?r:Do)}function zo(e,t,n,r,a){if(Ds(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};M.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,Bo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Bo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=M.T,o={};M.T=o;try{var s=n(i,r),c=M.S;c!==null&&c(o,s),Vo(e,t,s)}catch(n){Uo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),M.T=a}}else try{a=n(i,r),Vo(e,t,a)}catch(n){Uo(e,t,n)}}function Vo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Ho(e,t,n)},function(n){return Uo(e,t,n)}):Ho(e,t,n)}function Ho(e,t,n){t.status=`fulfilled`,t.value=n,Wo(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Bo(e,n)))}function Uo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Wo(t),t=t.next;while(t!==r)}e.action=null}function Wo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Go(e,t){return t}function Ko(e,t){if(Ci){var n=Pl.formState;if(n!==null){a:{var r=Z;if(Ci){if(Si){b:{for(var i=Si,a=Ti;i.nodeType!==8;){if(!a){i=null;break b}if(i=cf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){Si=cf(i.nextSibling),r=i.data===`F!`;break a}}Di(r)}r=!1}r&&(t=n[0])}}return n=xo(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Go,lastRenderedState:t},n.queue=r,n=ws.bind(null,Z,r),r.dispatch=n,r=Lo(!1),a=Es.bind(null,Z,!1,r.queue),r=xo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=zo.bind(null,Z,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function qo(e){return Jo(So(),no,e)}function Jo(e,t,n){if(t=ko(e,t,Go)[0],e=Oo(Do)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=wo(t)}catch(e){throw e===da?pa:e}else r=t;t=So();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Z.flags|=2048,Zo(9,{destroy:void 0},Yo.bind(null,i,n),null)),[r,a,e]}function Yo(e,t){e.action=t}function Xo(e){var t=So(),n=no;if(n!==null)return Jo(t,n,e);So(),t=t.memoizedState,n=So();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function Zo(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Z.updateQueue,t===null&&(t=Co(),Z.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Qo(){return So().memoizedState}function $o(e,t,n,r){var i=xo();Z.flags|=e,i.memoizedState=Zo(1|t,{destroy:void 0},n,r===void 0?null:r)}function es(e,t,n,r){var i=So();r=r===void 0?null:r;var a=i.memoizedState.inst;no!==null&&r!==null&&po(r,no.memoizedState.deps)?i.memoizedState=Zo(t,a,n,r):(Z.flags|=e,i.memoizedState=Zo(1|t,a,n,r))}function ts(e,t){$o(8390656,8,e,t)}function ns(e,t){es(2048,8,e,t)}function rs(e){Z.flags|=4;var t=Z.updateQueue;if(t===null)t=Co(),Z.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function is(e){var t=So().memoizedState;return rs({ref:t,nextImpl:e}),function(){if(Nl&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function as(e,t){return es(4,2,e,t)}function os(e,t){return es(4,4,e,t)}function ss(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function cs(e,t,n){n=n==null?null:n.concat([e]),es(4,4,ss.bind(null,t,e),n)}function ls(){}function us(e,t){var n=So();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&po(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function ds(e,t){var n=So();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&po(t,r[1]))return r[0];if(r=e(),oo){Ne(!0);try{e()}finally{Ne(!1)}}return n.memoizedState=[r,t],r}function fs(e,t,n){return n===void 0||to&1073741824&&!(Fl&261930)?e.memoizedState=t:(e.memoizedState=n,e=fu(),Z.lanes|=e,Ul|=e,n)}function ps(e,t,n,r){return ur(n,t)?n:Va.current===null?!(to&42)||to&1073741824&&!(Fl&261930)?(Ys=!0,e.memoizedState=n):(e=fu(),Z.lanes|=e,Ul|=e,t):(e=fs(e,n,r),ur(e,t)||(Ys=!0),e)}function ms(e,t,n,r,i){var a=N.p;N.p=a!==0&&8>a?a:8;var o=M.T,s={};M.T=s,Es(e,!1,t,n);try{var c=i(),l=M.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ts(e,t,aa(c,r),du(e)):Ts(e,t,r,du(e))}catch(n){Ts(e,t,{then:function(){},status:`rejected`,reason:n},du())}finally{N.p=a,o!==null&&s.types!==null&&(o.types=s.types),M.T=o}}function hs(){}function gs(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=_s(e).queue;ms(e,a,t,ie,n===null?hs:function(){return vs(e),n(r)})}function _s(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ie,baseState:ie,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:ie},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function vs(e){var t=_s(e);t.next===null&&(t=e.alternate.memoizedState),Ts(e,t.next.queue,{},du())}function ys(){return Wi(Qf)}function bs(){return So().memoizedState}function xs(){return So().memoizedState}function Ss(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=du();e=Ma(n);var r=Na(t,e,n);r!==null&&(pu(r,t,n),Pa(r,t,n)),t={cache:Zi()},e.payload=t;return}t=t.return}}function Cs(e,t,n){var r=du();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ds(e)?Os(t,n):(n=Wr(e,t,n,r),n!==null&&(pu(n,e,r),ks(n,t,r)))}function ws(e,t,n){Ts(e,t,n,du())}function Ts(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Ds(e))Os(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,ur(s,o))return Ur(e,t,i,0),Pl===null&&Hr(),!1}catch{}if(n=Wr(e,t,i,r),n!==null)return pu(n,e,r),ks(n,t,r),!0}return!1}function Es(e,t,n,r){if(r={lane:2,revertLane:ud(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Ds(e)){if(t)throw Error(i(479))}else t=Wr(e,n,r,2),t!==null&&pu(t,e,2)}function Ds(e){var t=e.alternate;return e===Z||t!==null&&t===Z}function Os(e,t){ao=io=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ks(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xe(e,n)}}var As={readContext:Wi,use:To,useCallback:fo,useContext:fo,useEffect:fo,useImperativeHandle:fo,useLayoutEffect:fo,useInsertionEffect:fo,useMemo:fo,useReducer:fo,useRef:fo,useState:fo,useDebugValue:fo,useDeferredValue:fo,useTransition:fo,useSyncExternalStore:fo,useId:fo,useHostTransitionStatus:fo,useFormState:fo,useActionState:fo,useOptimistic:fo,useMemoCache:fo,useCacheRefresh:fo};As.useEffectEvent=fo;var js={readContext:Wi,use:To,useCallback:function(e,t){return xo().memoizedState=[e,t===void 0?null:t],e},useContext:Wi,useEffect:ts,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),$o(4194308,4,ss.bind(null,t,e),n)},useLayoutEffect:function(e,t){return $o(4194308,4,e,t)},useInsertionEffect:function(e,t){$o(4,2,e,t)},useMemo:function(e,t){var n=xo();t=t===void 0?null:t;var r=e();if(oo){Ne(!0);try{e()}finally{Ne(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=xo();if(n!==void 0){var i=n(t);if(oo){Ne(!0);try{n(t)}finally{Ne(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Cs.bind(null,Z,e),[r.memoizedState,e]},useRef:function(e){var t=xo();return e={current:e},t.memoizedState=e},useState:function(e){e=Lo(e);var t=e.queue,n=ws.bind(null,Z,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:ls,useDeferredValue:function(e,t){return fs(xo(),e,t)},useTransition:function(){var e=Lo(!1);return e=ms.bind(null,Z,e.queue,!0,!1),xo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=Z,a=xo();if(Ci){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Pl===null)throw Error(i(349));Fl&127||Mo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ts(Po.bind(null,r,o,e),[e]),r.flags|=2048,Zo(9,{destroy:void 0},No.bind(null,r,o,n,t),null),n},useId:function(){var e=xo(),t=Pl.identifierPrefix;if(Ci){var n=hi,r=mi;n=(r&~(1<<32-Pe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=so++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=uo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:ys,useFormState:Ko,useActionState:Ko,useOptimistic:function(e){var t=xo();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Es.bind(null,Z,!0,n),n.dispatch=t,[e,t]},useMemoCache:Eo,useCacheRefresh:function(){return xo().memoizedState=Ss.bind(null,Z)},useEffectEvent:function(e){var t=xo(),n={impl:e};return t.memoizedState=n,function(){if(Nl&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Ms={readContext:Wi,use:To,useCallback:us,useContext:Wi,useEffect:ns,useImperativeHandle:cs,useInsertionEffect:as,useLayoutEffect:os,useMemo:ds,useReducer:Oo,useRef:Qo,useState:function(){return Oo(Do)},useDebugValue:ls,useDeferredValue:function(e,t){return ps(So(),no.memoizedState,e,t)},useTransition:function(){var e=Oo(Do)[0],t=So().memoizedState;return[typeof e==`boolean`?e:wo(e),t]},useSyncExternalStore:jo,useId:bs,useHostTransitionStatus:ys,useFormState:qo,useActionState:qo,useOptimistic:function(e,t){return Ro(So(),no,e,t)},useMemoCache:Eo,useCacheRefresh:xs};Ms.useEffectEvent=is;var Ns={readContext:Wi,use:To,useCallback:us,useContext:Wi,useEffect:ns,useImperativeHandle:cs,useInsertionEffect:as,useLayoutEffect:os,useMemo:ds,useReducer:Ao,useRef:Qo,useState:function(){return Ao(Do)},useDebugValue:ls,useDeferredValue:function(e,t){var n=So();return no===null?fs(n,e,t):ps(n,no.memoizedState,e,t)},useTransition:function(){var e=Ao(Do)[0],t=So().memoizedState;return[typeof e==`boolean`?e:wo(e),t]},useSyncExternalStore:jo,useId:bs,useHostTransitionStatus:ys,useFormState:Xo,useActionState:Xo,useOptimistic:function(e,t){var n=So();return no===null?(n.baseState=e,[e,n.queue.dispatch]):Ro(n,no,e,t)},useMemoCache:Eo,useCacheRefresh:xs};Ns.useEffectEvent=is;function Ps(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:h({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Fs={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=du(),i=Ma(r);i.payload=t,n!=null&&(i.callback=n),t=Na(e,i,r),t!==null&&(pu(t,e,r),Pa(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=du(),i=Ma(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Na(e,i,r),t!==null&&(pu(t,e,r),Pa(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=du(),r=Ma(n);r.tag=2,t!=null&&(r.callback=t),t=Na(e,r,n),t!==null&&(pu(t,e,n),Pa(t,e,n))}};function Is(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!dr(n,r)||!dr(i,a):!0}function Ls(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Fs.enqueueReplaceState(t,t.state,null)}function Rs(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=h({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function zs(e){Rr(e)}function Bs(e){console.error(e)}function Vs(e){Rr(e)}function Hs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Us(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Ws(e,t,n){return n=Ma(n),n.tag=3,n.payload={element:null},n.callback=function(){Hs(e,t)},n}function Gs(e){return e=Ma(e),e.tag=3,e}function Ks(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Us(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Us(t,n,r),typeof i!=`function`&&(tu===null?tu=new Set([this]):tu.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function qs(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Vi(t,n,a,!0),n=Ka.current,n!==null){switch(n.tag){case 31:case 13:return qa===null?Tu():n.alternate===null&&Hl===0&&(Hl=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===ma?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Wu(e,r,a)),!1;case 22:return n.flags|=65536,r===ma?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Wu(e,r,a)),!1}throw Error(i(435,n.tag))}return Wu(e,r,a),Tu(),!1}if(Ci)return t=Ka.current,t===null?(r!==Ei&&(t=Error(i(423),{cause:r}),Ni(oi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=oi(r,n),a=Ws(e.stateNode,r,a),Fa(e,a),Hl!==4&&(Hl=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==Ei&&(e=Error(i(422),{cause:r}),Ni(oi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=oi(o,n),Jl===null?Jl=[o]:Jl.push(o),Hl!==4&&(Hl=2),t===null)return!0;r=oi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=Ws(n.stateNode,r,e),Fa(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(tu===null||!tu.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Gs(a),Ks(a,e,n,r),Fa(n,a),!1}n=n.return}while(n!==null);return!1}var Js=Error(i(461)),Ys=!1;function Xs(e,t,n,r){t.child=e===null?Oa(t,null,n,r):Da(t,e.child,n,r)}function Zs(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Ui(t),r=mo(e,t,n,o,a,i),s=vo(),e!==null&&!Ys?(yo(e,t,i),xc(e,t,i)):(Ci&&s&&vi(t),t.flags|=1,Xs(e,t,r,i),t.child)}function Qs(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Zr(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,$s(e,t,a,r,i)):(e=ei(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!Sc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?dr:n,n(o,r)&&e.ref===t.ref)return xc(e,t,i)}return t.flags|=1,e=Qr(a,r),e.ref=t.ref,e.return=t,t.child=e}function $s(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(dr(a,r)&&e.ref===t.ref)if(Ys=!1,t.pendingProps=r=a,Sc(e,i))e.flags&131072&&(Ys=!0);else return t.lanes=e.lanes,xc(e,t,i)}return sc(e,t,n,r,i)}function ec(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return nc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&la(t,a===null?null:a.cachePool),a===null?Wa():Ua(t,a),Xa(t);else return r=t.lanes=536870912,nc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&la(t,null),Wa(),Za(t)):(la(t,a.cachePool),Ua(t,a),Za(t),t.memoizedState=null);return Xs(e,t,i,n),t.child}function tc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function nc(e,t,n,r,i){var a=ca();return a=a===null?null:{parent:Xi._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&la(t,null),Wa(),Xa(t),e!==null&&Vi(e,t,r,!0),t.childLanes=i,null}function rc(e,t){return t=gc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function ic(e,t,n){return Da(t,e.child,null,n),e=rc(t,t.pendingProps),e.flags|=2,Qa(t),t.memoizedState=null,e}function ac(e,t,n){var r=t.pendingProps,a=(t.flags&128)!=0;if(t.flags&=-129,e===null){if(Ci){if(r.mode===`hidden`)return e=rc(t,r),t.lanes=536870912,tc(null,e);if(Ya(t),(e=Si)?(e=rf(e,Ti),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:pi===null?null:{id:mi,overflow:hi},retryLane:536870912,hydrationErrors:null},n=ri(e),n.return=t,t.child=n,xi=t,Si=null)):e=null,e===null)throw Di(t);return t.lanes=536870912,null}return rc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Ya(t),a)if(t.flags&256)t.flags&=-257,t=ic(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558));else if(Ys||Vi(e,t,n,!1),a=(n&e.childLanes)!==0,Ys||a){if(r=Pl,r!==null&&(s=Ze(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,Gr(e,s),pu(r,e,s),Js;Tu(),t=ic(e,t,n)}else e=o.treeContext,Si=cf(s.nextSibling),xi=t,Ci=!0,wi=null,Ti=!1,e!==null&&bi(t,e),t=rc(t,r),t.flags|=4096;return t}return e=Qr(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function oc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function sc(e,t,n,r,i){return Ui(t),n=mo(e,t,n,r,void 0,i),r=vo(),e!==null&&!Ys?(yo(e,t,i),xc(e,t,i)):(Ci&&r&&vi(t),t.flags|=1,Xs(e,t,n,i),t.child)}function cc(e,t,n,r,i,a){return Ui(t),t.updateQueue=null,n=go(t,r,n,i),ho(e),r=vo(),e!==null&&!Ys?(yo(e,t,a),xc(e,t,a)):(Ci&&r&&vi(t),t.flags|=1,Xs(e,t,n,a),t.child)}function lc(e,t,n,r,i){if(Ui(t),t.stateNode===null){var a=Jr,o=n.contextType;typeof o==`object`&&o&&(a=Wi(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Fs,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Aa(t),o=n.contextType,a.context=typeof o==`object`&&o?Wi(o):Jr,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Ps(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Fs.enqueueReplaceState(a,a.state,null),Ra(t,r,a,i),La(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Rs(n,s);a.props=c;var l=a.context,u=n.contextType;o=Jr,typeof u==`object`&&u&&(o=Wi(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ls(t,a,r,o),ka=!1;var f=t.memoizedState;a.state=f,Ra(t,r,a,i),La(),l=t.memoizedState,s||f!==l||ka?(typeof d==`function`&&(Ps(t,n,d,r),l=t.memoizedState),(c=ka||Is(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,ja(e,t),o=t.memoizedProps,u=Rs(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Jr,typeof l==`object`&&l&&(c=Wi(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ls(t,a,r,c),ka=!1,f=t.memoizedState,a.state=f,Ra(t,r,a,i),La();var p=t.memoizedState;o!==d||f!==p||ka||e!==null&&e.dependencies!==null&&Hi(e.dependencies)?(typeof s==`function`&&(Ps(t,n,s,r),p=t.memoizedState),(u=ka||Is(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Hi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,oc(e,t),r=(t.flags&128)!=0,a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Da(t,e.child,null,i),t.child=Da(t,null,n,i)):Xs(e,t,n,i),t.memoizedState=a.state,e=t.child):e=xc(e,t,i),e}function uc(e,t,n,r){return ji(),t.flags|=256,Xs(e,t,n,r),t.child}var dc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function fc(e){return{baseLanes:e,cachePool:ua()}}function pc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Kl),e}function mc(e,t,n){var r=t.pendingProps,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:($a.current&2)!=0),s&&(a=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Ci){if(a?Ja(t):Za(t),(e=Si)?(e=rf(e,Ti),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:pi===null?null:{id:mi,overflow:hi},retryLane:536870912,hydrationErrors:null},n=ri(e),n.return=t,t.child=n,xi=t,Si=null)):e=null,e===null)throw Di(t);return of(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(Za(t),a=t.mode,c=gc({mode:`hidden`,children:c},a),r=ti(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=fc(n),r.childLanes=pc(e,s,n),t.memoizedState=dc,tc(null,r)):(Ja(t),hc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(Ja(t),t.flags&=-257,t=_c(e,t,n)):t.memoizedState===null?(Za(t),c=r.fallback,a=t.mode,r=gc({mode:`visible`,children:r.children},a),c=ti(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Da(t,e.child,null,n),r=t.child,r.memoizedState=fc(n),r.childLanes=pc(e,s,n),t.memoizedState=dc,t=tc(null,r)):(Za(t),t.child=e.child,t.flags|=128,t=null);else if(Ja(t),of(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Ni({value:r,source:null,stack:null}),t=_c(e,t,n)}else if(Ys||Vi(e,t,n,!1),s=(n&e.childLanes)!==0,Ys||s){if(s=Pl,s!==null&&(r=Ze(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,Gr(e,r),pu(s,e,r),Js;af(c)||Tu(),t=_c(e,t,n)}else af(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,Si=cf(c.nextSibling),xi=t,Ci=!0,wi=null,Ti=!1,e!==null&&bi(t,e),t=hc(t,r.children),t.flags|=4096);return t}return a?(Za(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=Qr(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=ti(c,a,n,null),c.flags|=2):c=Qr(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,tc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=fc(n):(a=c.cachePool,a===null?a=ua():(l=Xi._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=pc(e,s,n),t.memoizedState=dc,tc(e.child,r)):(Ja(t),n=e.child,e=n.sibling,n=Qr(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function hc(e,t){return t=gc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function gc(e,t){return e=Xr(22,e,null,t),e.lanes=0,e}function _c(e,t,n){return Da(t,e.child,null,n),e=hc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function vc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),zi(e.return,t,n)}function yc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function bc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=$a.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,I($a,o),Xs(e,t,r,n),r=Ci?ui:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vc(e,n,t);else if(e.tag===19)vc(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&eo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),yc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&eo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}yc(t,!0,n,null,a,r);break;case`together`:yc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function xc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ul|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Vi(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Qr(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Qr(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Sc(e,t){return(e.lanes&t)===0?(e=e.dependencies,!!(e!==null&&Hi(e))):!0}function Cc(e,t,n){switch(t.tag){case 3:le(t,t.stateNode.containerInfo),Li(t,Xi,e.memoizedState.cache),ji();break;case 27:case 5:de(t);break;case 4:le(t,t.stateNode.containerInfo);break;case 10:Li(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ya(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(Ja(t),e=xc(e,t,n),e===null?null:e.sibling):mc(e,t,n):(Ja(t),t.flags|=128,null);Ja(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(Vi(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return bc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),I($a,$a.current),r)break;return null;case 22:return t.lanes=0,ec(e,t,n,t.pendingProps);case 24:Li(t,Xi,e.memoizedState.cache)}return xc(e,t,n)}function wc(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)Ys=!0;else{if(!Sc(e,n)&&!(t.flags&128))return Ys=!1,Cc(e,t,n);Ys=!!(e.flags&131072)}else Ys=!1,Ci&&t.flags&1048576&&_i(t,ui,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=_a(t.elementType),t.type=e,typeof e==`function`)Zr(e)?(r=Rs(e,r),t.tag=1,t=lc(null,t,e,r,n)):(t.tag=0,t=sc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===w){t.tag=11,t=Zs(null,t,e,r,n);break a}else if(a===D){t.tag=14,t=Qs(null,t,e,r,n);break a}}throw t=ne(e)||e,Error(i(306,t,``))}}return t;case 0:return sc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Rs(r,t.pendingProps),lc(e,t,r,a,n);case 3:a:{if(le(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,ja(e,t),Ra(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Li(t,Xi,r),r!==o.cache&&Bi(t,[Xi],n,!0),La(),r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=uc(e,t,r,n);break a}else if(r!==a){a=oi(Error(i(424)),t),Ni(a),t=uc(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Si=cf(e.firstChild),xi=t,Ci=!0,wi=null,Ti=!0,n=Oa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(ji(),r===a){t=xc(e,t,n);break a}Xs(e,t,r,n)}t=t.child}return t;case 26:return oc(e,t),e===null?(n=kf(t.type,null,t.pendingProps,null))?t.memoizedState=n:Ci||(n=t.type,e=t.pendingProps,r=Bd(se.current).createElement(n),r[rt]=t,r[it]=e,Pd(r,n,e),gt(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return de(t),e===null&&Ci&&(r=t.stateNode=ff(t.type,t.pendingProps,se.current),xi=t,Ti=!0,a=Si,Zd(t.type)?(lf=a,Si=cf(r.firstChild)):Si=a),Xs(e,t,t.pendingProps.children,n),oc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Ci&&((a=r=Si)&&(r=tf(r,t.type,t.pendingProps,Ti),r===null?a=!1:(t.stateNode=r,xi=t,Si=cf(r.firstChild),Ti=!1,a=!0)),a||Di(t)),de(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Ud(a,o)?r=null:s!==null&&Ud(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=mo(e,t,_o,null,null,n),Qf._currentValue=a),oc(e,t),Xs(e,t,r,n),t.child;case 6:return e===null&&Ci&&((e=n=Si)&&(n=nf(n,t.pendingProps,Ti),n===null?e=!1:(t.stateNode=n,xi=t,Si=null,e=!0)),e||Di(t)),null;case 13:return mc(e,t,n);case 4:return le(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Da(t,null,r,n):Xs(e,t,r,n),t.child;case 11:return Zs(e,t,t.type,t.pendingProps,n);case 7:return Xs(e,t,t.pendingProps,n),t.child;case 8:return Xs(e,t,t.pendingProps.children,n),t.child;case 12:return Xs(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Li(t,t.type,r.value),Xs(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,Ui(t),a=Wi(a),r=r(a),t.flags|=1,Xs(e,t,r,n),t.child;case 14:return Qs(e,t,t.type,t.pendingProps,n);case 15:return $s(e,t,t.type,t.pendingProps,n);case 19:return bc(e,t,n);case 31:return ac(e,t,n);case 22:return ec(e,t,n,t.pendingProps);case 24:return Ui(t),r=Wi(Xi),e===null?(a=ca(),a===null&&(a=Pl,o=Zi(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Aa(t),Li(t,Xi,a)):((e.lanes&n)!==0&&(ja(e,t),Ra(t,null,null,n),La()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Li(t,Xi,r),r!==a.cache&&Bi(t,[Xi],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Li(t,Xi,r))),Xs(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Tc(e){e.flags|=4}function Ec(e,t,n,r,i){if((t=(e.mode&32)!=0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(Su())e.flags|=8192;else throw va=ma,fa}else e.flags&=-16777217}function Dc(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Wf(t))if(Su())e.flags|=8192;else throw va=ma,fa}function Oc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ge(),e.lanes|=t,ql|=t)}function kc(e,t){if(!Ci)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Ac(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function jc(e,t,n){var r=t.pendingProps;switch(yi(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ac(t),null;case 1:return Ac(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Ri(Xi),ue(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Ai(t)?Tc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Mi())),Ac(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Tc(t),o===null?(Ac(t),Ec(t,a,null,r,n)):(Ac(t),Dc(t,o))):o?o===e.memoizedState?(Ac(t),t.flags&=-16777217):(Tc(t),Ac(t),Dc(t,o)):(e=e.memoizedProps,e!==r&&Tc(t),Ac(t),Ec(t,a,e,r,n)),null;case 27:if(fe(t),n=se.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Ac(t),null}e=L.current,Ai(t)?Oi(t,e):(e=ff(a,r,n),t.stateNode=e,Tc(t))}return Ac(t),null;case 5:if(fe(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Ac(t),null}if(o=L.current,Ai(t))Oi(t,o);else{var s=Bd(se.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[rt]=t,o[it]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Pd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Tc(t)}}return Ac(t),Ec(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=se.current,Ai(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=xi,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[rt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||jd(e.nodeValue,n)),e||Di(t,!0)}else e=Bd(e).createTextNode(r),e[rt]=t,t.stateNode=e}return Ac(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Ai(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[rt]=t}else ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ac(t),e=!1}else n=Mi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Qa(t),t):(Qa(t),null);if(t.flags&128)throw Error(i(558))}return Ac(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Ai(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[rt]=t}else ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ac(t),a=!1}else a=Mi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Qa(t),t):(Qa(t),null)}return Qa(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Oc(t,t.updateQueue),Ac(t),null);case 4:return ue(),e===null&&xd(t.stateNode.containerInfo),Ac(t),null;case 10:return Ri(t.type),Ac(t),null;case 19:if(F($a),r=t.memoizedState,r===null)return Ac(t),null;if(a=(t.flags&128)!=0,o=r.rendering,o===null)if(a)kc(r,!1);else{if(Hl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=eo(e),o!==null){for(t.flags|=128,kc(r,!1),e=o.updateQueue,t.updateQueue=e,Oc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)$r(n,e),n=n.sibling;return I($a,$a.current&1|2),Ci&&gi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&we()>$l&&(t.flags|=128,a=!0,kc(r,!1),t.lanes=4194304)}else{if(!a)if(e=eo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Oc(t,e),kc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!Ci)return Ac(t),null}else 2*we()-r.renderingStartTime>$l&&n!==536870912&&(t.flags|=128,a=!0,kc(r,!1),t.lanes=4194304);r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(Ac(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=we(),e.sibling=null,n=$a.current,I($a,a?n&1|2:n&1),Ci&&gi(t,r.treeForkCount),e);case 22:case 23:return Qa(t),Ga(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Ac(t),t.subtreeFlags&6&&(t.flags|=8192)):Ac(t),n=t.updateQueue,n!==null&&Oc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&F(sa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Ri(Xi),Ac(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Mc(e,t){switch(yi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ri(Xi),ue(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return fe(t),null;case 31:if(t.memoizedState!==null){if(Qa(t),t.alternate===null)throw Error(i(340));ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Qa(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return F($a),null;case 4:return ue(),null;case 10:return Ri(t.type),null;case 22:case 23:return Qa(t),Ga(),e!==null&&F(sa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Ri(Xi),null;case 25:return null;default:return null}}function Nc(e,t){switch(yi(t),t.tag){case 3:Ri(Xi),ue();break;case 26:case 27:case 5:fe(t);break;case 4:ue();break;case 31:t.memoizedState!==null&&Qa(t);break;case 13:Qa(t);break;case 19:F($a);break;case 10:Ri(t.type);break;case 22:case 23:Qa(t),Ga(),e!==null&&F(sa);break;case 24:Ri(Xi)}}function Pc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Uu(t,t.return,e)}}function Fc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Uu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Uu(t,t.return,e)}}function Ic(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Ba(t,n)}catch(t){Uu(e,e.return,t)}}}function Lc(e,t,n){n.props=Rs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Uu(e,t,n)}}function Rc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Uu(e,t,n)}}function zc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Uu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Uu(e,t,n)}else n.current=null}function Bc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Uu(e,e.return,t)}}function Vc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[it]=t}catch(t){Uu(e,e.return,t)}}function Hc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Uc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Hc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Wc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Xt));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Wc(e,t,n),e=e.sibling;e!==null;)Wc(e,t,n),e=e.sibling}function Gc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Gc(e,t,n),e=e.sibling;e!==null;)Gc(e,t,n),e=e.sibling}function Kc(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[rt]=e,t[it]=n}catch(t){Uu(e,e.return,t)}}var qc=!1,Jc=!1,Yc=!1,Xc=typeof WeakSet==`function`?WeakSet:Set,Zc=null;function Qc(e,t){if(e=e.containerInfo,Rd=sp,e=hr(e),gr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,Zc=t;Zc!==null;)if(t=Zc,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,Zc=e;else for(;Zc!==null;){switch(t=Zc,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=Rs(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Uu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ef(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ef(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,Zc=e;break}Zc=t.return}}function $c(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:ml(e,n),r&4&&Pc(5,n);break;case 1:if(ml(e,n),r&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Uu(n,n.return,e)}else{var i=Rs(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Uu(n,n.return,e)}}r&64&&Ic(n),r&512&&Rc(n,n.return);break;case 3:if(ml(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Ba(e,t)}catch(e){Uu(n,n.return,e)}}break;case 27:t===null&&r&4&&Kc(n);case 26:case 5:ml(e,n),t===null&&r&4&&Bc(n),r&512&&Rc(n,n.return);break;case 12:ml(e,n);break;case 31:ml(e,n),r&4&&al(e,n);break;case 13:ml(e,n),r&4&&ol(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=qu.bind(null,n),sf(e,n))));break;case 22:if(r=n.memoizedState!==null||qc,!r){t=t!==null&&t.memoizedState!==null||Jc,i=qc;var a=Jc;qc=r,(Jc=t)&&!a?gl(e,n,(n.subtreeFlags&8772)!=0):ml(e,n),qc=i,Jc=a}break;case 30:break;default:ml(e,n)}}function el(e){var t=e.alternate;t!==null&&(e.alternate=null,el(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&dt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var tl=null,nl=!1;function rl(e,t,n){for(n=n.child;n!==null;)il(e,t,n),n=n.sibling}function il(e,t,n){if(Me&&typeof Me.onCommitFiberUnmount==`function`)try{Me.onCommitFiberUnmount(je,n)}catch{}switch(n.tag){case 26:Jc||zc(n,t),rl(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Jc||zc(n,t);var r=tl,i=nl;Zd(n.type)&&(tl=n.stateNode,nl=!1),rl(e,t,n),pf(n.stateNode),tl=r,nl=i;break;case 5:Jc||zc(n,t);case 6:if(r=tl,i=nl,tl=null,rl(e,t,n),tl=r,nl=i,tl!==null)if(nl)try{(tl.nodeType===9?tl.body:tl.nodeName===`HTML`?tl.ownerDocument.body:tl).removeChild(n.stateNode)}catch(e){Uu(n,t,e)}else try{tl.removeChild(n.stateNode)}catch(e){Uu(n,t,e)}break;case 18:tl!==null&&(nl?(e=tl,Qd(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):Qd(tl,n.stateNode));break;case 4:r=tl,i=nl,tl=n.stateNode.containerInfo,nl=!0,rl(e,t,n),tl=r,nl=i;break;case 0:case 11:case 14:case 15:Fc(2,n,t),Jc||Fc(4,n,t),rl(e,t,n);break;case 1:Jc||(zc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Lc(n,t,r)),rl(e,t,n);break;case 21:rl(e,t,n);break;case 22:Jc=(r=Jc)||n.memoizedState!==null,rl(e,t,n),Jc=r;break;default:rl(e,t,n)}}function al(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Np(e)}catch(e){Uu(t,t.return,e)}}}function ol(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Np(e)}catch(e){Uu(t,t.return,e)}}function sl(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Xc),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Xc),t;default:throw Error(i(435,e.tag))}}function cl(e,t){var n=sl(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=Ju.bind(null,e,t);t.then(r,r)}})}function ll(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(Zd(c.type)){tl=c.stateNode,nl=!1;break a}break;case 5:tl=c.stateNode,nl=!1;break a;case 3:case 4:tl=c.stateNode.containerInfo,nl=!0;break a}c=c.return}if(tl===null)throw Error(i(160));il(o,s,a),tl=null,nl=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)dl(t,e),t=t.sibling}var ul=null;function dl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:ll(t,e),fl(e),r&4&&(Fc(3,e,e.return),Pc(3,e),Fc(5,e,e.return));break;case 1:ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),r&64&&qc&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=ul;if(ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null)if(r===null)if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[ut]||o[rt]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Pd(o,r,n),o[rt]=e,gt(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Vf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[rt]=e,gt(o),r=o}e.stateNode=r}else Hf(a,e.type,e.stateNode);else e.stateNode=If(a,r,e.memoizedProps);else o===r?r===null&&e.stateNode!==null&&Vc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Hf(a,e.type,e.stateNode):If(a,r,e.memoizedProps))}break;case 27:ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),n!==null&&r&4&&Vc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),e.flags&32){a=e.stateNode;try{Ht(a,``)}catch(t){Uu(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,Vc(e,a,n===null?a:n.memoizedProps)),r&1024&&(Yc=!0);break;case 6:if(ll(t,e),fl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Uu(e,e.return,t)}}break;case 3:if(Bf=null,a=ul,ul=gf(t.containerInfo),ll(t,e),ul=a,fl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Np(t.containerInfo)}catch(t){Uu(e,e.return,t)}Yc&&(Yc=!1,pl(e));break;case 4:r=ul,ul=gf(e.stateNode.containerInfo),ll(t,e),fl(e),ul=r;break;case 12:ll(t,e),fl(e);break;case 31:ll(t,e),fl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 13:ll(t,e),fl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Zl=we()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=qc,d=Jc;if(qc=u||a,Jc=d||l,ll(t,e),Jc=d,qc=u,fl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||qc||Jc||hl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Uu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){Uu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?$d(m,!0):$d(l.stateNode,!1)}catch(e){Uu(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,cl(e,n))));break;case 19:ll(t,e),fl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 30:break;case 21:break;default:ll(t,e),fl(e)}}function fl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Hc(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;Gc(e,Uc(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(Ht(o,``),n.flags&=-33),Gc(e,Uc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;Wc(e,Uc(e),s);break;default:throw Error(i(161))}}catch(t){Uu(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function pl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;pl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function ml(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)$c(e,t.alternate,t),t=t.sibling}function hl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Fc(4,t,t.return),hl(t);break;case 1:zc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Lc(t,t.return,n),hl(t);break;case 27:pf(t.stateNode);case 26:case 5:zc(t,t.return),hl(t);break;case 22:t.memoizedState===null&&hl(t);break;case 30:hl(t);break;default:hl(t)}e=e.sibling}}function gl(e,t,n){for(n&&=(t.subtreeFlags&8772)!=0,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:gl(i,a,n),Pc(4,a);break;case 1:if(gl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Uu(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)za(c[i],s)}catch(e){Uu(r,r.return,e)}}n&&o&64&&Ic(a),Rc(a,a.return);break;case 27:Kc(a);case 26:case 5:gl(i,a,n),n&&r===null&&o&4&&Bc(a),Rc(a,a.return);break;case 12:gl(i,a,n);break;case 31:gl(i,a,n),n&&o&4&&al(i,a);break;case 13:gl(i,a,n),n&&o&4&&ol(i,a);break;case 22:a.memoizedState===null&&gl(i,a,n),Rc(a,a.return);break;case 30:break;default:gl(i,a,n)}t=t.sibling}}function _l(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&Qi(n))}function vl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Qi(e))}function yl(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)bl(e,t,n,r),t=t.sibling}function bl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:yl(e,t,n,r),i&2048&&Pc(9,t);break;case 1:yl(e,t,n,r);break;case 3:yl(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Qi(e)));break;case 12:if(i&2048){yl(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Uu(t,t.return,e)}}else yl(e,t,n,r);break;case 31:yl(e,t,n,r);break;case 13:yl(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?yl(e,t,n,r):(a._visibility|=2,xl(e,t,n,r,(t.subtreeFlags&10256)!=0||!1)):a._visibility&2?yl(e,t,n,r):Sl(e,t),i&2048&&_l(o,t);break;case 24:yl(e,t,n,r),i&2048&&vl(t.alternate,t);break;default:yl(e,t,n,r)}}function xl(e,t,n,r,i){for(i&&=(t.subtreeFlags&10256)!=0||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:xl(a,o,s,c,i),Pc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,xl(a,o,s,c,i)):u._visibility&2?xl(a,o,s,c,i):Sl(a,o),i&&l&2048&&_l(o.alternate,o);break;case 24:xl(a,o,s,c,i),i&&l&2048&&vl(o.alternate,o);break;default:xl(a,o,s,c,i)}t=t.sibling}}function Sl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Sl(n,r),i&2048&&_l(r.alternate,r);break;case 24:Sl(n,r),i&2048&&vl(r.alternate,r);break;default:Sl(n,r)}t=t.sibling}}var Cl=8192;function wl(e,t,n){if(e.subtreeFlags&Cl)for(e=e.child;e!==null;)Tl(e,t,n),e=e.sibling}function Tl(e,t,n){switch(e.tag){case 26:wl(e,t,n),e.flags&Cl&&e.memoizedState!==null&&Gf(n,ul,e.memoizedState,e.memoizedProps);break;case 5:wl(e,t,n);break;case 3:case 4:var r=ul;ul=gf(e.stateNode.containerInfo),wl(e,t,n),ul=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Cl,Cl=16777216,wl(e,t,n),Cl=r):wl(e,t,n));break;default:wl(e,t,n)}}function El(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Dl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Zc=r,Al(r,e)}El(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Ol(e),e=e.sibling}function Ol(e){switch(e.tag){case 0:case 11:case 15:Dl(e),e.flags&2048&&Fc(9,e,e.return);break;case 3:Dl(e);break;case 12:Dl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,kl(e)):Dl(e);break;default:Dl(e)}}function kl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Zc=r,Al(r,e)}El(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Fc(8,t,t.return),kl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,kl(t));break;default:kl(t)}e=e.sibling}}function Al(e,t){for(;Zc!==null;){var n=Zc;switch(n.tag){case 0:case 11:case 15:Fc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:Qi(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,Zc=r;else a:for(n=e;Zc!==null;){r=Zc;var i=r.sibling,a=r.return;if(el(r),r===n){Zc=null;break a}if(i!==null){i.return=a,Zc=i;break a}Zc=a}}}var jl={getCacheForType:function(e){var t=Wi(Xi),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Wi(Xi).controller.signal}},Ml=typeof WeakMap==`function`?WeakMap:Map,Nl=0,Pl=null,Q=null,Fl=0,Il=0,Ll=null,Rl=!1,zl=!1,Bl=!1,Vl=0,Hl=0,Ul=0,Wl=0,Gl=0,Kl=0,ql=0,Jl=null,Yl=null,Xl=!1,Zl=0,Ql=0,$l=1/0,eu=null,tu=null,nu=0,ru=null,iu=null,au=0,ou=0,su=null,cu=null,lu=0,uu=null;function du(){return Nl&2&&Fl!==0?Fl&-Fl:M.T===null?et():ud()}function fu(){if(Kl===0)if(!(Fl&536870912)||Ci){var e=ze;ze<<=1,!(ze&3932160)&&(ze=262144),Kl=e}else Kl=536870912;return e=Ka.current,e!==null&&(e.flags|=32),Kl}function pu(e,t,n){(e===Pl&&(Il===2||Il===9)||e.cancelPendingCommit!==null)&&(bu(e,0),_u(e,Fl,Kl,!1)),qe(e,n),(!(Nl&2)||e!==Pl)&&(e===Pl&&(!(Nl&2)&&(Wl|=n),Hl===4&&_u(e,Fl,Kl,!1)),nd(e))}function mu(e,t,n){if(Nl&6)throw Error(i(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||Ue(e,t),a=r?Ou(e,t):Eu(e,t,!0),o=r;do{if(a===0){zl&&!r&&_u(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!gu(n)){a=Eu(e,t,!1),o=!1;continue}if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=Jl;var l=c.current.memoizedState.isDehydrated;if(l&&(bu(c,s).flags|=256),s=Eu(c,s,!1),s!==2){if(Bl&&!l){c.errorRecoveryDisabledLanes|=o,Wl|=o,a=4;break a}o=Yl,Yl=a,o!==null&&(Yl===null?Yl=o:Yl.push.apply(Yl,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){bu(e,0),_u(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:_u(r,t,Kl,!Rl);break a;case 2:Yl=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=Zl+300-we(),10<a)){if(_u(r,t,Kl,!Rl),He(r,0,!0)!==0)break a;au=t,r.timeoutHandle=Kd(hu.bind(null,r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,`Throttled`,-0,0),a);break a}hu(r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,null,-0,0)}}break}while(1);nd(e)}function hu(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Xt},Tl(t,a,d);var m=(a&62914560)===a?Zl-we():(a&4194048)===a?Ql-we():0;if(m=qf(d,m),m!==null){au=a,e.cancelPendingCommit=m(Fu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),_u(e,a,o,!l);return}}Fu(e,t,a,n,r,i,o,s,c)}function gu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!ur(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function _u(e,t,n,r){t&=~Gl,t&=~Wl,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Pe(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Ye(e,n,t)}function vu(){return Nl&6?!0:(rd(0,!1),!1)}function yu(){if(Q!==null){if(Il===0)var e=Q.return;else e=Q,Ii=Fi=null,bo(e),xa=null,Sa=0,e=Q;for(;e!==null;)Nc(e.alternate,e),e=e.return;Q=null}}function bu(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,qd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),au=0,yu(),Pl=e,Q=n=Qr(e.current,null),Fl=t,Il=0,Ll=null,Rl=!1,zl=Ue(e,t),Bl=!1,ql=Kl=Gl=Wl=Ul=Hl=0,Yl=Jl=null,Xl=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Pe(r),a=1<<i;t|=e[i],r&=~a}return Vl=t,Hr(),n}function xu(e,t){Z=null,M.H=As,t===da||t===pa?(t=ya(),Il=3):t===fa?(t=ya(),Il=4):Il=t===Js?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Ll=t,Q===null&&(Hl=1,Hs(e,oi(t,e.current)))}function Su(){var e=Ka.current;return e===null?!0:(Fl&4194048)===Fl?qa===null:(Fl&62914560)===Fl||Fl&536870912?e===qa:!1}function Cu(){var e=M.H;return M.H=As,e===null?As:e}function wu(){var e=M.A;return M.A=jl,e}function Tu(){Hl=4,Rl||(Fl&4194048)!==Fl&&Ka.current!==null||(zl=!0),!(Ul&134217727)&&!(Wl&134217727)||Pl===null||_u(Pl,Fl,Kl,!1)}function Eu(e,t,n){var r=Nl;Nl|=2;var i=Cu(),a=wu();(Pl!==e||Fl!==t)&&(eu=null,bu(e,t)),t=!1;var o=Hl;a:do try{if(Il!==0&&Q!==null){var s=Q,c=Ll;switch(Il){case 8:yu(),o=6;break a;case 3:case 2:case 9:case 6:Ka.current===null&&(t=!0);var l=Il;if(Il=0,Ll=null,Mu(e,s,c,l),n&&zl){o=0;break a}break;default:l=Il,Il=0,Ll=null,Mu(e,s,c,l)}}Du(),o=Hl;break}catch(t){xu(e,t)}while(1);return t&&e.shellSuspendCounter++,Ii=Fi=null,Nl=r,M.H=i,M.A=a,Q===null&&(Pl=null,Fl=0,Hr()),o}function Du(){for(;Q!==null;)Au(Q)}function Ou(e,t){var n=Nl;Nl|=2;var r=Cu(),a=wu();Pl!==e||Fl!==t?(eu=null,$l=we()+500,bu(e,t)):zl=Ue(e,t);a:do try{if(Il!==0&&Q!==null){t=Q;var o=Ll;b:switch(Il){case 1:Il=0,Ll=null,Mu(e,t,o,1);break;case 2:case 9:if(ha(o)){Il=0,Ll=null,ju(t);break}t=function(){Il!==2&&Il!==9||Pl!==e||(Il=7),nd(e)},o.then(t,t);break a;case 3:Il=7;break a;case 4:Il=5;break a;case 7:ha(o)?(Il=0,Ll=null,ju(t)):(Il=0,Ll=null,Mu(e,t,o,7));break;case 5:var s=null;switch(Q.tag){case 26:s=Q.memoizedState;case 5:case 27:var c=Q;if(s?Wf(s):c.stateNode.complete){Il=0,Ll=null;var l=c.sibling;if(l!==null)Q=l;else{var u=c.return;u===null?Q=null:(Q=u,Nu(u))}break b}}Il=0,Ll=null,Mu(e,t,o,5);break;case 6:Il=0,Ll=null,Mu(e,t,o,6);break;case 8:yu(),Hl=6;break a;default:throw Error(i(462))}}ku();break}catch(t){xu(e,t)}while(1);return Ii=Fi=null,M.H=r,M.A=a,Nl=n,Q===null?(Pl=null,Fl=0,Hr(),Hl):0}function ku(){for(;Q!==null&&!Se();)Au(Q)}function Au(e){var t=wc(e.alternate,e,Vl);e.memoizedProps=e.pendingProps,t===null?Nu(e):Q=t}function ju(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=cc(n,t,t.pendingProps,t.type,void 0,Fl);break;case 11:t=cc(n,t,t.pendingProps,t.type.render,t.ref,Fl);break;case 5:bo(t);default:Nc(n,t),t=Q=$r(t,Vl),t=wc(n,t,Vl)}e.memoizedProps=e.pendingProps,t===null?Nu(e):Q=t}function Mu(e,t,n,r){Ii=Fi=null,bo(t),xa=null,Sa=0;var i=t.return;try{if(qs(e,i,t,n,Fl)){Hl=1,Hs(e,oi(n,e.current)),Q=null;return}}catch(t){if(i!==null)throw Q=i,t;Hl=1,Hs(e,oi(n,e.current)),Q=null;return}t.flags&32768?(Ci||r===1?e=!0:zl||Fl&536870912?e=!1:(Rl=e=!0,(r===2||r===9||r===3||r===6)&&(r=Ka.current,r!==null&&r.tag===13&&(r.flags|=16384))),Pu(t,e)):Nu(t)}function Nu(e){var t=e;do{if(t.flags&32768){Pu(t,Rl);return}e=t.return;var n=jc(t.alternate,t,Vl);if(n!==null){Q=n;return}if(t=t.sibling,t!==null){Q=t;return}Q=t=e}while(t!==null);Hl===0&&(Hl=5)}function Pu(e,t){do{var n=Mc(e.alternate,e);if(n!==null){n.flags&=32767,Q=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Q=e;return}Q=e=n}while(e!==null);Hl=6,Q=null}function Fu(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Bu();while(nu!==0);if(Nl&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=Vr,Je(e,n,o,s,c,l),e===Pl&&(Q=Pl=null,Fl=0),iu=t,ru=e,au=n,ou=o,su=a,cu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Yu(Oe,function(){return Vu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=M.T,M.T=null,a=N.p,N.p=2,s=Nl,Nl|=4;try{Qc(e,t,n)}finally{Nl=s,N.p=a,M.T=r}}nu=1,Iu(),Lu(),Ru()}}function Iu(){if(nu===1){nu=0;var e=ru,t=iu,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Nl;Nl|=4;try{dl(t,e);var a=zd,o=hr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&mr(s.ownerDocument.documentElement,s)){if(c!==null&&gr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=pr(s,h),v=pr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}sp=!!Rd,zd=Rd=null}finally{Nl=i,N.p=r,M.T=n}}e.current=t,nu=2}}function Lu(){if(nu===2){nu=0;var e=ru,t=iu,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Nl;Nl|=4;try{$c(e,t.alternate,t)}finally{Nl=i,N.p=r,M.T=n}}nu=3}}function Ru(){if(nu===4||nu===3){nu=0,Ce();var e=ru,t=iu,n=au,r=cu;t.subtreeFlags&10256||t.flags&10256?nu=5:(nu=0,iu=ru=null,zu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(tu=null),$e(n),t=t.stateNode,Me&&typeof Me.onCommitFiberRoot==`function`)try{Me.onCommitFiberRoot(je,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=M.T,i=N.p,N.p=2,M.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{M.T=t,N.p=i}}au&3&&Bu(),nd(e),i=e.pendingLanes,n&261930&&i&42?e===uu?lu++:(lu=0,uu=e):lu=0,rd(0,!1)}}function zu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Qi(t)))}function Bu(){return Iu(),Lu(),Ru(),Vu()}function Vu(){if(nu!==5)return!1;var e=ru,t=ou;ou=0;var n=$e(au),r=M.T,a=N.p;try{N.p=32>n?32:n,M.T=null,n=su,su=null;var o=ru,s=au;if(nu=0,iu=ru=null,au=0,Nl&6)throw Error(i(331));var c=Nl;if(Nl|=4,Ol(o.current),bl(o,o.current,s,n),Nl=c,rd(0,!1),Me&&typeof Me.onPostCommitFiberRoot==`function`)try{Me.onPostCommitFiberRoot(je,o)}catch{}return!0}finally{N.p=a,M.T=r,zu(e,t)}}function Hu(e,t,n){t=oi(n,t),t=Ws(e.stateNode,t,2),e=Na(e,t,2),e!==null&&(qe(e,2),nd(e))}function Uu(e,t,n){if(e.tag===3)Hu(e,e,n);else for(;t!==null;){if(t.tag===3){Hu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(tu===null||!tu.has(r))){e=oi(n,e),n=Gs(2),r=Na(t,n,2),r!==null&&(Ks(n,r,t,e),qe(r,2),nd(r));break}}t=t.return}}function Wu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ml;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Bl=!0,i.add(n),e=Gu.bind(null,e,t,n),t.then(e,e))}function Gu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Pl===e&&(Fl&n)===n&&(Hl===4||Hl===3&&(Fl&62914560)===Fl&&300>we()-Zl?!(Nl&2)&&bu(e,0):Gl|=n,ql===Fl&&(ql=0)),nd(e)}function Ku(e,t){t===0&&(t=Ge()),e=Gr(e,t),e!==null&&(qe(e,t),nd(e))}function qu(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Ku(e,n)}function Ju(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),Ku(e,n)}function Yu(e,t){return be(e,t)}var Xu=null,Zu=null,Qu=!1,$u=!1,ed=!1,td=0;function nd(e){e!==Zu&&e.next===null&&(Zu===null?Xu=Zu=e:Zu=Zu.next=e),$u=!0,Qu||(Qu=!0,ld())}function rd(e,t){if(!ed&&$u){ed=!0;do for(var n=!1,r=Xu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Pe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,cd(r,a))}else a=Fl,a=He(r,r===Pl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Ue(r,a)||(n=!0,cd(r,a));r=r.next}while(n);ed=!1}}function id(){ad()}function ad(){$u=Qu=!1;var e=0;td!==0&&Gd()&&(e=td);for(var t=we(),n=null,r=Xu;r!==null;){var i=r.next,a=od(r,t);a===0?(r.next=null,n===null?Xu=i:n.next=i,i===null&&(Zu=n)):(n=r,(e!==0||a&3)&&($u=!0)),r=i}nu!==0&&nu!==5||rd(e,!1),td!==0&&(td=0)}function od(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Pe(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=We(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Pl,n=Fl,n=He(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Il===2||Il===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&xe(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Ue(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&xe(r),$e(n)){case 2:case 8:n=De;break;case 32:n=Oe;break;case 268435456:n=ke;break;default:n=Oe}return r=sd.bind(null,e),n=be(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&xe(r),e.callbackPriority=2,e.callbackNode=null,2}function sd(e,t){if(nu!==0&&nu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Bu()&&e.callbackNode!==n)return null;var r=Fl;return r=He(e,e===Pl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(mu(e,r,t),od(e,we()),e.callbackNode!=null&&e.callbackNode===n?sd.bind(null,e):null)}function cd(e,t){if(Bu())return null;mu(e,t,!0)}function ld(){Yd(function(){Nl&6?be(Ee,id):ad()})}function ud(){if(td===0){var e=ta;e===0&&(e=Re,Re<<=1,!(Re&261888)&&(Re=256)),td=e}return td}function dd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:Yt(``+e)}function fd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function pd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=dd((i[it]||null).action),o=r.submitter;o&&(t=(t=o[it]||null)?dd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new vn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(td!==0){var e=o?fd(i,o):new FormData(i);gs(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?fd(i,o):new FormData(i),gs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var md=0;md<Ir.length;md++){var hd=Ir[md];Lr(hd.toLowerCase(),`on`+(hd[0].toUpperCase()+hd.slice(1)))}Lr(Or,`onAnimationEnd`),Lr(kr,`onAnimationIteration`),Lr(Ar,`onAnimationStart`),Lr(`dblclick`,`onDoubleClick`),Lr(`focusin`,`onFocus`),Lr(`focusout`,`onBlur`),Lr(jr,`onTransitionRun`),Lr(Mr,`onTransitionStart`),Lr(Nr,`onTransitionCancel`),Lr(Pr,`onTransitionEnd`),bt(`onMouseEnter`,[`mouseout`,`mouseover`]),bt(`onMouseLeave`,[`mouseout`,`mouseover`]),bt(`onPointerEnter`,[`pointerout`,`pointerover`]),bt(`onPointerLeave`,[`pointerout`,`pointerover`]),yt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),yt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),yt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),yt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),yt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),yt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var gd=`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(` `),_d=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(gd));function vd(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Rr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Rr(e)}i.currentTarget=null,a=c}}}}function $(e,t){var n=t[ot];n===void 0&&(n=t[ot]=new Set);var r=e+`__bubble`;n.has(r)||(Sd(t,e,2,!1),n.add(r))}function yd(e,t,n){var r=0;t&&(r|=4),Sd(n,e,r,t)}var bd=`_reactListening`+Math.random().toString(36).slice(2);function xd(e){if(!e[bd]){e[bd]=!0,_t.forEach(function(t){t!==`selectionchange`&&(_d.has(t)||yd(t,!1,e),yd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[bd]||(t[bd]=!0,yd(`selectionchange`,!1,t))}}function Sd(e,t,n,r){switch(mp(t)){case 2:var i=cp;break;case 8:i=lp;break;default:i=up}n=i.bind(null,t,n,e),i=void 0,!sn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function Cd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=ft(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}rn(function(){var r=a,i=Qt(n),s=[];a:{var c=Fr.get(e);if(c!==void 0){var l=vn,u=e;switch(e){case`keypress`:if(pn(n)===0)break a;case`keydown`:case`keyup`:l=Pn;break;case`focusin`:u=`focus`,l=En;break;case`focusout`:u=`blur`,l=En;break;case`beforeblur`:case`afterblur`:l=En;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=wn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=Tn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=In;break;case Or:case kr:case Ar:l=Dn;break;case Pr:l=W;break;case`scroll`:case`scrollend`:l=H;break;case`wheel`:l=Ln;break;case`copy`:case`cut`:case`paste`:l=On;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Fn;break;case`toggle`:case`beforetoggle`:l=Rn}var d=(t&4)!=0,f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=an(m,p),g!=null&&d.push(wd(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==Zt&&(u=n.relatedTarget||n.fromElement)&&(ft(u)||u[at]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?ft(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=wn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Fn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:mt(l),h=u==null?c:mt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,ft(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Ed,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Dd(s,c,l,d,!1),u!==null&&f!==null&&Dd(s,f,u,d,!0)}}a:{if(c=r?mt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=rr;else if(Qn(c))if(ir)v=lr;else{v=sr;var y=or}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Kt(r.elementType)&&(v=rr):v=cr;if(v&&=v(e,r)){$n(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Rt(c,`number`,c.value)}switch(y=r?mt(r):window,e){case`focusin`:(Qn(y)||y.contentEditable===`true`)&&(vr=y,yr=r,br=null);break;case`focusout`:br=yr=vr=null;break;case`mousedown`:xr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:xr=!1,Sr(s,n,i);break;case`selectionchange`:if(_r)break;case`keydown`:case`keyup`:Sr(s,n,i)}var b;if(Bn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else Jn?Kn(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Un&&n.locale!==`ko`&&(Jn||x!==`onCompositionStart`?x===`onCompositionEnd`&&Jn&&(b=fn()):(ln=i,un=`value`in ln?ln.value:ln.textContent,Jn=!0)),y=Td(r,x),0<y.length&&(x=new kn(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=qn(n),b!==null&&(x.data=b)))),(b=Hn?Yn(e,n):Xn(e,n))&&(x=Td(r,`onBeforeInput`),0<x.length&&(y=new kn(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),pd(s,e,r,n,i)}vd(s,t)})}function wd(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Td(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=an(e,n),i!=null&&r.unshift(wd(e,i,a)),i=an(e,t),i!=null&&r.push(wd(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Ed(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Dd(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=an(n,a),l!=null&&o.unshift(wd(n,l,c))):i||(l=an(n,a),l!=null&&o.push(wd(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Od=/\r\n?/g,kd=/\u0000|\uFFFD/g;function Ad(e){return(typeof e==`string`?e:``+e).replace(Od,`
9
- `).replace(kd,``)}function jd(e,t){return t=Ad(t),Ad(e)===t}function Md(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Ht(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Ht(e,``+r);break;case`className`:Et(e,`class`,r);break;case`tabIndex`:Et(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Et(e,n,r);break;case`style`:Gt(e,r,o);break;case`data`:if(t!==`object`){Et(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Yt(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof o==`function`&&(n===`formAction`?(t!==`input`&&Md(e,t,`name`,a.name,a,null),Md(e,t,`formEncType`,a.formEncType,a,null),Md(e,t,`formMethod`,a.formMethod,a,null),Md(e,t,`formTarget`,a.formTarget,a,null)):(Md(e,t,`encType`,a.encType,a,null),Md(e,t,`method`,a.method,a,null),Md(e,t,`target`,a.target,a,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Yt(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=Xt);break;case`onScroll`:r!=null&&$(`scroll`,e);break;case`onScrollEnd`:r!=null&&$(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=Yt(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:$(`beforetoggle`,e),$(`toggle`,e),Tt(e,`popover`,r);break;case`xlinkActuate`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Tt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=qt.get(n)||n,Tt(e,n,r))}}function Nd(e,t,n,r,a,o){switch(n){case`style`:Gt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Ht(e,r):(typeof r==`number`||typeof r==`bigint`)&&Ht(e,``+r);break;case`onScroll`:r!=null&&$(`scroll`,e);break;case`onScrollEnd`:r!=null&&$(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=Xt);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!vt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[it]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):Tt(e,n,r)}}}function Pd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:$(`error`,e),$(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Md(e,t,o,s,n,null)}}a&&Md(e,t,`srcSet`,n.srcSet,n,null),r&&Md(e,t,`src`,n.src,n,null);return;case`input`:$(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:Md(e,t,r,d,n,null)}}Lt(e,o,c,l,u,s,a,!1);return;case`select`:for(a in $(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Md(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&zt(e,!!r,n,!0):zt(e,!!r,t,!1);return;case`textarea`:for(s in $(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:Md(e,t,s,c,n,null)}Vt(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Md(e,t,l,r,n,null)}return;case`dialog`:$(`beforetoggle`,e),$(`toggle`,e),$(`cancel`,e),$(`close`,e);break;case`iframe`:case`object`:$(`load`,e);break;case`video`:case`audio`:for(r=0;r<gd.length;r++)$(gd[r],e);break;case`image`:$(`error`,e),$(`load`,e);break;case`details`:$(`toggle`,e);break;case`embed`:case`source`:case`link`:$(`error`,e),$(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Md(e,t,u,r,n,null)}return;default:if(Kt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Nd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Md(e,t,c,r,n,null))}function Fd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Md(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&Md(e,t,p,m,r,f)}}It(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Md(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Md(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?zt(e,!!n,n?[]:``,!1):zt(e,!!n,t,!0)):zt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Md(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&Md(e,t,s,a,r,o)}Bt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Md(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Md(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Md(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:Md(e,t,u,p,r,m)}return;default:if(Kt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Nd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Nd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Md(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Md(e,t,f,p,r,m)}function Id(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Ld(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Id(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Rd=null,zd=null;function Bd(e){return e.nodeType===9?e:e.ownerDocument}function Vd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Hd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Ud(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Wd=null;function Gd(){var e=window.event;return e&&e.type===`popstate`?e===Wd?!1:(Wd=e,!0):(Wd=null,!1)}var Kd=typeof setTimeout==`function`?setTimeout:void 0,qd=typeof clearTimeout==`function`?clearTimeout:void 0,Jd=typeof Promise==`function`?Promise:void 0,Yd=typeof queueMicrotask==`function`?queueMicrotask:Jd===void 0?Kd:function(e){return Jd.resolve(null).then(e).catch(Xd)};function Xd(e){setTimeout(function(){throw e})}function Zd(e){return e===`head`}function Qd(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Np(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)pf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,pf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ut]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&pf(e.ownerDocument.body);n=i}while(n);Np(t)}function $d(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function ef(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:ef(n),dt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function tf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[ut])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=cf(e.nextSibling),e===null)break}return null}function nf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=cf(e.nextSibling),e===null))return null;return e}function rf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=cf(e.nextSibling),e===null))return null;return e}function af(e){return e.data===`$?`||e.data===`$~`}function of(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function sf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function cf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var lf=null;function uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return cf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function df(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function ff(e,t,n){switch(t=Bd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function pf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);dt(e)}var mf=new Map,hf=new Set;function gf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var _f=N.d;N.d={f:vf,r:yf,D:Sf,C:Cf,L:wf,m:Tf,X:Df,S:Ef,M:Of};function vf(){var e=_f.f(),t=vu();return e||t}function yf(e){var t=pt(e);t!==null&&t.tag===5&&t.type===`form`?vs(t):_f.r(e)}var bf=typeof document>`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Ft(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),gt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Ft(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Ft(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Ft(n.imageSizes)+`"]`)):i+=`[href="`+Ft(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=h({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),gt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Ft(r)+`"][href="`+Ft(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=h({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),gt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=ht(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=h({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);gt(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=ht(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),gt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=ht(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),gt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var a=(a=se.current)?gf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=ht(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=ht(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=ht(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Af(e){return`href="`+Ft(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return h({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),gt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Ft(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Ft(n.href)+`"]`);if(r)return t.instance=r,gt(r),r;var a=h({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),gt(r),Pd(r,`style`,a),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Af(n.href);var o=e.querySelector(jf(a));if(o)return t.state.loading|=4,t.instance=o,gt(o),o;r=Mf(n),(a=mf.get(a))&&Rf(r,a),o=(e.ownerDocument||e).createElement(`link`),gt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(a=e.querySelector(Ff(o)))?(t.instance=a,gt(a),a):(r=n,(a=mf.get(o))&&(r=h({},n),zf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),gt(a),Pd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Rf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function zf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Bf=null;function Vf(e,t,n){if(Bf===null){var r=new Map,i=Bf=new Map;i.set(n,r)}else i=Bf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ut]||a[rt]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Hf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,gt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),gt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&Kf===0&&(Kf=62500*Ld());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=Jf.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Qf={$$typeof:C,Provider:null,Consumer:null,_currentValue:ie,_currentValue2:ie,_threadCount:0};function $f(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ke(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ke(0),this.hiddenUpdates=Ke(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function ep(e,t,n,r,i,a,o,s,c,l,u,d){return e=new $f(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=Xr(3,null,null,t),e.current=a,a.stateNode=e,t=Zi(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Aa(a),e}function tp(e){return e?(e=Jr,e):Jr}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=Ma(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Na(e,r,t),n!==null&&(pu(n,e,t),Pa(n,e,t))}function rp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ip(e,t){rp(e,t),(e=e.alternate)&&rp(e,t)}function ap(e){if(e.tag===13||e.tag===31){var t=Gr(e,67108864);t!==null&&pu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=du();t=Qe(t);var n=Gr(e,t);n!==null&&pu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=2,up(e,t,n,r)}finally{N.p=a,M.T=i}}function lp(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=8,up(e,t,n,r)}finally{N.p=a,M.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)Cd(e,t,r,fp,n),Cp(e,r);else if(Tp(i,e,t,n,r))r.stopPropagation();else if(Cp(e,r),t&4&&-1<Sp.indexOf(e)){for(;i!==null;){var a=pt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ve(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Pe(o);s.entanglements[1]|=c,o&=~c}nd(a),!(Nl&6)&&($l=we()+500,rd(0,!1))}}break;case 31:case 13:s=Gr(a,2),s!==null&&pu(s,a,2),vu(),ip(a,2)}if(a=dp(r),a===null&&Cd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Cd(e,t,r,null,n)}}function dp(e){return e=Qt(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=ft(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return fp=e,null}function mp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(Te()){case Ee:return 2;case De:return 8;case Oe:case B:return 32;case ke:return 268435456;default:return 32}default:return 32}}var hp=!1,gp=null,_p=null,vp=null,yp=new Map,bp=new Map,xp=[],Sp=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Cp(e,t){switch(e){case`focusin`:case`focusout`:gp=null;break;case`dragenter`:case`dragleave`:_p=null;break;case`mouseover`:case`mouseout`:vp=null;break;case`pointerover`:case`pointerout`:yp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:bp.delete(t.pointerId)}}function wp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=pt(t),t!==null&&ap(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Tp(e,t,n,r,i){switch(t){case`focusin`:return gp=wp(gp,e,t,n,r,i),!0;case`dragenter`:return _p=wp(_p,e,t,n,r,i),!0;case`mouseover`:return vp=wp(vp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return yp.set(a,wp(yp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,bp.set(a,wp(bp.get(a)||null,e,t,n,r,i)),!0}return!1}function Ep(e){var t=ft(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,tt(e.priority,function(){op(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,tt(e.priority,function(){op(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Dp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=dp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Zt=r,n.target.dispatchEvent(r),Zt=null}else return t=pt(n),t!==null&&ap(t),e.blockedOn=n,!1;t.shift()}return!0}function Op(e,t,n){Dp(e)&&n.delete(t)}function kp(){hp=!1,gp!==null&&Dp(gp)&&(gp=null),_p!==null&&Dp(_p)&&(_p=null),vp!==null&&Dp(vp)&&(vp=null),yp.forEach(Op),bp.forEach(Op)}function Ap(e,n){e.blockedOn===n&&(e.blockedOn=null,hp||(hp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,kp)))}var jp=null;function Mp(e){jp!==e&&(jp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){jp===e&&(jp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(pp(r||n)===null)continue;break}var a=pt(n);a!==null&&(e.splice(t,3),t-=3,gs(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Np(e){function t(t){return Ap(t,e)}gp!==null&&Ap(gp,e),_p!==null&&Ap(_p,e),vp!==null&&Ap(vp,e),yp.forEach(t),bp.forEach(t);for(var n=0;n<xp.length;n++){var r=xp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<xp.length&&(n=xp[0],n.blockedOn===null);)Ep(n),n.blockedOn===null&&xp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[it]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[it]||null)s=o.formAction;else if(pp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Mp(n)}}}function Pp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Fp(e){this._internalRoot=e}Ip.prototype.render=Fp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;np(n,du(),e,t,null,null)},Ip.prototype.unmount=Fp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;np(e.current,2,null,e,null,null),vu(),t[at]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=et();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xp.length&&t!==0&&t<xp[n].priority;n++);xp.splice(n,0,e),n===0&&Ep(e)}};var Lp=n.version;if(Lp!==`19.2.4`)throw Error(i(527,Lp,`19.2.4`));N.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=d(t),e=e===null?null:p(e),e=e===null?null:e.stateNode,e};var Rp={bundleType:0,version:`19.2.4`,rendererPackageName:`react-dom`,currentDispatcherRef:M,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{je=zp.inject(Rp),Me=zp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=zs,s=Bs,c=Vs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=ep(e,1,!1,null,null,n,r,null,o,s,c,Pp),e[at]=t.current,xd(e),new Fp(t)}})),g=c(o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=h()}))(),1),_=c(u(),1),v=500,y=200,b=3e3,x=1e3,S=3e4,C=Object.freeze({counters:Object.freeze({}),latestBurst:null,burstRing:Object.freeze([]),burstSeq:0,lifecycleRing:Object.freeze([]),connectionSeq:0,connected:!1,reconnectAttempts:0,lastErrorAt:null,reconnectDelayMs:x}),w=new Set,T={},E=[],D=[],O=[],ee=!1,k=!1,A=null,j=null,te=null,ne=!1,re=typeof localStorage<`u`&&localStorage.getItem(`DEBUG_SSE`)===`1`;function M(e,t){re&&(t?console.debug(`[ssg-sse] ${e}`,t):console.debug(`[ssg-sse] ${e}`))}function N(){ne||(ne=!0,queueMicrotask(ie))}function ie(){ne=!1;let e=Object.keys(T),t=E,n=D,r=O,i=ee,a=A!==null||j!==null||te!==null;if(e.length===0&&t.length===0&&n.length===0&&r.length===0&&!i&&!a)return;let o=C.counters;if(e.length>0){let t={...C.counters};for(let n of e)t[n]=(t[n]??0)+(T[n]??0);o=Object.freeze(t),T={}}let s=C.burstRing,c=C.latestBurst,l=C.burstSeq;if(t.length>0){let e=C.burstRing.length+t.length>v?[...C.burstRing,...t].slice(-v):[...C.burstRing,...t];s=Object.freeze(e),c=t[t.length-1]??c,l=C.burstSeq+t.length,E=[]}if(n.length>0){let e=new Map;for(let t of n)e.set(t.tool_use_id,t);let t=!1,r=s.map(n=>{if(!n.tool_use_id)return n;let r=e.get(n.tool_use_id);if(!r)return n;t=!0;let i=n.output_tokens??0,a=n.complete_ts_ms??0,o=Math.max(i,r.output_tokens),s=Math.max(a,r.ts_ms),c=Math.max(n.complete_duration_ms??0,r.duration_ms??0);return{...n,output_tokens:o,complete_ts_ms:s,...c>0?{complete_duration_ms:c}:{}}});t&&(s=Object.freeze(r),l=C.burstSeq+1),D=[]}let u=C.lifecycleRing;if(r.length>0){let e=C.lifecycleRing.length+r.length>y?[...C.lifecycleRing,...r].slice(-y):[...C.lifecycleRing,...r];u=Object.freeze(e),O=[]}let d=C.connected,f=C.connectionSeq;i&&(d=k,f=C.connectionSeq+1,ee=!1);let p=C.reconnectAttempts,m=C.lastErrorAt,h=C.reconnectDelayMs;A!==null&&(p=A,A=null),j!==null&&(m=j,j=null),te!==null&&(h=te,te=null),C=Object.freeze({counters:o,latestBurst:c,burstRing:s,burstSeq:l,lifecycleRing:u,connectionSeq:f,connected:d,reconnectAttempts:p,lastErrorAt:m,reconnectDelayMs:h});for(let e of w)e()}var ae=null,oe=0,P=new Set,F=new Map,I=null,L=x,R=null;function se(e,t){if(e===`eval-burst`){try{let e=JSON.parse(t.data);Array.isArray(e?.bursts)&&(E.push(...e.bursts),N())}catch{}return}if(e===`eval-burst-complete`){try{let e=JSON.parse(t.data);if(e&&typeof e.tool_use_id==`string`&&e.tool_use_id.length>0&&typeof e.output_tokens==`number`&&Number.isFinite(e.output_tokens)&&typeof e.ts_ms==`number`&&Number.isFinite(e.ts_ms)){let t={ts_ms:e.ts_ms,tool_use_id:e.tool_use_id,output_tokens:Math.max(0,e.output_tokens),...typeof e.duration_ms==`number`&&Number.isFinite(e.duration_ms)?{duration_ms:e.duration_ms}:{}};D.push(t),N()}}catch{}return}if(e===`session-lifecycle`){try{let e=JSON.parse(t.data);Array.isArray(e?.events)&&e.events.length>0&&(O.push(...e.events),N())}catch{}return}T[e]=(T[e]??0)+1,N()}function ce(e){if(!ae||F.has(e))return;let t=t=>se(e,t);ae.addEventListener(e,t),F.set(e,t)}var le=0,ue=0,de=2e3;function fe(){if(ae)return;M(`opening EventSource`,{url:`/api/events`}),ue=Date.now();let e=new EventSource(`/api/events`);ae=e,F.clear();for(let e of P)ce(e);e.onopen=()=>{let e=C.lastErrorAt!==null;L=x,le=0,A=0,te=x,ee=!0,k=!0,N(),e&&Se(`reconnect`),M(`connected`)},e.onerror=()=>{e.close(),ae=null,F.clear(),ee=!0,k=!1,j=Date.now(),N(),le===0&&Date.now()-ue<de?M(`first-open interrupted (page-load race) — reconnect in ${L}ms`):console.warn(`[ssg-sse] EventSource error — reconnect in ${L}ms (attempt ${le+1})`),oe>0&&(I=setTimeout(()=>{I=null,oe>0&&fe()},L),le++,A=le,L=Math.min(L*2,S),te=L,N())}}function pe(){I&&=(clearTimeout(I),null),ae?.close(),ae=null,F.clear(),L=x,le=0,A=0,te=x,ee=!0,k=!1,N()}typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&oe!==0&&(ae||(I&&=(clearTimeout(I),null),M(`visibilitychange → reconnecting`),fe()))});function me(){for(let e of P)e!==`eval-burst`&&(T[e]=(T[e]??0)+1);N()}function he(e){return w.add(e),()=>{w.delete(e)}}function ge(){return C}var z=2e3,_e=1e4,ve=1440*60*1e3,ye=500,be=0,xe=null;function Se(e){let t=Date.now();if(t-be<_e){M(`hydrate skipped (cooldown)`,{reason:e});return}if(xe)return;let n=t-ve,r=C.burstRing[C.burstRing.length-1],i=C.burstRing.length>0&&r!==void 0?r.ts_ms+1:n,a=e===`reconnect`?Math.max(i,n):n,o=t;if(a>=o)return;be=t;let s=new AbortController;xe=s,M(`hydrate start`,{reason:e,since:a,until:o,ringLen:C.burstRing.length}),(async()=>{let t=a,n=0;try{for(;n<z&&t<o&&!s.signal.aborted;){let r=Math.min(ye,z-n),i=await fetch(`/api/json/graph/backfill?since_ms=${t}&until_ms=${o}&limit=${r}`,{signal:s.signal,credentials:`same-origin`});if(!i.ok)break;let a=await i.json();if(!Array.isArray(a.bursts)||a.bursts.length===0||(E.push(...a.bursts),N(),n+=a.bursts.length,M(`hydrate page`,{reason:e,page:n,count:a.bursts.length}),a.bursts.length<r))break;let c=a.bursts[a.bursts.length-1];if(c===void 0)break;t=c.ts_ms+1}M(`hydrate done`,{reason:e,fetched:n})}catch(t){t.name!==`AbortError`&&console.warn(`[ssg-sse] ring hydration failed (${e})`,t)}finally{xe=null}})()}function Ce(e){for(let t of e)P.add(t),ce(t);return oe++,oe===1&&(Se(`initial`),fe(),R=setInterval(me,b)),()=>{oe--,oe===0&&(pe(),R&&=(clearInterval(R),null))}}var we=Object.freeze([`eval-burst`,`eval-burst-complete`,`counters-updated`]);function Te(){(0,_.useEffect)(()=>Ce(we),[])}function Ee(){return Te(),(0,_.useSyncExternalStore)(he,ge).latestBurst}function De(){return Te(),(0,_.useSyncExternalStore)(he,ge).burstRing}function Oe(){return Te(),(0,_.useSyncExternalStore)(he,ge).burstSeq}function B(){let e=document.querySelector(`meta[name="ssg-csrf"]`)?.content??``;return e?{"X-SigmaShake-Token":e}:{}}function ke(e){let t=(0,_.useSyncExternalStore)(he,ge),n=e.join(`,`);(0,_.useEffect)(()=>Ce(e),[n]);let r=(0,_.useRef)({});return(0,_.useMemo)(()=>{let n={},i=!1;for(let a of e){let e=t.counters[a]??0;n[a]=e,r.current[a]!==e&&(i=!0)}return!i&&Object.keys(r.current).length===e.length?r.current:(r.current=n,n)},[t,n])}function V(e,t=[]){let[n,r]=(0,_.useState)({data:null,loading:!0,error:null}),[i,a]=(0,_.useState)(0),o=(0,_.useRef)(null),s=(0,_.useCallback)(()=>{a(e=>e+1)},[]);return(0,_.useEffect)(()=>{let t=new AbortController;return o.current=t,r(e=>({...e,loading:!0,error:null})),fetch(e,{signal:t.signal}).then(async e=>{if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()}).then(e=>{t.signal.aborted||r({data:e,loading:!1,error:null})}).catch(e=>{if(t.signal.aborted)return;let n=e instanceof Error?e.message:String(e);r(e=>({...e,loading:!1,error:n}))}),()=>{t.abort()}},[e,i,...t]),{...n,refetch:s}}var Ae=e=>e,je=e=>({in:t=>t**+e,out:t=>1-(1-t)**e,inOut:t=>t<.5?(2*t)**e/2:1-(-2*t+2)**e/2}),Me=je(2),Ne=je(3),Pe=je(4),Fe=je(5),Ie={in:e=>1-Math.cos(e*Math.PI/2),out:e=>Math.sin(e*Math.PI/2),inOut:e=>-(Math.cos(Math.PI*e)-1)/2},Le={in:e=>e===0?0:2**(10*e-10),out:e=>e===1?1:1-2**(-10*e),inOut:e=>e===0?0:e===1?1:e<.5?2**(20*e-10)/2:(2-2**(-20*e+10))/2},Re={in:e=>1-Math.sqrt(1-e**2),out:e=>Math.sqrt(1-(e-1)**2),inOut:e=>e<.5?(1-Math.sqrt(1-(2*e)**2))/2:(Math.sqrt(1-(-2*e+2)**2)+1)/2};function ze(e=1.70158){let t=e;return e=>e*e*((t+1)*e-t)}function Be(e=1.70158){let t=e;return e=>{let n=e-1;return n*n*((t+1)*n+t)+1}}function Ve(e=1.70158){let t=e*1.525;return e=>e<.5?(2*e)**2*((t+1)*2*e-t)/2:((2*e-2)**2*((t+1)*(e*2-2)+t)+2)/2}function He(e=1,t=.3){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>e===0?0:e===1?1:n*2**(-10*e)*Math.sin((e-i)*(Math.PI*2)/r)+1}function Ue(e=1,t=.3){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>e===0?0:e===1?1:-(n*2**(10*(e-1))*Math.sin((e-1-i)*(Math.PI*2)/r))}function We(e=1,t=.45){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>{if(e===0)return 0;if(e===1)return 1;let t=e*2;return t<1?-.5*(n*2**(10*(t-1))*Math.sin((t-1-i)*(Math.PI*2)/r)):n*2**(-10*(t-1))*Math.sin((t-1-i)*(Math.PI*2)/r)*.5+1}}var Ge=7.5625,Ke=2.75,qe=e=>{if(e<1/Ke)return Ge*e*e;if(e<2/Ke){let t=e-1.5/Ke;return Ge*t*t+.75}if(e<2.5/Ke){let t=e-2.25/Ke;return Ge*t*t+.9375}let t=e-2.625/Ke;return Ge*t*t+.984375},Je=e=>1-qe(1-e),Ye=e=>e<.5?(1-qe(1-2*e))/2:(1+qe(2*e-1))/2;function Xe(e){let t=Math.max(1,Math.floor(e));return e=>e>=1?1:e<=0?0:Math.floor(e*t)/t}function Ze(e,t,n,r){let i=3*e,a=3*(n-e)-i,o=1-i-a,s=3*t,c=3*(r-t)-s,l=1-s-c,u=e=>((o*e+a)*e+i)*e,d=e=>((l*e+c)*e+s)*e,f=e=>(3*o*e+2*a)*e+i,p=e=>{let t=e;for(let n=0;n<8;n++){let n=u(t)-e;if(Math.abs(n)<1e-5)return t;let r=f(t);if(Math.abs(r)<1e-6)break;t-=n/r}let n=0,r=1;for(t=e;n<r;){let i=u(t);if(Math.abs(i-e)<1e-5)return t;e>i?n=t:r=t,t=(n+r)/2}return t};return e=>e<=0?0:e>=1?1:d(p(e))}function Qe(e={}){let t=Math.max(1,e.stiffness??100),n=Math.max(0,e.damping??10),r=Math.max(.01,e.mass??1),i=e.velocity??0,a=Math.sqrt(t/r),o=n/(2*Math.sqrt(t*r)),s;if(o<1){let e=a*Math.sqrt(1-o*o),t=(o*a+-i)/e;s=n=>1-Math.exp(-o*a*n)*(1*Math.cos(e*n)+t*Math.sin(e*n))}else if(o===1){let e=a+-i;s=t=>1-Math.exp(-a*t)*(1+e*t)}else{let e=Math.sqrt(o*o-1),t=-a*(o-e),n=-a*(o+e),r=(n- -i)/(n-t),c=1-r;s=e=>1-(r*Math.exp(t*e)+c*Math.exp(n*e))}let c=400;for(let e=16;e<=4e3;e+=16){let t=s(e/1e3);if(Math.abs(1-t)<.005){let t=s((e-16)/1e3);if(Math.abs(1-t)<.005){c=e;break}}c=e}let l=c/1e3;return{duration:c,fn:e=>s(Math.max(0,Math.min(1,e))*l)}}var $e={linear:Ae,inQuad:Me.in,outQuad:Me.out,inOutQuad:Me.inOut,inCubic:Ne.in,outCubic:Ne.out,inOutCubic:Ne.inOut,inQuart:Pe.in,outQuart:Pe.out,inOutQuart:Pe.inOut,inQuint:Fe.in,outQuint:Fe.out,inOutQuint:Fe.inOut,inSine:Ie.in,outSine:Ie.out,inOutSine:Ie.inOut,inExpo:Le.in,outExpo:Le.out,inOutExpo:Le.inOut,inCirc:Re.in,outCirc:Re.out,inOutCirc:Re.inOut,inBack:ze(),outBack:Be(),inOutBack:Ve(),inElastic:Ue(),outElastic:He(),inOutElastic:We(),inBounce:Je,outBounce:qe,inOutBounce:Ye};function et(e){if(typeof e==`function`)return e;if(e===void 0)return $e.outCubic;let t=$e[e];if(t)return t;let n=e.match(/^(\w+)\(([^)]*)\)$/);if(n){let e=n[1],t=n[2].split(`,`).map(e=>parseFloat(e.trim())).filter(e=>!Number.isNaN(e));switch(e){case`outElastic`:return He(t[0],t[1]);case`inElastic`:return Ue(t[0],t[1]);case`inOutElastic`:return We(t[0],t[1]);case`outBack`:return Be(t[0]);case`inBack`:return ze(t[0]);case`inOutBack`:return Ve(t[0]);case`steps`:return Xe(t[0]??4);case`cubicBezier`:return t.length>=4?Ze(t[0],t[1],t[2],t[3]):$e.outCubic;default:return $e.outCubic}}return $e.outCubic}function tt(e,t){if(t<=1||e===void 0||e===`first`)return 0;if(e===`last`)return t-1;if(e===`center`)return(t-1)/2;let n=Math.floor(e);return n<0?0:n>t-1?t-1:n}function nt(e,t={}){let n=t.start??0,r=t.direction===`reverse`;return(i,a)=>{if(a<=0)return n;let o=tt(t.from,a),s=Math.abs(i-o),c=Math.max(o,a-1-o),l=c===0?0:s/c,u=r?1-l:l,d;if(Array.isArray(e)){let[t,n]=e;d=t+u*(n-t)}else d=(r?c-s:s)*e;return n+d}}var rt=new Set([`duration`,`delay`,`ease`,`loop`,`alternate`,`onBegin`,`onUpdate`,`onComplete`]);function it(e){if(typeof e==`number`||typeof e==`string`)return e;if(Array.isArray(e)&&e.length===2){let[t,n]=e;if((typeof t==`number`||typeof t==`string`)&&(typeof n==`number`||typeof n==`string`))return[t,n]}return null}function at(e){return e?typeof e==`string`?typeof document>`u`?[]:Array.from(document.querySelectorAll(e)):e instanceof Element?[e]:`length`in e?Array.from(e):[]:[]}function ot(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}var st=/^(-?\d*\.?\d+)([a-z%]*)$/i;function ct(e){if(typeof e==`number`)return{value:e,unit:``};let t=e.trim().match(st);return t?{value:parseFloat(t[1]),unit:t[2]??``}:{value:0,unit:``}}function lt(e){return e.unit===``?`${e.value}`:`${e.value}${e.unit}`}var ut=new Set([`translate`,`translateX`,`translateY`,`translateZ`,`scale`,`scaleX`,`scaleY`,`scaleZ`,`rotate`,`rotateX`,`rotateY`,`rotateZ`,`skew`,`skewX`,`skewY`]),dt=new WeakMap;function ft(e){let t=dt.get(e);return t||(t={values:{}},dt.set(e,t)),t}function pt(e){let t=[];for(let[n,r]of Object.entries(e.values)){let e=r.unit||(n.startsWith(`rotate`)||n.startsWith(`skew`)?`deg`:n.startsWith(`translate`)?`px`:``);t.push(`${n}(${r.value}${e})`)}return t.join(` `)}function mt(e,t,n){if(ut.has(t)){let r=ft(e);r.values[t]=n,e.style.transform=pt(r);return}if(t===`opacity`){e.style.opacity=`${n.value}`;return}e.style.setProperty(t,lt(n))}function ht(e,t){return ut.has(t)?ft(e).values[t]||{value:t.startsWith(`scale`)?1:0,unit:``}:ct(e.style.getPropertyValue(t)||(typeof window<`u`?window.getComputedStyle(e).getPropertyValue(t):``)||(t===`opacity`?`1`:`0`))}function gt(e,t,n){return e+(t-e)*n}function _t(e,t,n){return e===void 0?0:typeof e==`number`?e:e(t,n)}function vt(e){if(e&&typeof e==`object`&&`spring`in e){let t=Qe(e.spring);return{ease:t.fn,duration:t.duration}}return{ease:et(e),duration:null}}var yt=0,bt=new Set;function xt(e){for(let t of bt){if(t.done||e<t.start)continue;let{target:n,options:r}=t,i=e-t.start,a=Math.max(1,n.duration),o=r.loop??!1,s=r.alternate===!0,c=o===!0?1/0:typeof o==`number`?Math.max(1,o):1,l=Math.floor(i/a),u=(i-l*a)/a,d=s&&l%2==1?1-u:u;if(l>=c){for(let e of n.props)mt(n.el,e.name,St(e.from,e.to,s&&c%2==0?0:1));r.onUpdate?.(1,n.el,n.index),r.onComplete?.(n.el,n.index),t.done=!0;continue}for(let e of n.props){let t=e.ease(Math.max(0,Math.min(1,d)));n.el!==null&&mt(n.el,e.name,St(e.from,e.to,t))}n.el!==null&&r.onUpdate?.(d,n.el,n.index)}for(let e of[...bt])e.done&&bt.delete(e);if(bt.size===0){yt=0;return}yt=requestAnimationFrame(xt)}function St(e,t,n){let r=e.unit||t.unit;return{value:gt(e.value,t.value,n),unit:r}}function Ct(){yt===0&&(typeof requestAnimationFrame>`u`||(yt=requestAnimationFrame(xt)))}function wt(e,t){let n=at(e),r=n.length,i=Object.keys(t).filter(e=>!rt.has(e)),a=ot(),{ease:o,duration:s}=vt(t.ease),c=t.duration??s??400,l=[],u=[],d=typeof performance<`u`?performance.now():Date.now(),f=(e,n)=>{let a=[];for(let n of i){let r=t[n];if(r===void 0)continue;let i=it(r);if(i===null)continue;let s,c;Array.isArray(i)?(s=ct(i[0]),c=ct(i[1])):(s=ht(e,n),c=ct(i)),a.push({name:n,from:s,to:c,ease:o})}return{el:e,index:n,props:a,duration:c,delay:_t(t.delay,n,r)}};if(n.length===0)return{cancel:()=>{},finished:Promise.resolve(),get done(){return!0}};let p=!1;for(let e=0;e<n.length;e++){let r=n[e],i=f(r,e),o=d+i.delay;if(t.onBegin?.(r,e),a){for(let e of i.props)mt(r,e.name,e.to);t.onUpdate?.(1,r,e),t.onComplete?.(r,e),u.push(Promise.resolve());continue}for(let e of i.props)mt(r,e.name,e.from);let s={target:i,start:o,options:t,done:!1};l.push(s),bt.add(s),u.push(new Promise(e=>{let n=t.onComplete,r=(t,r)=>{try{n?.(t,r)}finally{e()}};s.options={...t,onComplete:r}}))}return Ct(),{cancel(){if(!p){p=!0;for(let e of l)e.done=!0,bt.delete(e)}},finished:Promise.all(u).then(()=>void 0),get done(){return p||l.every(e=>e.done)}}}function Tt(e={}){let t=(0,_.useRef)(null),n=(0,_.useRef)(!1),r=(0,_.useCallback)(()=>{if(n.current)return;let r=t.current;if(!r)return;let i=r.querySelectorAll(`[data-reveal]`);if(i.length===0)return;if(n.current=!0,ot()){i.forEach(e=>{e.style.opacity=`1`,e.style.transform=``});return}let a=e.staggerMs??40,o=e.maxStaggerMs??320,s=Math.min(a,Math.max(10,o/i.length)),c=e.translateY??14,l=e.durationMs??520,u=e.from??`center`;i.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(${c}px)`,e.style.willChange=`transform, opacity`}),wt(Array.from(i),{opacity:[0,1],translateY:[c,0],duration:l,ease:`outBack(1.2)`,delay:nt(s,{from:u}),onComplete:e=>{e.style.willChange=``}})},[e.staggerMs,e.maxStaggerMs,e.durationMs,e.translateY,e.from]);return(0,_.useEffect)(()=>{let n=t.current;if(!n)return;if(typeof IntersectionObserver>`u`){r();return}let i=!1,a=new IntersectionObserver(e=>{for(let t of e)if(t.isIntersecting&&!i){r(),a.disconnect();return}},{threshold:.08});a.observe(n);let o=n.querySelectorAll(`[data-reveal]`);if(!ot()){let t=e.translateY??14;o.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(${t}px)`})}let s=n.getBoundingClientRect();return s.top<(window.innerHeight||document.documentElement.clientHeight)&&s.bottom>0&&(r(),a.disconnect()),()=>{i=!0,a.disconnect()}},[r,e.translateY]),t}function Et(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Et(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Dt(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Et(e))&&(r&&(r+=` `),r+=t);return r}var Ot=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,kt=Dt,At=(e,t)=>n=>{if(t?.variants==null)return kt(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ot(t)||Ot(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return kt(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},jt=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Mt=(e,t)=>({classGroupId:e,validator:t}),Nt=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Pt=`-`,Ft=[],It=`arbitrary..`,Lt=e=>{let t=Bt(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return zt(e);let n=e.split(Pt);return Rt(n,n[0]===``&&n.length>1?1:0,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?jt(i,t):t:i||Ft}return n[e]||Ft}}},Rt=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Rt(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Pt):e.slice(t).join(Pt),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},zt=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?It+r:void 0})(),Bt=e=>{let{theme:t,classGroups:n}=e;return Vt(n,t)},Vt=(e,t)=>{let n=Nt();for(let r in e){let i=e[r];Ht(i,n,r,t)}return n},Ht=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];Ut(i,t,n,r)}},Ut=(e,t,n,r)=>{if(typeof e==`string`){Wt(e,t,n);return}if(typeof e==`function`){Gt(e,t,n,r);return}Kt(e,t,n,r)},Wt=(e,t,n)=>{let r=e===``?t:qt(t,e);r.classGroupId=n},Gt=(e,t,n,r)=>{if(Jt(e)){Ht(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Mt(n,e))},Kt=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Ht(o,qt(t,a),n,r)}},qt=(e,t)=>{let n=e,r=t.split(Pt),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Nt(),n.nextPart.set(t,i)),n=i}return n},Jt=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,Yt=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Xt=`!`,Zt=`:`,Qt=[],$t=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),en=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Zt){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Xt)?(c=s.slice(0,-1),l=!0):s.startsWith(Xt)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return $t(t,l,c,u)};if(t){let e=t+Zt,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):$t(Qt,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},tn=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},nn=e=>({cache:Yt(e.cacheSize),parseClassName:en(e),sortModifiers:tn(e),...Lt(e)}),rn=/\s+/,an=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(rn),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+Xt:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},on=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=sn(n))&&(i&&(i+=` `),i+=r);return i},sn=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=sn(e[r]))&&(n&&(n+=` `),n+=t);return n},cn=(e,...t)=>{let n,r,i,a,o=o=>(n=nn(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=an(e,n);return i(e,a),a};return a=o,(...e)=>a(on(...e))},ln=[],un=e=>{let t=t=>t[e]||ln;return t.isThemeGetter=!0,t},dn=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,fn=/^\((?:(\w[\w-]*):)?(.+)\)$/i,pn=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,mn=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,hn=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,gn=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,_n=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,vn=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,yn=e=>pn.test(e),H=e=>!!e&&!Number.isNaN(Number(e)),bn=e=>!!e&&Number.isInteger(Number(e)),xn=e=>e.endsWith(`%`)&&H(e.slice(0,-1)),Sn=e=>mn.test(e),Cn=()=>!0,wn=e=>hn.test(e)&&!gn.test(e),Tn=()=>!1,En=e=>_n.test(e),Dn=e=>vn.test(e),On=e=>!U(e)&&!W(e),kn=e=>Wn(e,Jn,Tn),U=e=>dn.test(e),An=e=>Wn(e,Yn,wn),jn=e=>Wn(e,Xn,H),Mn=e=>Wn(e,Qn,Cn),Nn=e=>Wn(e,Zn,Tn),Pn=e=>Wn(e,Kn,Tn),Fn=e=>Wn(e,qn,Dn),In=e=>Wn(e,$n,En),W=e=>fn.test(e),Ln=e=>Gn(e,Yn),Rn=e=>Gn(e,Zn),zn=e=>Gn(e,Kn),Bn=e=>Gn(e,Jn),Vn=e=>Gn(e,qn),Hn=e=>Gn(e,$n,!0),Un=e=>Gn(e,Qn,!0),Wn=(e,t,n)=>{let r=dn.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Gn=(e,t,n=!1)=>{let r=fn.exec(e);return r?r[1]?t(r[1]):n:!1},Kn=e=>e===`position`||e===`percentage`,qn=e=>e===`image`||e===`url`,Jn=e=>e===`length`||e===`size`||e===`bg-size`,Yn=e=>e===`length`,Xn=e=>e===`number`,Zn=e=>e===`family-name`,Qn=e=>e===`number`||e===`weight`,$n=e=>e===`shadow`,er=cn(()=>{let e=un(`color`),t=un(`font`),n=un(`text`),r=un(`font-weight`),i=un(`tracking`),a=un(`leading`),o=un(`breakpoint`),s=un(`container`),c=un(`spacing`),l=un(`radius`),u=un(`shadow`),d=un(`inset-shadow`),f=un(`text-shadow`),p=un(`drop-shadow`),m=un(`blur`),h=un(`perspective`),g=un(`aspect`),_=un(`ease`),v=un(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),W,U],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[W,U,c],T=()=>[yn,`full`,`auto`,...w()],E=()=>[bn,`none`,`subgrid`,W,U],D=()=>[`auto`,{span:[`full`,bn,W,U]},bn,W,U],O=()=>[bn,`auto`,W,U],ee=()=>[`auto`,`min`,`max`,`fr`,W,U],k=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],A=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],j=()=>[`auto`,...w()],te=()=>[yn,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ne=()=>[yn,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],re=()=>[yn,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[e,W,U],N=()=>[...b(),zn,Pn,{position:[W,U]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,Bn,kn,{size:[W,U]}],oe=()=>[xn,Ln,An],P=()=>[``,`none`,`full`,l,W,U],F=()=>[``,H,Ln,An],I=()=>[`solid`,`dashed`,`dotted`,`double`],L=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],R=()=>[H,xn,zn,Pn],se=()=>[``,`none`,m,W,U],ce=()=>[`none`,H,W,U],le=()=>[`none`,H,W,U],ue=()=>[H,W,U],de=()=>[yn,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Sn],breakpoint:[Sn],color:[Cn],container:[Sn],"drop-shadow":[Sn],ease:[`in`,`out`,`in-out`],font:[On],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Sn],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Sn],shadow:[Sn],spacing:[`px`,H],text:[Sn],"text-shadow":[Sn],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,yn,U,W,g]}],container:[`container`],columns:[{columns:[H,U,W,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[bn,`auto`,W,U]}],basis:[{basis:[yn,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[H,yn,`auto`,`initial`,`none`,U]}],grow:[{grow:[``,H,W,U]}],shrink:[{shrink:[``,H,W,U]}],order:[{order:[bn,`first`,`last`,`none`,W,U]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...k(),`normal`]}],"justify-items":[{"justify-items":[...A(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...A()]}],"align-content":[{content:[`normal`,...k()]}],"align-items":[{items:[...A(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...A(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":k()}],"place-items":[{"place-items":[...A(),`baseline`]}],"place-self":[{"place-self":[`auto`,...A()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:j()}],mx:[{mx:j()}],my:[{my:j()}],ms:[{ms:j()}],me:[{me:j()}],mbs:[{mbs:j()}],mbe:[{mbe:j()}],mt:[{mt:j()}],mr:[{mr:j()}],mb:[{mb:j()}],ml:[{ml:j()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:te()}],"inline-size":[{inline:[`auto`,...ne()]}],"min-inline-size":[{"min-inline":[`auto`,...ne()]}],"max-inline-size":[{"max-inline":[`none`,...ne()]}],"block-size":[{block:[`auto`,...re()]}],"min-block-size":[{"min-block":[`auto`,...re()]}],"max-block-size":[{"max-block":[`none`,...re()]}],w:[{w:[s,`screen`,...te()]}],"min-w":[{"min-w":[s,`screen`,`none`,...te()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...te()]}],h:[{h:[`screen`,`lh`,...te()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...te()]}],"max-h":[{"max-h":[`screen`,`lh`,...te()]}],"font-size":[{text:[`base`,n,Ln,An]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Un,Mn]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,xn,U]}],"font-family":[{font:[Rn,Nn,t]}],"font-features":[{"font-features":[U]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,W,U]}],"line-clamp":[{"line-clamp":[H,`none`,W,jn]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,W,U]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,W,U]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...I(),`wavy`]}],"text-decoration-thickness":[{decoration:[H,`from-font`,`auto`,W,An]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[H,`auto`,W,U]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,W,U]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,W,U]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:N()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},bn,W,U],radial:[``,W,U],conic:[bn,W,U]},Vn,Fn]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-bs":[{"border-bs":F()}],"border-w-be":[{"border-be":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":F()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...I(),`hidden`,`none`]}],"divide-style":[{divide:[...I(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...I(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[H,W,U]}],"outline-w":[{outline:[``,H,Ln,An]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Hn,In]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Hn,In]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:F()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[H,An]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,f,Hn,In]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[H,W,U]}],"mix-blend":[{"mix-blend":[...L(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":L()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[H]}],"mask-image-linear-from-pos":[{"mask-linear-from":R()}],"mask-image-linear-to-pos":[{"mask-linear-to":R()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":R()}],"mask-image-t-to-pos":[{"mask-t-to":R()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":R()}],"mask-image-r-to-pos":[{"mask-r-to":R()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":R()}],"mask-image-b-to-pos":[{"mask-b-to":R()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":R()}],"mask-image-l-to-pos":[{"mask-l-to":R()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":R()}],"mask-image-x-to-pos":[{"mask-x-to":R()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":R()}],"mask-image-y-to-pos":[{"mask-y-to":R()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[W,U]}],"mask-image-radial-from-pos":[{"mask-radial-from":R()}],"mask-image-radial-to-pos":[{"mask-radial-to":R()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[H]}],"mask-image-conic-from-pos":[{"mask-conic-from":R()}],"mask-image-conic-to-pos":[{"mask-conic-to":R()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:N()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,W,U]}],filter:[{filter:[``,`none`,W,U]}],blur:[{blur:se()}],brightness:[{brightness:[H,W,U]}],contrast:[{contrast:[H,W,U]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Hn,In]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,H,W,U]}],"hue-rotate":[{"hue-rotate":[H,W,U]}],invert:[{invert:[``,H,W,U]}],saturate:[{saturate:[H,W,U]}],sepia:[{sepia:[``,H,W,U]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,W,U]}],"backdrop-blur":[{"backdrop-blur":se()}],"backdrop-brightness":[{"backdrop-brightness":[H,W,U]}],"backdrop-contrast":[{"backdrop-contrast":[H,W,U]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,H,W,U]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[H,W,U]}],"backdrop-invert":[{"backdrop-invert":[``,H,W,U]}],"backdrop-opacity":[{"backdrop-opacity":[H,W,U]}],"backdrop-saturate":[{"backdrop-saturate":[H,W,U]}],"backdrop-sepia":[{"backdrop-sepia":[``,H,W,U]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,W,U]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[H,`initial`,W,U]}],ease:[{ease:[`linear`,`initial`,_,W,U]}],delay:[{delay:[H,W,U]}],animate:[{animate:[`none`,v,W,U]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,W,U]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:ce()}],"rotate-x":[{"rotate-x":ce()}],"rotate-y":[{"rotate-y":ce()}],"rotate-z":[{"rotate-z":ce()}],scale:[{scale:le()}],"scale-x":[{"scale-x":le()}],"scale-y":[{"scale-y":le()}],"scale-z":[{"scale-z":le()}],"scale-3d":[`scale-3d`],skew:[{skew:ue()}],"skew-x":[{"skew-x":ue()}],"skew-y":[{"skew-y":ue()}],transform:[{transform:[W,U,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:de()}],"translate-x":[{"translate-x":de()}],"translate-y":[{"translate-y":de()}],"translate-z":[{"translate-z":de()}],"translate-none":[`translate-none`],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,W,U]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,W,U]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[H,Ln,An,jn]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function G(...e){return er(Dt(e))}function tr(e){let t=Math.max(0,Math.floor((Date.now()-e*1e3)/1e3));if(t<60)return`${t}s ago`;let n=Math.floor(t/60);if(n<60)return`${n}m ago`;let r=Math.floor(n/60);if(r<24)return`${r}h ago`;let i=Math.floor(r/24);return i<30?`${i}d ago`:`${Math.floor(i/30)}mo ago`}function nr(e){return new Date(e*1e3).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function rr(e,t){try{let e=JSON.parse(t);if(!e||typeof e!=`object`)return t;for(let t of[`command`,`CommandLine`,`Input`,`query`,`Task`,`Prompt`])if(typeof e[t]==`string`&&e[t].length>0)return e[t];for(let t of[`file_path`,`path`,`TargetFile`,`AbsolutePath`,`SearchPath`,`DirectoryPath`,`Url`,`ImageName`])if(typeof e[t]==`string`&&e[t].length>0)return e[t];for(let t of Object.values(e))if(typeof t==`string`&&t.length>0)return t;return``}catch{return t}}var ir=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),K=o(((e,t)=>{t.exports=ir()}))(),ar=At(`hig-card flex flex-col min-h-0 overflow-hidden`,{variants:{variant:{default:``,interactive:`hover:border-[var(--color-line-2)] hover:shadow-[var(--hig-shadow-2)] transition-all cursor-pointer`,flush:`bg-transparent border-[var(--color-line-0)] shadow-none`}},defaultVariants:{variant:`default`}});function q({className:e,variant:t,...n}){return(0,K.jsx)(`div`,{className:G(ar({variant:t,className:e})),...n})}function J({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`flex items-center justify-between gap-2 px-4 pt-3 pb-2 shrink-0`,e),...t})}function Y({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`px-4 py-3 flex-1 min-h-0 overflow-auto`,e),...t})}var or=At(`inline-flex items-center gap-1 rounded-sm px-1.5 py-0.5 text-[10px] font-mono font-medium leading-none tracking-wide uppercase border whitespace-nowrap`,{variants:{variant:{green:`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`,red:`bg-red-500/8 text-red-300 border-red-500/25`,amber:`bg-amber-500/10 text-amber-300 border-amber-500/30`,blue:`bg-sky-500/8 text-sky-300 border-sky-500/25`,gray:`bg-[var(--color-surface-2)] text-[var(--color-fg-3)] border-[var(--color-line-1)]`,purple:`bg-violet-500/8 text-violet-300 border-violet-500/25`,outline:`bg-transparent text-[var(--color-fg-3)] border-[var(--color-line-1)]`}},defaultVariants:{variant:`outline`}});function sr({className:e,variant:t,...n}){return(0,K.jsx)(`span`,{className:G(or({variant:t,className:e})),...n})}var cr=At(`hig-button relative overflow-hidden focus-visible:outline-none disabled:pointer-events-none disabled:opacity-45`,{variants:{variant:{primary:`hig-button-primary`,secondary:``,ghost:`hig-button-plain`,danger:`hig-button-destructive`},size:{sm:`hig-button-small`,md:``,icon:`!w-7 !h-7 !min-w-0 !p-0`}},defaultVariants:{variant:`primary`,size:`md`}});function lr(e,t){if(ot())return;let n=e.getBoundingClientRect(),r=Math.hypot(n.width,n.height),i=document.createElement(`span`);i.style.position=`absolute`,i.style.left=`${t.clientX-n.left-r/2}px`,i.style.top=`${t.clientY-n.top-r/2}px`,i.style.width=`${r}px`,i.style.height=`${r}px`,i.style.borderRadius=`50%`,i.style.pointerEvents=`none`,i.style.background=`currentColor`,i.style.opacity=`0.22`,i.style.transform=`scale(0)`,i.style.mixBlendMode=`screen`,e.appendChild(i),wt(i,{scale:[0,1],opacity:[.22,0],duration:540,ease:`outExpo`,onComplete:()=>{i.remove()}})}var X=_.forwardRef(({className:e,variant:t,size:n,onMouseDown:r,onClick:i,...a},o)=>(0,K.jsx)(`button`,{ref:o,className:G(cr({variant:t,size:n,className:e})),onMouseDown:e=>{lr(e.currentTarget,e),r?.(e)},onClick:i,...a}));X.displayName=`Button`;var ur=e=>Math.round(e).toLocaleString(void 0,{useGrouping:!0});function dr(e,t){if(e===`spring`){let e=Qe();return{ease:e.fn,durationMs:e.duration}}return e===`quart`?{ease:Pe.out,durationMs:t}:{ease:Ne.out,durationMs:t}}function fr({value:e,duration:t=320,format:n=ur,className:r,curve:i=`cubic`}){let[a,o]=(0,_.useState)(e),s=(0,_.useRef)(e),c=(0,_.useRef)(e),l=(0,_.useRef)(0),u=(0,_.useRef)(null),d=(0,_.useRef)(ot()),f=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(c.current===e)return;let n=f.current;if(n&&!d.current){for(let e of n.getAnimations())e.id===`lc-value-pulse`&&e.cancel();let e=n.animate([{textShadow:`0 0 0 rgba(245, 158, 11, 0)`},{textShadow:`0 0 10px rgba(245, 158, 11, 0.55)`,offset:.2},{textShadow:`0 0 0 rgba(245, 158, 11, 0)`}],{duration:520,easing:`ease-out`});e.id=`lc-value-pulse`}if(d.current){c.current=e,s.current=e,o(e);return}s.current=a,c.current=e,l.current=performance.now(),u.current!==null&&cancelAnimationFrame(u.current);let{ease:r,durationMs:p}=dr(i,t),m=e=>{let t=Math.min(1,(e-l.current)/p),n=r(t);o(s.current+(c.current-s.current)*n),t<1?u.current=requestAnimationFrame(m):u.current=null};return u.current=requestAnimationFrame(m),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,i]),(0,K.jsx)(`span`,{ref:f,className:G(`tabular-nums`,r),children:n(a)})}function pr({data:e,width:t=80,height:n=24,color:r=`#38bdf8`,threshold:i,maxValue:a}){if(e.length<2)return(0,K.jsx)(`svg`,{width:t,height:n,className:`shrink-0`,children:(0,K.jsx)(`line`,{x1:0,y1:n/2,x2:t,y2:n/2,stroke:`var(--color-line-2)`,strokeWidth:1})});let o=a??Math.max(...e,1),s=t-2,c=n-2,l=e.map((t,n)=>{let r=1+n/(e.length-1)*s,i=1+c-t/o*c;return`${r.toFixed(1)},${i.toFixed(1)}`}),u=i===void 0?null:1+c-Math.min(i,o)/o*c;return(0,K.jsxs)(`svg`,{width:t,height:n,className:`shrink-0`,children:[(0,K.jsx)(`polyline`,{points:l.join(` `),fill:`none`,stroke:r,strokeWidth:1.5,strokeLinejoin:`round`,strokeLinecap:`round`}),u!==null&&(0,K.jsx)(`line`,{x1:1,y1:u,x2:t-1,y2:u,stroke:`var(--color-brand)`,strokeWidth:1,strokeDasharray:`3,2`,opacity:.7})]})}var mr=new Set,hr=0,gr=0;function _r(){for(let e of mr)e();mr.size>0&&(hr=requestAnimationFrame(_r))}function vr(e){let t=gr++;return mr.add(e),mr.size===1&&(hr=requestAnimationFrame(_r)),[()=>{mr.delete(e),mr.size===0&&(cancelAnimationFrame(hr),hr=0)},t]}function yr(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}function br({value:e,samples:t,maxValue:n,width:r=320,height:i=64,windowMs:a=6e4,color:o=`var(--color-brand)`,fillColor:s=`rgba(245, 158, 11, 0.12)`,className:c}){let l=(0,_.useRef)(null),u=(0,_.useRef)(null),d=(0,_.useRef)([]),f=(0,_.useRef)(t??null),p=(0,_.useRef)(e??0),m=(0,_.useRef)(yr());return(0,_.useEffect)(()=>{f.current=t??null},[t]),(0,_.useEffect)(()=>{t===void 0&&e!==void 0&&e!==p.current&&(p.current=e,d.current.push({ts:Date.now(),v:e}),d.current.length>600&&d.current.splice(0,d.current.length-600))},[e,t]),(0,_.useEffect)(()=>{let e=()=>{let e=Date.now(),t=e-a,o;if(f.current){let e=f.current;o=[];for(let n of e)n.ts>=t&&o.push(n)}else{let n=d.current;for(;n.length>1&&n[1].ts<t;)n.shift();(n.length===0||n[n.length-1].ts<e-200)&&n.push({ts:e,v:p.current}),o=n.filter(e=>e.ts>=t)}if(o.length<2)l.current&&l.current.setAttribute(`points`,``),u.current&&u.current.setAttribute(`points`,``);else{let e=n??Math.max(1,...o.map(e=>e.v)),s=[];for(let n of o){let o=(n.ts-t)/a*r,c=i-n.v/e*(i-2)-1;s.push(`${o.toFixed(1)},${c.toFixed(1)}`)}let c=s.join(` `);if(l.current&&l.current.setAttribute(`points`,c),u.current){let e=s[0].split(`,`),t=s[s.length-1].split(`,`),n=`${e[0]},${i} ${c} ${t[0]},${i}`;u.current.setAttribute(`points`,n)}}};if(m.current){let t=window.setInterval(e,500);return()=>clearInterval(t)}let[t]=vr(e);return t},[r,i,a,n]),(0,K.jsxs)(`svg`,{width:`100%`,height:i,viewBox:`0 0 ${r} ${i}`,className:G(`block`,c),preserveAspectRatio:`none`,children:[(0,K.jsx)(`polygon`,{ref:u,fill:s,stroke:`none`}),(0,K.jsx)(`polyline`,{ref:l,fill:`none`,stroke:o,strokeWidth:1.5,strokeLinejoin:`round`,strokeLinecap:`round`})]})}var xr=At(`hero-metric relative flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] px-4 py-3 overflow-hidden`,{variants:{tone:{neutral:`hero-metric--neutral`,amber:`hero-metric--amber`,green:`hero-metric--green`,red:`hero-metric--red`,blue:`hero-metric--blue`,purple:`hero-metric--purple`,gray:`hero-metric--gray`}},defaultVariants:{tone:`neutral`}}),Sr={neutral:`var(--color-fg-1)`,amber:`var(--color-decision-ask)`,green:`var(--color-decision-allow)`,red:`var(--color-decision-block)`,blue:`var(--color-decision-force)`,purple:`var(--color-decision-log)`,gray:`var(--color-fg-3)`},Cr={neutral:`color-mix(in srgb, var(--color-fg-1) 10%, transparent)`,amber:`color-mix(in srgb, var(--color-decision-ask) 14%, transparent)`,green:`color-mix(in srgb, var(--color-decision-allow) 14%, transparent)`,red:`color-mix(in srgb, var(--color-decision-block) 14%, transparent)`,blue:`color-mix(in srgb, var(--color-decision-force) 14%, transparent)`,purple:`color-mix(in srgb, var(--color-decision-log) 14%, transparent)`,gray:`color-mix(in srgb, var(--color-fg-3) 10%, transparent)`},wr={neutral:`text-[var(--color-fg-0)]`,amber:`text-amber-300`,green:`text-emerald-300`,red:`text-red-300`,blue:`text-sky-300`,purple:`text-violet-300`,gray:`text-[var(--color-fg-2)]`},Tr=1e3,Er=.35;function Dr(e,t,n){let r=Date.now(),i=r-n,a=Math.max(2,Math.floor(n/Tr)),o=Array(a).fill(0);for(let n of e){if(t&&!t(n)||n.ts_ms<i||n.ts_ms>r)continue;let e=a-1-Math.floor((r-n.ts_ms)/Tr);e>=0&&e<a&&o[e]++}let s=Array(a),c=o[0];for(let e=0;e<a;e++)c=Er*o[e]+(1-Er)*c,s[e]={ts:i+(e+1)*Tr,v:c};return s}function Or({label:e,value:t,series:n,burstRing:r,filter:i,sparkWindowMs:a=6e4,sub:o,tone:s,format:c,className:l,...u}){let d=s??`neutral`,f=Sr[d]??Sr.neutral,p=Cr[d]??Cr.neutral,m=wr[d]??wr.neutral,h=(0,_.useRef)(null),g=(0,_.useRef)(t);(0,_.useEffect)(()=>{if(g.current===t)return;g.current=t;let e=h.current;e&&wt(e,{"--tick":[0,1],duration:160,ease:`outCubic`,onComplete:()=>{wt(e,{"--tick":[1,0],duration:520,ease:`outCubic`,onComplete:e=>{e.style.removeProperty(`--tick`)}})}})},[t]);let v=(0,_.useMemo)(()=>r?Dr(r,i,a):null,[r,i,a]),y=v!==null,b=!y&&n&&n.length>=2;return(0,K.jsxs)(`div`,{ref:h,className:G(xr({tone:s,className:l})),...u,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),o?(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:o}):null]}),(0,K.jsxs)(`div`,{className:`flex items-end justify-between gap-3`,children:[(0,K.jsx)(fr,{value:t,format:c,className:G(`text-[2.4rem] leading-none font-semibold tracking-tight`,m)}),y?(0,K.jsx)(br,{samples:v,width:108,height:36,windowMs:a,color:f,fillColor:p,className:`shrink-0`}):b?(0,K.jsx)(pr,{data:n,width:96,height:28,color:f}):null]})]})}var kr=135,Ar=405,jr=Ar-kr,Mr=`#34d399`,Nr=`#f59e0b`,Pr=`#ef4444`;function Fr(e,t,n,r){let i=(r-90)*(Math.PI/180);return{x:e+n*Math.cos(i),y:t+n*Math.sin(i)}}function Ir(e,t,n,r,i){let a=Fr(e,t,n,r),o=Fr(e,t,n,i),s=i-r>180?1:0;return`M ${a.x.toFixed(2)} ${a.y.toFixed(2)} A ${n} ${n} 0 ${s} 1 ${o.x.toFixed(2)} ${o.y.toFixed(2)}`}function Lr(e,t){return kr+Math.max(0,Math.min(1,e/Math.max(t,1e-9)))*jr}function Rr(e,t,n){return e+(t-e)*n}function zr(e){let t=parseInt(e.slice(1),16);return[t>>16&255,t>>8&255,t&255]}function Br(e,t,n){let[r,i,a]=zr(e),[o,s,c]=zr(t);return`rgb(${Math.round(Rr(r,o,n))},${Math.round(Rr(i,s,n))},${Math.round(Rr(a,c,n))})`}function Vr(e,t,n){let r=.04;return e<t-r?Mr:e<t+r?Br(Mr,Nr,(e-(t-r))/(r*2)):e<n-r?Nr:e<n+r?Br(Nr,Pr,(e-(n-r))/(r*2)):Pr}function Hr(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}var Ur=0;function Wr(){return Ur=Ur+1|0,Ur.toString(36)}function Gr({value:e,max:t,warnAt:n=.7,critAt:r=.9,marker50:i,marker99:a,label:o,display:s,displayFormat:c,scaleLabels:l,mode:u=`needle`,size:d=180,className:f,revLights:p=!0,revLightCount:m=20}){let h=Math.ceil(u===`needle`&&l!==void 0?d*.2:d*.08),g=-h,v=-h,y=d+h*2,b=d+h*2,x=d/2,S=d/2,C=d*.42,w=Math.max(0,Math.min(1,e/Math.max(t,1e-9))),T=(0,_.useMemo)(()=>Ir(x,S,C,kr,Ar),[x,S,C]),E=(0,_.useMemo)(()=>Ir(x,S,C-8,kr,Ar),[x,S,C]),D=kr+n*jr,O=kr+r*jr,ee=(0,_.useMemo)(()=>Ir(x,S,C,kr,D),[x,S,C,D]),k=(0,_.useMemo)(()=>Ir(x,S,C,D,O),[x,S,C,D,O]),A=(0,_.useMemo)(()=>Ir(x,S,C,O,Ar),[x,S,C,O]),j=(0,_.useMemo)(()=>Ir(x,S,C-14,300,420),[x,S,C]),te=kr+w*jr,ne=(0,_.useMemo)(()=>Ir(x,S,C,kr,Math.max(kr+.01,te)),[x,S,C,te]),re=Vr(w,n,r),M=(0,_.useMemo)(()=>Wr(),[]),N=`lgf-${M}`,ie=`lgb-${M}`,ae=`lgd-${M}`,oe=`lgh-${M}`,P=`lgg-${M}`,F=`lgl-${M}`,I=(0,_.useMemo)(()=>{if(u!==`needle`)return[];let e=[];for(let t=0;t<=10;t++)e.push(kr+t/10*jr);return e},[u]),L=(0,_.useMemo)(()=>{if(u!==`needle`)return[];let e=[];for(let t=0;t<=40;t++)t%4!=0&&e.push(kr+t/40*jr);return e},[u]),R=(0,_.useRef)(null),se=(0,_.useRef)(null),ce=(0,_.useRef)(null),le=(0,_.useRef)(null),ue=(0,_.useRef)(null),de=(0,_.useRef)(null),fe=(0,_.useRef)(null),pe=(0,_.useRef)(null),me=(0,_.useRef)([]),he=(0,_.useRef)(e),ge=(0,_.useRef)(t),z=(0,_.useRef)(n),_e=(0,_.useRef)(r);(0,_.useEffect)(()=>{he.current=e,ge.current=t,z.current=n,_e.current=r},[e,t,n,r]);let ve=(0,_.useMemo)(()=>{if(!p||u!==`needle`)return[];let e=Math.max(4,m),t=C-11,n=[];for(let r=0;r<e;r++){let i=kr+(r+.5)/e*jr;n.push(Fr(x,S,t,i))}return n},[p,m,u,x,S,C]);me.current.length!==ve.length&&(me.current.length=ve.length);let ye=x+C-6,be=x+d*.04,xe=Math.max(2,d*.016),Se=`${ye},${S} ${be},${S-xe} ${be},${S+xe}`,Ce=x-d*.04,we=x-C*.24,Te=Math.max(1.4,d*.012),Ee=`${we},${S} ${Ce},${S-Te} ${Ce},${S+Te}`,De=d*.48,Oe=d*.17,B=x-De/2,ke=S+d*.16,V=ke+Oe*.68;return(0,_.useEffect)(()=>{let e=Hr(),t=performance.now(),n=he.current,r=0,i=he.current,a=0,o=he.current,s=``,l=``,d=``,f=-1,m=``,h=``,[g]=vr(()=>{let g=performance.now(),_=(g-t)/1e3;t=g;let v=Math.min(.04,Math.max(.001,_)),y=he.current,b=ge.current,w=z.current,T=_e.current,E=Math.max(b,1e-9),D=y;if(e)n=y,i=y,o=y,r=0,a=0;else{let e=v/2;for(let t=0;t<2;t++){let t=-210*(n-D)-22*r;r+=t*e,n+=r*e;let o=-55*(i-n)-13*a;a+=o*e,i+=a*e}let t=1-Math.exp(-v*8);o+=(y-o)*t,Math.abs(n-y)<E*1e-5&&Math.abs(r)<1e-4&&(n=y,r=0),Math.abs(o-y)<E*1e-5&&(o=y)}let O=Math.max(0,Math.min(1,n/Math.max(b,1e-9))),ee=kr+O*jr,k=kr+Math.max(0,Math.min(1,i/Math.max(b,1e-9)))*jr,A=Vr(O,w,T),j=`rotate(${(ee-90).toFixed(3)} ${x} ${S})`;R.current&&j!==s&&(R.current.setAttribute(`transform`,j),s=j),A!==d&&(se.current&&se.current.setAttribute(`fill`,A),ce.current&&ce.current.setAttribute(`fill`,A),le.current&&le.current.setAttribute(`stroke`,A),de.current&&de.current.setAttribute(`fill`,A),d=A);let te=`rotate(${(k-90).toFixed(3)} ${x} ${S})`;if(ue.current&&te!==l&&(ue.current.setAttribute(`transform`,te),l=te),fe.current&&c){let e=c(o);e!==h&&(fe.current.textContent=e,h=e)}if(pe.current&&u===`ring`){let e=Ir(x,S,C,kr,Math.max(kr+.01,ee));e!==m&&(pe.current.setAttribute(`d`,e),m=e)}if(p&&u===`needle`){let e=Math.round(O*1e3)/1e3;if(e!==f){f=e;let t=me.current,n=t.length;if(n>0){let e=1/n;for(let r=0;r<n;r++){let i=t[r];if(!i)continue;let a=(r+.5)/n,o=O-a,s=Math.max(0,Math.min(1,.5+o/e));i.setAttribute(`fill`,Vr(a,w,T)),i.setAttribute(`opacity`,s.toFixed(3))}}}}});return g},[x,S,C,u,p,c]),(0,K.jsxs)(`div`,{className:G(`flex flex-col items-center justify-center gap-1 min-h-0 min-w-0`,f),children:[(0,K.jsxs)(`svg`,{width:y,height:b,viewBox:`${g} ${v} ${y} ${b}`,preserveAspectRatio:`xMidYMid meet`,className:`block max-w-full max-h-full min-h-0`,children:[(0,K.jsxs)(`defs`,{children:[(0,K.jsxs)(`filter`,{id:N,x:`-40%`,y:`-40%`,width:`180%`,height:`180%`,children:[(0,K.jsx)(`feGaussianBlur`,{stdDeviation:`1.2`,result:`blur`}),(0,K.jsxs)(`feMerge`,{children:[(0,K.jsx)(`feMergeNode`,{in:`blur`}),(0,K.jsx)(`feMergeNode`,{in:`SourceGraphic`})]})]}),(0,K.jsxs)(`radialGradient`,{id:ie,cx:`50%`,cy:`32%`,r:`80%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#4e535d`}),(0,K.jsx)(`stop`,{offset:`55%`,stopColor:`#2a2e36`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#0b0d11`})]}),(0,K.jsxs)(`radialGradient`,{id:ae,cx:`50%`,cy:`45%`,r:`75%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#1b1f27`}),(0,K.jsx)(`stop`,{offset:`80%`,stopColor:`#0a0c10`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#05060a`})]}),(0,K.jsxs)(`radialGradient`,{id:oe,cx:`40%`,cy:`30%`,r:`70%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#f4f5f8`}),(0,K.jsx)(`stop`,{offset:`45%`,stopColor:`#aab1bd`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#1c1f26`})]}),(0,K.jsxs)(`linearGradient`,{id:P,x1:`50%`,y1:`0%`,x2:`50%`,y2:`100%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#ffffff`,stopOpacity:`0.22`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#ffffff`,stopOpacity:`0`})]}),(0,K.jsxs)(`linearGradient`,{id:F,x1:`50%`,y1:`0%`,x2:`50%`,y2:`100%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#0a0c11`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#15181f`})]})]}),u===`needle`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`circle`,{cx:x,cy:S,r:C+12,fill:`url(#${ie})`,stroke:`#000`,strokeOpacity:.55,strokeWidth:1}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:C+5,fill:`none`,stroke:`#0a0c11`,strokeWidth:1}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:C-2,fill:`url(#${ae})`})]}):null,(0,K.jsx)(`path`,{d:T,fill:`none`,stroke:`var(--color-line-1)`,strokeWidth:u===`ring`?12:3,strokeLinecap:`round`,opacity:u===`ring`?1:.35}),u===`needle`?(0,K.jsx)(`path`,{d:E,fill:`none`,stroke:`var(--color-line-0)`,strokeWidth:1,strokeLinecap:`round`,opacity:.55}):null,u===`needle`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`path`,{d:ee,fill:`none`,stroke:Mr,strokeWidth:5,strokeLinecap:`round`,opacity:.78}),(0,K.jsx)(`path`,{d:k,fill:`none`,stroke:Nr,strokeWidth:5,strokeLinecap:`round`,opacity:.82}),(0,K.jsx)(`path`,{d:A,fill:`none`,stroke:Pr,strokeWidth:5,strokeLinecap:`round`,opacity:.9}),L.map((e,t)=>{let n=Fr(x,S,C-4,e),r=Fr(x,S,C+2,e);return(0,K.jsx)(`line`,{x1:n.x,y1:n.y,x2:r.x,y2:r.y,stroke:`var(--color-fg-4)`,strokeWidth:.9,strokeLinecap:`round`,opacity:.7},`mi-${t}`)}),I.map((e,t)=>{let n=Fr(x,S,C-8,e),r=Fr(x,S,C+4,e);return(0,K.jsx)(`line`,{x1:n.x,y1:n.y,x2:r.x,y2:r.y,stroke:`var(--color-fg-2)`,strokeWidth:1.8,strokeLinecap:`round`},`ma-${t}`)}),p?ve.map((e,t)=>(0,K.jsx)(`circle`,{ref:e=>{me.current[t]=e},cx:e.x,cy:e.y,r:Math.max(1.6,d*.013),fill:Mr,opacity:0,filter:`url(#${N})`},t)):null,i===void 0?null:(0,K.jsx)(Kr,{cx:x,cy:S,r:C,angle:Lr(i,t),emphasis:!0}),a===void 0?null:(0,K.jsx)(Kr,{cx:x,cy:S,r:C,angle:Lr(a,t),emphasis:!0}),l?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:D,text:l(n),size:d}),(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:O,text:l(r),size:d}),(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:Ar,text:l(1),size:d})]}):null,(0,K.jsx)(`path`,{d:j,fill:`none`,stroke:`url(#${P})`,strokeWidth:d*.14,strokeLinecap:`butt`}),c||s!==void 0?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`rect`,{x:B,y:ke,width:De,height:Oe,rx:d*.022,ry:d*.022,fill:`url(#${F})`,stroke:`#242a33`,strokeWidth:1}),(0,K.jsx)(`rect`,{x:B+1,y:ke+1,width:De-2,height:1,fill:`#ffffff`,opacity:.08})]}):null,(0,K.jsx)(`g`,{ref:ue,opacity:.28,children:(0,K.jsx)(`polygon`,{ref:de,points:Se,fill:re})}),(0,K.jsxs)(`g`,{ref:R,children:[(0,K.jsx)(`polygon`,{ref:se,points:Se,fill:re,stroke:`#05070a`,strokeWidth:.6}),(0,K.jsx)(`polygon`,{ref:ce,points:Ee,fill:re,opacity:.7})]}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:d*.06,fill:`url(#${oe})`,stroke:`#06080c`,strokeWidth:1}),(0,K.jsx)(`circle`,{ref:le,cx:x,cy:S,r:d*.036,fill:`#0a0c11`,stroke:re,strokeWidth:1.4}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:d*.012,fill:`#f5f7fb`,opacity:.9})]}):(0,K.jsx)(`path`,{ref:pe,d:ne,fill:`none`,stroke:re,strokeWidth:12,strokeLinecap:`round`}),u===`needle`&&(c||s!==void 0)?c?(0,K.jsx)(`text`,{ref:fe,x,y:V,textAnchor:`middle`,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:d*.1,fontWeight:600,fill:`#e8ecf3`,children:c(e)}):(0,K.jsx)(`text`,{x,y:V,textAnchor:`middle`,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:d*.1,fontWeight:600,fill:`#e8ecf3`,children:s}):c?(0,K.jsx)(`text`,{ref:fe,x,y:S+4,textAnchor:`middle`,className:`font-mono tabular-nums`,fontSize:d*.13,fill:`var(--color-fg-0)`,children:c(e)}):s===void 0?null:(0,K.jsx)(`text`,{x,y:S+4,textAnchor:`middle`,className:`font-mono tabular-nums`,fontSize:d*.13,fill:`var(--color-fg-0)`,children:s})]}),o?(0,K.jsx)(`span`,{className:`overline shrink-0 tracking-[0.12em] uppercase`,children:o}):null]})}function Kr({cx:e,cy:t,r:n,angle:r,emphasis:i=!1}){let a=Fr(e,t,n-(i?10:6),r),o=Fr(e,t,n+(i?8:6),r);return(0,K.jsx)(`line`,{x1:a.x,y1:a.y,x2:o.x,y2:o.y,stroke:i?`var(--color-fg-1)`:`var(--color-fg-2)`,strokeWidth:i?2:1.5,strokeLinecap:`round`})}function qr({cx:e,cy:t,r:n,angle:r,text:i,size:a}){let o=Fr(e,t,n+Math.max(16,a*.1),r),s=r>=135&&r<215?`end`:r>=325?`start`:`middle`;return(0,K.jsx)(`text`,{x:o.x,y:o.y,textAnchor:s,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:a*.062,fontWeight:600,fill:`var(--color-fg-2)`,stroke:`var(--color-bg-0)`,strokeWidth:3,paintOrder:`stroke`,children:i})}var Jr={containerPaddingY:24,containerPaddingX:24,topToTrendGap:12,scatterHeaderH:18,scatterLegendH:16,scatterInnerGap:8,trendRowH:28,trendRowGap:6,trendTopPad:9,scatterAbsoluteMin:60,scatterAcceptableMin:70,gaugeFootprintFactor:1.36,gaugeAbsoluteMin:84,gaugeAbsoluteMax:240};function Yr(e,t,n=200){let r=Math.max(0,Math.floor(e)),i=Math.max(0,Math.floor(t)),a=Math.max(0,r-Jr.containerPaddingX),o=Math.max(0,i-Jr.containerPaddingY),s=o-(Jr.trendRowH*3+Jr.trendRowGap*2+Jr.trendTopPad+Jr.topToTrendGap),c=s-Jr.scatterHeaderH-Jr.scatterLegendH-Jr.scatterInnerGap>=Jr.scatterAcceptableMin,l=c?s:o,u=l-Jr.scatterHeaderH-Jr.scatterLegendH-Jr.scatterInnerGap,d=u>=Jr.scatterAbsoluteMin,f=u>=Jr.scatterAbsoluteMin&&l>=140,p=Math.floor(l/Jr.gaugeFootprintFactor),m=Math.floor(a*.45/Jr.gaugeFootprintFactor),h=Math.max(Jr.gaugeAbsoluteMin,Math.min(Jr.gaugeAbsoluteMax,n,p,m)),g=Math.ceil(h*Jr.gaugeFootprintFactor+8),_=l-(d?Jr.scatterHeaderH:0)-(f?Jr.scatterLegendH:0)-Jr.scatterInnerGap;return{gaugeSize:h,gaugeColumnMaxWidth:g,scatterMinHeight:Math.max(Jr.scatterAbsoluteMin,Math.min(160,_)),showTrendRows:c,showScatterHeader:d,showLegend:f,variant:o>=480?`wide`:o>=300?`normal`:`compact`}}var Xr={allow:`#34d399`,block:`#ef4444`,ask:`#f59e0b`,log:`#a78bfa`,force:`#38bdf8`,shadow:`#6e7076`};function Zr(e){return!Number.isFinite(e)||e<=0?`—`:e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:`${(e/1e6).toFixed(2)} ms`}function Qr({latency:e,bursts:t,gaugeMaxMs:n=10,windowMs:r=3e4,trendWindowSec:i=60,gaugeSize:a=200,compact:o=!1,className:s}){let c=e?e.p50_ns/1e6:0,l=e?e.p95_ns/1e6:0,u=e?e.p99_ns/1e6:0,d=(0,_.useRef)(null),[f,p]=(0,_.useState)((0,_.useMemo)(()=>Yr(a*2,a*2,a),[a]));(0,_.useEffect)(()=>{let e=d.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=0,r=0,i=e=>{let t=Math.round(e.width/4)*4,i=Math.round(e.height/4)*4;t===n&&i===r||(n=t,r=i,p(Yr(t,i,a)))};i(e.getBoundingClientRect());let o=new ResizeObserver(e=>{let n=e[0];n&&(t&&cancelAnimationFrame(t),t=requestAnimationFrame(()=>{i(n.contentRect)}))});return o.observe(e),()=>{t&&cancelAnimationFrame(t),o.disconnect()}},[a]);let m=(0,_.useRef)(null),h=(0,_.useRef)([]),g=(0,_.useRef)(0);(0,_.useEffect)(()=>{if(t.length===0)return;let e=h.current,n=g.current,i=n;for(let r of t)r.ts_ms<=n||(e.push({ts:r.ts_ms,durationNs:r.duration_ns,color:Xr[r.decision]??`#6e7076`}),r.ts_ms>i&&(i=r.ts_ms));g.current=i;let a=Date.now()-r*2;for(;e.length&&e[0].ts<a;)e.shift()},[t,r]),(0,_.useEffect)(()=>{let e=m.current;if(!e)return;let t=e.getContext(`2d`);if(!t)return;let i=0,a=0,o=0,s=8e3,c=.25,l=1e3,u=n*1e6,d=Math.log10(l),f=Math.log10(u),[p]=vr(()=>{let n=window.devicePixelRatio||1,p=e.clientWidth,m=e.clientHeight;if(p===0||m===0)return;(p!==a||m!==o||n!==i)&&(e.width=Math.floor(p*n),e.height=Math.floor(m*n),t.setTransform(n,0,0,n,0,0),a=p,o=m,i=n),t.clearRect(0,0,p,m),t.strokeStyle=`rgba(110, 112, 118, 0.18)`,t.lineWidth=1,t.setLineDash([2,4]);let g=[{ns:1e5,label:`100µs`},{ns:1e6,label:`1ms`},{ns:1e7,label:`10ms`}];t.font=`9px ui-monospace, SFMono-Regular, Menlo, monospace`,t.textBaseline=`middle`,t.fillStyle=`rgba(110, 112, 118, 0.7)`;for(let e of g){if(e.ns<l||e.ns>u)continue;let n=m-(Math.log10(e.ns)-d)/(f-d)*m;t.beginPath(),t.moveTo(0,n),t.lineTo(p-28,n),t.stroke(),t.fillText(e.label,p-26,n)}t.setLineDash([]);let _=Date.now(),v=_-r,y=h.current;for(;y.length&&y[0].ts<v;)y.shift();t.globalCompositeOperation=`source-over`;for(let e of y){let n=(e.ts-v)/r*p,i=Math.max(l,Math.min(u,e.durationNs)),a=m-(Math.log10(i)-d)/(f-d)*m,o=_-e.ts,h;if(o<=s)h=1-o/s*(1-c);else{let e=r-s;h=e>0?Math.max(0,c*(1-(o-s)/e)):0}h<=0||(t.globalAlpha=h,t.fillStyle=e.color,t.beginPath(),t.arc(n,a,2.5,0,Math.PI*2),t.fill())}t.globalAlpha=1,t.fillStyle=`rgba(110, 112, 118, 0.55)`,t.font=`9px ui-monospace, SFMono-Regular, Menlo, monospace`,t.textBaseline=`bottom`,t.textAlign=`left`,t.fillText(`← ${Math.round(r/1e3)} s ago`,4,m-2),t.textAlign=`right`,t.fillText(`now →`,p-4,m-2),t.textAlign=`left`});return p},[r,n]);let v=(0,_.useRef)({p50:[],p95:[],p99:[]});(0,_.useEffect)(()=>{if(!e)return;let t=v.current,n=Date.now(),r=n-i*1e3,a=(e,t)=>{let i=t/1e6;for(e.length===0&&e.push({ts:r,v:i}),e.push({ts:n,v:i});e.length>1&&e[0].ts<r;)e.shift()};a(t.p50,e.p50_ns),a(t.p95,e.p95_ns),a(t.p99,e.p99_ns)},[e,i]);let y=(0,_.useMemo)(()=>{let e=v.current;return{p50:[...e.p50],p95:[...e.p95],p99:[...e.p99]}},[e]);return(0,K.jsxs)(`div`,{ref:d,"data-lt-variant":f.variant,className:G(`flex h-full min-h-0 flex-col gap-3 overflow-hidden rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] p-3`,s),children:[(0,K.jsxs)(`div`,{className:G(`grid gap-3 min-h-0 flex-1`,`grid-cols-[auto_1fr]`),children:[(0,K.jsx)(`div`,{className:`flex items-stretch justify-center overflow-hidden min-h-0 min-w-0`,style:{maxWidth:f.gaugeColumnMaxWidth},children:(0,K.jsx)(Gr,{value:l,max:n,warnAt:Math.min(.85,.5/n),critAt:Math.min(.92,2/n),marker50:c,marker99:u,displayFormat:e=>Zr(e*1e6),scaleLabels:f.gaugeSize>=130?e=>Zr(e*n*1e6):void 0,size:f.gaugeSize,label:`p95 latency`})}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-1 min-w-0 min-h-0 flex-1`,children:[f.showScatterHeader?(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 shrink-0 min-w-0`,children:[(0,K.jsx)(`span`,{className:`overline truncate min-w-0`,children:`live trace · 30 s scatter`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] shrink min-w-0 truncate text-right`,children:[h.current.length,` live · log-Y`]})]}):null,f.showLegend?(0,K.jsx)(`div`,{className:`shrink-0`,children:(0,K.jsx)($r,{})}):null,(0,K.jsx)(`canvas`,{ref:m,"data-testid":`latency-scatter-canvas`,className:`block w-full flex-1 min-h-0 rounded-sm bg-[var(--color-surface-0)] border border-[var(--color-line-0)]`,style:{minHeight:f.scatterMinHeight}})]})]}),f.showTrendRows?(0,K.jsxs)(`div`,{"data-testid":`latency-trend-rows`,className:`grid grid-cols-1 gap-1.5 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(ei,{label:`p50 · median`,value:Zr(e?.p50_ns??0),color:`#34d399`,fill:`rgba(52, 211, 153, 0.14)`,samples:y.p50,windowMs:i*1e3}),(0,K.jsx)(ei,{label:`p95 · 95th`,value:Zr(e?.p95_ns??0),color:`#38bdf8`,fill:`rgba(56, 189, 248, 0.14)`,samples:y.p95,windowMs:i*1e3}),(0,K.jsx)(ei,{label:`p99 · 99th`,value:Zr(e?.p99_ns??0),color:`#6366f1`,fill:`rgba(99, 102, 241, 0.14)`,samples:y.p99,windowMs:i*1e3})]}):null]})}function $r(){return(0,K.jsx)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[{key:`allow`,color:Xr.allow},{key:`ask`,color:Xr.ask},{key:`block`,color:Xr.block},{key:`force`,color:Xr.force},{key:`log`,color:Xr.log},{key:`shadow`,color:Xr.shadow}].map(e=>(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block h-1.5 w-1.5 rounded-full`,style:{background:e.color}}),(0,K.jsx)(`span`,{className:`uppercase tracking-wide`,children:e.key})]},e.key))})}function ei({label:e,value:t,color:n,fill:r,samples:i,windowMs:a}){return(0,K.jsxs)(`div`,{className:`grid grid-cols-[72px_minmax(0,1fr)_92px] items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`overline text-right truncate min-w-0`,children:e}),(0,K.jsx)(br,{samples:i,width:1200,height:28,windowMs:a,color:n,fillColor:r,className:`w-full h-7`}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-right truncate min-w-0`,style:{color:n},title:t,children:t})]})}function ti({counters:e,className:t,showLegend:n=!0}){let r=[{key:`allow`,label:`Allow`,value:e.allow,color:`var(--color-decision-allow)`,textClass:`text-emerald-300`},{key:`ask`,label:`Ask`,value:e.ask,color:`var(--color-decision-ask)`,textClass:`text-amber-300`},{key:`block`,label:`Block`,value:e.block,color:`var(--color-decision-block)`,textClass:`text-red-300`},{key:`force`,label:`Force`,value:e.force,color:`var(--color-decision-force)`,textClass:`text-sky-300`},{key:`log`,label:`Log`,value:e.log,color:`var(--color-decision-log)`,textClass:`text-violet-300`},{key:`shadow`,label:`Shadow`,value:e.shadow,color:`var(--color-decision-shadow)`,textClass:`text-[var(--color-fg-3)]`}],i=r.reduce((e,t)=>e+t.value,0),a=(0,_.useRef)(null),o=(0,_.useRef)({});return(0,_.useEffect)(()=>{let e=a.current;if(!e)return;let t=e.querySelectorAll(`[data-seg]`);if(t.length===0)return;let n=ot();t.forEach(e=>{let t=e.dataset.seg,a=r.find(e=>e.key===t);if(!a)return;let s=i===0?0:a.value/i*100,c=o.current[t]??0;n||Math.abs(c-s)<.01?e.style.width=`${s}%`:wt(e,{width:[`${c}%`,`${s}%`],duration:480,ease:`outExpo`}),o.current[t]=s})},[e,i]),(0,K.jsxs)(`div`,{className:G(`flex flex-col gap-2`,t),children:[(0,K.jsx)(`div`,{ref:a,className:`flex h-3 w-full overflow-hidden rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-2)]`,children:i===0?(0,K.jsx)(`div`,{className:`w-full bg-[var(--color-surface-3)]`}):r.map(e=>(0,K.jsx)(`div`,{"data-seg":e.key,style:{width:`${i===0?0:e.value/i*100}%`,background:e.color}},e.key))}),n?(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-[11px] font-mono`,children:r.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2 min-w-0`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,K.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-sm`,style:{background:e.color}}),(0,K.jsx)(`span`,{className:G(`uppercase tracking-wide truncate`,e.textClass),children:e.label})]}),(0,K.jsx)(fr,{value:e.value,className:`shrink-0 tabular-nums text-[var(--color-fg-1)]`})]},e.key))}):null]})}function ni(e){return e<60?`${Math.floor(e)}s`:e<3600?`${Math.floor(e/60)}m ${Math.floor(e%60)}s`:e<86400?`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`:`${Math.floor(e/86400)}d ${Math.floor(e%86400/3600)}h`}function ri(e,t){if(t===void 0||t<=0)return`var(--color-brand)`;let n=e/t;return n>=.9?`var(--color-decision-block)`:n>=.7?`var(--color-decision-ask)`:`var(--color-decision-allow)`}function ii(e){return e===`var(--color-decision-block)`?`color-mix(in srgb, var(--color-decision-block) 14%, transparent)`:e===`var(--color-decision-ask)`?`color-mix(in srgb, var(--color-decision-ask) 14%, transparent)`:e===`var(--color-decision-allow)`?`color-mix(in srgb, var(--color-decision-allow) 14%, transparent)`:e===`var(--color-decision-log)`?`color-mix(in srgb, var(--color-decision-log) 14%, transparent)`:`color-mix(in srgb, var(--color-brand) 12%, transparent)`}function ai(e,t){if(e.length===0)return[];let n=Date.now(),r=t/Math.max(1,e.length),i=Array(e.length);for(let t=0;t<e.length;t++)i[t]={ts:n-(e.length-1-t)*r,v:e[t]};return i}function oi({cpuPct:e,cpuSeries:t,cpuLimit:n,memMb:r,memSeries:i,memLimit:a,heapUsedMb:o,heapTotalMb:s,heapSeries:c,uptimeSec:l,className:u}){let d=6e4,f=ri(e,n),p=ri(r,a),m=`var(--color-decision-log)`,h=(0,_.useMemo)(()=>ai(t,d),[t]),g=(0,_.useMemo)(()=>ai(i,d),[i]),v=(0,_.useMemo)(()=>ai(c,d),[c]),y=(0,_.useRef)([]);(0,_.useEffect)(()=>{let e=y.current.filter(e=>!!e);if(e.length===0)return;e.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(28px) scale(0.94)`});let t=wt(e,{translateY:[28,0],scale:[.94,1],opacity:[0,1],duration:720,delay:nt(140),ease:`outBack(1.25)`,onComplete:e=>{e.style.transform=``}});return()=>t.cancel()},[]);let b=n!==void 0&&n>0&&e>=n*.9,x=a!==void 0&&a>0&&r>=a*.9;return(0,K.jsx)(`div`,{className:G(`rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] p-3`,u),children:(0,K.jsxs)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-3`,children:[(0,K.jsx)(si,{registerRef:e=>y.current[0]=e,label:`CPU`,color:f,fill:ii(f),pulse:b,valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:e,format:e=>e.toFixed(1),className:`text-[var(--color-fg-0)]`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:`%`})]}),subText:n?`limit ${n}%`:void 0,samples:h,maxValue:100,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[1]=e,label:`Memory`,color:p,fill:ii(p),pulse:x,valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:r,format:e=>e.toFixed(0),className:`text-[var(--color-fg-0)]`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:`MB`})]}),subText:a?`limit ${a} MB`:void 0,samples:g,maxValue:a?a*1.1:void 0,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[2]=e,label:`Heap`,color:m,fill:ii(m),valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:o,format:e=>e.toFixed(0),className:`text-[var(--color-fg-0)]`}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:[`/ `,s.toFixed(0),` MB`]})]}),subText:s>0?`${(o/s*100).toFixed(0)}% used`:void 0,samples:v,maxValue:s>0?s:void 0,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[3]=e,label:`Uptime`,color:`var(--color-fg-2)`,fill:`rgba(214, 215, 217, 0.04)`,valueNode:(0,K.jsx)(`span`,{className:`text-[var(--color-fg-0)] tabular-nums`,children:ni(l)}),subText:`since daemon start`})]})})}function si({label:e,valueNode:t,subText:n,color:r,fill:i,samples:a,maxValue:o,windowMs:s,pulse:c,registerRef:l}){let u=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!c||!u.current)return;let e=!1,t=null,n=()=>{e||!u.current||(t=wt(u.current,{"--breach":[0,1],duration:420,ease:`outCubic`,onComplete:()=>{e||!u.current||(t=wt(u.current,{"--breach":[1,0],duration:560,ease:`outCubic`,onComplete:()=>{e||n()}}))}}))};return n(),()=>{e=!0,t?.cancel();let n=u.current;n&&n.style.removeProperty(`--breach`)}},[c]),(0,K.jsxs)(`div`,{ref:e=>{u.current=e,l(e)},className:`flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-0)] border-[var(--color-line-1)] px-4 py-3 min-h-[140px] system-pulse__tile`,"data-breach":c?`true`:void 0,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),n?(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:n}):null]}),(0,K.jsx)(`span`,{className:`text-[1.9rem] leading-none font-semibold tracking-tight font-mono`,style:{color:r},children:t}),a&&a.length>=2?(0,K.jsx)(`div`,{className:`mt-auto`,children:(0,K.jsx)(br,{samples:a,width:320,height:64,windowMs:s??6e4,color:r,fillColor:i,maxValue:o,className:`w-full`})}):(0,K.jsx)(`div`,{className:`mt-auto h-[64px] flex items-end`,children:(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`— no series —`})})]})}var ci={__daemon:`SigmaShake itself`,bash:`Run a terminal command`,shell:`Run a terminal command`,run_command:`Run a terminal command`,exec:`Run a terminal command`,run_shell_command:`Run a terminal command`,read:`Read a file`,read_file:`Read a file`,view_file:`Read a file`,cat:`Read a file`,view:`Read a file`,write:`Save changes to a file`,write_to_file:`Save changes to a file`,create_file:`Create a new file`,edit:`Edit an existing file`,multiedit:`Edit several spots in a file`,patch:`Edit an existing file`,apply_patch:`Edit an existing file`,replace:`Edit an existing file`,grep:`Search the codebase`,ripgrep:`Search the codebase`,search:`Search the codebase`,search_codebase:`Search the codebase`,glob:`Find files by name`,find:`Find files by name`,list_files:`List files in a folder`,ls:`List files in a folder`,webfetch:`Read a webpage`,fetch:`Read a webpage`,websearch:`Search the web`,search_web:`Search the web`,browser_action:`Use a web browser`,agent:`Ask a helper AI to investigate`,spawn:`Ask a helper AI to investigate`,task:`Update its to-do list`,todowrite:`Update its to-do list`,todo_write:`Update its to-do list`,notebookedit:`Edit a Jupyter notebook`,notebook_edit:`Edit a Jupyter notebook`};function li(e){return e?ci[e.toLowerCase()]||`Use the ${e.replace(/^_+/,``)} tool`:`Take an action`}function ui(e){return e?{"claude-code":`Claude Code`,claudecode:`Claude Code`,cursor:`Cursor`,copilot:`GitHub Copilot`,codex:`OpenAI Codex`,gemini:`Gemini`,antigravity:`Antigravity`,pi:`Pi`,generic:`AI agent`,daemon:`SigmaShake`}[e.toLowerCase()]??e:`AI agent`}function di(e){return e?e.startsWith(`__`):!1}function fi(e){for(let t of[`file_path`,`path`,`TargetFile`,`AbsolutePath`,`filename`,`file`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function pi(e){for(let t of[`command`,`CommandLine`,`cmd`,`Input`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function mi(e){for(let t of[`query`,`pattern`,`Query`,`q`,`search`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function hi(e){for(let t of[`url`,`URL`,`Url`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function gi(e){let t=e.replace(/[\\/]+$/,``),n=t.lastIndexOf(`/`),r=t.lastIndexOf(`\\`),i=Math.max(n,r);return i>=0?t.slice(i+1):t}function _i(e){let t=e.trim(),n=(t.split(/[|;&]/)[0]?.trim()??t).split(/\s+/),r=n[0]?.toLowerCase()??``,i=n[1]?.toLowerCase()??``,a=(e,t)=>({headline:e,detail:t});if(r===`rm`)return a(`Delete files`,`Deleting files from disk: \`${t}\``);if(r===`mkdir`)return a(`Create a folder`,`Creating a new folder: \`${t}\``);if(r===`mv`)return a(`Move or rename a file`,`Moving or renaming: \`${t}\``);if(r===`cp`)return a(`Copy a file`,`Copying files: \`${t}\``);if(r===`cat`||r===`head`||r===`tail`||r===`less`)return a(`Show file contents`,`Printing file contents: \`${t}\``);if(r===`ls`||r===`tree`||r===`find`)return a(`List files`,`Listing files: \`${t}\``);if(r===`cd`||r===`pwd`)return a(`Check the working folder`,`Checking or changing the current folder: \`${t}\``);if(r===`echo`||r===`printf`)return a(`Print a message`,`Printing a message: \`${t}\``);if(r===`curl`||r===`wget`)return a(`Download from the internet`,`Downloading something from the internet: \`${t}\``);if(r===`kill`||r===`pkill`)return a(`Stop a running program`,`Stopping a running program: \`${t}\``);if(r===`git`)return new Set([`status`,`log`,`diff`,`show`,`branch`,`remote`,`blame`,`config`]).has(i)?a(`Check git history`,`Reading git information (\`git ${i}\`) — no changes are made.`):i===`add`||i===`restore`||i===`reset`?a(`Stage or unstage changes`,`Preparing changes for commit (\`git ${i}\`).`):i===`commit`?a(`Save a checkpoint`,`Saving a snapshot of your changes to git history.`):i===`push`?a(`Send code to the remote`,`Uploading your commits to the remote git repository (e.g. GitHub).`):i===`pull`||i===`fetch`?a(`Get latest from the remote`,`Downloading the newest commits from the remote repository.`):i===`checkout`||i===`switch`?a(`Switch git branch`,`Switching which version of the code is loaded (\`git ${i}\`).`):i===`merge`||i===`rebase`?a(`Combine git branches`,`Combining changes from another branch (\`git ${i}\`).`):a(`Use git`,`Running a git command: \`${t}\``);if(r===`npm`||r===`bun`||r===`pnpm`||r===`yarn`){if(i===`install`||i===`i`||i===`add`)return a(`Install packages`,`Downloading project dependencies from the internet (\`${r} ${i}\`).`);if(i===`run`)return a(`Run a project script`,`Running a project script: \`${t}\``);if(i===`test`)return a(`Run automated tests`,`Running the project's automated tests.`);if(i===`build`)return a(`Build the project`,`Compiling the project for release.`)}return r===`pip`||r===`pip3`||r===`uv`?a(`Install Python packages`,`Installing Python packages: \`${t}\``):r===`pytest`||r===`jest`||r===`vitest`||r===`mocha`||r===`bun`&&i===`test`?a(`Run automated tests`,`Running automated tests: \`${t}\``):r===`docker`||r===`podman`?a(`Use Docker`,`Running a container command: \`${t}\``):r===`ssh`||r===`scp`||r===`rsync`?a(`Talk to another machine`,`Connecting to another computer over the network: \`${t}\``):a(`Run a terminal command`,`Running in the terminal: \`${t}\``)}function vi(e,t){let n=e??``,r=n.toLowerCase(),i=li(n),a=null;try{let e=JSON.parse(t);e&&typeof e==`object`&&!Array.isArray(e)&&(a=e)}catch{}if(r===`__daemon`){let e=a?.event,t=a?.detail;return typeof e==`string`&&e.length>0?{headline:`SigmaShake itself`,detail:`SigmaShake ${e===`start`?`started`:e===`stop`?`stopped`:e}${typeof t==`string`&&t.length>0?` — ${t}`:``}.`}:{headline:`SigmaShake itself`,detail:`A SigmaShake lifecycle event.`}}if(!a)return{headline:i,detail:`${i}.`};if(r===`bash`||r===`shell`||r===`run_command`||r===`exec`||r===`run_shell_command`){let e=pi(a);return e?_i(e):{headline:i,detail:`Running a terminal command.`}}if(r===`read`||r===`read_file`||r===`view_file`||r===`cat`||r===`view`){let e=fi(a);return e?{headline:i,detail:`Reading the file \`${gi(e)}\` so it can understand the current code. No changes are made.`}:{headline:i,detail:`Reading a file. No changes are made.`}}if(r===`write`||r===`write_to_file`||r===`create_file`){let e=fi(a);return e?{headline:`Save changes to a file`,detail:`Creating or overwriting the file \`${gi(e)}\`. This will replace anything that was there before.`}:{headline:i,detail:`Creating or overwriting a file.`}}if(r===`edit`||r===`multiedit`||r===`patch`||r===`apply_patch`||r===`replace`){let e=fi(a);return e?{headline:i,detail:`Editing the file \`${gi(e)}\` — changing specific parts of it without rewriting the whole thing.`}:{headline:i,detail:`Editing a file in place.`}}if(r===`grep`||r===`ripgrep`||r===`search`||r===`search_codebase`){let e=mi(a);return e?{headline:i,detail:`Searching the project for the text "${e}".`}:{headline:i,detail:`Searching the project for matching text.`}}if(r===`glob`||r===`find`||r===`list_files`||r===`ls`){let e=mi(a)??fi(a);return e?{headline:i,detail:`Looking for files matching "${e}".`}:{headline:i,detail:`Looking for files in the project.`}}if(r===`webfetch`||r===`fetch`||r===`browser_action`){let e=hi(a);return e?{headline:i,detail:`Reading a webpage from the internet: ${e}`}:{headline:i,detail:`Reading a webpage from the internet.`}}if(r===`websearch`||r===`search_web`){let e=mi(a);return e?{headline:i,detail:`Searching the web for "${e}".`}:{headline:i,detail:`Searching the web.`}}return r===`agent`||r===`spawn`?{headline:i,detail:`Asking a separate helper AI to investigate something on its own, then report back. Helps keep this conversation focused.`}:r===`task`||r===`todowrite`||r===`todo_write`?{headline:i,detail:`Updating its internal to-do list so it can keep track of progress on a multi-step task.`}:{headline:i,detail:`${i}.`}}var yi=At(`relative font-mono text-[11px] overflow-hidden border bg-[var(--color-surface-1)] border-[var(--color-line-1)] rounded-sm`,{variants:{density:{compact:``,roomy:`text-[12px]`}},defaultVariants:{density:`compact`}}),bi={allow:`#34d399`,block:`#ef4444`,ask:`#f59e0b`,log:`#a78bfa`,force:`#38bdf8`,shadow:`#6e7076`},xi={allow:`text-emerald-300`,block:`text-red-300`,ask:`text-amber-300`,log:`text-violet-300`,force:`text-sky-300`,shadow:`text-[var(--color-fg-3)]`};function Si(e){let t=new Date(e);return`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}.${String(t.getMilliseconds()).padStart(3,`0`)}`}function Ci(e){return e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:e<1e9?`${(e/1e6).toFixed(2)} ms`:`${(e/1e9).toFixed(2)} s`}function wi(e){return e.variant===`raw`?(0,K.jsx)(Ei,{...e}):(0,K.jsx)(Ti,{...e})}function Ti({bursts:e,windowSize:t=60,filterDecision:n,filterClient:r,className:i,density:a,height:o=260}){let[s,c]=(0,_.useState)(!1),l=(0,_.useRef)(null),u=(0,_.useMemo)(()=>{let i=e;n&&(i=i.filter(e=>e.decision===n)),r&&(i=i.filter(e=>e.client===r));let a=i.slice(-t),o=Array(a.length);for(let e=0;e<a.length;e++)o[e]=a[a.length-1-e];return o},[e,n,r,t]);s?l.current===null&&(l.current=u):l.current=null;let d=s&&l.current?l.current:u,f=(0,_.useRef)(null),p=(0,_.useRef)(0);return(0,_.useLayoutEffect)(()=>{if(s)return;let e=d[0];if(!e||e.ts_ms===p.current)return;p.current=e.ts_ms;let t=f.current;t&&(ot()||wt(t,{translateX:[-10,0],opacity:[0,1],duration:220,ease:`outExpo`}))},[d,s]),(0,K.jsxs)(`div`,{className:G(yi({density:a,className:i})),onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),children:[(0,K.jsx)(`div`,{className:`overflow-auto`,style:{height:o},children:d.length===0?(0,K.jsx)(`div`,{className:`px-3 py-4 text-[var(--color-fg-4)]`,children:`— waiting for events —`}):d.map((e,t)=>{let n=e.input_preview&&e.input_preview.length>0?e.input_preview:e.rule_id?`rule: ${e.rule_id}`:`—`;return(0,K.jsxs)(`div`,{ref:t===0?f:void 0,className:`telemetry-row grid items-center gap-2 px-3 py-1 border-b border-[var(--color-line-0)] last:border-b-0 hover:bg-[var(--color-surface-2)]`,style:{gridTemplateColumns:`90px 56px minmax(80px, 130px) minmax(0, 1fr) 70px 80px`,borderLeft:`3px solid ${bi[e.decision]??`#666`}`},children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:Si(e.ts_ms)}),(0,K.jsx)(`span`,{className:G(`uppercase tracking-wide font-medium`,xi[e.decision]??`text-[var(--color-fg-2)]`),children:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,title:e.tool?`${e.tool} — ${li(e.tool)}`:`unknown tool`,children:e.tool||`—`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] truncate`,title:n,children:n}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums text-right`,children:Ci(e.duration_ns)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate text-right`,title:e.client,children:e.client})]},e.audit_id??`${e.ts_ms}:${e.tool}`)})}),s?(0,K.jsx)(Di,{}):null]})}function Ei({lines:e,windowSize:t=300,className:n,density:r,height:i=260}){let[a,o]=(0,_.useState)(!1),s=(0,_.useRef)(null),c=(0,_.useMemo)(()=>{let n=e.slice(-t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=n[n.length-1-e];return r},[e,t]);a?s.current===null&&(s.current=c):s.current=null;let l=a&&s.current?s.current:c;return(0,K.jsxs)(`div`,{className:G(yi({density:r,className:n})),onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[(0,K.jsx)(`div`,{className:`overflow-auto px-3 py-2 leading-relaxed text-[var(--color-fg-2)] whitespace-pre`,style:{height:i},children:l.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`— empty —`}):l.map((e,t)=>(0,K.jsx)(`div`,{className:`hover:bg-[var(--color-surface-2)]`,children:e},`${t}:${e.slice(0,40)}`))}),a?(0,K.jsx)(Di,{}):null]})}function Di(){return(0,K.jsx)(`span`,{className:`absolute top-1 right-2 text-[10px] uppercase tracking-wider font-mono text-[var(--color-brand)] bg-[var(--color-surface-0)] px-1.5 py-0.5 border border-[var(--color-brand)]/40 rounded-sm`,children:`paused`})}var Oi=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),ki=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Ai=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),ji=e=>{let t=Ai(e);return t.charAt(0).toUpperCase()+t.slice(1)},Mi={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},Ni=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Pi=(0,_.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>(0,_.createElement)(`svg`,{ref:c,...Mi,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Oi(`lucide`,i),...!a&&!Ni(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,_.createElement)(e,t)),...Array.isArray(a)?a:[a]])),Fi=(e,t)=>{let n=(0,_.forwardRef)(({className:n,...r},i)=>(0,_.createElement)(Pi,{ref:i,iconNode:t,className:Oi(`lucide-${ki(ji(e))}`,`lucide-${e}`,n),...r}));return n.displayName=ji(e),n},Ii=Fi(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),Li=Fi(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),Ri=Fi(`grip-horizontal`,[[`circle`,{cx:`12`,cy:`9`,r:`1`,key:`124mty`}],[`circle`,{cx:`19`,cy:`9`,r:`1`,key:`1ruzo2`}],[`circle`,{cx:`5`,cy:`9`,r:`1`,key:`1a8b28`}],[`circle`,{cx:`12`,cy:`15`,r:`1`,key:`1e56xg`}],[`circle`,{cx:`19`,cy:`15`,r:`1`,key:`1a92ep`}],[`circle`,{cx:`5`,cy:`15`,r:`1`,key:`5r1jwy`}]]),zi=Fi(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),Bi=Fi(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),Vi=Fi(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Hi=Fi(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Ui=Fi(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),Wi=Fi(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Gi=[`hero-metrics`,`graph`,`latency-trace`,`throughput`,`decision-mix`,`telemetry-feed`,`system-pulse`,`pending-approvals`,`recent-blocks`],Ki={"hero-metrics":`Hero metrics`,graph:`Graph intelligence`,"latency-trace":`Latency trace`,throughput:`Throughput`,"decision-mix":`Decision mix`,"telemetry-feed":`Telemetry feed`,"system-pulse":`System pulse`,"pending-approvals":`Pending approvals`,"recent-blocks":`Recent blocks`},qi={"hero-metrics":{minW:6,minH:2,defaultW:12,defaultH:2},graph:{minW:4,minH:3,defaultW:8,defaultH:5},"latency-trace":{minW:4,minH:3,defaultW:8,defaultH:4},throughput:{minW:2,minH:2,defaultW:4,defaultH:2},"decision-mix":{minW:2,minH:2,defaultW:4,defaultH:2},"telemetry-feed":{minW:6,minH:3,defaultW:12,defaultH:4},"system-pulse":{minW:4,minH:3,defaultW:12,defaultH:3},"pending-approvals":{minW:3,minH:2,defaultW:6,defaultH:3},"recent-blocks":{minW:3,minH:2,defaultW:6,defaultH:3}};function Ji({panel:e,isEditing:t,children:n,drag:r}){let i=(0,_.useRef)(null),a={gridColumn:`${e.x+1} / span ${e.w}`,gridRow:`${e.y+1} / span ${e.h}`};return(0,K.jsxs)(`div`,{ref:i,className:`grid-panel ${t?`grid-panel--edit`:``}`,style:a,role:t?`region`:void 0,"aria-label":t?Ki[e.id]:void 0,tabIndex:t?0:void 0,onKeyDown:t?t=>r.onPanelKeyDown(t,e.id):void 0,"data-panel-id":e.id,children:[t&&(0,K.jsx)(`button`,{type:`button`,className:`grid-panel__drag-handle`,title:`Drag ${Ki[e.id]} (or Arrow keys)`,"aria-label":`Drag ${Ki[e.id]}`,onPointerDown:t=>{let n=i.current;n&&r.onDragPointerDown(t,e.id,n)},children:(0,K.jsx)(Ri,{size:12,strokeWidth:2})}),(0,K.jsx)(`div`,{className:`grid-panel__content`,"data-reveal":t?void 0:``,children:n}),t&&(0,K.jsx)(`button`,{type:`button`,className:`grid-panel__resize-handle`,title:`Resize ${Ki[e.id]} (or Shift+Arrow keys)`,"aria-label":`Resize ${Ki[e.id]}`,onPointerDown:t=>{let n=i.current;n&&r.onResizePointerDown(t,e.id,n)},children:(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 10 10`,"aria-hidden":!0,children:[(0,K.jsx)(`path`,{d:`M10 0 L10 10 L0 10 Z`,fill:`currentColor`,fillOpacity:`0.4`}),(0,K.jsx)(`path`,{d:`M3 10 L10 3 M6 10 L10 6 M9 10 L10 9`,stroke:`currentColor`,strokeWidth:`0.8`,fill:`none`})]})})]})}var Yi=(0,_.memo)(Ji);function Xi(e){let t=getComputedStyle(e),n=e.getBoundingClientRect(),r=parseFloat(t.rowGap||t.gap||`0`)||0,i=r*11;return{cellWidthPx:(n.width-i)/12+r,cellHeightPx:72+r}}function Zi(e){let t=(0,_.useRef)(null),n=(0,_.useRef)(e);n.current=e;let r=(0,_.useCallback)(()=>{let e=t.current;if(e){e.element.style.transform=``,e.element.style.width=``,e.element.style.height=``,e.element.style.zIndex=``,e.element.classList.remove(`grid-panel--dragging`),e.element.classList.remove(`grid-panel--resizing`);try{e.element.releasePointerCapture(e.pointerId)}catch{}t.current=null}},[]);(0,_.useEffect)(()=>{function e(e){let n=t.current;if(!n||e.pointerId!==n.pointerId)return;let r=e.clientX-n.startPointerX,i=e.clientY-n.startPointerY;if(n.mode===`drag`)n.element.style.transform=`translate3d(${r}px, ${i}px, 0)`;else{let e=qi[n.startPanel.id],t=e.minW*n.cellWidthPx-n.cellWidthPx+40,a=e.minH*n.cellHeightPx-n.cellHeightPx+40,o=Math.max(t,n.startRectW+r),s=Math.max(a,n.startRectH+i);n.element.style.width=`${o}px`,n.element.style.height=`${s}px`}}function i(e,t,n){let r=qi[e.startPanel.id];if(e.mode===`drag`){let r=Math.round(t/e.cellWidthPx),i=Math.round(n/e.cellHeightPx),a=e.startPanel.x+r,o=e.startPanel.y+i;return a<0&&(a=0),a+e.startPanel.w>12&&(a=12-e.startPanel.w),o<0&&(o=0),{id:e.id,x:a,y:o,w:e.startPanel.w,h:e.startPanel.h}}let i=Math.round(t/e.cellWidthPx),a=Math.round(n/e.cellHeightPx),o=e.startPanel.w+i,s=e.startPanel.h+a;return o<r.minW&&(o=r.minW),s<r.minH&&(s=r.minH),e.startPanel.x+o>12&&(o=12-e.startPanel.x),{id:e.id,x:e.startPanel.x,y:e.startPanel.y,w:o,h:s}}function a(e){let a=t.current;if(!a||e.pointerId!==a.pointerId)return;let o=i(a,e.clientX-a.startPointerX,e.clientY-a.startPointerY);r(),o.x===a.startPanel.x&&o.y===a.startPanel.y&&o.w===a.startPanel.w&&o.h===a.startPanel.h||n.current.onCommit(o)}function o(e){let n=t.current;!n||e.pointerId!==n.pointerId||r()}function s(e){e.key===`Escape`&&t.current&&r()}function c(){document.visibilityState===`hidden`&&t.current&&r()}return document.addEventListener(`pointermove`,e),document.addEventListener(`pointerup`,a),document.addEventListener(`pointercancel`,o),document.addEventListener(`keydown`,s),document.addEventListener(`visibilitychange`,c),()=>{document.removeEventListener(`pointermove`,e),document.removeEventListener(`pointerup`,a),document.removeEventListener(`pointercancel`,o),document.removeEventListener(`keydown`,s),document.removeEventListener(`visibilitychange`,c),t.current&&r()}},[r]);let i=(0,_.useCallback)((e,r,i,a)=>{if(!n.current.enabled||t.current)return;let o=n.current.getPanel(r),s=n.current.gridRef.current;if(!o||!s)return;e.preventDefault(),e.stopPropagation();let{cellWidthPx:c,cellHeightPx:l}=Xi(s),u=i.getBoundingClientRect();t.current={id:r,mode:a,startPointerX:e.clientX,startPointerY:e.clientY,startPanel:o,element:i,cellWidthPx:c,cellHeightPx:l,pointerId:e.pointerId,startRectW:u.width,startRectH:u.height},i.classList.add(a===`drag`?`grid-panel--dragging`:`grid-panel--resizing`),i.style.zIndex=`10`;try{i.setPointerCapture(e.pointerId)}catch{}},[]);return{onDragPointerDown:(0,_.useCallback)((e,t,n)=>i(e,t,n,`drag`),[i]),onResizePointerDown:(0,_.useCallback)((e,t,n)=>i(e,t,n,`resize`),[i]),onPanelKeyDown:(0,_.useCallback)((e,t)=>{if(!n.current.enabled)return;let r=n.current.getPanel(t);if(!r)return;let i=e.shiftKey,a=0,o=0;switch(e.key){case`ArrowLeft`:a=-1;break;case`ArrowRight`:a=1;break;case`ArrowUp`:o=-1;break;case`ArrowDown`:o=1;break;default:return}e.preventDefault(),e.stopPropagation();let s=qi[t];if(i){let e=r.w+a,i=r.h+o;if(e<s.minW&&(e=s.minW),i<s.minH&&(i=s.minH),r.x+e>12&&(e=12-r.x),e===r.w&&i===r.h)return;n.current.onCommit({id:t,x:r.x,y:r.y,w:e,h:i})}else{let e=r.x+a,i=r.y+o;if(e<0&&(e=0),e+r.w>12&&(e=12-r.w),i<0&&(i=0),e===r.x&&i===r.y)return;n.current.onCommit({id:t,x:e,y:i,w:r.w,h:r.h})}},[]),isGesturing:(0,_.useCallback)(()=>t.current!==null,[])}}function Qi(e,t){return e.x<t.x+t.w&&e.x+e.w>t.x&&e.y<t.y+t.h&&e.y+e.h>t.y}function $i(e){return{id:e.id,x:e.x,y:e.y,w:e.w,h:e.h}}function ea(e,t){let n=[$i(e)],r=t.map($i);r.sort((e,t)=>e.y===t.y?e.x-t.x:e.y-t.y);for(let e of r){for(;;){let t=!1;for(let r of n)if(Qi(e,r)){let n=r.y+r.h;n>e.y&&(e.y=n,t=!0)}if(!t)break}n.push(e)}return n}function ta(e){if(e.length===0)return[];let t=[...e].map($i).sort((e,t)=>e.y===t.y?e.x-t.x:e.y-t.y),n=[];for(let e of t){let t=!0;for(;t;){t=!1;for(let r of n)Qi(e,r)&&(e.y=r.y+r.h,t=!0)}n.push(e)}return n}function na(e,t,n){let r=e.findIndex(e=>e.id===t);if(r===-1)return{panels:e.map($i)};let i=ea({id:e[r].id,x:n.x,y:n.y,w:n.w,h:n.h},e.filter((e,t)=>t!==r)),a=new Map(i.map(e=>[e.id,e]));return{panels:ta(e.map(e=>a.get(e.id)).filter(Boolean))}}function ra({panels:e,isEditing:t,renderers:n,onPanelsChange:r}){let i=(0,_.useRef)(null),a=(0,_.useRef)(e);a.current=e;let o=(0,_.useMemo)(()=>{let t=new Map;for(let n of e)t.set(n.id,n);return t},[e]),s=Zi({gridRef:i,getPanel:(0,_.useCallback)(e=>o.get(e),[o]),onCommit:(0,_.useCallback)(e=>{let t=a.current,{panels:n}=na(t,e.id,{x:e.x,y:e.y,w:e.w,h:e.h});r(n)},[r]),enabled:t});return(0,K.jsx)(`div`,{ref:i,className:`grid-layout ${t?`grid-layout--editing`:``}`,"aria-live":t?`polite`:void 0,children:e.map(e=>(0,K.jsx)(Yi,{panel:e,isEditing:t,drag:s,children:n[e.id]()},e.id))})}function ia({manager:e,isEditing:t,onToggleEditing:n}){let{config:r,activeLayout:i,canAddUserLayout:a,saveError:o,selectLayout:s,saveAs:c,renameActive:l,deleteLayout:u,resetActive:d,exportConfig:f,importConfig:p}=e,[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(``),[x,S]=(0,_.useState)(!1),[C,w]=(0,_.useState)(i.name),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(!1),ee=(0,_.useRef)(null);(0,_.useEffect)(()=>{w(i.name)},[i.name]),(0,_.useEffect)(()=>{o&&h(o)},[o]),(0,_.useEffect)(()=>{if(!m)return;let e=setTimeout(()=>h(null),4e3);return()=>clearTimeout(e)},[m]);function k(){y.trim()&&(c(y.trim()),b(``),v(!1),h(`Saved "${y.trim()}"`))}function A(){C.trim()&&(l(C.trim()),S(!1),h(`Renamed`))}function j(){let e=i.name;u(i.id),O(!1),h(`Deleted "${e}"`)}function te(){d(),E(!1),h(`Reset to default`)}function ne(){let e=f(),t=new Blob([e],{type:`application/json`}),n=URL.createObjectURL(t),r=new Date().toISOString().slice(0,10),i=document.createElement(`a`);i.href=n,i.download=`ssg-layout-${r}.json`,i.click(),URL.revokeObjectURL(n),h(`Layout exported`)}function re(e){let t=e.target.files?.[0];e.target.value=``,t&&t.text().then(e=>{h(p(e).message)}).catch(()=>h(`Import failed: could not read file`))}return(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`overline shrink-0`,children:`layout`}),(0,K.jsxs)(`select`,{value:r.activeLayoutId,onChange:e=>s(e.target.value),className:`bg-[var(--color-surface-2)] border border-[var(--color-line-1)] rounded-sm px-2 py-1 text-[11px] font-mono text-[var(--color-fg-1)] hover:border-[var(--color-line-2)] focus:outline-none focus:ring-1 focus:ring-[var(--color-brand)] cursor-pointer`,"aria-label":`Select layout`,children:[(0,K.jsx)(`optgroup`,{label:`Built-in`,children:r.layouts.filter(e=>e.builtIn).map(e=>(0,K.jsx)(`option`,{value:e.id,children:e.name},e.id))}),r.layouts.some(e=>!e.builtIn)&&(0,K.jsx)(`optgroup`,{label:`Your layouts`,children:r.layouts.filter(e=>!e.builtIn).map(e=>(0,K.jsx)(`option`,{value:e.id,children:e.name},e.id))})]}),i.builtIn&&(0,K.jsx)(`span`,{className:`chip text-[var(--color-fg-3)]`,title:`Built-in preset`,children:`built-in`})]}),(0,K.jsx)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:t?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(X,{variant:`secondary`,size:`sm`,onClick:()=>v(!0),disabled:!a,title:a?`Save the current arrangement as a new preset`:`Layout limit reached — delete one first`,children:[(0,K.jsx)(Vi,{size:11,strokeWidth:2.25}),`Save as`]}),!i.builtIn&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>{w(i.name),S(!0)},children:[(0,K.jsx)(zi,{size:11,strokeWidth:2.25}),`Rename`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>O(!0),children:[(0,K.jsx)(Hi,{size:11,strokeWidth:2.25}),`Delete`]})]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>E(!0),title:`Replace the current layout with the Default preset`,children:[(0,K.jsx)(Bi,{size:11,strokeWidth:2.25}),`Reset`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:ne,title:`Download current layouts as JSON`,children:[(0,K.jsx)(Li,{size:11,strokeWidth:2.25}),`Export`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>ee.current?.click(),title:`Load layouts from a JSON file`,children:[(0,K.jsx)(Ui,{size:11,strokeWidth:2.25}),`Import`]}),(0,K.jsx)(`input`,{ref:ee,type:`file`,accept:`application/json,.json`,onChange:re,className:`hidden`,"aria-hidden":!0}),(0,K.jsxs)(X,{variant:`primary`,size:`sm`,onClick:()=>n(!1),children:[(0,K.jsx)(Ii,{size:11,strokeWidth:2.5}),`Done`]})]}):(0,K.jsxs)(X,{variant:`secondary`,size:`sm`,onClick:()=>n(!0),children:[(0,K.jsx)(zi,{size:11,strokeWidth:2.25}),`Edit layout`]})}),g&&(0,K.jsx)(aa,{title:`Save layout as`,value:y,placeholder:`My dashboard`,onChange:b,onConfirm:k,onCancel:()=>{v(!1),b(``)},confirmLabel:`Save`}),x&&(0,K.jsx)(aa,{title:`Rename layout`,value:C,placeholder:i.name,onChange:w,onConfirm:A,onCancel:()=>S(!1),confirmLabel:`Rename`}),T&&(0,K.jsx)(oa,{title:`Reset this layout?`,body:`The current arrangement will be replaced with the Default preset. Saved layouts are not affected.`,confirmLabel:`Reset`,onConfirm:te,onCancel:()=>E(!1),destructive:!1}),D&&(0,K.jsx)(oa,{title:`Delete "${i.name}"?`,body:`This layout will be removed. You can always recreate it via Save as.`,confirmLabel:`Delete`,onConfirm:j,onCancel:()=>O(!1),destructive:!0}),m&&(0,K.jsx)(`div`,{role:`status`,className:`fixed bottom-5 left-1/2 -translate-x-1/2 z-50 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-3)] px-3 py-2 text-[11px] font-mono text-[var(--color-fg-1)] shadow-lg`,children:m})]})}function aa({title:e,value:t,placeholder:n,onChange:r,onConfirm:i,onCancel:a,confirmLabel:o}){return(0,K.jsx)(`div`,{role:`dialog`,"aria-modal":!0,"aria-label":e,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm`,onClick:a,children:(0,K.jsxs)(`div`,{onClick:e=>e.stopPropagation(),className:`w-80 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-2)] p-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:e}),(0,K.jsx)(`input`,{value:t,onChange:e=>r(e.target.value),placeholder:n,autoFocus:!0,onKeyDown:e=>{e.key===`Enter`&&i(),e.key===`Escape`&&a()},className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] rounded-sm px-2 py-1.5 text-[13px] font-mono text-[var(--color-fg-1)] focus:outline-none focus:border-[var(--color-brand)]`}),(0,K.jsxs)(`div`,{className:`mt-3 flex justify-end gap-2`,children:[(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:a,children:[(0,K.jsx)(Wi,{size:11,strokeWidth:2.25}),`Cancel`]}),(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:i,children:o})]})]})})}function oa({title:e,body:t,confirmLabel:n,destructive:r,onConfirm:i,onCancel:a}){return(0,K.jsx)(`div`,{role:`dialog`,"aria-modal":!0,"aria-label":e,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm`,onClick:a,children:(0,K.jsxs)(`div`,{onClick:e=>e.stopPropagation(),className:`w-96 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-2)] p-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:e}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:t}),(0,K.jsxs)(`div`,{className:`mt-4 flex justify-end gap-2`,children:[(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:a,children:`Cancel`}),(0,K.jsx)(X,{variant:r?`danger`:`primary`,size:`sm`,onClick:i,children:n})]})]})})}var sa={default:`builtin-default`,focusLatency:`builtin-focus-latency`,focusApprovals:`builtin-focus-approvals`,compact:`builtin-compact`},ca={id:sa.default,name:`Default`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`graph`,x:0,y:2,w:8,h:5},{id:`latency-trace`,x:8,y:2,w:4,h:3},{id:`throughput`,x:8,y:5,w:2,h:2},{id:`decision-mix`,x:10,y:5,w:2,h:2},{id:`telemetry-feed`,x:0,y:7,w:12,h:3},{id:`system-pulse`,x:0,y:10,w:12,h:3},{id:`pending-approvals`,x:0,y:13,w:6,h:3},{id:`recent-blocks`,x:6,y:13,w:6,h:3}]},la={id:sa.focusLatency,name:`Focus · Latency`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`latency-trace`,x:0,y:2,w:8,h:5},{id:`graph`,x:8,y:2,w:4,h:5},{id:`throughput`,x:0,y:7,w:6,h:2},{id:`decision-mix`,x:6,y:7,w:6,h:2},{id:`system-pulse`,x:0,y:9,w:12,h:3},{id:`telemetry-feed`,x:0,y:12,w:12,h:3},{id:`pending-approvals`,x:0,y:15,w:6,h:2},{id:`recent-blocks`,x:6,y:15,w:6,h:2}]},ua={id:sa.focusApprovals,name:`Focus · Approvals`,builtIn:!0,panels:[{id:`pending-approvals`,x:0,y:0,w:8,h:4},{id:`graph`,x:8,y:0,w:4,h:4},{id:`recent-blocks`,x:0,y:4,w:12,h:3},{id:`hero-metrics`,x:0,y:7,w:12,h:2},{id:`latency-trace`,x:0,y:9,w:6,h:3},{id:`telemetry-feed`,x:6,y:9,w:6,h:3},{id:`system-pulse`,x:0,y:12,w:12,h:3},{id:`throughput`,x:0,y:15,w:6,h:2},{id:`decision-mix`,x:6,y:15,w:6,h:2}]},da={id:sa.compact,name:`Compact`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`graph`,x:0,y:2,w:8,h:3},{id:`latency-trace`,x:8,y:2,w:4,h:3},{id:`system-pulse`,x:0,y:5,w:12,h:3},{id:`throughput`,x:0,y:8,w:4,h:2},{id:`decision-mix`,x:4,y:8,w:4,h:2},{id:`telemetry-feed`,x:0,y:10,w:12,h:3},{id:`pending-approvals`,x:0,y:13,w:6,h:2},{id:`recent-blocks`,x:6,y:13,w:6,h:2}]},fa=Object.freeze([ca,la,ua,da]);function pa(){return fa.map(e=>({...e,panels:e.panels.map(e=>({...e}))}))}function ma(){return{version:1,activeLayoutId:sa.default,layouts:pa()}}function ha(e){return Object.values(sa).includes(e)}var ga=new Set(Gi),_a=new Set(fa.map(e=>e.id));function va(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ya(e,t,n,r){if(typeof e!=`number`||!Number.isFinite(e))return r;let i=Math.floor(e);return i<t?t:i>n?n:i}function ba(e,t){let n=(typeof e==`string`?e:``).replace(/[\u0000-\u001F\u007F]/g,``).trim();return n.length===0?t:n.slice(0,40)}function xa(e){let t=e.find(e=>e.id===`system-pulse`);if(!t||t.h>=3)return e;let n=3-t.h,r=t.y+t.h;return e.map(e=>e.id===`system-pulse`?{...e,h:3}:e.y>=r?{...e,y:e.y+n}:e)}function Sa(e){for(let t=0;t<e.length;t++){let n=e[t];for(let r=t+1;r<e.length;r++){let t=e[r];if(n.x<t.x+t.w&&n.x+n.w>t.x&&n.y<t.y+t.h&&n.y+n.h>t.y)return!0}}return!1}function Ca(e){if(!va(e))return null;let{id:t}=e;if(typeof t!=`string`||!ga.has(t))return null;let n=t,r=qi[n],i=ya(e.x,0,11,0),a=ya(e.w,r.minW,12,r.defaultW);return{id:n,x:i+a>12?12-a:i,y:ya(e.y,0,999,0),w:a,h:ya(e.h,r.minH,99,r.defaultH)}}function wa(e,t){if(!va(e))return{layout:null,droppedPanels:0};let n=typeof e.id==`string`&&e.id.length>0?e.id:null;if(!n)return{layout:null,droppedPanels:0};let r=ba(e.name,t),i=_a.has(n),a=e.panels;if(!Array.isArray(a))return{layout:null,droppedPanels:0};let o=new Set,s=[],c=0;for(let e of a){let t=Ca(e);if(!t){c+=1;continue}if(o.has(t.id)){c+=1;continue}o.add(t.id),s.push(t)}return s.length===0?{layout:null,droppedPanels:c}:{layout:{id:n,name:r,builtIn:i,panels:xa(s)},droppedPanels:c}}function Ta(e){if(!va(e)||e.version!==1)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0};let t=e.layouts;if(!Array.isArray(t)||t.length===0)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0};let n=[],r=0,i=0,a=0;for(let e of t){let{layout:t,droppedPanels:o}=wa(e,`Layout ${n.length+1}`);if(r+=o,t){if(!t.builtIn){if(i>=12){a+=1;continue}i+=1}n.push(t)}}if(n.length===0)return{config:ma(),droppedPanels:r,prunedLayouts:a,fellBackToDefault:!0};let o=new Set(n.map(e=>e.id));for(let e of fa)o.has(e.id)||n.push({...e,panels:e.panels.map(e=>({...e}))});let s=new Map(fa.map(e=>[e.id,e])),c=0,l=0;for(let e=0;e<n.length;e++){let t=n[e],r=s.get(t.id);if(!r)continue;if(Sa(t.panels)){n[e]={...r,panels:r.panels.map(e=>({...e}))},l+=1;continue}let i=new Set(t.panels.map(e=>e.id)),a=r.panels.filter(e=>!i.has(e.id));if(a.length===0)continue;let o=t.panels.reduce((e,t)=>Math.max(e,t.y+t.h),0);for(let e of a)t.panels.push({id:e.id,x:0,y:o,w:e.w,h:e.h}),o+=e.h,c+=1}let u=e.activeLayoutId;return{config:{version:1,activeLayoutId:typeof u==`string`&&n.some(e=>e.id===u)?u:fa[0].id,layouts:n},droppedPanels:r,prunedLayouts:a,fellBackToDefault:!1,backfilledPanels:c,refreshedBuiltins:l}}var Ea=`ssg:dashboard-layout:v1`,Da=300;function Oa(){if(typeof localStorage>`u`)return null;try{let e=`__ssg_probe__`;return localStorage.setItem(e,`1`),localStorage.removeItem(e),localStorage}catch{return null}}var ka;function Aa(){return ka===void 0&&(ka=Oa()),ka}function ja(){let e=Aa();if(!e)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!1};let t=null;try{t=e.getItem(Ea)}catch{t=null}if(t===null)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!1};let n=null;try{n=JSON.parse(t)}catch{return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0}}return Ta(n)}var Ma=null,Na=null,Pa=null;function Fa(e){return Pa=e,()=>{Pa===e&&(Pa=null)}}function Ia(e){Pa?Pa(e):typeof console<`u`&&console.warn(`[ssg-layout]`,e)}function La(){if(Na=null,!Ma)return;let e=Aa();if(!e){Ma=null;return}let t=Ma;Ma=null;try{e.setItem(Ea,JSON.stringify(t))}catch(e){e instanceof Error&&e.name===`QuotaExceededError`?Ia(`Layout storage full — save skipped`):Ia(`Layout save failed: ${e instanceof Error?e.message:String(e)}`)}}function Ra(e){Ma=e,Na===null&&(Na=setTimeout(La,Da))}function za(e){Ma=e,Na!==null&&(clearTimeout(Na),Na=null),La()}function Ba(e){let t=0;for(let n of e.layouts)n.builtIn||(t+=1);return t}function Va(e){return e.map(e=>({...e}))}function Ha(){return`user-`+Math.random().toString(16).slice(2,11)}function Ua(){let[e,t]=(0,_.useState)(()=>ja().config),[n,r]=(0,_.useState)(null);(0,_.useEffect)(()=>Fa(e=>r(e)),[]),(0,_.useEffect)(()=>{Ra(e)},[e]);let i=e.layouts.find(t=>t.id===e.activeLayoutId)??e.layouts[0]??pa()[0],a=Ba(e)<12,o=(0,_.useCallback)(e=>{t(t=>t.layouts.some(t=>t.id===e)?{...t,activeLayoutId:e}:t)},[]),s=(0,_.useCallback)(e=>{t(t=>{let n=t.activeLayoutId;return{...t,layouts:t.layouts.map(t=>t.id===n?{...t,panels:Va(e)}:t)}})},[]),c=(0,_.useCallback)(e=>{let n=e.trim();n&&t(e=>{if(Ba(e)>=12)return e;let t=e.layouts.find(t=>t.id===e.activeLayoutId)??e.layouts[0];if(!t)return e;let r={id:Ha(),name:n,builtIn:!1,panels:Va(t.panels)};return{...e,activeLayoutId:r.id,layouts:[...e.layouts,r]}})},[]),l=(0,_.useCallback)(e=>{let n=e.trim();n&&t(e=>({...e,layouts:e.layouts.map(t=>t.id===e.activeLayoutId&&!t.builtIn?{...t,name:n}:t)}))},[]),u=(0,_.useCallback)(e=>{t(t=>{let n=t.layouts.find(t=>t.id===e);if(!n||n.builtIn)return t;let r=t.layouts.filter(t=>t.id!==e),i=t.activeLayoutId===e?r[0]?.id??fa[0].id:t.activeLayoutId;return{...t,activeLayoutId:i,layouts:r}})},[]),d=(0,_.useCallback)(()=>{t(e=>{let t=e.layouts.find(t=>t.id===e.activeLayoutId);if(!t)return e;let n=ha(t.id)?fa.find(e=>e.id===t.id):fa[0];return n?{...e,layouts:e.layouts.map(e=>e.id===t.id?{...e,panels:Va(n.panels)}:e)}:e})},[]),f=(0,_.useCallback)(()=>JSON.stringify(e,null,2),[e]),p=(0,_.useCallback)(e=>{let n;try{n=JSON.parse(e)}catch{return{ok:!1,message:`Import failed: not valid JSON`}}let r=Ta(n);if(r.fellBackToDefault)return{ok:!1,message:`Import rejected: schema invalid, no changes applied`};t(r.config),za(r.config);let i=[`Layout imported`];return r.droppedPanels>0&&i.push(`${r.droppedPanels} unrecognized panel(s) dropped`),r.prunedLayouts>0&&i.push(`${r.prunedLayouts} excess layout(s) pruned`),{ok:!0,message:i.join(` · `)}},[]);return(0,_.useEffect)(()=>{e.layouts.length===0&&t(ma())},[e.layouts.length]),{config:e,activeLayout:i,canAddUserLayout:a,saveError:n,selectLayout:o,updateActivePanels:s,saveAs:c,renameActive:l,deleteLayout:u,resetActive:d,exportConfig:f,importConfig:p}}var Wa=new Set([`compact`,`end`,`stop`,`subagent-stop`,`close`]),Ga=Object.freeze([`session-lifecycle`]);function Ka(e){(0,_.useEffect)(()=>Ce(Ga),[]);let t=(0,_.useSyncExternalStore)(he,ge),[n,r]=(0,_.useState)(new Map),i=(0,_.useRef)(0);(0,_.useEffect)(()=>{let e=t.lifecycleRing;if(e.length<=i.current)return;let n=e.slice(i.current);i.current=e.length,qa(n,r)},[t.lifecycleRing]);let a=(0,_.useRef)(void 0);return(0,_.useEffect)(()=>{!e||e===a.current||(a.current=e,qa(e,r))},[e]),{closedAt:n,isBurstActive(e,t){let r=n.get(e);return r===void 0||t>r}}}function qa(e,t){let n=e.filter(e=>Wa.has(e.event));n.length!==0&&t(e=>{let t=!1,r=new Map(e);for(let e of n){let n=r.get(e.session_key);(n===void 0||e.ts_ms>n)&&(r.set(e.session_key,e.ts_ms),t=!0)}return t?r:e})}function Ja(e){return`${e.client}:${e.agent_id??`solo`}`}var Ya=Object.freeze({allow:`#22c55e`,block:`#ef4444`,ask:`#f59e0b`,log:`#60a5fa`,force:`#a855f7`,shadow:`#6b7280`}),Xa=5*6e4,Za=1200,Qa=30*6e4,$a=1.4;function eo(e){let t=(e.input_tokens??0)+(e.output_tokens??0);if(t<=0)return 6;let n=6+Math.log2(1+t/50)*$a;return n<4?4:n>16?16:n}function to(e){let t=(e.input_tokens??0)+(e.output_tokens??0);if(t<=0)return 0;let n=Math.log2(1+t/50)*$a/10;return n<=0?0:n>=1?1:n}function Z(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function no(e,t){if(t<=0)return e;let n=e.startsWith(`#`)?e.slice(1):e;if(n.length!==6)return e;let r=parseInt(n.slice(0,2),16),i=parseInt(n.slice(2,4),16),a=parseInt(n.slice(4,6),16);if(Number.isNaN(r)||Number.isNaN(i)||Number.isNaN(a))return e;let o=Math.max(r,i,a);if(o===0)return e;let s=t>1?1:t,c=(255-o)*s,l=Math.round(r+r/o*c),u=Math.round(i+i/o*c),d=Math.round(a+a/o*c),f=e=>(e<0?0:e>255?255:e).toString(16).padStart(2,`0`);return`#${f(l)}${f(u)}${f(d)}`}var ro=1440*60*1e3,io=1800*1e3,ao=3e3;function oo(e,t){if(e.length===0)return t.slice();if(t.length===0)return e.slice();let n=new Set,r=[],i=0,a=0;for(;i<e.length&&a<t.length;){let o=e[i].ts_ms<=t[a].ts_ms?e[i++]:t[a++],s=so(o);n.has(s)||(n.add(s),r.push(o))}for(;i<e.length;i++){let t=e[i],a=so(t);n.has(a)||(n.add(a),r.push(t))}for(;a<t.length;a++){let e=t[a],i=so(e);n.has(i)||(n.add(i),r.push(e))}return r}function so(e){return e.audit_id??`${e.ts_ms}:${e.tool}:${e.client}`}function co(e,t){if(e.length===0)return t.slice();if(t.length===0)return e.slice();let n=new Set,r=[];for(let i of[...e,...t]){let e=`${i.session_key}:${i.ts_ms}:${i.event}`;n.has(e)||(n.add(e),r.push(i))}return r}function lo(e,t,n,r=200,i=Qa,a=12){let o=new Map,s=new Map;for(let r of e){if(r.ts_ms>n)break;let e=Ja(r);if(!t(e,r.ts_ms))continue;let i=o.get(e);i?i.push(r):o.set(e,[r]);let a=s.get(e);(a===void 0||r.ts_ms>a)&&s.set(e,r.ts_ms)}let c=n-i,l=[];for(let[e,t]of s)t<c&&l.push(e);for(let e of l)o.delete(e),s.delete(e);if(o.size>a){let e=new Set(Array.from(s.entries()).sort((e,t)=>t[1]-e[1]).slice(0,a).map(([e])=>e));for(let t of[...o.keys()])e.has(t)||o.delete(t)}let u=[];for(let e of o.values()){let t=e.length>r?e.slice(-r):e;u.push(...t)}return u.sort((e,t)=>e.ts_ms-t.ts_ms),u}function uo(e={}){let t=e.windowMs??12e4,n=De(),[r,i]=(0,_.useState)(()=>({mode:`live`,playhead_ms:Date.now(),window_ms:t})),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)([]),[l,u]=(0,_.useState)(!1),d=(0,_.useRef)(null),f=(0,_.useRef)(null),p=(0,_.useRef)(!1);(0,_.useEffect)(()=>{p.current=n.length>0||a.length>0},[n,a]),(0,_.useEffect)(()=>{if(r.mode!==`live`)return;let e=()=>{if(!p.current)return;let e=Date.now();i(t=>t.mode===`live`?t.playhead_ms===e?t:{...t,playhead_ms:e}:t)};e();let t=setInterval(e,500);return()=>clearInterval(t)},[r.mode]);let m=(0,_.useMemo)(()=>oo(a,n),[a,n]),{isBurstActive:h}=Ka(s),g=(0,_.useMemo)(()=>lo(m,h,r.playhead_ms),[m,h,r.playhead_ms]),v=m.length>0?m[0].ts_ms:r.playhead_ms,y=m.length>0?m[m.length-1].ts_ms:r.playhead_ms,b=(0,_.useCallback)(async e=>{if(f.current)return;let t=v,n=Math.min(t,(d.current??Date.now())-e);if(n>=t)return;let r=new AbortController;f.current=r,u(!0);try{let e=await fetch(`/api/json/graph/backfill?since_ms=${n}&until_ms=${t}&limit=500`,{signal:r.signal,credentials:`same-origin`});if(!e.ok)throw Error(`backfill ${e.status}`);let i=await e.json();Array.isArray(i.bursts)&&i.bursts.length>0&&o(e=>{let t=oo(e,i.bursts);return t.length>ao?t.slice(-ao):t}),Array.isArray(i.lifecycle)&&i.lifecycle.length>0&&c(e=>co(e,i.lifecycle)),d.current=n}catch(e){e.name!==`AbortError`&&console.warn(`[graph] backfill failed`,e)}finally{f.current=null,u(!1)}},[v]);(0,_.useEffect)(()=>{r.playhead_ms-v<r.window_ms*.5&&b(Xa)},[r.mode,r.playhead_ms,r.window_ms,v,b]);let x=(0,_.useRef)(!1);(0,_.useEffect)(()=>{x.current||(x.current=!0,b(io))},[]),(0,_.useEffect)(()=>()=>{f.current?.abort(),f.current=null},[]);let S=(0,_.useCallback)(e=>{i(t=>e===`live`?{...t,mode:`live`}:{...t,mode:e})},[]),C=(0,_.useCallback)(e=>{i(t=>({...t,mode:t.mode===`live`?`scrubbing`:t.mode,playhead_ms:e}))},[]),w=(0,_.useCallback)(e=>{i(t=>({...t,window_ms:Math.max(1e3,e)}))},[]),T=(0,_.useCallback)(()=>{i(e=>({...e,mode:`live`,playhead_ms:Date.now()}))},[]),E=(0,_.useCallback)(()=>{i(e=>({...e,mode:`live`,playhead_ms:Date.now(),window_ms:ro})),b(ro)},[b]);return{snapshot:(0,_.useMemo)(()=>({bursts:g,playback:r,oldest_known_ms:v,newest_known_ms:y,loading_backfill:l}),[g,r,v,y,l]),allBursts:m,setMode:S,setPlayhead:C,setWindow:w,jumpToLive:T,requestBackfill:b,jumpTo24h:E}}var fo=2*Math.PI/6e4,po=2.3999632297286535,mo=16,ho=22,go=.4,_o=14,vo=8,yo=24;function bo(e,t,n){let r=new Map;for(let t of e){if(t.exitingAt!=null)continue;let e=r.get(t.session);e?e.push(t):r.set(t.session,[t])}if(r.size===0)return;for(let e of r.values())e.sort((e,t)=>e.ts_ms-t.ts_ms);let i=Math.min(t,n)-yo,a=Array.from(r.keys()).sort(),o=a.length,s=0;for(let e of r.values())e.length>s&&(s=e.length);let c=Math.max(1,Math.min(ho,(i-mo)/Math.max(1,s-1))),l=mo,u=mo+c,d=(l*l+u*u-_o*_o)/(2*l*u),f=Math.max(go,Math.acos(Math.min(1,Math.max(-1,d))));if(o<=vo)for(let e=0;e<o;e++){let t=a[e];if(t===void 0)continue;let n=r.get(t);if(!n)continue;let i=e*2*Math.PI/o;for(let e=0;e<n.length;e++){let t=n[e];t&&(t.slotPhi=i+e*f,t.slotR=mo+e*c)}}else{let e=[];for(let t of r.values())for(let n of t)e.push(n);e.sort((e,t)=>e.ts_ms-t.ts_ms);let t=Math.max(1,Math.min(ho,(i-mo)/Math.max(1,e.length-1)));for(let n=0;n<e.length;n++){let r=e[n];r&&(r.slotPhi=n*po,r.slotR=mo+n*t)}}}function xo(e,t,n,r){for(let i of e)i.exitingAt??(i.slotR==null||i.slotPhi==null||(i.x=t+i.slotR*Math.cos(i.slotPhi+r),i.y=n+i.slotR*Math.sin(i.slotPhi+r)))}function So(e){let t=new Map;for(let n of e){let e=t.get(n.session);e?(e.x+=n.x,e.y+=n.y,e.n+=1):t.set(n.session,{x:n.x,y:n.y,n:1})}for(let e of t.values())e.x/=e.n,e.y/=e.n;return t}function Co(e,t){let n=[],r=new Map;for(let t of e){let e=r.get(t.session);e?e.push(t):r.set(t.session,[t])}for(let e of r.values()){e.sort((e,t)=>e.ts_ms-t.ts_ms);for(let r=1;r<e.length;r++){let i=e[r-1],a=e[r];!i||!a||a.ts_ms-i.ts_ms<=t&&n.push({source:i.id,target:a.id,kind:`session`})}}return n}var wo=`SSG_AUDIO`,To=`SSG_AUDIO_VOLUME`,Eo=12,Do=null,Oo=null,ko=!1,Ao=.18,jo=[],Mo=!1;function No(){if(typeof localStorage>`u`)return{enabled:!1,volume:.18};let e=localStorage.getItem(wo)===`1`,t=localStorage.getItem(To);return{enabled:e,volume:t?Math.max(0,Math.min(1,parseFloat(t))):.18}}function Po(){typeof localStorage>`u`||(localStorage.setItem(wo,ko?`1`:`0`),localStorage.setItem(To,Ao.toString()))}function Fo(){if(typeof window>`u`)return null;if(Do)return Do;let e=window.AudioContext??window.webkitAudioContext;if(!e)return null;try{Do=new e,Oo=Do.createGain(),Oo.gain.value=Ao,Oo.connect(Do.destination),typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>{Do&&(document.visibilityState===`hidden`?Do.suspend():Do.resume())})}catch{Do=null,Oo=null}return Do}function Io(){if(Mo)return;Mo=!0;let{enabled:e,volume:t}=No();ko=e,Ao=t}function Lo(){return Io(),ko}function Ro(e){if(Io(),ko=e,Po(),e){let e=Fo();e&&e.state===`suspended`&&e.resume()}}function zo(){return Io(),Ao}function Bo(e){Io(),Ao=Math.max(0,Math.min(1,e)),Po(),Oo&&(Oo.gain.value=Ao)}function Vo(e){for(;jo.length>0&&e-jo[0]>1e3;)jo.shift();return jo.length>=Eo?!1:(jo.push(e),!0)}var Ho={allow:{type:`sine`,freq:660,durationMs:90,peak:.6},block:{type:`square`,freq:110,durationMs:130,peak:1},force:{type:`sawtooth`,freq:220,freqSweep:440,durationMs:170,peak:.8},ask:{type:`triangle`,freq:880,durationMs:110,peak:.55},log:{type:`sine`,freq:1320,durationMs:30,peak:.35},shadow:{type:`sine`,freq:220,durationMs:60,peak:.18}};function Uo(e){if(Io(),!ko||typeof document<`u`&&document.visibilityState===`hidden`)return;let t=Fo();if(!t||!Oo)return;t.state===`suspended`&&t.resume().catch(()=>{});let n=t.currentTime;if(!Vo(performance.now()))return;let r=Ho[e],i=t.createOscillator();i.type=r.type,i.frequency.value=r.freq,r.freqSweep!==void 0&&(i.frequency.setValueAtTime(r.freq,n),i.frequency.exponentialRampToValueAtTime(Math.max(1,r.freqSweep),n+r.durationMs/1e3));let a=t.createGain();a.gain.setValueAtTime(0,n),a.gain.linearRampToValueAtTime(r.peak,n+.005),a.gain.exponentialRampToValueAtTime(1e-4,n+r.durationMs/1e3),i.connect(a),a.connect(Oo),i.start(n),i.stop(n+r.durationMs/1e3+.05),i.onended=()=>{try{i.disconnect(),a.disconnect()}catch{}}}function Wo(e){let t=e|0;return()=>{t=t+1831565813|0;let e=t;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}}var Go={"claude-code":`C`,"claude-code-ide":`C`,cursor:`>`,copilot:`H`,codex:`X`,pi:`P`,gemini:`G`,antigravity:`A`};function Ko(e){return Go[e.toLowerCase()]??`.`}function qo(e){let t=0;for(let n=0;n<e.length;n++)t=Math.imul(t,31)+e.charCodeAt(n)|0;return(t>>>0)%360}function Jo(e,t,n){for(let[r,i]of t){let{x:t,y:a,n:o}=i,s=50+Math.min(o,12)*7,c=qo(r),l=n.get(r),u;l&&Math.abs(l.x-t)<2&&Math.abs(l.y-a)<2&&l.r===s?u=l.grad:(u=e.createRadialGradient(t,a,0,t,a,s),u.addColorStop(0,`hsla(${c},80%,55%,0.10)`),u.addColorStop(1,`hsla(${c},80%,55%,0)`),n.set(r,{grad:u,x:t,y:a,r:s})),e.fillStyle=u,e.beginPath(),e.arc(t,a,s,0,Math.PI*2),e.fill()}for(let e of n.keys())t.has(e)||n.delete(e)}function Yo(e,t,n,r,i,a,o){let s=8+a*r,c=Math.max(0,1-r)*o;c<=0||(e.save(),e.globalAlpha=c,e.fillStyle=i,e.beginPath(),e.arc(t,n,s,0,Math.PI*2),e.fill(),e.restore())}var Xo=`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,Zo=`bold 10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,Qo=new Map,$o=256;function es(e,t){let n=Qo.get(t);if(n!==void 0)return n;let r=e.measureText(t).width;if(Qo.size>=$o){let e=Qo.keys().next().value;e!==void 0&&Qo.delete(e)}return Qo.set(t,r),r}function ts(e,t,n,r,i,a,o){let s=(r.split(`:`)[0]??r).slice(0,18),c=Ko(s),l=qo(r),u=Ya[o]??`#6b7280`;e.save(),e.textAlign=`center`;let d=`[${c}] ${s}`,f=`${i.length>14?i.slice(0,14):i} · ${a}`;e.font=Zo;let p=es(e,d);e.font=Xo;let m=es(e,f),h=Math.max(p,m)+10;e.globalAlpha=.82,e.fillStyle=`hsla(${l},25%,5%,0.92)`,e.fillRect(t-h/2,n-2,h,28),e.globalAlpha=.92,e.fillStyle=`hsla(${l},78%,70%,1)`,e.font=Zo,e.fillText(d,t,n+10),e.globalAlpha=.72,e.fillStyle=u,e.font=Xo,e.fillText(f,t,n+21),e.restore()}var ns=`bold 13px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,rs=`bold 10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;function is(e){if((!Number.isFinite(e)||e<0)&&(e=0),e<6e4)return`${(e/1e3).toFixed(3)}s`;if(e<36e5)return`${Math.floor(e/6e4)}:${(e%6e4/1e3).toFixed(3).padStart(6,`0`)}`;let t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4),r=(e%6e4/1e3).toFixed(1).padStart(4,`0`);return`${t}:${String(n).padStart(2,`0`)}:${r}`}function as(e,t,n,r,i){e.save(),e.textAlign=`center`,e.font=rs,e.globalAlpha=.7,e.fillStyle=`hsla(${i},78%,72%,0.55)`,e.fillText(`uptime`,t,n),e.font=ns,e.globalAlpha=.96,e.fillStyle=`hsla(${i},78%,82%,1)`,e.fillText(is(r),t,n+13),e.restore()}function os(e,t,n,r){e.save(),e.textAlign=`right`,e.font=rs,e.fillStyle=`rgba(148, 163, 184, 0.55)`,e.globalAlpha=.85,e.fillText(`LIVE`,t,n),e.font=`bold 16px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,e.fillStyle=`#e0e7ff`,e.globalAlpha=.92,e.fillText(is(r),t,n+16),e.restore()}function ss(e,t,n,r,i,a,o){let s=r-t,c=i-n;if(Math.sqrt(s*s+c*c)<24)return;let l=Math.atan2(c,s),u=3.5,d=r-Math.cos(l)*9,f=i-Math.sin(l)*9;e.save(),e.globalAlpha=o*.85,e.fillStyle=a,e.translate(d,f),e.rotate(l),e.beginPath(),e.moveTo(0,0),e.lineTo(-6,-u),e.lineTo(-6,u),e.closePath(),e.fill(),e.restore()}var cs={Read:`▣`,Write:`✎`,Edit:`✎`,MultiEdit:`✎`,NotebookEdit:`✎`,NotebookRead:`▣`,Glob:`✦`,Grep:`✦`,LS:`⊞`,Find:`✦`,ToolSearch:`⊕`,Bash:`$`,Skill:`◈`,WebFetch:`⌬`,WebSearch:`⌬`,Agent:`◇`,Task:`⌘`,TaskCreate:`⌘`,TaskUpdate:`⌘`,TaskList:`⌘`,TaskGet:`⌘`,TaskOutput:`⌘`,TaskStop:`⌘`,TodoWrite:`✓`,TodoRead:`✓`,AskUserQuestion:`?`,EnterPlanMode:`◐`,ExitPlanMode:`◑`,EnterWorktree:`⎇`,ExitWorktree:`⎇`,PushNotification:`⏰`,ScheduleWakeup:`⏰`,CronCreate:`⏰`,CronList:`⏰`,CronDelete:`⏰`,RemoteTrigger:`↗`,Monitor:`◉`};function ls(e){if(!e)return`·`;let t=e.lastIndexOf(`__`);return cs[t>=0?e.slice(t+2):e]??cs[e]??`·`}var us=820,ds=e=>Math.min(1,e),fs=620,ps=e=>1-(1-e)**3,ms=Qe({stiffness:120,damping:22,mass:1}),hs=1800;function gs(e){return e<=2?Math.min(window.devicePixelRatio,2):e<=4?Math.min(window.devicePixelRatio,1.5):Math.min(window.devicePixelRatio,1)}function _s(e){return e<=2?1:e<=4?2:3}function vs(e){return e<=2?24:e<=4?12:6}function ys(e){return e<=4}var bs=!1,xs=!1;function Ss(){if(xs||typeof window>`u`)return;xs=!0;let e=navigator;typeof e.getBattery==`function`&&e.getBattery().then(e=>{let t=()=>{bs=!e.charging&&e.level<.2};t(),e.addEventListener(`chargingchange`,t),e.addEventListener(`levelchange`,t)}).catch(()=>{})}function Cs(){return typeof window>`u`?!1:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches||navigator.connection?.saveData?!0:bs}var ws=typeof window<`u`&&new URLSearchParams(window.location.search).get(`fullrate`)===`1`,Ts=typeof window<`u`&&new URLSearchParams(window.location.search).get(`rotate`)!==`0`,Es=typeof window<`u`&&new URLSearchParams(window.location.search).get(`probe`)===`1`;function Ds(e,t,n,r){let i=new Map;for(let t of e)i.set(t.id,t);let a=new Set,o=[];for(let e=0;e<t.length;e++){let s=t[e],c=s.audit_id??`${s.ts_ms}:${s.tool}:${e}`;a.add(c);let l=i.get(c);if(l)l.burst=s,l.exitingAt=void 0,o.push(l);else{let t=Wo(s.ts_ms^e),i=n*.6+(t()-.5)*60,a=r/2+(t()-.5)*40,l=Ja(s);o.push({id:c,burst:s,ts_ms:s.ts_ms,session:l,x:i,y:a,vx:0,vy:0,age:0,tx:i,ty:a})}}let s=performance.now();for(let t of e)a.has(t.id)||(t.exitingAt??=s,s-t.exitingAt<1200&&o.push(t));return o}function Os(e){let{bursts:t,paused:n,selectedId:r,onSelect:i,burstSeq:a,compact:o=!1,activePanelCount:s=1,labelDensity:c=`normal`,onFrameTime:l}=e,u=(0,_.useRef)(l);u.current=l;let d=(0,_.useRef)(c);d.current=c;let f=(0,_.useRef)(null),p=(0,_.useRef)([]),m=(0,_.useRef)([]),h=(0,_.useRef)(null),g=(0,_.useRef)(null),v=(0,_.useRef)(0),y=(0,_.useRef)(0),b=(0,_.useRef)(0),x=(0,_.useRef)(new Map),S=(0,_.useRef)(new Set),C=(0,_.useRef)(new Set),w=(0,_.useRef)(new Set),[T,E]=(0,_.useState)({w:0,h:0}),D=(0,_.useRef)(0),O=(0,_.useRef)(0),ee=(0,_.useRef)(null),k=(0,_.useRef)(Date.now()),A=(0,_.useRef)(new Map),j=(0,_.useRef)({frame:0,cache:null});(0,_.useLayoutEffect)(()=>{let e=f.current?.parentElement;if(!e)return;let t=e.getBoundingClientRect();t.width>0&&t.height>0&&E({w:Math.max(40,t.width),h:Math.max(40,t.height)});let n=new ResizeObserver(e=>{for(let t of e){let{width:e,height:n}=t.contentRect;e<=0||n<=0||E({w:Math.max(40,e),h:Math.max(40,n)})}});return n.observe(e),()=>n.disconnect()},[]),(0,_.useEffect)(()=>{if(T.w<=0||T.h<=0)return;j.current.frame=0;let e=new Map;for(let t of p.current)e.set(t.id,t);p.current=Ds(p.current,t,T.w,T.h),bo(p.current,T.w/2,T.h/2);let n=Ts&&!ot()?performance.now()*fo:0;for(let t of p.current){if(t.slotR==null||t.slotPhi==null)continue;let r=T.w/2+t.slotR*Math.cos(t.slotPhi+n),i=T.h/2+t.slotR*Math.sin(t.slotPhi+n),a=!e.has(t.id),o=Math.hypot(t.x-r,t.y-i);(a||o>40)&&(t.x=r,t.y=i,t.vx=0,t.vy=0)}if(m.current=Co(p.current,1/0),!ot())for(let t=0;t<p.current.length;t++){let n=p.current[t];!n||e.has(n.id)||Uo(n.burst.decision)}let r=p.current.reduce((e,t)=>t.ts_ms>e?t.ts_ms:e,0);y.current=Math.max(performance.now()+us,performance.now()+Za,r+1500),v.current=performance.now()},[t,T.w,T.h,a]),(0,_.useEffect)(()=>{let e=f.current;if(!e)return;let t=e.getContext(`2d`);if(!t)return;Ss();let i=performance.now(),a=0,c=0,l=0,g=.1,[_,E]=vr(()=>{let f=performance.now();if(!ws&&Cs()){if(a^=1,a===1)return}else a!==0&&(a=0);if(!ws){let e=_s(s);if(e>1&&(O.current=(O.current+1)%e,O.current!==0))return}let _=performance.now(),E=_<y.current,D=_-v.current<200,te=_-b.current>500,ne=ot(),re=Ts&&!ne;if(!re&&!E&&!D&&!te)return;b.current=_;let M=f,N=Math.min(50,M-i);i=M;let ie=p.current,ae=m.current,oe=re?performance.now()*fo:0;xo(ie,T.w/2,T.h/2,oe);for(let e of ie)e.age<1&&(e.age=Math.min(1,e.age+N/us));let P=typeof window<`u`?gs(s):1,F=T.w,I=T.h;(e.width!==F*P||e.height!==I*P)&&(e.width=F*P,e.height=I*P,e.style.width=`${F}px`,e.style.height=`${I}px`,t.scale(P,P)),t.fillStyle=`#0a0a0f`,t.fillRect(0,0,F,I);let L=`${F}x${I}`,R=ee.current?.key===L?ee.current.grad:null;if(R||(R=t.createRadialGradient(F/2,I/2,0,F/2,I/2,Math.max(F,I)/1.2),R.addColorStop(0,`rgba(56, 189, 248, 0.06)`),R.addColorStop(1,`rgba(0, 0, 0, 0)`),ee.current={key:L,grad:R}),t.fillStyle=R,t.fillRect(0,0,F,I),!o){let e=j.current;(e.frame++%6==0||e.cache===null)&&(e.cache=So(ie));let n=e.cache;if(Jo(t,n,A.current),!ne){let e=new Map,r=new Map;for(let t of ie)t.exitingAt??(r.set(t.session,(r.get(t.session)??0)+1),e.set(t.session,t));let i=new Map;for(let e of ie){if(e.exitingAt!=null)continue;let t=i.get(e.session);(t===void 0||e.ts_ms<t)&&i.set(e.session,e.ts_ms)}let a=Date.now();for(let[o,s]of n){let n=e.get(o),c=r.get(o)??0;if(!n||c===0)continue;let l=50+Math.min(s.n,12)*7;ts(t,s.x,s.y-l-34,o,n.burst.tool,c,n.burst.decision);let u=i.get(o);if(u!==void 0){let e=Math.max(0,a-u);as(t,s.x,s.y+l+12,e,qo(o))}}}}let se=e=>e.exitingAt==null?1:Math.max(0,1-(M-e.exitingAt)/Za),ce=vs(s),le=ys(s)&&!ne,ue=S.current;if(ue.clear(),n)for(let e of ie)ue.add(e.id);else{let e=0;for(let t=ie.length-1;t>=0&&e<ce;t--){let n=ie[t];!n||n.exitingAt!=null||(ue.add(n.id),e++)}}let de=x.current;de.clear();for(let e of ie)de.set(e.id,e);t.lineWidth=2,t.lineCap=`round`,t.lineJoin=`round`;for(let e=0;e<ae.length;e++){let n=ae[e],r=de.get(n.source),i=de.get(n.target);if(!r||!i||ue.has(r.id)||ue.has(i.id))continue;let a=Math.min(se(r),se(i));a<=0||(t.globalAlpha=a,t.strokeStyle=(Ya[i.burst.decision]??`#6b7280`)+`aa`,t.beginPath(),t.moveTo(r.x,r.y),t.lineTo(i.x,i.y),t.stroke())}t.globalAlpha=1;let fe=d.current===`large`,pe=fe?`10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`8px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;for(let e=0;e<ae.length;e++){let n=ae[e],r=de.get(n.source),i=de.get(n.target);if(!r||!i||!ue.has(r.id)&&!ue.has(i.id))continue;let a=Ya[i.burst.decision]??`#6b7280`,o=Math.min(se(r),se(i));if(o<=0)continue;if(t.globalAlpha=o,t.strokeStyle=a+`aa`,t.beginPath(),t.moveTo(r.x,r.y),t.lineTo(i.x,i.y),t.stroke(),t.globalAlpha=1,le){let n=(M/hs+e*.618033)%1,s=r.x+(i.x-r.x)*n,c=r.y+(i.y-r.y)*n;t.save(),t.globalAlpha=o*Math.sin(n*Math.PI)*.9,t.fillStyle=a,t.beginPath(),t.arc(s,c,2.5,0,Math.PI*2),t.fill(),t.restore(),ss(t,r.x,r.y,i.x,i.y,a,o)}let s=i.ts_ms-r.ts_ms,c=s<1e3?`${s}ms`:s<6e4?`${(s/1e3).toFixed(1)}s`:`${Math.floor(s/6e4)}m${Math.floor(s%6e4/1e3)}s`,l=(r.x+i.x)/2,u=(r.y+i.y)/2;t.save(),t.globalAlpha=o*.65,t.font=pe,t.fillStyle=`#94a3b8`,t.textAlign=`center`,t.textBaseline=`middle`,t.fillText(`${e+1} · ${c}`,l,u-(fe?8:7)),t.restore()}t.globalAlpha=1;let me=C.current;me.clear();let he=w.current;he.clear();let ge=d.current===`large`?10:5;{let e=0;for(let t=ie.length-1;t>=0;t--){let r=ie[t];!r||r.exitingAt!=null||(!n&&e<3&&me.add(r.id),e<ge&&he.add(r.id),e++)}}let z=r,_e=h.current;for(let e of ie){let r=se(e);if(r<=0)continue;t.globalAlpha=r;let i=Math.min(1,e.age),a=ds(i);e.displayedRadius=o?4:eo(e.burst);let s=e.displayedRadius,c=o?s*a:(s+2*Math.min(1,e.age))*a,l=Ya[e.burst.decision]??`#6b7280`,u=no(l,to(e.burst));if((e.id===z||e.id===_e)&&(t.beginPath(),t.arc(e.x,e.y,c+6,0,Math.PI*2),t.fillStyle=u+`33`,t.fill()),le&&(e.burst.decision===`allow`?Yo(t,e.x,e.y,i,`#22c55e`,14,.3):e.burst.decision===`ask`&&Yo(t,e.x,e.y,i,`#f59e0b`,14,.45)),le&&(e.burst.decision===`block`||e.burst.decision===`force`)){let n=i*us;if(n<fs){let r=n/fs,i=c+16*ps(r),a=Math.max(0,1-r)*.75;t.beginPath(),t.arc(e.x,e.y,i,0,Math.PI*2),t.strokeStyle=u+Math.floor(a*255).toString(16).padStart(2,`0`),t.lineWidth=1.5,t.stroke()}}if(!ne&&me.has(e.id)&&(t.beginPath(),t.arc(e.x,e.y,c+2,0,Math.PI*2),t.fillStyle=u+`33`,t.fill()),t.beginPath(),t.arc(e.x,e.y,Math.max(.1,c),0,Math.PI*2),t.fillStyle=u,t.fill(),t.strokeStyle=l,t.lineWidth=1.5,t.beginPath(),t.arc(e.x,e.y,Math.max(.1,c),0,Math.PI*2),t.stroke(),he.has(e.id)&&(n||ue.has(e.id))){let n=d.current===`large`;t.font=n?`11px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.textAlign=`center`,t.fillStyle=u+`cc`,t.fillText(Ko(e.burst.client),e.x,e.y-c-(n?4:3));let i=n?16:12,a=e.burst.tool.length>i?e.burst.tool.slice(0,i):e.burst.tool,o=ls(e.burst.tool),s=o===`·`?a:`${o} ${a}`;t.fillStyle=u+`88`,t.fillText(s,e.x,e.y+c+(n?13:11));let l=e.burst.input_tokens??0,f=e.burst.output_tokens??0;(l>0||f>0)&&(t.globalAlpha=r*(ue.has(e.id)?.8:.35),t.font=n?`10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`8px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.fillStyle=`#94a3b8`,t.textAlign=`center`,t.fillText(`↓${Z(l)} ↑${Z(f)}`,e.x,e.y+c+(n?25:21)),t.globalAlpha=r),t.textAlign=`left`}(e.id===z||e.id===_e)&&(t.font=`11px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.fillStyle=`#e0e7ff`,t.fillText(e.burst.tool,e.x+c+6,e.y+3))}if(t.globalAlpha=1,le&&ie.length>0){let e=null;for(let t=ie.length-1;t>=0;t--)if(ie[t].exitingAt==null){e=ie[t];break}let n=e?Date.now()-e.ts_ms:1/0,r=5e3;if(e&&n<=r){let i=Math.max(0,1-n/r),a=1100,o=M%a/a,s=14+ms.fn(o)*8,c=Math.max(0,1-o)*.85*i,l=Math.floor(c*255).toString(16).padStart(2,`0`);t.beginPath(),t.arc(e.x,e.y,s,0,Math.PI*2),t.strokeStyle=`#38bdf8${l}`,t.lineWidth=2,t.stroke();let u=M%800/800*Math.PI*2,d=100/360*Math.PI*2,f=.85*i,p=Math.floor(f*255).toString(16).padStart(2,`0`);t.save(),t.beginPath(),t.arc(e.x,e.y,22,u,u+d),t.strokeStyle=`#38bdf8${p}`,t.lineWidth=2.5,t.lineCap=`round`,t.stroke(),t.restore()}}if(!o&&F>220&&os(t,F-12,12,Date.now()-k.current),Es){let t,n=0;for(let e of ie)e.exitingAt??(n++,t||=e);e.dataset.probeCount=String(n),e.dataset.probeX0=(t?.x??0).toFixed(2),e.dataset.probeY0=(t?.y??0).toFixed(2)}c=c===0?N:c*(1-g)+N*g;let ve=u.current;ve&&M-l>250&&(l=M,ve(c))});return D.current=E,O.current=E,_},[n,r,T.w,T.h,o,s]);function te(e,t){let n=f.current;if(!n)return null;let r=n.getBoundingClientRect(),i=e-r.left,a=t-r.top,o=null,s=200;for(let e of p.current){let t=e.x-i,n=e.y-a,r=t*t+n*n;r<s&&(s=r,o=e.id)}return o}return(0,K.jsxs)(`div`,{className:`relative w-full h-full rounded-sm border border-[var(--color-line-1)] overflow-hidden bg-black`,children:[(0,K.jsx)(`canvas`,{ref:f,className:`block w-full h-full cursor-crosshair`,onMouseMove:e=>{let t=te(e.clientX,e.clientY);h.current=t;let n=g.current;if(!n)return;if(!t){n.style.display=`none`;return}let r=p.current.find(e=>e.id===t);if(!r){n.style.display=`none`;return}let i=r.burst,a=Ya[i.decision]??`#6b7280`,o;if(i.complete_duration_ms!=null&&i.complete_duration_ms>0){let e=i.complete_duration_ms;o=e>=1e3?`${(e/1e3).toFixed(1)}s`:`${e.toFixed(0)}ms`}else{let e=i.duration_ns/1e6;o=e<1?`${(e*1e3).toFixed(0)}µs`:`${e.toFixed(1)}ms`}let s=[];i.input_tokens!=null&&s.push(`↓${Z(i.input_tokens)}`),i.output_tokens!=null&&s.push(`↑${Z(i.output_tokens)}`);let c=i.input_preview?` · "${i.input_preview.length>45?i.input_preview.slice(0,45)+`…`:i.input_preview}"`:``,l=s.length>0?` · ${s.join(` `)}`:``;n.textContent=`${i.decision} ${i.tool} · ${o}${l}${c}`,n.style.borderColor=a,n.style.color=a;let u=Math.min(e.clientX+14,window.innerWidth-420),d=Math.max(8,e.clientY-36);n.style.left=`${u}px`,n.style.top=`${d}px`,n.style.display=`block`},onMouseLeave:()=>{h.current=null,g.current&&(g.current.style.display=`none`)},onClick:e=>{i(te(e.clientX,e.clientY),{x:e.clientX,y:e.clientY})}}),t.length===0&&(0,K.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center pointer-events-none px-4 text-center`,children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`graph · idle`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[260px]`,children:[`Each dot = one tool call an AI agent made.`,(0,K.jsx)(`br`,{}),`Color = the ssg rule decision · line = same agent's sequence.`]})]}),(0,K.jsx)(`div`,{ref:g,style:{display:`none`,position:`fixed`,zIndex:45,fontSize:`11px`,fontFamily:`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,padding:`4px 10px`,background:`rgba(10, 10, 15, 0.92)`,border:`1px solid`,borderRadius:`4px`,pointerEvents:`none`,whiteSpace:`nowrap`,maxWidth:`500px`,overflow:`hidden`,textOverflow:`ellipsis`}})]})}var ks=3e4,As=6e4,js=5e3;function Ms(e,t){let n=t?e.filter(e=>Ja(e)===t):e,r=Date.now(),i=n.length>0?n[n.length-1]:null;if(!i||r-i.ts_ms>js||!i)return{idle:!0,client:``,tool:``,ruleId:null,decision:``,evalsPerSec:`0.0`,allowPct:0,agents:0,topRules:[]};let a=n.filter(e=>r-e.ts_ms<=ks),o=a.filter(e=>e.decision===`allow`).length,s=a.length>0?Math.round(o/a.length*100):0,c=(a.length/(ks/1e3)).toFixed(1),l=new Set(a.map(e=>`${e.client}:${e.agent_id??`solo`}`)).size,u=n.filter(e=>r-e.ts_ms<=As&&e.rule_id),d=new Map;for(let e of u){let t=e.rule_id;t&&d.set(t,(d.get(t)??0)+1)}let f=[...d.entries()].sort((e,t)=>t[1]-e[1]).slice(0,4).map(([e])=>e);return{idle:!1,client:i.client,tool:i.tool,ruleId:i.rule_id,decision:i.decision,evalsPerSec:c,allowPct:s,agents:l,topRules:f}}var Ns={allow:`ALLOW`,block:`BLOCK`,ask:`ASK`,log:`LOG`,force:`FORCE`,shadow:`SHADOW`},Ps={allow:`#22c55e`,block:`#ef4444`,ask:`#f59e0b`,log:`#60a5fa`,force:`#a855f7`,shadow:`#6b7280`};function Fs({className:e,sessionKey:t}){let n=De(),r=Oe(),i=(0,_.useRef)(-1),a=(0,_.useRef)(null),o=(0,_.useMemo)(()=>{if(i.current===r&&a.current)return a.current;i.current=r;let e=Ms(n,t);return a.current=e,e},[n,r,t]),s=o.decision?Ps[o.decision]??`#6b7280`:`#6b7280`,c=o.decision?Ns[o.decision]??o.decision:``,l=o.client?Ko(o.client):``;return o.idle?(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex items-center justify-center gap-2`,`px-4 py-2 rounded-sm`,`bg-[#0a0a0f]/95`,`border border-[var(--color-line-1,#242424)]`,`font-mono text-[11px] text-[var(--color-fg-4,#5a6071)]`,e),children:[(0,K.jsx)(`span`,{className:`status-dot bg-[var(--color-fg-4)] pulse-soft`}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider`,children:`waiting for activity`})]}):(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex flex-col gap-1 px-4 py-2.5 rounded-sm`,`bg-[#0a0a0f]/96`,`border border-[var(--color-line-1,#242424)]`,`font-mono`,!t&&`min-w-[280px] max-w-[460px]`,e),children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] uppercase tracking-widest text-[var(--color-fg-4,#5a6071)]`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),(0,K.jsx)(`span`,{children:`now evaluating`}),(0,K.jsxs)(`span`,{className:`ml-auto tabular-nums`,children:[o.evalsPerSec,`/s · `,o.allowPct,`% allow · `,o.agents,` `,o.agents===1?`agent`:`agents`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[14px] text-[var(--color-fg-0,#f5f5f5)] tracking-tight`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] text-[11px] tabular-nums`,children:[`[`,l,`]`]}),(0,K.jsx)(`span`,{className:`text-sky-300`,children:o.client}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-white font-semibold`,children:o.tool}),o.ruleId&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`->`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] text-[12px]`,children:o.ruleId})]}),(0,K.jsx)(`span`,{className:`ml-auto text-[13px] font-bold tabular-nums`,style:{color:s},children:c})]}),o.topRules.length>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[10px] text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[9px]`,children:`rules`}),o.topRules.map(e=>(0,K.jsx)(`span`,{className:`px-1 py-0.5 rounded-sm bg-[var(--color-surface-2,#121212)] text-[var(--color-fg-3)]`,children:e},e))]})]})}var Is=(0,_.memo)(function({sessionKey:e,bursts:t,activePanelCount:n,selectedId:r,onSelect:i}){let a=t.length>0?t[t.length-1]?.ts_ms??0:0,o=e.indexOf(`:`),s=o>=0?e.slice(0,o):e,c=o>=0?e.slice(o+1):``,l=c!==``&&c!==`solo`,u=t[t.length-1],d=u?Ya[u.decision]??`#6b7280`:`#6b7280`,f=(0,_.useMemo)(()=>t.length>24?t.slice(t.length-24):t,[t]);return(0,K.jsxs)(`div`,{className:`flex flex-col min-h-0 min-w-0 rounded-sm border border-[var(--color-line-1)] bg-black/30 overflow-hidden`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 px-2 py-1 border-b border-[var(--color-line-1)] text-[10px] font-mono shrink-0`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:d},title:u?`latest decision: ${u.decision}`:``}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider truncate`,children:s}),l&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate`,children:c})]}),(0,K.jsxs)(`span`,{className:`ml-auto text-[var(--color-fg-4)] tabular-nums shrink-0`,children:[t.length,`n`]})]}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0 relative`,children:(0,K.jsx)(Os,{bursts:f,paused:!1,selectedId:r,onSelect:i,burstSeq:a,compact:!0,activePanelCount:n})})]})});function Ls(e){return e<=1?1:e<=4?2:3}function Rs(){let e=De(),t=Oe(),[n,r]=(0,_.useState)(null),{isBurstActive:i}=Ka(),a=(0,_.useMemo)(()=>lo(e,i,Date.now()),[e,i,t]),o=(0,_.useRef)(new Map),s=(0,_.useMemo)(()=>{let e=new Map;for(let t of a){let n=Ja(t),r=e.get(n);r?r.push(t):e.set(n,[t])}let t=o.current;for(let[n,r]of e){let i=t.get(n);i&&i.length===r.length&&i[i.length-1]===r[r.length-1]&&e.set(n,i)}return o.current=e,Array.from(e.entries()).sort((e,t)=>{let n=e[1][e[1].length-1]?.ts_ms??0;return(t[1][t[1].length-1]?.ts_ms??0)-n})},[a]),c=(0,_.useMemo)(()=>{let e=new Map;for(let t of a){let n=`${t.client}:${t.agent_id??`solo`}`,r=e.get(n);r?r.count+=1:e.set(n,{client:t.client,count:1})}return e},[a]),l=(0,_.useMemo)(()=>{let e={allow:0,block:0,ask:0,other:0};for(let t of a)t.decision===`allow`?e.allow++:t.decision===`block`||t.decision===`force`?e.block++:t.decision===`ask`?e.ask++:e.other++;return e},[a]),u=(0,_.useMemo)(()=>{let e=new Set,t=0;for(let n of a)n.rule_id&&(e.add(n.rule_id),t+=1);return{distinct:e.size,matched:t,topRule:e.values().next().value}},[a]),d=Ls(s.length);return(0,K.jsxs)(`div`,{className:`flex flex-col h-full min-h-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,children:[(0,K.jsxs)(`header`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-[var(--color-line-1)]`,children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-3)]`,children:`graph · live`}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),a.length]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[10px] font-mono`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full`,style:{background:Ya.allow}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.allow}),(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full ml-1`,style:{background:Ya.block}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.block}),(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full ml-1`,style:{background:Ya.ask}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.ask})]}),(0,K.jsx)(`span`,{className:`flex-1`}),(0,K.jsxs)(`span`,{className:`chip text-violet-300 border-violet-500/30`,title:`${u.matched} tool calls matched ${u.distinct} ssg ${u.distinct===1?`rule`:`rules`} in active sessions`,children:[u.distinct,` `,u.distinct===1?`rule`:`rules`]}),(0,K.jsxs)(`span`,{className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)]`,title:c.size===0?`no active agents`:Array.from(c.entries()).map(([e,t])=>`${e}: ${t.count}`).join(`
10
- `),children:[c.size,` `,c.size===1?`agent`:`agents`]}),(0,K.jsx)(`a`,{href:`/graph`,className:`text-[10px] font-mono uppercase tracking-wider text-sky-300 hover:text-sky-200`,title:`Open full /graph page`,children:`expand ↗`})]}),(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 relative`,children:[s.length===0?(0,K.jsx)(Os,{bursts:a,paused:!1,selectedId:n,onSelect:r,burstSeq:t}):(0,K.jsx)(`div`,{className:`absolute inset-0 grid gap-1 p-1`,style:{gridTemplateColumns:`repeat(${d}, minmax(0, 1fr))`,gridAutoRows:`1fr`},children:s.map(([e,t])=>(0,K.jsx)(Is,{sessionKey:e,bursts:t,activePanelCount:s.length,selectedId:n,onSelect:r},e))}),(0,K.jsx)(Fs,{className:`absolute bottom-2 left-2 z-10 max-w-[calc(100%-1rem)]`})]})]})}var zs=`ssg.sfx.enabled`;function Bs(){if(typeof window>`u`)return!1;try{return window.localStorage.getItem(zs)===`true`}catch{return!1}}function Vs(e){if(!(typeof window>`u`))try{window.localStorage.setItem(zs,String(e))}catch{}}function Hs(e,t,n,r,i,a,o=`sine`){try{let s=e.createOscillator(),c=e.createGain(),l=i/1e3;s.type=o,s.frequency.setValueAtTime(n,e.currentTime),s.frequency.exponentialRampToValueAtTime(Math.max(1,r),e.currentTime+l),c.gain.setValueAtTime(a,e.currentTime),c.gain.exponentialRampToValueAtTime(.001,e.currentTime+l),s.connect(c),c.connect(t),s.start(e.currentTime),s.stop(e.currentTime+l+.02)}catch{}}function Us(){let[e,t]=(0,_.useState)(Bs),n=(0,_.useRef)(null),r=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=()=>{let t=n.current;t&&(document.hidden?t.suspend().catch(()=>{}):e&&t.resume().catch(()=>{}))};return document.addEventListener(`visibilitychange`,t),()=>document.removeEventListener(`visibilitychange`,t)},[e]),{enabled:e,toggle:(0,_.useCallback)(()=>{t(e=>{let t=!e;if(Vs(t),t){if(!n.current)try{let e=new AudioContext,t=e.createGain();t.gain.value=.8,t.connect(e.destination),n.current=e,r.current=t}catch{}n.current?.resume().catch(()=>{})}else n.current?.suspend().catch(()=>{});return t})},[]),play:(0,_.useCallback)(t=>{if(!e)return;let i=n.current,a=r.current;if(!(!i||!a||i.state===`suspended`))switch(t){case`block`:Hs(i,a,110,55,150,.08);break;case`force`:Hs(i,a,80,40,200,.1),Hs(i,a,160,80,200,.05,`square`);break;case`milestone`:{Hs(i,a,660,880,100,.06);let e=i,t=a;setTimeout(()=>{e.state!==`suspended`&&Hs(e,t,880,1320,100,.05)},115);break}case`record`:Hs(i,a,880,1320,350,.07);break}},[e])}}var Ws=[`rules-changed`,`activity-updated`,`pending-changed`,`runtime-tick`,`limits-breach`],Gs={critical:{border:`border-l-red-500/70`,iconBg:`bg-red-500/15`,iconFg:`text-red-400`,chipBg:`bg-red-500/10`,chipFg:`text-red-300`,label:`Critical`},warning:{border:`border-l-amber-400/70`,iconBg:`bg-amber-500/15`,iconFg:`text-amber-300`,chipBg:`bg-amber-500/10`,chipFg:`text-amber-200`,label:`Heads up`},info:{border:`border-l-sky-500/70`,iconBg:`bg-sky-500/15`,iconFg:`text-sky-300`,chipBg:`bg-sky-500/10`,chipFg:`text-sky-200`,label:`Tip`}};function Ks({severity:e}){return e===`critical`?(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12.01`,y2:`16`})]}):e===`warning`?(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}):(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12.01`,y2:`8`})]})}function qs({notification:e,onAction:t}){let[n,r]=(0,_.useState)(`idle`),[i,a]=(0,_.useState)(null),o=Gs[e.severity],s=async()=>{if(e.action&&!(e.action.confirm&&!confirm(e.action.confirm))){r(`loading`),a(null);try{await t(e),r(`done`)}catch(e){r(`error`),a(e instanceof Error?e.message:String(e))}}};return(0,K.jsxs)(`div`,{className:`hig-card border-l-2 ${o.border} flex items-start gap-3 px-3 py-2.5`,children:[(0,K.jsx)(`span`,{className:`shrink-0 mt-0.5 inline-flex items-center justify-center w-6 h-6 rounded-full ${o.iconBg} ${o.iconFg}`,"aria-hidden":!0,children:(0,K.jsx)(Ks,{severity:e.severity})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[9px] font-mono font-medium uppercase tracking-wider px-1.5 py-0.5 rounded ${o.chipBg} ${o.chipFg}`,children:o.label}),(0,K.jsx)(`h3`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-tight`,children:e.title})]}),(0,K.jsx)(`p`,{className:`mt-1 text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:e.detail}),n===`error`&&i&&(0,K.jsxs)(`p`,{className:`mt-1.5 text-[11px] font-mono text-red-300`,children:[`Failed: `,i]}),n===`done`&&(0,K.jsx)(`p`,{className:`mt-1.5 text-[11px] font-mono text-emerald-300`,children:`✓ Done — refreshing…`})]}),(0,K.jsx)(`div`,{className:`shrink-0 self-center`,children:e.action?(0,K.jsx)(`button`,{type:`button`,onClick:s,disabled:n===`loading`||n===`done`,className:`inline-flex items-center gap-1 h-8 px-3 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-[var(--color-surface-2)] text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:bg-[var(--color-surface-3)] hover:border-[var(--color-line-2)] transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed whitespace-nowrap`,children:n===`loading`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}),` working…`]}):n===`done`?(0,K.jsx)(K.Fragment,{children:`✓ done`}):e.action.label}):e.link?(0,K.jsxs)(`a`,{href:e.link.href,className:`inline-flex items-center gap-1 h-8 px-3 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-[var(--color-surface-2)] text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:bg-[var(--color-surface-3)] hover:border-[var(--color-line-2)] transition-colors whitespace-nowrap`,children:[e.link.label,` →`]}):null})]})}function Js({showEmptyState:e=!1,hideHeader:t=!1}={}){let n=ke(Ws),{data:r,refetch:i}=V(`/api/json/maintenance`,[n[`rules-changed`],n[`activity-updated`],n[`pending-changed`],n[`runtime-tick`],n[`limits-breach`]]),a=async e=>{if(!e.action)return;let t=await fetch(e.action.url,{method:e.action.method,headers:{Accept:`application/json`,"Content-Type":`application/json`,...B()}});if(!t.ok){let e=await t.text().catch(()=>``);throw Error(e||`HTTP ${t.status}`)}setTimeout(()=>i(),600)},o=r?.notifications??[];return o.length===0&&!e?null:(0,K.jsxs)(`section`,{"data-reveal":!0,children:[!t&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:o.length===0?`maintenance · all clear`:`maintenance · ${o.length} item${o.length===1?``:`s`}`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>i(),className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] transition-colors cursor-pointer`,title:`Re-check now`,children:`refresh`})]}),o.length===0?(0,K.jsxs)(`div`,{className:`hig-card border-l-2 border-l-emerald-500/60 px-4 py-5 flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`inline-flex items-center justify-center w-8 h-8 rounded-full bg-emerald-500/15 text-emerald-300 shrink-0`,children:(0,K.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M20 6L9 17l-5-5`})})}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-tight`,children:`Everything looks good`}),(0,K.jsx)(`p`,{className:`mt-1 text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:`No drift, no capacity warnings, no stalled daemons. We'll let you know if anything changes.`})]})]}):(0,K.jsx)(`div`,{className:`space-y-2`,children:o.map(e=>(0,K.jsx)(qs,{notification:e,onAction:a},e.id))})]})}function Ys(e){return!Number.isFinite(e)||e<=0?`—`:e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:`${(e/1e6).toFixed(2)} ms`}async function Xs(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}var Zs=e=>!0,Qs=e=>e.decision===`allow`,$s=e=>e.decision===`block`,ec=e=>e.decision===`ask`,tc=e=>e.decision===`force`,nc=e=>e.decision===`log`;function rc(){let e=new Date;return e.setHours(0,0,0,0),e.getTime()}function ic(){let e=ke([`counters-updated`,`activity-updated`,`pending-changed`,`runtime-tick`]),t=Ee(),n=Oe(),r=De(),i=Us();(0,_.useEffect)(()=>{t&&(t.decision===`block`?i.play(`block`):t.decision===`force`&&i.play(`force`))},[n]);let[a,o]=(0,_.useState)(()=>rc());(0,_.useEffect)(()=>{let e=()=>{if(document.visibilityState!==`visible`)return;let e=rc();o(t=>e===t?t:e)};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[]);let{data:s}=V(`/api/state/counters?since_ms=${a}`,[e[`counters-updated`],a]),{data:c}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:l}=V(`/api/json/limits`,[e[`runtime-tick`]]),{data:u,refetch:d}=V(`/api/json/pending`,[e[`pending-changed`]]),{data:f}=V(`/api/json/blocked`,[e[`activity-updated`]]),p=Ua(),[m,h]=(0,_.useState)(!1),g=(0,_.useMemo)(()=>{let e=s?.allow??0,n=s?.block??0,r=s?.ask??0,i=s?.log??0,a=s?.force??0,o=e+n+r+i+a,c=t?.counters.total??0;return t&&c>=o&&t?{allow:t.counters.allow,block:t.counters.block,ask:t.counters.ask,log:t.counters.log,force:t.counters.force,shadow:t.counters.shadow,total:t.counters.total}:{allow:e,block:n,ask:r,log:i,force:a,shadow:0,total:o}},[t,s]),v=(0,_.useMemo)(()=>{if(r.length===0)return 0;let e=Date.now()-1e4;return r.filter(t=>t.ts_ms>=e).length/10},[r]),y=c?.history?.cpu_pct??[],b=c?.history?.memory_rss_mb??[],x=[],S=c?.latency,C=(0,_.useMemo)(()=>({"hero-metrics":()=>(0,K.jsx)(`div`,{className:`grid-bleed rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 h-full`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3 h-full`,children:[(0,K.jsx)(Or,{label:`Total`,value:g.total,tone:`amber`,sub:t?Ys(t.duration_ns):void 0,burstRing:r,filter:Zs}),(0,K.jsx)(Or,{label:`Allow`,value:g.allow,tone:`green`,burstRing:r,filter:Qs}),(0,K.jsx)(Or,{label:`Block`,value:g.block,tone:`red`,burstRing:r,filter:$s}),(0,K.jsx)(Or,{label:`Ask`,value:g.ask,tone:`amber`,burstRing:r,filter:ec}),(0,K.jsx)(Or,{label:`Force`,value:g.force,tone:`blue`,burstRing:r,filter:tc}),(0,K.jsx)(Or,{label:`Log`,value:g.log,tone:`purple`,burstRing:r,filter:nc})]})}),graph:()=>(0,K.jsx)(Rs,{}),"latency-trace":()=>(0,K.jsx)(Qr,{latency:S,bursts:r,gaugeMaxMs:10,windowMs:3e4,trendWindowSec:60,gaugeSize:200}),throughput:()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`throughput · evals/s`}),(0,K.jsxs)(sr,{variant:`blue`,children:[v.toFixed(1),`/s`]})]}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(br,{value:v,width:360,height:96,windowMs:6e4,className:`w-full`}),(0,K.jsx)(`p`,{className:`overline mt-2 text-center`,children:`60-second rolling window`})]})]}),"decision-mix":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`decision mix`}),(0,K.jsx)(sr,{variant:`gray`,children:g.total.toLocaleString()})]}),(0,K.jsx)(Y,{children:(0,K.jsx)(ti,{counters:{allow:g.allow,block:g.block,ask:g.ask,log:g.log,force:g.force,shadow:g.shadow}})})]}),"telemetry-feed":()=>(0,K.jsxs)(q,{variant:`flush`,className:`h-full flex flex-col`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`telemetry · live · newest first`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:[`hover to pause · scroll for history · `,r.length,` events buffered`]})]}),(0,K.jsx)(Y,{className:`p-0 flex-1 min-h-0`,children:(0,K.jsx)(wi,{variant:`decision`,bursts:r,windowSize:80,height:360,className:`border-0 rounded-none`})})]}),"system-pulse":()=>(0,K.jsx)(oi,{cpuPct:c?.cpu_pct??0,cpuSeries:y,cpuLimit:l?.config.cpuLimitPct,memMb:c?.memory_rss_mb??0,memSeries:b,memLimit:l?.config.memoryLimitMb,heapUsedMb:c?.heap_used_mb??0,heapTotalMb:c?.heap_total_mb??0,heapSeries:x,uptimeSec:(c?.uptime_ms??0)/1e3}),"pending-approvals":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`pending approvals`}),(0,K.jsx)(sr,{variant:u&&u.length>0?`amber`:`gray`,children:u?.length??0})]}),(0,K.jsx)(Y,{children:u&&u.length>0?(0,K.jsx)(`ul`,{className:`space-y-2`,children:u.slice(0,5).map(e=>(0,K.jsxs)(`li`,{className:`flex items-center justify-between gap-2 border-b border-[var(--color-line-0)] last:border-b-0 py-1.5 text-[12px] font-mono`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`text-[var(--color-fg-1)] truncate`,children:[e.toolCall.tool,` · `,e.ruleId]}),(0,K.jsx)(`div`,{className:`text-[var(--color-fg-3)] text-[11px] truncate`,children:rr(e.toolCall.tool,JSON.stringify(e.toolCall.input??{}))})]}),(0,K.jsxs)(`div`,{className:`flex gap-1 shrink-0`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:()=>Xs(e.id,`allow`).then(d),children:`allow`}),(0,K.jsx)(X,{size:`sm`,variant:`ghost`,onClick:()=>Xs(e.id,`block`).then(d),children:`block`})]})]},e.id))}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] py-3 text-center`,children:`— no pending approvals —`})})]}),"recent-blocks":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`recent blocks & forces`}),(0,K.jsx)(sr,{variant:f&&f.length>0?`red`:`gray`,children:f?.length??0})]}),(0,K.jsx)(Y,{children:f&&f.length>0?(0,K.jsx)(`ul`,{className:`space-y-1.5`,children:f.slice(0,6).map((e,t)=>(0,K.jsxs)(`li`,{className:`flex items-center gap-2 text-[12px] font-mono border-b border-[var(--color-line-0)] last:border-b-0 py-1.5`,children:[(0,K.jsx)(sr,{variant:e.decision===`force`?`amber`:`red`,children:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate flex-1`,children:rr(e.tool,e.input)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate text-[11px] max-w-[120px]`,children:e.rule_id??`—`})]},`${e.timestamp}-${t}`))}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] py-3 text-center`,children:`— no recent blocks —`})})]})}),[g,t,r,S,v,c,y,b,x,l,u,f,d]),w=Tt({from:`first`,translateY:22,durationMs:640,staggerMs:80,maxStaggerMs:520});return(0,K.jsxs)(`div`,{ref:m?void 0:w,className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-1`,children:(0,K.jsx)(ia,{manager:p,isEditing:m,onToggleEditing:h})}),(0,K.jsx)(`button`,{type:`button`,onClick:i.toggle,className:`chip cursor-pointer hover:border-sky-500/50 hover:text-sky-300 transition-colors shrink-0`,title:i.enabled?`Mute stream sounds`:`Enable stream sounds`,children:i.enabled?`SFX ON`:`SFX OFF`})]}),(0,K.jsx)(Js,{}),(0,K.jsx)(ra,{panels:p.activeLayout.panels,isEditing:m,renderers:C,onPanelsChange:p.updateActivePanels})]})}var ac=[{path:`/`,aliases:[`dashboard`,`home`,`main`,`top`],selector:`a[href="/"]`},{path:`/agents`,aliases:[`agents`,`agent`,`connected agents`],selector:`a[href="/agents"]`},{path:`/graph`,aliases:[`graph`,`graph view`,`visualisation`,`visualization`],selector:`a[href="/graph"]`},{path:`/rules`,aliases:[`rules`,`rule list`,`policies`],selector:`a[href="/rules"]`},{path:`/hub`,aliases:[`hub`,`rule hub`,`registry`,`marketplace`],selector:`a[href="/hub"]`},{path:`/approvals`,aliases:[`approvals`,`approval queue`,`pending`,`ask queue`,`approvals queue`],selector:`a[href="/approvals"]`},{path:`/audit`,aliases:[`audit`,`activity`,`audit log`,`history`],selector:`a[href="/audit"]`},{path:`/monitor`,aliases:[`monitor`,`live monitor`,`live stream`,`live`],selector:`a[href="/monitor"]`},{path:`/observability`,aliases:[`observability`,`metrics`,`telemetry`,`stats`],selector:`a[href="/observability"]`},{path:`/workspace`,aliases:[`workspace`,`monorepo`,`projects`],selector:`a[href="/workspace"]`},{path:`/setup`,aliases:[`setup`,`setup status`,`install`,`installation`],selector:`a[href="/setup"]`},{path:`/debug`,aliases:[`debug`,`diagnostics`,`troubleshoot`],selector:`a[href="/debug"]`},{path:`/profile`,aliases:[`profile`,`license`,`account`],selector:`a[href="/profile"]`},{path:`/support`,aliases:[`support`,`help`,`feedback`],selector:`a[href="/support"]`},{path:`/notifications`,aliases:[`notifications`,`alerts`,`inbox`],selector:`a[href="/notifications"]`},{path:`/try`,aliases:[`try`,`try it`,`simulator`,`sandbox`,`playground`],selector:`a[href="/try"]`},{path:`/guardrails`,aliases:[`guardrails`,`guardrail packs`,`packs`],selector:`a[href="/guardrails"]`}];function oc(){if(typeof window>`u`)return null;let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function sc(e){if(!e)return null;let t=e.toLowerCase().trim();for(let e of ac)for(let n of e.aliases)if(t===n)return e;for(let e of ac)for(let n of e.aliases)if(t.includes(n))return e;return null}function cc(e){let t=e.trim().toLowerCase();if(!t)return{kind:`unknown`,said:``,failed:!0};if(/\b(turn|switch|set|put)\s+(ssg|the system|everything)?\s*off\b/.test(t)||/\b(kill switch|panic|safe mode|stop ssg)\b/.test(t)||/\bssg\s+off\b/.test(t)||/^off$/.test(t))return{kind:`set-ssg-mode`,mode:`off`,said:`Switching SSG to OFF`,targetSelector:`.chip[title*="cycle"]`};if(/\b(audit\s+mode|set\s+audit|log[\s-]only|switch\s+to\s+audit|audit\s+only)\b/.test(t)||/\bssg\s+audit\b/.test(t)||/^audit$/.test(t))return{kind:`set-ssg-mode`,mode:`audit`,said:`Switching SSG to AUDIT`,targetSelector:`.chip[title*="cycle"]`};if(/\b(turn|switch|set|put)\s+(ssg|the system|everything)?\s*on\b/.test(t)||/\b(resume|re-enable|reenable|enforce)\b.*\b(ssg|rules)?\b/.test(t)||/\bssg\s+on\b/.test(t)||/^on$/.test(t))return{kind:`set-ssg-mode`,mode:`on`,said:`Resuming SSG enforcement`,targetSelector:`.chip[title*="cycle"]`};if(/\b(ask|approvals?)\b.*\b(dashboard|here|on screen|browser)\b/.test(t))return{kind:`set-ask-mode`,mode:`dashboard`,said:`Routing ASK prompts to the dashboard`,targetSelector:`.chip[title*="ASK"]`};if(/\b(ask|approvals?)\b.*\b(tty|terminal|native|ide|cli)\b/.test(t))return{kind:`set-ask-mode`,mode:`tty`,said:`Routing ASK prompts to the native terminal`,targetSelector:`.chip[title*="ASK"]`};if(/\b(newcomer|beginner|simple|simplified|easy)\s+(mode|ui|view)?\b/.test(t))return{kind:`set-ui-mode`,mode:`newcomer`,said:`Switching to Newcomer mode`,targetSelector:`button[title*="newcomer" i], button[title*="Newcomer"]`};if(/\b(pro|professional|advanced|expert|full)\s+(mode|ui|view)?\b/.test(t))return{kind:`set-ui-mode`,mode:`pro`,said:`Switching to Pro mode`,targetSelector:`button[title*="pro" i], button[title*="Pro"]`};if(/\b(refresh|reset)\b(?!.*reload)/.test(t))return{kind:`refresh`,said:`Resetting the page`};if(/\b(hard\s+reload|reload|force\s+reload|fresh\s+load)\b/.test(t))return{kind:`hard-reload`,said:`Hard-reloading the dashboard`};let n=t.match(/\b(?:show me|show|open|go to|take me to|switch to|jump to|navigate to|bring up|pull up)\s+(.+)$/);if(n){let e=n[1].replace(/[?!.]+$/,``).trim(),t=sc(e);return t?{kind:`navigate`,path:t.path,said:`Opening ${lc(t.path)}`,targetSelector:t.selector}:{kind:`unknown`,said:`I don't have a page called "${e}".`,failed:!0}}let r=sc(t);return r?{kind:`navigate`,path:r.path,said:`Opening ${lc(r.path)}`,targetSelector:r.selector}:{kind:`unknown`,said:`Didn't catch that. Try "go to rules", "audit mode", or "switch to newcomer".`,failed:!0}}function lc(e){return e===`/`?`Dashboard`:e.slice(1).replace(/\b\w/g,e=>e.toUpperCase())}function uc(e){e&&window.dispatchEvent(new CustomEvent(`ssg:voice-target`,{detail:{selector:e}}))}function dc(){window.dispatchEvent(new CustomEvent(`ssg:voice-page-morph`))}function fc({actions:e}){let t=(0,_.useMemo)(()=>!!oc(),[]),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(null),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)(!0),f=(0,_.useRef)(null),p=(0,_.useCallback)(t=>{let n=cc(t);switch(s(n),n.kind){case`navigate`:uc(n.targetSelector),e.navigate(n.path),dc();break;case`set-ssg-mode`:uc(n.targetSelector),e.setSsgMode(n.mode);break;case`set-ask-mode`:uc(n.targetSelector),e.setAskMode(n.mode);break;case`set-ui-mode`:uc(n.targetSelector),e.setUiMode(n.mode);break;case`refresh`:e.refresh(),dc();break;case`hard-reload`:e.hardReload();break;case`unknown`:break}},[e]),m=(0,_.useCallback)(()=>{let e=f.current;if(e)try{e.stop()}catch{}r(!1)},[]),h=(0,_.useCallback)(()=>{let e=oc();if(!e)return;let t=new e;t.continuous=!1,t.interimResults=!0,t.lang=`en-US`,t.onresult=e=>{let t=``,n=``;for(let r=e.resultIndex;r<e.results.length;r++){let i=e.results[r],a=i[0]?.transcript??``;i.isFinal?n+=a:t+=a}a(t||n),n&&p(n)},t.onend=()=>r(!1),t.onerror=()=>r(!1),f.current=t,a(``),s(null);try{t.start(),r(!0)}catch{r(!1)}},[p]);(0,_.useEffect)(()=>()=>m(),[m]);let g=e=>{e.preventDefault();let t=c.trim();t&&(a(t),p(t),l(``))};if(!u)return(0,K.jsx)(`button`,{type:`button`,className:`ssg-voice-dock ssg-voice-dock--collapsed`,onClick:()=>d(!0),title:`Talk to SigmaShake`,"aria-label":`Open voice dock`,children:(0,K.jsx)(pc,{})});let v=o?.kind===`unknown`;return(0,K.jsxs)(`div`,{className:`ssg-voice-dock ssg-voice-dock--open`+(n?` ssg-voice-dock--listening`:``)+(v?` ssg-voice-dock--failed`:``),role:`region`,"aria-label":`Voice dock`,children:[(0,K.jsxs)(`div`,{className:`ssg-voice-dock__row`,children:[(0,K.jsxs)(`button`,{type:`button`,className:`ssg-voice-dock__mic`+(n?` ssg-voice-dock__mic--on`:``),onClick:n?m:h,disabled:!t,title:t?n?`Stop listening`:`Tap then speak — try "audit mode" or "go to rules"`:`Speech recognition isn't supported in this browser. Use the text box.`,children:[(0,K.jsx)(pc,{}),(0,K.jsx)(`span`,{children:n?`Listening…`:t?`Talk`:`Voice off`})]}),(0,K.jsx)(`form`,{className:`ssg-voice-dock__form`,onSubmit:g,children:(0,K.jsx)(`input`,{type:`text`,className:`ssg-voice-dock__input`,placeholder:`Type or say "go to audit"`,value:c,onChange:e=>l(e.target.value),spellCheck:!1})}),(0,K.jsx)(`button`,{type:`button`,className:`ssg-voice-dock__close`,onClick:()=>d(!1),title:`Hide voice dock`,"aria-label":`Hide voice dock`,children:`×`})]}),(i||o)&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__feedback`,children:[i&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__line ssg-voice-dock__line--heard`,children:[(0,K.jsx)(`span`,{className:`ssg-voice-dock__tag`,children:`Heard`}),(0,K.jsx)(`span`,{children:i})]}),o&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__line ssg-voice-dock__line--`+(v?`miss`:`did`),children:[(0,K.jsx)(`span`,{className:`ssg-voice-dock__tag`,children:v?`Hmm`:`Did`}),(0,K.jsx)(`span`,{children:o.said})]})]})]})}function pc(){return(0,K.jsxs)(`svg`,{className:`ssg-voice-dock__glyph`,width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:[(0,K.jsx)(`rect`,{x:`6`,y:`2`,width:`4`,height:`8`,rx:`2`,fill:`currentColor`}),(0,K.jsx)(`path`,{d:`M4 8 v0.6 a4 4 0 0 0 8 0 V8`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`,fill:`none`}),(0,K.jsx)(`path`,{d:`M8 13 v2`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`})]})}function mc({val:e}){return e==null?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] italic font-mono text-xs`,children:`null`}):typeof e==`boolean`?(0,K.jsx)(`span`,{className:`inline-block font-mono text-[10px] font-medium uppercase tracking-wider px-1.5 py-0.5 rounded-sm border ${e?`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`:`bg-red-500/8 text-red-300 border-red-500/25`}`,children:e.toString()}):typeof e==`number`?(0,K.jsx)(`span`,{className:`font-mono tabular-nums text-violet-300 text-xs`,children:e}):typeof e==`string`?e.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] italic text-xs font-mono`,children:`empty string`}):e.length>200?(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 max-h-40 overflow-y-auto`,children:e}):(0,K.jsx)(`span`,{className:`font-mono text-xs text-[var(--color-fg-1)] break-all`,children:e}):(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 max-h-40 overflow-y-auto`,children:JSON.stringify(e,null,2)})}function hc({inputJson:e}){let t=[];try{let n=JSON.parse(e);n&&typeof n==`object`&&!Array.isArray(n)&&(t=Object.entries(n))}catch{return(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2`,children:e})}return t.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-xs italic font-mono`,children:`no input fields`}):(0,K.jsx)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] overflow-hidden text-xs`,children:t.map(([e,t],n)=>(0,K.jsxs)(`div`,{className:`flex gap-0 ${n>0?`border-t border-[var(--color-line-0)]`:``}`,children:[(0,K.jsx)(`div`,{className:`w-40 shrink-0 px-3 py-2 bg-[var(--color-surface-0)] text-[var(--color-fg-3)] font-mono text-[11px] border-r border-[var(--color-line-0)] select-none`,children:e}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0 px-3 py-2 leading-relaxed`,children:(0,K.jsx)(mc,{val:t})})]},e))})}var gc={allow:`green`,block:`red`,force:`amber`,ask:`blue`,log:`gray`},_c={allow:`Allowed`,block:`Blocked`,force:`Forced`,ask:`Held`,log:`Logged`},vc={allow:`border-l-emerald-500/60`,block:`border-l-red-500/60`,force:`border-l-amber-400/60`,ask:`border-l-sky-500/60`,log:`border-l-[var(--color-line-2)]`};function yc(e){return e==null?null:e<1e6?`${(e/1e3).toFixed(0)}µs`:`${(e/1e6).toFixed(1)}ms`}function bc({label:e,value:t,mono:n,children:r}){return(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:e}),r??(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] text-xs ${n?`font-mono`:``} break-all`,children:t??`—`})]})}function xc({text:e}){let[t,n]=(0,_.useState)(!1);return(0,K.jsx)(`button`,{onClick:async t=>{t.stopPropagation();try{await navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1500)}catch{}},className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:border-[var(--color-line-2)] rounded-sm px-2 py-1 transition-colors cursor-pointer`,children:t?`✓ copied`:`copy json`})}function Sc({row:e,defaultExpanded:t=!1}){let[n,r]=(0,_.useState)(t),i=(0,_.useRef)(null),a=(0,_.useRef)(!0),o=rr(e.tool,e.input),s=o&&o.length>0?o:e.input&&e.input!==`{}`&&e.input!==``?e.input:`—`,c=gc[e.decision]??`gray`,l=vc[e.decision]??`border-l-[var(--color-line-2)]`,u=nr(e.timestamp),d=yc(e.duration_ns),f=vi(e.tool,e.input);(0,_.useEffect)(()=>{let e=i.current;if(e){if(a.current){a.current=!1,n||(e.style.maxHeight=`0`,e.style.opacity=`0`);return}if(ot()){e.style.maxHeight=n?`none`:`0`,e.style.opacity=n?`1`:`0`;return}if(n){let t=e.scrollHeight;wt(e,{"max-height":[`0px`,`${t}px`],opacity:[0,1],translateY:[-6,0],duration:260,ease:`outCubic`,onComplete:()=>{e.style.maxHeight=`none`}})}else{let t=e.scrollHeight;wt(e,{"max-height":[`${t}px`,`0px`],opacity:[1,0],duration:180,ease:`outCubic`})}}},[n]);let p=(()=>{try{return JSON.stringify(JSON.parse(e.input),null,2)}catch{return e.input}})();return(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] border-l-2 ${l} rounded-sm bg-[var(--color-surface-1)] overflow-hidden transition-colors hover:border-[var(--color-line-2)] hover:border-l-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 cursor-pointer select-none group`,onClick:()=>r(e=>!e),role:`button`,"aria-expanded":n,children:[(0,K.jsx)(`svg`,{className:`shrink-0 w-3 text-[var(--color-fg-4)] group-hover:text-[var(--color-fg-2)] transition-all ${n?`rotate-90`:``}`,width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`polyline`,{points:`9 18 15 12 9 6`})}),(0,K.jsx)(`time`,{className:`shrink-0 font-mono text-[11px] text-[var(--color-fg-3)] w-14 tabular-nums`,title:u,dateTime:new Date(e.timestamp*1e3).toISOString(),children:tr(e.timestamp)}),(0,K.jsx)(sr,{variant:c,className:`shrink-0 w-20 justify-center`,children:_c[e.decision]??e.decision}),(0,K.jsxs)(`span`,{className:`flex-1 min-w-0 flex items-baseline gap-2`,title:`${f.headline} · ${e.tool}`,children:[(0,K.jsx)(`span`,{className:`text-[12px] text-[var(--color-fg-0)] font-medium truncate`,children:f.headline}),!di(e.tool)&&s!==`—`&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)] font-mono truncate hidden sm:inline`,title:s,children:s})]}),d&&(0,K.jsx)(`span`,{className:`shrink-0 hidden md:inline w-12 text-right font-mono text-[10px] text-[var(--color-fg-4)] tabular-nums`,title:`Eval latency: ${d}`,children:d}),(0,K.jsx)(`span`,{className:`shrink-0 w-24 text-right text-[10px] text-[var(--color-fg-3)] truncate`,title:e.client?`Adapter: ${e.client}`:`Unidentified caller`,children:ui(e.client)})]}),(0,K.jsx)(`div`,{ref:i,className:`border-t border-[var(--color-line-0)] overflow-hidden`,style:{maxHeight:n?`none`:`0`,opacity:n?1:0},"aria-hidden":!n,children:n&&(0,K.jsxs)(`div`,{className:`px-3 py-3 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-x-6 gap-y-3`,children:[(0,K.jsx)(bc,{label:`When`,value:u}),(0,K.jsx)(bc,{label:`Decision`,children:(0,K.jsx)(sr,{variant:c,children:_c[e.decision]??e.decision})}),(0,K.jsx)(bc,{label:`Action`,children:(0,K.jsxs)(`span`,{className:`text-xs text-[var(--color-fg-1)]`,children:[f.headline,(0,K.jsxs)(`span`,{className:`ml-2 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`(`,e.tool,`)`]})]})}),e.client&&(0,K.jsx)(bc,{label:`AI agent`,value:ui(e.client)}),e.rule_id&&(0,K.jsx)(bc,{label:`Rule ID`,children:(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-xs text-[var(--color-brand)] hover:underline font-mono`,onClick:e=>e.stopPropagation(),children:e.rule_id})}),e.source_file&&(0,K.jsx)(bc,{label:`Source File`,value:e.source_file,mono:!0}),d&&(0,K.jsx)(bc,{label:`Latency`,value:d,mono:!0}),e.rules_evaluated!=null&&(0,K.jsx)(bc,{label:`Rules Evaluated`,value:`${e.rules_evaluated}`,mono:!0})]}),(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-3 py-2.5`,children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:`In plain English`}),(0,K.jsx)(`div`,{className:`text-xs font-medium text-[var(--color-fg-1)] mb-1`,children:f.headline}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] leading-relaxed`,children:f.detail})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`Tool Input`}),(0,K.jsx)(hc,{inputJson:e.input})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[e.rule_id?(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-brand)]/70 hover:text-[var(--color-brand)] transition-colors`,onClick:e=>e.stopPropagation(),children:`→ view rule`}):(0,K.jsx)(`span`,{}),(0,K.jsx)(xc,{text:p})]})]})})]})}function Cc({className:e,children:t,...n}){return(0,K.jsx)(`pre`,{className:G(`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-3 py-2 text-[11px] leading-relaxed font-mono text-[var(--color-fg-1)] overflow-x-auto whitespace-pre-wrap break-all`,e),...n,children:t})}var wc={neutral:`text-[var(--color-fg-0)]`,green:`text-emerald-300`,red:`text-red-300`,amber:`text-amber-300`,blue:`text-sky-300`,purple:`text-violet-300`,gray:`text-[var(--color-fg-3)]`},Tc={neutral:`bg-[var(--color-fg-3)]`,green:`bg-emerald-500`,red:`bg-red-500`,amber:`bg-[var(--color-brand)]`,blue:`bg-sky-500`,purple:`bg-violet-500`,gray:`bg-[var(--color-line-2)]`},Ec=[{label:`User code`,color:`#451a03`},{label:`Runtime (bun:/node:)`,color:`#172554`},{label:`Native/other`,color:`#1f2937`},{label:`GC/idle`,color:`#450a0a`}],Dc={neutral:`#d0d0d0`,green:`#34d399`,red:`#f87171`,amber:`#fbbf24`,blue:`#38bdf8`,purple:`#a78bfa`,gray:`#6e7076`};function Oc({label:e,value:t,sub:n,tone:r=`neutral`,align:i=`left`,labelPlacement:a=`above`,labelClassName:o,valueClassName:s,subClassName:c,trend:l,trendColor:u}){let d=(0,K.jsx)(`div`,{className:G(a===`above`?`overline mb-1.5`:`mt-1 text-[11px] text-[var(--color-fg-3)]`,o),children:e}),f=(0,K.jsx)(`div`,{className:G(`font-mono font-medium tabular-nums`,i===`center`&&`text-center`,wc[r],s),children:t}),p=l&&l.length>1,m=u??Dc[r];return(0,K.jsxs)(K.Fragment,{children:[a===`above`&&d,p?(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[f,(0,K.jsx)(pr,{data:l,width:48,height:18,color:m})]}):f,a===`below`&&d,n&&(0,K.jsx)(`div`,{className:G(`mt-1 text-[10px] font-mono text-[var(--color-fg-3)]`,i===`center`&&`text-center`,c),children:n})]})}function kc({className:e,contentClassName:t,label:n,value:r,sub:i,tone:a,align:o,labelPlacement:s,labelClassName:c,valueClassName:l,subClassName:u,trend:d,trendColor:f,...p}){return(0,K.jsx)(q,{className:e,...p,children:(0,K.jsx)(Y,{className:G(`py-3`,o===`center`&&`text-center`,t),children:(0,K.jsx)(Oc,{label:n,value:r,sub:i,tone:a,align:o,labelPlacement:s,labelClassName:c,valueClassName:l,subClassName:u,trend:d,trendColor:f})})})}function Ac({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)] p-3`,t.align===`center`&&`text-center`,e),children:(0,K.jsx)(Oc,{...t})})}function jc({pct:e,tone:t=`green`,markerPct:n,className:r,barClassName:i,markerTitle:a}){let o=Math.max(0,Math.min(100,e)),s=n===void 0?null:Math.max(0,Math.min(100,n));return(0,K.jsxs)(`div`,{className:G(`relative w-full overflow-hidden rounded-sm bg-[var(--color-surface-3)]`,r),children:[(0,K.jsx)(`div`,{className:G(`h-full rounded-sm transition-all duration-500`,Tc[t],i),style:{width:`${o}%`}}),s!==null&&(0,K.jsx)(`div`,{className:`absolute top-0 h-full w-0.5 bg-[var(--color-brand)]/70`,style:{left:`${s}%`},title:a})]})}function Mc({label:e,value:t,tone:n=`neutral`,breached:r=!1,breachLabel:i=`limit exceeded`,trendData:a,trendColor:o,threshold:s,maxValue:c,footer:l,className:u,valueClassName:d}){return(0,K.jsxs)(q,{className:u,children:[(0,K.jsxs)(J,{className:`py-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),r&&(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300`,children:i})]}),(0,K.jsxs)(Y,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`div`,{className:G(`text-2xl font-mono font-medium tabular-nums`,wc[n],d),children:t}),(a?.length??0)>1&&o&&(0,K.jsx)(pr,{data:a??[],width:80,height:28,color:o,threshold:s,maxValue:c})]}),l]})]})}function Nc({profile:e,children:t}){return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`span`,{children:[`nodes:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.nodes.length})]}),(0,K.jsxs)(`span`,{children:[`duration:`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-1)]`,children:[((e.endTime-e.startTime)/1e3).toFixed(0),`ms`]})]}),(0,K.jsxs)(`span`,{children:[`samples:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.samples?.length??0})]})]}),(0,K.jsx)(`div`,{className:`flex gap-3 text-[10px] font-mono text-[var(--color-fg-3)]`,children:Ec.map(e=>(0,K.jsxs)(`span`,{className:`flex items-center`,children:[(0,K.jsx)(`span`,{className:`mr-1 inline-block h-2.5 w-2.5 rounded-[1px]`,style:{background:e.color}}),e.label]},e.label))}),t]})}function Pc({memory:e,formatValue:t}){return(0,K.jsx)(`div`,{className:`grid grid-cols-4 gap-3`,children:[{label:`RSS`,value:t(e.rss)},{label:`Heap Total`,value:t(e.heapTotal)},{label:`Heap Used`,value:t(e.heapUsed)},{label:`External`,value:t(e.external)}].map(e=>(0,K.jsx)(Ac,{align:`center`,label:e.label,value:e.value,valueClassName:`text-lg font-medium text-[var(--color-fg-0)]`},e.label))})}function Fc(e,t){let n=Array(t).fill(0);if(e.length===0)return n;let r=Date.now()-t*1e3;for(let i=e.length-1;i>=0;i--){let a=e[i];if(!a)continue;if(a.ts_ms<r)break;let o=Math.floor((a.ts_ms-r)/1e3);o>=0&&o<t&&n[o]++}return n}function Ic({bins:e=60,height:t=38,className:n}){let r=De(),i=(0,_.useRef)(null),a=(0,_.useRef)([]),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=i.current;if(!t)return;let n=t.getContext(`2d`);if(!n)return;let s=Math.min(window.devicePixelRatio??1,2),c=ot(),l=()=>{let i=Fc(r,e);if(a.current.length!==e)a.current=i.slice();else if(c)a.current=i;else for(let t=0;t<e;t++){let e=a.current[t]??0,n=i[t]??0;a.current[t]=e+(n-e)*.18}let u=t.clientWidth,d=t.clientHeight;(t.width!==u*s||t.height!==d*s)&&(t.width=u*s,t.height=d*s,n.scale(s,s)),n.clearRect(0,0,u,d);let f=Math.max(1,...a.current),p=u/e;for(let t=0;t<e;t++){let e=a.current[t]??0,r=e/f*d,i=t*p,o=e/f;n.fillStyle=`rgba(${Math.round(56+o*199)},${Math.round(189-o*100)},${Math.round(248-o*200)},${.4+o*.55})`,n.fillRect(i+.5,d-r,Math.max(1,p-1),r)}n.strokeStyle=`rgba(148, 163, 184, 0.1)`,n.lineWidth=1,n.beginPath(),n.moveTo(0,d-.5),n.lineTo(u,d-.5),n.stroke(),o.current=requestAnimationFrame(l)};return o.current=requestAnimationFrame(l),()=>{o.current!==null&&cancelAnimationFrame(o.current),o.current=null}},[r,e]),(0,K.jsxs)(`div`,{className:G(`relative w-full`,n),style:{height:t},children:[(0,K.jsx)(`canvas`,{ref:i,className:`block w-full h-full`,style:{width:`100%`,height:`100%`}}),(0,K.jsxs)(`span`,{className:`absolute top-1 left-2 text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)] pointer-events-none`,children:[`bursts/sec · `,e,`s window`]})]})}var Lc=8,Rc=6,zc=Math.PI*.75,Bc=Math.PI*2.25;function Vc({size:e=110,className:t}){let n=De(),r=(0,_.useRef)(null),i=(0,_.useRef)(0),a=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=r.current;if(!t)return;let o=t.getContext(`2d`);if(!o)return;let s=Math.min(window.devicePixelRatio??1,2),c=ot(),l=()=>{let r=Date.now()-1500,u=0;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t){if(t.ts_ms<r)break;u++}}let d=u/1.5,f=Math.min(1,d/Lc);c?i.current=f:i.current+=(f-i.current)*.16;let p=e,m=e;(t.width!==p*s||t.height!==m*s)&&(t.width=p*s,t.height=m*s,t.style.width=`${p}px`,t.style.height=`${m}px`,o.scale(s,s)),o.clearRect(0,0,p,m);let h=p/2,g=m/2+4,_=p/2-8;o.lineWidth=6,o.lineCap=`round`,o.strokeStyle=`rgba(148, 163, 184, 0.18)`,o.beginPath(),o.arc(h,g,_,zc,Bc),o.stroke();let v=zc+Rc/Lc*(Bc-zc);o.strokeStyle=`rgba(239, 68, 68, 0.45)`,o.beginPath(),o.arc(h,g,_,v,Bc),o.stroke();let y=zc+i.current*(Bc-zc),b=i.current*Lc>=Rc;o.strokeStyle=b?`rgba(239, 68, 68, 0.95)`:`rgba(56, 189, 248, 0.92)`,o.lineWidth=6,o.beginPath(),o.arc(h,g,_,zc,y),o.stroke();let x=h+Math.cos(y)*(_-2),S=g+Math.sin(y)*(_-2);o.strokeStyle=b?`#fca5a5`:`#e0e7ff`,o.lineWidth=2,o.beginPath(),o.moveTo(h,g),o.lineTo(x,S),o.stroke(),o.fillStyle=b?`#fca5a5`:`#e0e7ff`,o.beginPath(),o.arc(h,g,3,0,Math.PI*2),o.fill(),o.fillStyle=b?`#fca5a5`:`#e0e7ff`,o.font=`bold 20px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,o.textAlign=`center`,o.fillText(d.toFixed(1),h,g+_*.55),o.fillStyle=`rgba(148, 163, 184, 0.85)`,o.font=`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,o.fillText(`eps`,h,g+_*.55+12),a.current=requestAnimationFrame(l)};return a.current=requestAnimationFrame(l),()=>{a.current!==null&&cancelAnimationFrame(a.current),a.current=null}},[n,e]),(0,K.jsx)(`canvas`,{ref:r,className:G(`block`,t),style:{width:e,height:e}})}var Hc={allow:`#22c55e`,block:`#ef4444`,force:`#a855f7`,ask:`#f59e0b`,log:`#60a5fa`,shadow:`#6b7280`},Uc=[`allow`,`block`,`force`,`ask`,`log`];function Wc({windowSec:e=30,height:t=14,className:n}){let r=De(),[i,a]=(0,_.useState)({}),o=(0,_.useRef)(null);(0,_.useEffect)(()=>{let t=ot(),n=()=>{let i=Date.now()-e*1e3,s={},c=0;for(let e=r.length-1;e>=0;e--){let t=r[e];if(t){if(t.ts_ms<i)break;s[t.decision]=(s[t.decision]??0)+1,c++}}let l={};for(let e of Uc)l[e]=c===0?0:(s[e]??0)/c;if(t){a(l);return}a(e=>{let t={};for(let n of Uc){let r=e[n]??0;t[n]=r+((l[n]??0)-r)*.22}return t}),o.current=requestAnimationFrame(n)};return o.current=requestAnimationFrame(n),()=>{o.current!==null&&cancelAnimationFrame(o.current),o.current=null}},[r,e]);let s=Uc.map(e=>({key:e,color:Hc[e]??`#6b7280`,pct:Math.max(0,i[e]??0)})),c=s.reduce((e,t)=>e+t.pct,0)===0;return(0,K.jsxs)(`div`,{className:G(`w-full`,n),children:[(0,K.jsx)(`div`,{className:`flex w-full overflow-hidden rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,style:{height:t},title:`decision mix · last ${e}s`,children:c?(0,K.jsx)(`div`,{className:`w-full h-full flex items-center justify-center text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)]`,children:`— idle —`}):s.map(e=>(0,K.jsx)(`div`,{style:{width:`${e.pct*100}%`,background:e.color,transition:`width 240ms ease-out`},title:`${e.key} · ${(e.pct*100).toFixed(1)}%`},e.key))}),(0,K.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-x-3 gap-y-0.5 text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)]`,children:s.map(e=>(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-full`,style:{background:e.color}}),e.key,` · `,(e.pct*100).toFixed(0),`%`]},e.key))})]})}var Gc={centre:`#FF9500`,"cf-worker":`#5AC8FA`,bun:`#FFCC00`,elixir:`#AF52DE`,native:`#FF3B30`,unknown:`#8E8E93`},Kc={centre:`monorepo`,"cf-worker":`CF Worker`,bun:`Bun / TS`,elixir:`Elixir`,native:`Native`,unknown:`Other`};function qc({refreshKey:e=0}){let t=(0,_.useRef)(null),n=(0,_.useRef)(null),r=(0,_.useRef)([]),i=(0,_.useRef)(null),a=(0,_.useRef)(null),o=(0,_.useRef)(0),s=(0,_.useRef)(null),c=(0,_.useRef)({w:0,h:0}),l=(0,_.useRef)(!1),u=(0,_.useRef)(null),[d,f]=(0,_.useState)(null),[p,m]=(0,_.useState)(!1),[h,g]=(0,_.useState)({centre:0,"cf-worker":0,bun:0,elixir:0,native:0,unknown:0});(0,_.useEffect)(()=>{let e=!1;return m(!1),f(null),fetch(`/api/json/monorepo/graph`).then(async e=>{let t=e.headers.get(`content-type`)??``;if(!e.ok)throw Error(`HTTP ${e.status}`);if(!t.includes(`application/json`))throw Error(`expected JSON, got `+(t||`unknown`));return e.json()}).then(t=>{if(e)return;let i=n.current?.clientWidth??800,a=n.current?.clientHeight??420,s=i/2,c=a/2,l=Math.min(i,a)*.36,u=t.projects,d=[{id:t.centre.id,label:t.centre.label,type:`centre`,description:`Monorepo root — every sigmashake-* project lives here`,isCentre:!0,x:s,y:c,vx:0,vy:0,radius:0,phase:0},...u.map((e,t)=>{let n=t/Math.max(1,u.length)*Math.PI*2;return{id:e.id,label:e.label.replace(/^sigmashake-/,``),type:e.type,description:e.description||`${Kc[e.type]} project`,isCentre:!1,x:s+Math.cos(n)*l,y:c+Math.sin(n)*l,vx:0,vy:0,radius:l,phase:n}})];r.current=d,o.current=0,g(d.reduce((e,t)=>(e[t.type]=(e[t.type]??0)+1,e),{centre:0,"cf-worker":0,bun:0,elixir:0,native:0,unknown:0})),m(!0)}).catch(t=>{e||f(t instanceof Error?t.message:String(t))}),()=>{e=!0}},[e]),(0,_.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>{l.current=e.matches};return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[]),(0,_.useEffect)(()=>{let e=t.current,s=n.current;if(!e||!s)return;let u=e.getContext(`2d`,{alpha:!0});if(!u)return;let d=new ResizeObserver(t=>{for(let n of t){let t=n.contentRect,i=window.devicePixelRatio||1;c.current.w=t.width,c.current.h=t.height,e.width=Math.max(1,Math.floor(t.width*i)),e.height=Math.max(1,Math.floor(t.height*i)),e.style.width=`${t.width}px`,e.style.height=`${t.height}px`,u.setTransform(i,0,0,i,0,0);let a=r.current;if(a.length>0){let e=t.width/2,n=t.height/2,r=Math.min(t.width,t.height)*.36;for(let t of a){if(t.isCentre){t.x=e,t.y=n;continue}t.radius=r}}}});d.observe(s);let f=0,p=performance.now(),m=[],h=(e,t)=>{let n=new Map;e.forEach((e,t)=>n.set(e.id,t));let r=[];for(let e of t){let t=n.get(e.from),i=n.get(e.to);t===void 0||i===void 0||r.push([t,i])}return r},g=e=>{let t=Math.min(.05,(e-p)/1e3);p=e;let n=r.current,{w:s,h:d}=c.current,h=s/2,_=d/2,v=i.current,y=l.current||v?0:.06;o.current+=y*t;let b=5.5,x=.86;for(let e=0;e<n.length;e++){let r=n[e];if(r.isCentre||r.id===v)continue;let i=0,a=0;for(let t=0;t<n.length;t++){if(e===t)continue;let o=n[t];if(o.isCentre)continue;let s=r.x-o.x,c=r.y-o.y,l=s*s+c*c+.01,u=Math.sqrt(l),d=1700/l;i+=s/u*d,a+=c/u*d}let s=r.phase+o.current,c=h+Math.cos(s)*r.radius,l=_+Math.sin(s)*r.radius;i+=(c-r.x)*b,a+=(l-r.y)*b;let u=r.x-h,d=r.y-_,f=Math.sqrt(u*u+d*d)||1,p=r.radius-f;i+=u/f*p*.6,a+=d/f*p*.6,r.vx=(r.vx+i*t)*x,r.vy=(r.vy+a*t)*x,r.x+=r.vx*t,r.y+=r.vy*t}u.clearRect(0,0,s,d);let S=u.createRadialGradient(h,_,0,h,_,Math.max(s,d)/1.4);S.addColorStop(0,`rgba(255, 149, 0, 0.06)`),S.addColorStop(1,`rgba(255, 149, 0, 0)`),u.fillStyle=S,u.fillRect(0,0,s,d),u.lineCap=`round`;for(let e=1;e<n.length;e++){let t=n[0],r=n[e];Jc(u,t,r,.1)}for(let[e,t]of m){let r=n[e],i=n[t];!r||!i||Jc(u,r,i,.24,`#5AC8FA`)}let C=a.current;for(let e of n){let t=Gc[e.type],n=C===e.id,r=v===e.id,i=e.isCentre?22:11,a=n||r?i+4:i;if(n||r||e.isCentre){let n=e.isCentre?a+14:a+8,r=u.createRadialGradient(e.x,e.y,a,e.x,e.y,n);r.addColorStop(0,t),r.addColorStop(1,`rgba(0,0,0,0)`),u.globalAlpha=e.isCentre?.22:.32,u.fillStyle=r,u.beginPath(),u.arc(e.x,e.y,n,0,Math.PI*2),u.fill(),u.globalAlpha=1}if(u.fillStyle=t,u.beginPath(),u.arc(e.x,e.y,a,0,Math.PI*2),u.fill(),u.lineWidth=e.isCentre?2:1.25,u.strokeStyle=`rgba(0,0,0,0.18)`,u.stroke(),u.font=e.isCentre?`600 12px ui-sans-serif, system-ui`:`500 10.5px ui-sans-serif, system-ui`,u.fillStyle=`rgba(60,60,67,0.85)`,u.textBaseline=`middle`,u.textAlign=`center`,e.isCentre)u.fillText(e.label,e.x,e.y+a+14);else{let t=e.x-h,n=e.y-_,r=Math.sqrt(t*t+n*n)||1,i=e.x+t/r*(a+12),o=e.y+n/r*(a+12);u.textAlign=t>=0?`left`:`right`,u.textBaseline=n>=0?`top`:`bottom`,u.fillText(e.label,i,o)}}u.textAlign=`start`,u.textBaseline=`alphabetic`,f=requestAnimationFrame(g)};f=requestAnimationFrame(g);let _=-1,v=``,y=setInterval(()=>{let e=r.current,t=window.__SSG_MONOREPO_EDGES__??``;e.length===_&&t===v||(_=e.length,v=t,m=h(e,t?JSON.parse(t):[]))},250);return()=>{cancelAnimationFrame(f),clearInterval(y),d.disconnect()}},[]),(0,_.useEffect)(()=>{let e=t.current;if(!e)return;let n=t=>{let n=e.getBoundingClientRect();return{x:t.clientX-n.left,y:t.clientY-n.top}},o=(e,t)=>{let n=r.current;for(let r=n.length-1;r>=0;r--){let i=n[r],a=i.x-e,o=i.y-t,s=i.isCentre?26:14;if(a*a+o*o<=s*s)return i}return null},c=t=>{let{x:s,y:c}=n(t),l=i.current;if(l){let e=r.current.find(e=>e.id===l);if(e&&!e.isCentre){let t=e.x,n=e.y;e.x=s,e.y=c,e.vx=(s-t)*12,e.vy=(c-n)*12}return}let d=o(s,c);a.current=d?.id??null,e.style.cursor=d&&!d.isCentre?`grab`:`default`,d&&u.current?(u.current.style.display=`block`,u.current.style.left=`${s+14}px`,u.current.style.top=`${c+14}px`,u.current.innerHTML=`<strong>${Yc(d.id)}</strong><span class="mg-tooltip__kind">${Kc[d.type]}</span>`+(d.description?`<p>${Yc(d.description)}</p>`:``)):u.current&&(u.current.style.display=`none`)},l=t=>{let{x:r,y:a}=n(t),c=o(r,a);c&&!c.isCentre&&(i.current=c.id,e.setPointerCapture(t.pointerId),e.style.cursor=`grabbing`,s.current={x:r,y:a,downX:r,downY:a,downAt:performance.now()})},d=t=>{if(i.current)try{e.releasePointerCapture(t.pointerId)}catch{}i.current=null,e.style.cursor=`default`},f=()=>{a.current=null,u.current&&(u.current.style.display=`none`)};return e.addEventListener(`pointermove`,c),e.addEventListener(`pointerdown`,l),e.addEventListener(`pointerup`,d),e.addEventListener(`pointercancel`,d),e.addEventListener(`pointerleave`,f),()=>{e.removeEventListener(`pointermove`,c),e.removeEventListener(`pointerdown`,l),e.removeEventListener(`pointerup`,d),e.removeEventListener(`pointercancel`,d),e.removeEventListener(`pointerleave`,f)}},[]),(0,_.useEffect)(()=>{p&&fetch(`/api/json/monorepo/graph`).then(e=>e.json()).then(e=>{window.__SSG_MONOREPO_EDGES__=JSON.stringify(e.serviceEdges??[])}).catch(()=>{window.__SSG_MONOREPO_EDGES__=`[]`})},[p]);let v=[`cf-worker`,`bun`,`elixir`,`native`,`unknown`];return(0,K.jsxs)(`div`,{className:`mg`,ref:n,children:[(0,K.jsx)(`canvas`,{ref:t,className:`mg__canvas`,"aria-label":`Monorepo dependency graph`}),(0,K.jsxs)(`div`,{className:`mg__overlay`,children:[(0,K.jsxs)(`div`,{className:`mg__title`,children:[(0,K.jsx)(`strong`,{children:`monorepo map`}),(0,K.jsx)(`span`,{className:`mg__hint`,children:`drag to pluck a project • hover for details`})]}),d&&(0,K.jsx)(`div`,{className:`mg__error`,children:d}),(0,K.jsx)(`ul`,{className:`mg__legend`,children:v.map(e=>h[e]>0?(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`mg__swatch`,style:{background:Gc[e]}}),(0,K.jsx)(`span`,{children:Kc[e]}),(0,K.jsx)(`span`,{className:`mg__count`,children:h[e]})]},e):null)})]}),(0,K.jsx)(`div`,{ref:u,className:`mg-tooltip`})]})}function Jc(e,t,n,r,i=`#FF9500`){let a=n.x-t.x,o=n.y-t.y,s=(t.x+n.x)/2-o*.05,c=(t.y+n.y)/2+a*.05;e.globalAlpha=r,e.strokeStyle=i,e.lineWidth=1.25,e.beginPath(),e.moveTo(t.x,t.y),e.quadraticCurveTo(s,c,n.x,n.y),e.stroke(),e.globalAlpha=1}function Yc(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}var Xc=3;function Zc(e){return e===null?`—`:e<1e6?`${(e/1e3).toFixed(0)}µs`:`${(e/1e6).toFixed(1)}ms`}var Qc=[`counters-updated`,`activity-updated`,`pending-changed`,`runtime-tick`,`limits-breach`];function $c({info:e}){let t=e.tier===`pro`||e.tier===`enterprise`,n=e.status===`needs_reauth`,r=e.pct_used??0,i=r>=90?`bg-red-500`:r>=70?`bg-amber-500`:`bg-emerald-500`;return(0,K.jsxs)(q,{className:n?`border-l-2 border-l-amber-500/70`:t?`border-l-2 border-l-emerald-500/70`:`border-l-2 border-l-sky-500/70`,children:[(0,K.jsxs)(J,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-xs font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`license`}),(0,K.jsx)(sr,{variant:t?`green`:n?`amber`:`blue`,children:e.tier_label}),e.fleet_enrolled&&(0,K.jsx)(sr,{variant:`gray`,children:`fleet`})]}),e.email&&(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-3)]`,children:e.email})]}),(0,K.jsxs)(Y,{className:`space-y-3`,children:[n&&e.detail&&(0,K.jsxs)(`div`,{className:`rounded border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-xs text-amber-200`,children:[e.detail,` — run `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg auth login`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex justify-between text-xs text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{children:`evals today`}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:e.evals_today,curve:`spring`}),e.eval_daily_limit!==null&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:` / `}),e.eval_daily_limit.toLocaleString()]}),e.eval_daily_limit===null&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:` · unlimited`})]})]}),e.eval_daily_limit!==null&&(0,K.jsx)(`div`,{className:`mt-1 h-1.5 w-full overflow-hidden rounded-full bg-[var(--color-bg-2)]`,children:(0,K.jsx)(`div`,{className:`h-full transition-all duration-700 ease-out ${i}`,style:{width:`${r}%`}})})]}),!t&&(0,K.jsxs)(`a`,{href:e.upgrade_url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-xs text-[var(--color-brand)] hover:underline`,children:[`Upgrade to Pro · $`,e.pricing.pro_monthly_usd,`/mo →`]}),t&&e.retention_days>0&&(0,K.jsxs)(`div`,{className:`text-[10px] text-[var(--color-fg-3)] font-mono uppercase tracking-wider`,children:[`cloud retention: `,e.retention_days,` days`]})]})]})}function el(e){return new Date(e*1e3).toLocaleTimeString()}function tl(e,t=24){let n=(0,_.useRef)(null),[r,i]=(0,_.useState)([]);return(0,_.useEffect)(()=>{let r=n.current;if(n.current=e,r===null)return;let a=Math.max(0,e-r);i(e=>{let n=e.length>=t?e.slice(-(t-1)):e.slice();return n.push(a),n})},[e,t]),r}async function nl(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}async function rl(e,t){let n=await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})});if(!n.ok)throw Error(`Toggle failed: ${n.status}`)}async function il(e,t){let n=await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})});if(!n.ok)throw Error(`Toggle failed: ${n.status}`)}async function al(e,t){let n=await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:`ask`})});if(!n.ok)throw Error(`Update decision failed: ${n.status}`)}async function ol(e,t){let n=await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:`block`})});if(!n.ok)throw Error(`Update decision failed: ${n.status}`)}function sl({ruleId:e}){return e?(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e)}`,className:`text-[var(--color-brand)] hover:underline text-xs font-mono break-all`,title:`Go to rule: ${e}`,children:e}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`—`})}function cl({title:e,right:t}){return(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:e}),t]})}function ll({children:e}){return(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:e})}function ul({item:e,onDisable:t,onChangeToAsk:n,onUndo:r}){let[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(`idle`),[c,l]=(0,_.useState)(!1),u=rr(e.tool,e.input),d=e.rule_id&&e.source_file,f=e.decision===`force`?`force`:`block`,p=f===`force`?`amber`:`red`,m=async()=>{s(`loading`);try{await n(),s(`done-ask`)}catch{s(`error`)}},h=async()=>{s(`loading`);try{await t(),s(`done-disable`)}catch{s(`error`)}},g=async()=>{l(!0);try{await r(o===`done-disable`?`disable`:`ask`),s(`idle`)}catch{}finally{l(!1)}},v=o===`done-ask`||o===`done-disable`;return(0,K.jsx)(q,{className:`border-l-2 ${v?`border-l-[var(--color-line-1)]`:f===`force`?`border-l-amber-400/60`:`border-l-red-500/60`} ${v?`opacity-60`:``}`,children:(0,K.jsxs)(`div`,{className:`px-3 py-3`,children:[v&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-2.5 py-1.5 mb-3 text-[11px] font-mono ${o===`done-ask`?`bg-sky-500/5 border border-sky-500/25 text-sky-300`:`bg-amber-500/5 border border-amber-500/25 text-amber-300`}`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:o===`done-ask`?`✓ rule "${e.rule_id}" → ask · prompts next time`:`✓ rule "${e.rule_id}" disabled · no longer blocks`}),(0,K.jsx)(`button`,{onClick:g,disabled:c,className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-current/40 hover:bg-white/5 transition-colors cursor-pointer disabled:opacity-50 uppercase tracking-wider text-[10px]`,children:c?`…`:`↩ undo`})]}),o===`error`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-2.5 py-1.5 mb-3 text-[11px] font-mono bg-red-500/5 border border-red-500/25 text-red-300`,children:[(0,K.jsx)(`span`,{children:`failed to update rule — check server logs`}),(0,K.jsx)(`button`,{onClick:()=>s(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-current/40 hover:bg-white/5 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`retry`})]}),(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1.5 flex-wrap`,children:[(0,K.jsx)(sr,{variant:v?o===`done-ask`?`blue`:`gray`:p,children:v?o===`done-ask`?`ask`:`disabled`:f}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] text-xs font-mono`,children:e.tool}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-xs`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] text-[11px] font-mono tabular-nums`,children:el(e.timestamp)}),e.repeat_count>1&&(0,K.jsxs)(sr,{variant:`gray`,children:[`×`,e.repeat_count]})]}),(0,K.jsx)(`div`,{className:`text-xs font-mono truncate cursor-pointer hover:text-[var(--color-fg-0)] transition-colors ${v?`text-[var(--color-fg-4)] line-through`:`text-[var(--color-fg-1)]`}`,title:u,onClick:()=>a(e=>!e),children:u})]}),d&&!v&&o!==`error`&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 shrink-0 pt-0.5`,children:[(0,K.jsxs)(`button`,{onClick:m,disabled:o===`loading`,className:`inline-flex items-center gap-1 h-7 px-2.5 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-sky-500/8 text-sky-300 border border-sky-500/25 hover:bg-sky-500/15 hover:border-sky-500/40 transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed`,children:[o===`loading`?(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}):(0,K.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),`ask instead`]}),(0,K.jsxs)(`button`,{onClick:h,disabled:o===`loading`,className:`inline-flex items-center gap-1 h-7 px-2.5 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-red-500/8 text-red-300 border border-red-500/25 hover:bg-red-500/15 hover:border-red-500/40 transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed`,children:[o===`loading`?(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}):(0,K.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`15`,y1:`9`,x2:`9`,y2:`15`}),(0,K.jsx)(`line`,{x1:`9`,y1:`9`,x2:`15`,y2:`15`})]}),`disable rule`]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1 mt-2 text-[11px] font-mono`,children:[e.rule_id&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`rule`}),(0,K.jsx)(sl,{ruleId:e.rule_id})]}),e.source_file&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`src`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:e.source_file})]}),e.rules_evaluated!==null&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`evals`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums`,children:e.rules_evaluated})]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`latency`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums`,children:Zc(e.duration_ns)})]}),(0,K.jsx)(`button`,{onClick:()=>a(e=>!e),className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] transition-colors ml-auto cursor-pointer uppercase tracking-wider text-[10px]`,children:i?`▾ hide`:`▸ details`})]}),i&&(0,K.jsxs)(`div`,{className:`mt-3 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`full input`}),(0,K.jsx)(Cc,{children:(()=>{try{return JSON.stringify(JSON.parse(e.input),null,2)}catch{return e.input}})()})]})]})})}function dl(){let e=ke(Qc),t=[e[`counters-updated`],e[`activity-updated`],e[`pending-changed`]],{data:n}=V(`/api/state/counters`,t),{data:r,refetch:i}=V(`/api/json/pending`,t),{data:a,refetch:o}=V(`/api/json/blocked`,t),{data:s}=V(`/api/state/activity`,t),{data:c}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:l}=V(`/api/json/limits`,[e[`limits-breach`]]),{data:u}=V(`/api/json/license`,[e[`activity-updated`]]),[d,f]=(0,_.useState)(!1),p=a?.reduce((e,t)=>e+t.repeat_count,0)??0,m=n?.allow??0,h=(n?.block??0)+(n?.force??0),g=n?.force??0,v=n?.pending??0,y=n?.log??0,b=tl(m),x=tl(h),S=tl(g),C=tl(v),w=tl(y),T=[{label:`allow`,value:m,tone:`green`,trend:b},{label:`block`,value:h,tone:`red`,trend:x},{label:`force`,value:g,tone:`amber`,trend:S},{label:`pending`,value:v,tone:`blue`,trend:C},{label:`log`,value:y,tone:`gray`,trend:w}];return(0,K.jsxs)(`div`,{ref:Tt({from:`first`}),className:`space-y-8`,children:[(0,K.jsx)(Js,{}),(0,K.jsx)(`div`,{"data-reveal":!0,children:(0,K.jsx)(qc,{})}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-5 gap-2`,children:T.map(e=>(0,K.jsx)(kc,{align:`left`,label:e.label,value:(0,K.jsx)(fr,{value:e.value,curve:`spring`}),tone:e.tone,labelPlacement:`above`,contentClassName:`py-3`,valueClassName:`text-2xl font-medium`,trend:e.trend,"data-reveal":!0},e.label))}),(0,K.jsxs)(`div`,{"data-reveal":!0,className:`grid grid-cols-12 gap-2 items-stretch`,children:[(0,K.jsxs)(`div`,{className:`col-span-12 md:col-span-7 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2 flex flex-col gap-2`,children:[(0,K.jsx)(Ic,{bins:60,height:42}),(0,K.jsx)(Wc,{windowSec:60,height:12})]}),(0,K.jsx)(`div`,{className:`col-span-12 md:col-span-5 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2 flex items-center justify-center`,children:(0,K.jsx)(Vc,{size:130})})]}),u&&(0,K.jsx)(`div`,{"data-reveal":!0,children:(0,K.jsx)($c,{info:u})}),c&&(0,K.jsxs)(`div`,{"data-reveal":!0,className:`grid grid-cols-2 gap-2`,children:[(0,K.jsx)(Mc,{label:`cpu`,value:c.cpu_pct==null?`—`:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(fr,{value:c.cpu_pct,format:e=>Math.round(e).toString()}),`%`]}),tone:l?.breaches.cpu?`red`:(c.cpu_pct??0)>=60?`amber`:`green`,breached:l?.breaches.cpu??!1,trendData:c.history?.cpu_pct,trendColor:l?.breaches.cpu?`#f87171`:`#34d399`,threshold:l?.config.cpuLimitPct,maxValue:100,className:l?.breaches.cpu?`border-red-500/40`:``,footer:(0,K.jsx)(`a`,{href:`/monitor`,className:`mt-1 block text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`view details →`})}),(0,K.jsx)(Mc,{label:`memory rss`,value:c.memory_rss_mb==null?`—`:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(fr,{value:c.memory_rss_mb,format:e=>Math.round(e).toString()}),(0,K.jsx)(`span`,{className:`ml-1 text-sm text-[var(--color-fg-3)]`,children:`MB`})]}),tone:l?.breaches.memory?`red`:`neutral`,breached:l?.breaches.memory??!1,trendData:c.history?.memory_rss_mb,trendColor:l?.breaches.memory?`#f87171`:`#38bdf8`,threshold:l?.config.memoryLimitMb,className:l?.breaches.memory?`border-red-500/40`:``,footer:(0,K.jsx)(`a`,{href:`/monitor`,className:`mt-1 block text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`view details →`})})]}),(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`pending approvals`}),!r||r.length===0?(0,K.jsx)(ll,{children:`no pending approvals`}):(0,K.jsx)(`div`,{className:`space-y-2`,children:r.map(e=>(0,K.jsxs)(q,{className:`border-l-2 border-l-sky-500/50`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:async()=>{await nl(e.id,`allow`),i()},children:`approve`}),(0,K.jsx)(X,{size:`sm`,variant:`danger`,onClick:async()=>{await nl(e.id,`block`),i()},children:`deny`})]})]}),(0,K.jsxs)(Y,{className:`space-y-2 text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex gap-2 items-center`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`tool`}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] font-mono`,children:e.toolCall.tool})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5`,children:`prompt`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:JSON.stringify(e.toolCall.input,null,2)})]})]},e.id))})]}),a&&a.length>0&&(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`blocked actions`,right:(0,K.jsxs)(`span`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:[a.length,` active`,p>a.length?` · ${p} total hits`:``]})}),(0,K.jsx)(`div`,{className:`space-y-2`,children:(d?a:a.slice(0,Xc)).map(e=>(0,K.jsx)(ul,{item:e,onDisable:async()=>{await rl(e.rule_id,e.source_file),o()},onChangeToAsk:async()=>{await al(e.rule_id,e.source_file),o()},onUndo:async t=>{t===`disable`?await il(e.rule_id,e.source_file):await ol(e.rule_id,e.source_file),o()}},`${e.decision}:${e.rule_id??`none`}:${e.tool}:${e.timestamp}:${e.input}`))}),a.length>Xc&&(0,K.jsx)(`div`,{className:`mt-3 flex justify-center`,children:(0,K.jsx)(X,{size:`sm`,variant:`secondary`,onClick:()=>f(e=>!e),children:d?`↑ show less`:`↓ show ${a.length-Xc} more`})})]}),(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`recent audit log`,right:s&&s.length>0?(0,K.jsx)(`a`,{href:`/audit`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors`,children:`view all →`}):void 0}),!s||s.length===0?(0,K.jsx)(ll,{children:`no audit entries yet`}):(0,K.jsx)(`div`,{className:`space-y-1.5`,children:s.slice(0,15).map(e=>(0,K.jsx)(Sc,{row:e},e.id))})]})]})}function fl({checked:e,onChange:t,disabled:n,size:r=`md`,tone:i=`brand`,label:a}){return(0,K.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,"aria-label":a,disabled:n,onClick:()=>t(!e),className:`ss-toggle ${r===`sm`?`ss-toggle--sm`:``} ${i===`danger`?`ss-toggle--danger`:``}`,children:(0,K.jsx)(`span`,{className:`ss-toggle-thumb`,"aria-hidden":`true`})})}var pl=new Map;async function ml(e){let t=pl.get(e);if(t)return t.status===`ok`?t.data:t.status===`error`?null:t.promise;let n=(async()=>{try{let t=await fetch(`/api/json/rule-explain?ruleId=${encodeURIComponent(e)}`,{headers:{Accept:`application/json`}});if(!t.ok)return pl.set(e,{status:`error`,error:`HTTP ${t.status}`}),null;let n=await t.json();return pl.set(e,{status:`ok`,data:n}),n}catch(t){return pl.set(e,{status:`error`,error:String(t)}),null}})();return pl.set(e,{status:`loading`,promise:n}),n}var hl=220,gl=90;function _l({ruleId:e,children:t,className:n}){let[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(null),[s,c]=(0,_.useState)(null),l=(0,_.useRef)(null),u=(0,_.useRef)(null),d=(0,_.useRef)(null),f=()=>{u.current&&clearTimeout(u.current),d.current&&clearTimeout(d.current),u.current=null,d.current=null},p=(0,_.useCallback)(()=>{let e=l.current;if(!e)return;let t=e.getBoundingClientRect(),n=t.left;n+320>window.innerWidth-12&&(n=Math.max(12,window.innerWidth-320-12));let r=t.bottom+8;r+200>window.innerHeight-12&&(r=Math.max(12,t.top-200-8)),c({top:r,left:n})},[]),m=(0,_.useCallback)(()=>{f(),u.current=setTimeout(()=>{p(),i(!0),ml(e).then(e=>{e&&o(e)});let t=pl.get(e);t&&t.status===`ok`&&o(t.data)},hl)},[e,p]),h=(0,_.useCallback)(()=>{f(),d.current=setTimeout(()=>{i(!1)},gl)},[]);return(0,_.useEffect)(()=>{if(!r)return;let e=()=>p(),t=()=>p(),n=e=>{e.key===`Escape`&&i(!1)};return window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,t),window.addEventListener(`keydown`,n),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,t),window.removeEventListener(`keydown`,n)}},[r,p]),(0,_.useEffect)(()=>()=>f(),[]),(0,K.jsxs)(`span`,{ref:l,className:`ss-rule-trigger${n?` `+n:``}`,onMouseEnter:m,onMouseLeave:h,onFocus:m,onBlur:h,tabIndex:0,"aria-describedby":r?`rule-popover-${e}`:void 0,children:[t,r&&s&&(0,K.jsx)(`span`,{id:`rule-popover-${e}`,role:`tooltip`,className:`ss-rule-popover`,style:{top:s.top,left:s.left},onMouseEnter:()=>f(),onMouseLeave:h,children:a?(0,K.jsx)(vl,{data:a}):(0,K.jsx)(`span`,{className:`ss-rule-popover__loading`,children:`loading rule…`})})]})}function vl({data:e}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{className:`ss-rule-popover__head`,children:[(0,K.jsx)(`code`,{className:`ss-rule-popover__id`,children:e.ruleId}),(0,K.jsx)(`span`,{className:`ss-rule-popover__pill ss-rule-popover__pill--${e.decision}`,children:e.decision}),(0,K.jsx)(`span`,{className:`ss-rule-popover__state ss-rule-popover__state--${e.enabled?`on`:`off`}`,children:e.enabled?`ON`:`OFF`})]}),(0,K.jsx)(`strong`,{className:`ss-rule-popover__headline`,children:e.headline}),(0,K.jsx)(`span`,{className:`ss-rule-popover__summary`,children:e.summary}),e.conditions.length>1&&(0,K.jsxs)(`span`,{className:`ss-rule-popover__section`,children:[(0,K.jsx)(`span`,{className:`ss-rule-popover__label`,children:`Matches when`}),(0,K.jsx)(`ul`,{className:`ss-rule-popover__list`,children:e.conditions.map((e,t)=>(0,K.jsx)(`li`,{children:e},t))})]}),e.hints.length>0&&(0,K.jsx)(`span`,{className:`ss-rule-popover__hints`,children:e.hints.map((e,t)=>(0,K.jsx)(`span`,{className:`ss-rule-popover__hint`,children:e},t))}),(0,K.jsx)(`span`,{className:`ss-rule-popover__foot`,children:(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.ruleId)}`,className:`ss-rule-popover__link`,children:`Open in Rules →`})})]})}var yl=[`rules-changed`],bl=[`block`,`ask`,`log`,`allow`,`force`,`shadow`],xl={block:`text-red-300`,deny:`text-red-300`,ask:`text-sky-300`,allow:`text-emerald-300`,log:`text-[var(--color-fg-3)]`,force:`text-amber-300`,shadow:`text-violet-300`};async function Sl(e,t){await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})})}async function Cl(e,t,n){await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:n})})}function wl({rule:e,file:t,onToggle:n}){let[r,i]=(0,_.useState)(!1);return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider ${e.enabled?`text-[var(--color-fg-1)]`:`text-[var(--color-fg-4)]`}`,children:e.enabled?`on`:`off`}),(0,K.jsx)(fl,{size:`sm`,checked:e.enabled,disabled:r,label:`${e.enabled?`Disable`:`Enable`} rule ${e.id}`,onChange:async()=>{i(!0);try{await n()}finally{i(!1)}}})]})}function Tl(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(!1);(0,_.useEffect)(()=>{let e=!1;return(async()=>{try{let n=await fetch(`/api/json/rule-write-enforcement`,{headers:{Accept:`application/json`}});if(!n.ok)return;let r=await n.json();!e&&typeof r.enforced==`boolean`&&t(r.enforced)}catch{}})(),()=>{e=!0}},[]);async function o(e){r(!0);try{let n=await fetch(`/api/json/rule-write-enforcement`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({enforced:e})});if(n.ok){let e=await n.json();typeof e.enforced==`boolean`&&t(e.enforced)}}finally{r(!1),a(!1)}}if(e===null)return null;let s=!e;return(0,K.jsx)(q,{className:s?`border-amber-500/40 bg-amber-500/5`:`border-[var(--color-line-1)]`,children:(0,K.jsx)(Y,{className:`px-3 py-2.5`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`rule-write protection`}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-wider ${s?`text-amber-300`:`text-emerald-300`}`,children:s?`disabled`:`enforced`})]}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-1 leading-snug`,children:s?`Agents can currently Write/Edit .rules files. Turn this back on when you finish authoring.`:`Agents cannot Write/Edit/MultiEdit any .sigmashake/rules/**/*.rules file. Disable only when curating rulesets.`})]}),(0,K.jsx)(`div`,{className:`shrink-0`,children:i?(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`button`,{onClick:()=>o(!1),disabled:n,className:`text-[11px] font-mono uppercase tracking-wider bg-amber-500/10 border border-amber-500/40 text-amber-200 hover:bg-amber-500/20 rounded-sm px-2 py-0.5 cursor-pointer transition-colors disabled:opacity-50`,children:`disable`}),(0,K.jsx)(`button`,{onClick:()=>a(!1),disabled:n,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer disabled:opacity-50`,children:`cancel`})]}):(0,K.jsx)(`button`,{onClick:()=>{e?a(!0):o(!0)},disabled:n,className:`text-[11px] font-mono uppercase tracking-wider border rounded-sm px-2.5 py-0.5 cursor-pointer transition-colors disabled:opacity-50 ${s?`bg-emerald-500/10 border-emerald-500/40 text-emerald-200 hover:bg-emerald-500/20`:`bg-[var(--color-surface-1)] border-[var(--color-line-1)] text-[var(--color-fg-1)] hover:bg-[var(--color-surface-2)]`}`,children:s?`enable`:`disable`})})]})})})}function El(){let{data:e,refetch:t}=V(`/api/json/rules`,[ke(yl)[`rules-changed`]]),[n,r]=(0,_.useState)(``),i=new URLSearchParams(window.location.search).get(`highlight`)??``,a=(0,_.useRef)(null);if((0,_.useEffect)(()=>{a.current&&a.current.scrollIntoView({behavior:`smooth`,block:`center`})},[e,i]),!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading rules…`});if(e.rulesets.length===0)return(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 p-10 text-center`,children:[(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-2)] mb-2`,children:`No .rules files found.`}),(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline`,children:`→ browse hub to install rulesets`})]});let o=n.toLowerCase(),s=e.rulesets.map(e=>({...e,rules:o?e.rules.filter(e=>e.id.toLowerCase().includes(o)||e.message.toLowerCase().includes(o)):e.rules})).filter(e=>!o||e.rules.length>0),c=e.rulesets.reduce((e,t)=>e+t.rules.length,0),l=e.rulesets.reduce((e,t)=>e+t.rules.filter(e=>e.enabled).length,0);return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`rules`}),(0,K.jsxs)(`div`,{className:`flex items-baseline gap-3 mt-1`,children:[(0,K.jsxs)(`span`,{className:`font-mono text-sm text-[var(--color-fg-0)] tabular-nums`,children:[l,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`/`,c]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-[11px] uppercase tracking-wider`,children:`active`})]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsxs)(`span`,{className:`font-mono text-[11px] text-[var(--color-fg-3)] uppercase tracking-wider`,children:[e.files.length,` file`,e.files.length===1?``:`s`]})]})]}),(0,K.jsx)(`div`,{className:`ml-auto relative`,children:(0,K.jsx)(`input`,{type:`text`,placeholder:`search rules…`,value:n,onChange:e=>r(e.target.value),className:`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-xs rounded-sm px-2.5 py-1.5 w-56 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})})]}),(0,K.jsx)(Tl,{}),s.length===0&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:[`no rules match "`,n,`"`]}),(0,K.jsx)(`div`,{className:`space-y-3`,children:s.map(e=>{let n=e.rules.some(e=>e.id===i),r=e.rules.filter(e=>e.enabled).length;return(0,K.jsx)(q,{children:(0,K.jsxs)(`details`,{open:n||!o,children:[(0,K.jsxs)(`summary`,{className:`flex items-center gap-2 px-3 py-2 cursor-pointer list-none select-none hover:bg-[var(--color-surface-2)]/70 border-b border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`svg`,{className:`text-[var(--color-fg-3)] shrink-0`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),(0,K.jsx)(`polyline`,{points:`14 2 14 8 20 8`})]}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-fg-0)] font-mono`,children:e.file}),(0,K.jsxs)(`span`,{className:`ml-auto font-mono text-[11px] text-[var(--color-fg-3)] tabular-nums`,children:[r,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`/`,e.rules.length]})]})]}),(0,K.jsxs)(Y,{className:`py-0`,children:[e.rules.length===0?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] py-3`,children:`no rules in this file`}):(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:e.rules.map(n=>{let r=n.id===i;return(0,K.jsxs)(`div`,{ref:r?a:null,className:`py-2.5 flex items-start justify-between gap-4 ${r?`bg-amber-400/8 border-l-2 border-l-amber-400/60 -mx-3 px-3 -my-px`:``}`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1 flex-wrap`,children:[(0,K.jsx)(`select`,{value:n.decision,onChange:async r=>{await Cl(n.id,e.file,r.target.value),t()},className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-1.5 py-0.5 text-[11px] font-mono uppercase tracking-wider cursor-pointer focus:outline-none focus:border-[var(--color-brand)]/50 ${xl[n.decision]??`text-[var(--color-fg-2)]`}`,children:bl.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))}),(0,K.jsx)(_l,{ruleId:n.id,children:(0,K.jsx)(`code`,{className:`text-xs font-mono text-[var(--color-fg-0)] break-all`,children:n.id})})]}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] truncate`,children:n.message})]}),(0,K.jsx)(wl,{rule:n,file:e.file,onToggle:async()=>{await Sl(n.id,e.file),t()}})]},n.id)})}),e.content&&(0,K.jsxs)(`details`,{className:`mt-3 pb-3`,children:[(0,K.jsx)(`summary`,{className:`overline cursor-pointer hover:text-[var(--color-fg-1)] select-none`,children:`raw source`}),(0,K.jsx)(`pre`,{className:`mt-2 p-3 bg-[var(--color-surface-0)] border border-[var(--color-line-0)] rounded-sm text-[11px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-words font-mono`,children:e.content})]})]})]})},e.file)})})]})}function Dl(e){return e==null?`—`:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(1)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function Ol(e){if(e<60)return`${e}s`;let t=Math.floor(e/60);if(t<60)return`${t}m`;let n=Math.floor(t/60);return n<24?`${n}h`:`${Math.floor(n/24)}d ${n%24}h`}function kl(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)(``),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(null),g=async()=>{let e=await(await fetch(`/api/json/audit-config`)).json();t(e),a(String(e.config.maxRows)),s(String(e.config.absoluteMaxRows)),l(String(e.config.minRetentionHours)),d(e.config.maxBytes==null?``:String(Math.round(e.config.maxBytes/(1024*1024))))};(0,_.useEffect)(()=>{g()},[]);let v=(0,_.useMemo)(()=>!e?.usage.oldestTimestampSec||!e?.usage.newestTimestampSec?null:e.usage.newestTimestampSec-e.usage.oldestTimestampSec,[e]),y=async()=>{if(!e)return;p(!0),h(null);let t={},n=Number(i);Number.isFinite(n)&&n!==e.config.maxRows&&(t.maxRows=n);let r=Number(o);Number.isFinite(r)&&r!==e.config.absoluteMaxRows&&(t.absoluteMaxRows=r);let a=Number(c);if(Number.isFinite(a)&&a!==e.config.minRetentionHours&&(t.minRetentionHours=a),u.trim()===``)e.config.maxBytes!=null&&(t.maxBytes=null);else{let n=Number(u);if(Number.isFinite(n)){let r=Math.round(n*1024*1024);r!==e.config.maxBytes&&(t.maxBytes=r)}}if(Object.keys(t).length===0){h({kind:`ok`,text:`No changes.`}),p(!1);return}try{let e=await fetch(`/api/json/audit-config`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(t)});if(!e.ok){let t=await e.json();throw Error(t.error??`HTTP ${e.status}`)}await g(),h({kind:`ok`,text:`Saved. New budget applies within ~60 seconds.`})}catch(e){h({kind:`err`,text:e instanceof Error?e.message:String(e)})}finally{p(!1)}},b=async()=>{if(e){p(!0),h(null);try{let t=await fetch(`/api/json/audit-config`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e.defaults)});if(!t.ok){let e=await t.json();throw Error(e.error??`HTTP ${t.status}`)}await g(),h({kind:`ok`,text:`Reset to defaults.`})}catch(e){h({kind:`err`,text:e instanceof Error?e.message:String(e)})}finally{p(!1)}}};if(!e)return(0,K.jsx)(K.Fragment,{});let x=`w-32 bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-sm px-2 py-1.5 focus:outline-none focus:border-[var(--color-brand)]/50`,S=`text-[10.5px] uppercase tracking-wider text-[var(--color-fg-4)]`,C=`text-[10.5px] font-mono text-[var(--color-fg-4)] tabular-nums`;return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,children:[(0,K.jsxs)(`button`,{onClick:()=>r(e=>!e),className:`w-full flex items-center justify-between px-3 py-2 hover:bg-white/[0.02] cursor-pointer`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-[11.5px]`,children:[(0,K.jsx)(`span`,{className:`font-medium text-[var(--color-fg-1)]`,children:`Storage budget`}),(0,K.jsxs)(`span`,{className:C,children:[e.usage.rows.toLocaleString(),` rows`,e.usage.bytes!=null&&` · ${Dl(e.usage.bytes)}`,v!=null&&` · spans ${Ol(v)}`]})]}),(0,K.jsx)(`span`,{className:C,children:n?`▾`:`▸`})]}),n&&(0,K.jsxs)(`div`,{className:`border-t border-[var(--color-line-1)] px-3 py-3 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:S,children:`Soft row cap`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{type:`number`,value:i,min:e.limits.maxRows.min,max:e.limits.maxRows.max,onChange:e=>a(e.target.value),className:x}),(0,K.jsx)(`span`,{className:C,children:`rows`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] text-[var(--color-fg-4)] leading-relaxed`,children:`Above this, old rows are rotated — but never within the retention window.`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:S,children:`Hard ceiling`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{type:`number`,value:o,min:e.limits.absoluteMaxRows.min,max:e.limits.absoluteMaxRows.max,onChange:e=>s(e.target.value),className:x}),(0,K.jsx)(`span`,{className:C,children:`rows`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] text-[var(--color-fg-4)] leading-relaxed`,children:`Pruned regardless of age once exceeded. Protects against runaway disk growth.`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:S,children:`Retention floor`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{type:`number`,value:c,step:`0.5`,min:e.limits.minRetentionHours.min,max:e.limits.minRetentionHours.max,onChange:e=>l(e.target.value),className:x}),(0,K.jsx)(`span`,{className:C,children:`hours`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] text-[var(--color-fg-4)] leading-relaxed`,children:`Rows newer than this are never deleted by the soft cap. Set 0 to disable the floor.`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:S,children:`Size cap (optional)`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{type:`number`,value:u,placeholder:`off`,min:1,onChange:e=>d(e.target.value),className:x}),(0,K.jsx)(`span`,{className:C,children:`MB`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] text-[var(--color-fg-4)] leading-relaxed`,children:`Bytes-based eviction. Leave blank to disable. Honors the retention floor like the soft cap.`})]})]}),m&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono ${m.kind===`err`?`text-rose-300`:`text-emerald-300`}`,children:m.text}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 pt-1`,children:[(0,K.jsx)(`button`,{onClick:y,disabled:f,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:text-[var(--color-fg-0)] bg-[var(--color-surface-2)] hover:bg-[var(--color-surface-3)] border border-[var(--color-line-1)] rounded-sm px-3 py-1.5 disabled:opacity-50 cursor-pointer`,children:f?`saving…`:`save`}),(0,K.jsx)(`button`,{onClick:b,disabled:f,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-[var(--color-line-1)] rounded-sm px-3 py-1.5 disabled:opacity-50 cursor-pointer`,children:`reset to defaults`})]})]})]})}var Al={"http-json":`HTTP webhook (generic JSON)`,"splunk-hec":`Splunk HEC`,datadog:`Datadog logs`,"file-jsonl":`Local JSONL file`};function jl(e){if(!e)return`never`;let t=Date.now()/1e3-e;return t<60?Math.floor(t)+`s ago`:t<3600?Math.floor(t/60)+`m ago`:t<86400?Math.floor(t/3600)+`h ago`:Math.floor(t/86400)+`d ago`}function Ml(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(null),[o,s]=(0,_.useState)(null),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(``),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(null),y=async()=>{t(await(await fetch(`/api/json/audit-sinks`)).json())};(0,_.useEffect)(()=>{y()},[]);let b=(0,_.useMemo)(()=>e?new Map(e.status.map(e=>[e.sink_id,e])):new Map,[e]),x=t=>{if(!e)return;let n=`${t}-${Date.now().toString(36).slice(-4)}`,r={id:n,name:Al[t],type:t,enabled:!1,endpoint:t===`file-jsonl`?void 0:``,path:t===`file-jsonl`?`~/.sigmashake/audit-export.jsonl`:void 0,auth:{type:`none`},batch:{maxEvents:100,maxBytes:1e6,intervalMs:3e4},retry:{maxAttempts:5,baseMs:1e3,maxMs:6e4},filter:{},payload:{template:e.starterTemplates[t]}};a(n),s(r),l(!1),d(JSON.stringify(r,null,2)),h(null),v(null)},S=e=>{a(e.id),s(JSON.parse(JSON.stringify(e))),l(!1),d(JSON.stringify(e,null,2)),h(null),v(null)},C=()=>{a(null),s(null),l(!1),d(``),h(null),v(null)},w=()=>{if(c)try{return JSON.parse(u)}catch{return null}return o},T=async()=>{let e=w();if(!e){h({kind:`err`,text:`JSON is invalid`});return}p(!0),h(null);try{let t=await fetch(`/api/json/audit-sinks`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)});if(!t.ok){let e=await t.json();throw Error(e.error??`HTTP ${t.status}`)}await y(),h({kind:`ok`,text:`Saved.`}),C()}catch(e){h({kind:`err`,text:e instanceof Error?e.message:String(e)})}finally{p(!1)}},E=async e=>{if(confirm(`Delete sink "${e}"? Forwarded events stay; new events won't be sent here.`)){p(!0);try{let t=await fetch(`/api/json/audit-sinks?id=`+encodeURIComponent(e),{method:`DELETE`});if(!t.ok){let e=await t.json();throw Error(e.error??`HTTP ${t.status}`)}await y(),h({kind:`ok`,text:`Deleted.`})}catch(e){h({kind:`err`,text:e instanceof Error?e.message:String(e)})}finally{p(!1)}}},D=async()=>{let e=w();if(!e){h({kind:`err`,text:`JSON is invalid`});return}p(!0),v(null);try{let t=await(await fetch(`/api/json/audit-sinks/test`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify(e)})).json();v({...t.result,rendered:t.rendered})}catch(e){v({ok:!1,status:0,error:e instanceof Error?e.message:String(e)})}finally{p(!1)}},O=async e=>{p(!0);try{let t=await fetch(`/api/json/audit-sinks`,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({...e,enabled:!e.enabled})});if(!t.ok)throw Error(`HTTP ${t.status}`);await y()}catch(e){h({kind:`err`,text:e instanceof Error?e.message:String(e)})}finally{p(!1)}};if(!e)return(0,K.jsx)(K.Fragment,{});let ee=`text-[10.5px] font-mono text-[var(--color-fg-4)] tabular-nums`,k=`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-sm px-2 py-1.5 focus:outline-none focus:border-[var(--color-brand)]/50`,A=`text-[10.5px] uppercase tracking-wider text-[var(--color-fg-4)]`,j=`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-[var(--color-line-1)] rounded-sm px-3 py-1.5 disabled:opacity-50 cursor-pointer`;return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,children:[(0,K.jsxs)(`button`,{onClick:()=>r(e=>!e),className:`w-full flex items-center justify-between px-3 py-2 hover:bg-white/[0.02] cursor-pointer`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-[11.5px]`,children:[(0,K.jsx)(`span`,{className:`font-medium text-[var(--color-fg-1)]`,children:`Centralized logging`}),(0,K.jsx)(`span`,{className:ee,children:e.sinks.length===0?`no destinations`:`${e.sinks.filter(e=>e.enabled).length} of ${e.sinks.length} active`})]}),(0,K.jsx)(`span`,{className:ee,children:n?`▾`:`▸`})]}),n&&(0,K.jsxs)(`div`,{className:`border-t border-[var(--color-line-1)] px-3 py-3 space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] leading-relaxed`,children:`Forward every audit event to your SIEM or log lake. Each destination has its own filter + payload template — edit the JSON directly to map fields to whatever shape your destination expects.`}),e.sinks.length>0&&(0,K.jsx)(`div`,{className:`space-y-1.5`,children:e.sinks.map(e=>{let t=b.get(e.id);return(0,K.jsxs)(`div`,{className:`flex items-center gap-3 px-3 py-2 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)]`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 ${e.enabled?t?.last_status===`ok`?`bg-emerald-400`:t?.last_status===`dead-lettered`?`bg-rose-400`:`bg-amber-400`:`bg-[var(--color-fg-4)]`}`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11.5px] font-mono`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,children:e.name}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:Al[e.type]})]}),(0,K.jsxs)(`div`,{className:ee+` truncate`,children:[e.endpoint??e.path??``,t&&(0,K.jsxs)(K.Fragment,{children:[` · `,`sent: `,t.last_status??`—`,` ·`,` `,`last: `,jl(t.last_sent_at),t.dropped_count>0&&(0,K.jsxs)(`span`,{className:`text-rose-300`,children:[` · `,`dropped: `,t.dropped_count]})]})]}),t?.last_error&&(0,K.jsx)(`div`,{className:`text-[10.5px] font-mono text-rose-300 truncate`,children:t.last_error})]}),(0,K.jsx)(`button`,{onClick:()=>O(e),disabled:f,className:j,children:e.enabled?`disable`:`enable`}),(0,K.jsx)(`button`,{onClick:()=>S(e),disabled:f,className:j,children:`edit`}),(0,K.jsx)(`button`,{onClick:()=>E(e.id),disabled:f,className:j+` hover:!text-rose-300`,children:`delete`})]},e.id)})}),i===null&&(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(`span`,{className:ee,children:`add destination:`}),(e.sinkTypes??[]).map(e=>(0,K.jsxs)(`button`,{onClick:()=>x(e),className:j,children:[`+ `,Al[e]]},e))]}),i!==null&&o&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-brand)]/30 bg-[var(--color-surface-0)] p-3 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`text-[11.5px] font-medium text-[var(--color-fg-1)]`,children:[i,` · `,Al[o.type]]}),(0,K.jsx)(`button`,{onClick:()=>l(e=>!e),className:j,children:c?`form view`:`raw JSON`})]}),!c&&(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-x-6 gap-y-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Display name`}),(0,K.jsx)(`input`,{type:`text`,value:o.name,onChange:e=>s({...o,name:e.target.value}),className:k+` w-full`})]}),o.type!==`file-jsonl`&&(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Endpoint URL`}),(0,K.jsx)(`input`,{type:`text`,value:o.endpoint??``,placeholder:`https://…`,onChange:e=>s({...o,endpoint:e.target.value}),className:k+` w-full`})]}),o.type===`file-jsonl`&&(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`File path`}),(0,K.jsx)(`input`,{type:`text`,value:o.path??``,onChange:e=>s({...o,path:e.target.value}),className:k+` w-full`})]}),o.type!==`file-jsonl`&&(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Auth`}),(0,K.jsxs)(`select`,{value:o.auth.type,onChange:e=>{let t=e.target.value,n=t===`bearer`?{type:`bearer`,token:``}:t===`basic`?{type:`basic`,username:``,password:``}:t===`header`?{type:`header`,name:``,value:``}:{type:`none`};s({...o,auth:n})},className:k+` w-full cursor-pointer`,children:[(0,K.jsx)(`option`,{value:`none`,children:`none`}),(0,K.jsx)(`option`,{value:`bearer`,children:`bearer token`}),(0,K.jsx)(`option`,{value:`basic`,children:`basic auth`}),(0,K.jsx)(`option`,{value:`header`,children:`custom header`})]})]}),o.auth.type===`bearer`&&(0,K.jsxs)(`div`,{className:`space-y-1 md:col-span-2`,children:[(0,K.jsx)(`label`,{className:A,children:`Token`}),(0,K.jsx)(`input`,{type:`password`,value:o.auth.token,onChange:e=>s({...o,auth:{type:`bearer`,token:e.target.value}}),className:k+` w-full`})]}),o.auth.type===`basic`&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Username`}),(0,K.jsx)(`input`,{type:`text`,value:o.auth.username,onChange:e=>o.auth.type===`basic`&&s({...o,auth:{...o.auth,username:e.target.value}}),className:k+` w-full`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Password`}),(0,K.jsx)(`input`,{type:`password`,value:o.auth.password,onChange:e=>o.auth.type===`basic`&&s({...o,auth:{...o.auth,password:e.target.value}}),className:k+` w-full`})]})]}),o.auth.type===`header`&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Header name`}),(0,K.jsx)(`input`,{type:`text`,value:o.auth.name,onChange:e=>o.auth.type===`header`&&s({...o,auth:{...o.auth,name:e.target.value}}),className:k+` w-full`})]}),(0,K.jsxs)(`div`,{className:`space-y-1`,children:[(0,K.jsx)(`label`,{className:A,children:`Header value`}),(0,K.jsx)(`input`,{type:`password`,value:o.auth.value,onChange:e=>o.auth.type===`header`&&s({...o,auth:{...o.auth,value:e.target.value}}),className:k+` w-full`})]})]}),(0,K.jsxs)(`div`,{className:`space-y-1 md:col-span-2`,children:[(0,K.jsxs)(`label`,{className:A,children:[`Payload template (JSON; `,`{{field}}`,` placeholders)`]}),(0,K.jsx)(`textarea`,{value:JSON.stringify(o.payload.template??{},null,2),rows:10,onChange:e=>{try{let t=JSON.parse(e.target.value);s({...o,payload:{...o.payload,template:t}}),h(null)}catch{h({kind:`err`,text:`Template is not valid JSON`})}},className:k+` w-full leading-snug`})]})]}),c&&(0,K.jsx)(`textarea`,{value:u,rows:20,onChange:e=>d(e.target.value),className:k+` w-full leading-snug`}),g&&(0,K.jsxs)(`div`,{className:`rounded-sm border px-3 py-2 text-[11px] font-mono ${g.ok?`border-emerald-400/40 text-emerald-200 bg-emerald-400/5`:`border-rose-400/40 text-rose-200 bg-rose-400/5`}`,children:[(0,K.jsxs)(`div`,{children:[g.ok?`✓ delivered`:`✗ failed`,` (HTTP`,` `,g.status,`)`,g.error&&(0,K.jsx)(`span`,{className:`ml-2 text-rose-200`,children:g.error})]}),g.rendered!=null&&(0,K.jsxs)(`details`,{className:`mt-1`,children:[(0,K.jsx)(`summary`,{className:`cursor-pointer text-[10px] text-[var(--color-fg-4)]`,children:`payload sent`}),(0,K.jsx)(`pre`,{className:`mt-1 text-[10px] whitespace-pre-wrap break-all bg-black/30 rounded-sm px-2 py-1 max-h-48 overflow-y-auto`,children:JSON.stringify(g.rendered,null,2)})]})]}),m&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono ${m.kind===`err`?`text-rose-300`:`text-emerald-300`}`,children:m.text}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`button`,{onClick:T,disabled:f,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:text-[var(--color-fg-0)] bg-[var(--color-surface-2)] hover:bg-[var(--color-surface-3)] border border-[var(--color-line-1)] rounded-sm px-3 py-1.5 disabled:opacity-50 cursor-pointer`,children:f?`saving…`:`save`}),(0,K.jsx)(`button`,{onClick:D,disabled:f,className:j,children:`send test event`}),(0,K.jsx)(`button`,{onClick:C,disabled:f,className:j,children:`cancel`})]})]})]})]})}var Nl=[``,`allow`,`block`,`force`,`ask`,`log`],Pl=[``,`claude-code`,`gemini`,`antigravity`,`cursor`,`copilot`,`codex`,`pi`,`generic`],Q=[50,100,250,500],Fl=100;function Il(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(``),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(Fl),[u,d]=(0,_.useState)(0),[f,p]=(0,_.useState)(null),[m,h]=(0,_.useState)(!1),[g,v]=(0,_.useState)(null);(0,_.useEffect)(()=>{let t=!1,r=new URLSearchParams;return e&&r.set(`decision`,e),n&&r.set(`tool`,n),i&&r.set(`client`,i),r.set(`limit`,String(c)),r.set(`offset`,String(u)),r.set(`envelope`,`1`),h(!0),v(null),fetch(`/api/state/activity?`+r.toString()).then(e=>{if(!e.ok)throw Error(`HTTP `+e.status);return e.json()}).then(e=>{t||(p(e),h(!1))}).catch(e=>{t||(v(e instanceof Error?e.message:String(e)),h(!1))}),()=>{t=!0}},[e,n,i,c,u,ke([`activity-updated`])[`activity-updated`]]);let y=e=>t=>{e(t.target.value),d(0)},b=(0,_.useMemo)(()=>{if(!f)return[];let e=o.trim().toLowerCase();return e?f.rows.filter(t=>t.tool.toLowerCase().includes(e)||t.decision.toLowerCase().includes(e)||(t.rule_id??``).toLowerCase().includes(e)||(t.client??``).toLowerCase().includes(e)||(t.source_file??``).toLowerCase().includes(e)||t.input.toLowerCase().includes(e)):f.rows},[f,o]),x=f?.total??0,S=Math.floor(u/c)+1,C=Math.max(1,Math.ceil(x/c)),w=x===0?0:u+1,T=Math.min(u+(f?.rows.length??0),x),E=`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-sm px-2 py-1.5 focus:outline-none focus:border-[var(--color-brand)]/50 cursor-pointer`,D=`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] border border-[var(--color-line-1)] hover:border-[var(--color-line-2)] rounded-sm px-3 py-1.5 transition-colors cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed`;return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`What your AI tried to do`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:[`Every move your AI agent made — and what SigmaShake decided.`,f&&(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] tabular-nums ml-1.5`,children:[`· `,x.toLocaleString(),` action`,x===1?``:`s`,` on record`]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(`select`,{id:`audit-filter-decision`,value:e,onChange:y(t),className:E,children:Nl.map(e=>(0,K.jsx)(`option`,{value:e,children:e===``?`All decisions`:e===`allow`?`Allowed`:e===`block`?`Blocked`:e===`force`?`Forced`:e===`ask`?`Held`:`Logged`},e))}),(0,K.jsx)(`select`,{id:`audit-filter-client`,value:i,onChange:y(a),className:E,children:Pl.map(e=>(0,K.jsx)(`option`,{value:e,children:e===``?`All AI agents`:e===`claude-code`?`Claude Code`:e===`copilot`?`GitHub Copilot`:e===`codex`?`OpenAI Codex`:e.charAt(0).toUpperCase()+e.slice(1)},e))}),(0,K.jsx)(`input`,{id:`audit-filter-tool`,type:`text`,placeholder:`Filter by tool…`,value:n,onChange:y(r),className:`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] rounded-sm px-2.5 py-1.5 w-36 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)]`}),(0,K.jsx)(`select`,{id:`audit-page-size`,value:c,onChange:e=>{l(Number(e.target.value)),d(0)},className:E,title:`Rows per page`,children:Q.map(e=>(0,K.jsxs)(`option`,{value:e,children:[e,` / page`]},e))})]})]}),(0,K.jsx)(kl,{}),(0,K.jsx)(Ml,{}),(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsxs)(`svg`,{className:`absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)] pointer-events-none`,width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`input`,{id:`audit-search`,type:`text`,placeholder:`Search within this page…`,value:o,onChange:e=>s(e.target.value),className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm pl-9 pr-10 py-2.5 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] transition-colors`}),o&&(0,K.jsx)(`button`,{onClick:()=>s(``),className:`absolute right-3 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] transition-colors cursor-pointer`,title:`Clear search`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]}),f&&f.rows.length>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 px-3 text-[10px] uppercase tracking-widest text-[var(--color-fg-4)] select-none`,children:[(0,K.jsx)(`span`,{className:`w-3`}),(0,K.jsx)(`span`,{className:`w-14`,children:`When`}),(0,K.jsx)(`span`,{className:`w-20`,children:`Decision`}),(0,K.jsx)(`span`,{className:`flex-1 min-w-0`,children:`Action`}),(0,K.jsx)(`span`,{className:`hidden md:inline w-12 text-right`,children:`Time`}),(0,K.jsx)(`span`,{className:`w-24 text-right`,children:`AI agent`})]}),g&&(0,K.jsxs)(`p`,{className:`text-sm text-red-300 font-mono`,children:[`failed to load audit log: `,g]}),m&&!f&&(0,K.jsx)(`div`,{className:`space-y-1.5`,children:Array.from({length:10}).map((e,t)=>(0,K.jsx)(`div`,{className:`h-9 bg-[var(--color-surface-1)] rounded-sm border border-[var(--color-line-0)] border-l-2 border-l-[var(--color-line-2)] shimmer`},t))}),!m&&!g&&b.length===0&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] py-16 flex flex-col items-center justify-center text-center`,children:[(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)]`,children:o?`No actions on this page match your search.`:x===0?`Nothing yet — connect an AI agent and its actions will show up here.`:`No rows on this page match the filter.`}),o&&(0,K.jsx)(`button`,{onClick:()=>s(``),className:`mt-3 text-[11.5px] text-[var(--color-brand)] hover:underline cursor-pointer`,children:`Clear search`})]}),b.length>0&&(0,K.jsx)(`div`,{className:`space-y-1.5`,children:b.map(e=>(0,K.jsx)(Sc,{row:e},e.id))}),f&&x>c&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 pt-2`,children:[(0,K.jsxs)(`span`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:[`showing `,w.toLocaleString(),`–`,T.toLocaleString(),` of`,` `,x.toLocaleString()]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`button`,{onClick:()=>d(0),disabled:u===0,className:D,children:`⟪ first`}),(0,K.jsx)(`button`,{onClick:()=>d(Math.max(0,u-c)),disabled:u===0,className:D,children:`‹ prev`}),(0,K.jsxs)(`span`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[`page `,S,` / `,C]}),(0,K.jsx)(`button`,{onClick:()=>d(f.nextOffset==null?u:f.nextOffset),disabled:f.nextOffset==null,className:D,children:`next ›`}),(0,K.jsx)(`button`,{onClick:()=>d((C-1)*c),disabled:f.nextOffset==null,className:D,children:`last ⟫`})]})]})]})}function Ll({open:e,onClose:t,title:n,subtitle:r,children:i,footer:a,size:o=`md`}){let s=(0,_.useRef)(null),c=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!e)return;c.current=document.activeElement;let n=document.body.style.overflow;document.body.style.overflow=`hidden`;let r=e=>{e.key===`Escape`&&(e.preventDefault(),t())};return document.addEventListener(`keydown`,r),s.current?.focus(),()=>{document.removeEventListener(`keydown`,r),document.body.style.overflow=n,c.current?.focus?.()}},[e,t]),e?(0,K.jsx)(`div`,{className:`ss-sheet-backdrop`,onClick:e=>{e.target===e.currentTarget&&t()},role:`presentation`,children:(0,K.jsxs)(`div`,{ref:s,className:`ss-sheet ss-sheet--${o}`,role:`dialog`,"aria-modal":`true`,"aria-label":n??`Detail`,tabIndex:-1,children:[(0,K.jsx)(`button`,{className:`ss-sheet-handle`,onClick:t,"aria-label":`Close`,type:`button`}),(0,K.jsxs)(`div`,{className:`ss-sheet-head`,children:[(0,K.jsxs)(`div`,{className:`ss-sheet-head-text`,children:[n&&(0,K.jsx)(`h2`,{className:`ss-sheet-title`,children:n}),r&&(0,K.jsx)(`p`,{className:`ss-sheet-subtitle`,children:r})]}),(0,K.jsx)(`button`,{type:`button`,onClick:t,"aria-label":`Close`,className:`ss-sheet-close`,children:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`}),(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`})]})})]}),(0,K.jsx)(`div`,{className:`ss-sheet-body`,children:i}),a&&(0,K.jsx)(`div`,{className:`ss-sheet-footer`,children:a})]})}):null}var Rl={allow:`green`,block:`red`,force:`amber`,ask:`blue`,log:`gray`},zl=[`all`,`allow`,`block`,`force`,`log`],Bl={allow:`text-emerald-300`,block:`text-red-300`,force:`text-amber-300`,log:`text-[var(--color-fg-3)]`};function Vl(e){return new Date(e*1e3).toLocaleString()}function Hl(e,t){if(!t)return``;let n=t-e;return n<60?`${n}s`:`${Math.round(n/60)}m`}async function Ul(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}async function Wl(e,t){try{return await(await fetch(`/api/rules/set-enabled`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,enabled:t})})).json()}catch(e){return{error:String(e)}}}function Gl(e){try{let t=JSON.parse(e).input;return t&&typeof t==`object`?rr(``,JSON.stringify(t)):rr(``,e)}catch{return e.slice(0,80)}}function Kl(e){try{let t=JSON.parse(e);return t.input===void 0?JSON.stringify(JSON.parse(e),null,2):JSON.stringify(t.input,null,2)}catch{return e}}function ql({label:e,value:t,tone:n}){return(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,K.jsx)(`span`,{className:`font-mono text-sm tabular-nums ${n??`text-[var(--color-fg-0)]`}`,children:t}),(0,K.jsx)(`span`,{className:`font-mono text-[10px] uppercase tracking-wider text-[var(--color-fg-3)]`,children:e})]})}function Jl(e,t){let n=Math.floor(Date.now()/1e3),r=n-86400,i=new Map;for(let t of e){if(t.decision!==`ask`||t.created_at<r||!t.rule_id)continue;let e=i.get(t.rule_id);e?(e.count+=1,t.created_at>e.lastSeen&&(e.lastSeen=t.created_at)):i.set(t.rule_id,{ruleId:t.rule_id,ruleMessage:t.rule_message||t.rule_id,count:1,lastSeen:t.created_at})}for(let e of t){if(!e.ruleId)continue;let t=i.get(e.ruleId);t?(t.count+=1,t.lastSeen=n):i.set(e.ruleId,{ruleId:e.ruleId,ruleMessage:e.ruleMessage||e.ruleId,count:1,lastSeen:n})}return Array.from(i.values()).filter(e=>e.count>=3).sort((e,t)=>t.count-e.count||t.lastSeen-e.lastSeen).slice(0,5)}function Yl(e){let t=Math.max(0,Math.floor(Date.now()/1e3)-e);return t<60?`${t}s ago`:t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}function Xl({ruleId:e,ruleMessage:t,onDismiss:n,onUndo:r}){let[i,a]=(0,_.useState)(!1),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>(o.current=setTimeout(n,6e3),()=>{o.current&&clearTimeout(o.current)}),[n]),(0,K.jsxs)(`div`,{className:`fixed bottom-5 left-1/2 -translate-x-1/2 z-50 flex items-center gap-3 px-4 py-2.5 rounded-full border border-[var(--color-line-2)] bg-[var(--color-surface-1)] backdrop-blur-md shadow-lg`,children:[(0,K.jsxs)(`span`,{className:`text-xs text-[var(--color-fg-1)]`,children:[`Silenced `,(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-0)]`,children:t})]}),(0,K.jsx)(`button`,{type:`button`,disabled:i,onClick:async()=>{a(!0),await r(),n()},className:`text-[11px] font-mono uppercase tracking-wider px-2.5 py-1 rounded-full border border-[var(--color-brand)]/40 text-[var(--color-brand)] hover:bg-[var(--color-brand)]/10 cursor-pointer disabled:opacity-50`,"aria-label":`Undo silencing ${e}`,children:`undo`}),(0,K.jsx)(`button`,{type:`button`,onClick:n,className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer`,"aria-label":`Dismiss`,children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`}),(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`})]})})]})}function Zl({target:e,onClose:t,onConfirm:n}){let[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{o(null)},[e]),e?(0,K.jsxs)(Ll,{open:!!e,onClose:t,size:`sm`,title:`Silence this rule?`,subtitle:`It won't ask for approval again until you re-enable it on the Rules page.`,footer:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--secondary`,disabled:r,onClick:t,children:`Cancel`}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,style:{"--tone":`#ff6f6f`},disabled:r,onClick:async()=>{i(!0),o(null);let r=await n(e);if(i(!1),!r.ok){o(r.message??`Could not silence rule.`);return}t()},children:r?`Silencing…`:`Disable rule`})]}),children:[(0,K.jsxs)(`div`,{className:`ss-list`,children:[(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},children:(0,K.jsxs)(`div`,{style:{flex:1,minWidth:0},children:[(0,K.jsx)(`div`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-1`,children:`rule`}),(0,K.jsx)(`div`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`code`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] block mt-1 break-all`,children:e.ruleId})})]})}),(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},children:(0,K.jsxs)(`div`,{style:{flex:1,minWidth:0},children:[(0,K.jsx)(`div`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-1`,children:`recent activity`}),(0,K.jsxs)(`div`,{className:`text-sm text-[var(--color-fg-1)]`,children:[`Triggered`,` `,(0,K.jsx)(`strong`,{className:`text-[var(--color-fg-0)] tabular-nums`,children:e.fireCount}),` `,e.fireCount===1?`time`:`times`,` in the last 24 hours.`]})]})})]}),(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-3 leading-relaxed`,children:[`Disabling a rule is fully reversible — head to`,` `,(0,K.jsx)(`a`,{href:`/rules`,className:`text-[var(--color-brand)] hover:underline`,children:`Rules`}),` `,`to switch it back on.`]}),a&&(0,K.jsx)(`p`,{className:`mt-3 text-xs text-red-300`,role:`alert`,children:a})]}):null}function Ql(){let e=ke([`pending-changed`,`rules-changed`]),{data:t,refetch:n}=V(`/api/json/pending`,[e[`pending-changed`]]),{data:r}=V(`/api/json/approvals`,[e[`pending-changed`]]),[i,a]=(0,_.useState)(`all`),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(new Set),[u,d]=(0,_.useState)(null),[f,p]=(0,_.useState)(null),m=(0,_.useMemo)(()=>Jl(r??[],t??[]),[r,t]),h=(0,_.useMemo)(()=>{let e=new Map;for(let t of m)e.set(t.ruleId,t.count);return e},[m]),g=Math.floor(Date.now()/1e3),v=(r??[]).filter(e=>e.created_at>=g-86400).length,y=(r??[]).reduce((e,t)=>(e[t.decision]=(e[t.decision]??0)+1,e),{}),b=(r??[]).filter(e=>{if(i!==`all`&&e.decision!==i)return!1;if(o){let t=o.toLowerCase(),n=Gl(e.input).toLowerCase();if(!e.tool.toLowerCase().includes(t)&&!e.rule_id.toLowerCase().includes(t)&&!(e.rule_message??``).toLowerCase().includes(t)&&!n.includes(t))return!1}return!0});function x(e){l(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}async function S(e){let t=await Wl(e.ruleId,!1);return t.error||t.ok===!1?{ok:!1,message:t.error??`Server rejected the request.`}:(e.pendingId&&await Ul(e.pendingId,`block`),p({ruleId:e.ruleId,ruleMessage:e.ruleMessage}),n(),{ok:!0})}async function C(e){await Wl(e,!0),n()}return(0,K.jsxs)(`div`,{className:`space-y-6`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`approvals`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-1 font-mono`,children:`approve or deny pending tool calls · review past decisions · silence noisy rules`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-5 px-3 py-2.5 rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)]/60`,children:[(0,K.jsx)(ql,{label:`pending`,value:t?.length??0,tone:`text-amber-300`}),(0,K.jsx)(`span`,{className:`text-[var(--color-line-2)]`,children:`|`}),[`allow`,`block`,`force`,`log`].map(e=>(0,K.jsx)(ql,{label:e,value:y[e]??0,tone:Bl[e]},e)),(0,K.jsx)(`span`,{className:`text-[var(--color-line-2)]`,children:`|`}),(0,K.jsx)(ql,{label:`last 24h`,value:v})]}),m.length>0&&(0,K.jsxs)(`section`,{className:`ss-noisy-card`,"aria-label":`Noisy rules`,children:[(0,K.jsxs)(`div`,{className:`ss-noisy-card-head`,children:[(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M12 9v4`}),(0,K.jsx)(`path`,{d:`M12 17h.01`}),(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`})]}),`asking too often · last 24h`]}),m.map(e=>(0,K.jsxs)(`div`,{className:`ss-noisy-row`,children:[(0,K.jsx)(`span`,{className:`ss-noisy-count`,"aria-label":`${e.count} fires`,children:e.count}),(0,K.jsxs)(`div`,{className:`ss-noisy-text`,children:[(0,K.jsx)(`span`,{className:`ss-noisy-title`,children:e.ruleMessage}),(0,K.jsxs)(`span`,{className:`ss-noisy-sub`,children:[(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`code`,{className:`font-mono`,children:e.ruleId})}),(0,K.jsx)(`span`,{style:{margin:`0 6px`},children:`·`}),`last fired `,Yl(e.lastSeen)]})]}),(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger`,onClick:()=>d({ruleId:e.ruleId,ruleMessage:e.ruleMessage,fireCount:e.count}),"aria-label":`Silence rule ${e.ruleId}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Silence`]})]},e.ruleId))]}),t&&t.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`div`,{className:`flex items-center justify-between mb-3`,children:(0,K.jsxs)(`h2`,{className:`overline text-[11px]`,children:[`pending · `,t.length]})}),(0,K.jsx)(`div`,{className:`space-y-2`,children:t.map(e=>{let t=h.get(e.ruleId)??0;return(0,K.jsxs)(q,{className:`border-l-2 border-l-amber-400/60`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsxs)(`div`,{className:`flex gap-2 flex-wrap items-center`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:async()=>{await Ul(e.id,`allow`),n()},children:`approve`}),(0,K.jsx)(X,{size:`sm`,variant:`danger`,onClick:async()=>{await Ul(e.id,`block`),n()},children:`deny`}),(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger`,onClick:()=>d({ruleId:e.ruleId,ruleMessage:e.ruleMessage,fireCount:t||1,pendingId:e.id}),"aria-label":`Disable rule ${e.ruleId}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Disable rule`]})]})]}),(0,K.jsxs)(Y,{className:`space-y-2 text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex gap-3 flex-wrap items-center`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`tool`}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] font-mono`,children:e.toolCall.tool}),(0,K.jsx)(`span`,{className:`overline ml-2`,children:`rule`}),(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-2)]`,children:e.ruleId})}),t>=3&&(0,K.jsxs)(`span`,{className:`font-mono text-[10px] uppercase tracking-wider px-1.5 py-0.5 rounded-full`,style:{background:`color-mix(in oklab, #ffa657 14%, transparent)`,color:`#ffb27d`,border:`1px solid color-mix(in oklab, #ffa657 28%, transparent)`},title:`Fired ${t} times in the last 24h`,children:[`asks often · `,t,`×`]})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5 shrink-0`,children:`why`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:JSON.stringify(e.toolCall.input,null,2)})]})]},e.id)})})]}),(0,K.jsxs)(`section`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3 gap-3 flex-wrap`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:`history`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`div`,{className:`flex gap-0.5 rounded-sm border border-[var(--color-line-1)] p-0.5 bg-[var(--color-surface-1)]`,children:zl.map(e=>(0,K.jsx)(`button`,{onClick:()=>a(e),className:`px-2 py-0.5 rounded-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer ${i===e?`bg-[var(--color-brand)]/10 text-[var(--color-brand)] border border-[var(--color-brand)]/30`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-transparent`}`,children:e},e))}),(0,K.jsx)(`input`,{type:`text`,placeholder:`search tool, rule, command…`,value:o,onChange:e=>s(e.target.value),className:`text-xs font-mono bg-[var(--color-surface-1)] border border-[var(--color-line-1)] rounded-sm px-2.5 py-1 text-[var(--color-fg-1)] placeholder-[var(--color-fg-4)] focus:outline-none focus:border-[var(--color-brand)]/50 w-48`})]})]}),!r||r.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:`no approval history yet`}):b.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:`no results match your filter`}):(0,K.jsx)(q,{children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:b.map(e=>{let t=c.has(e.id),n=Gl(e.input),r=Hl(e.created_at,e.resolved_at);return(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`button`,{onClick:()=>x(e.id),className:`w-full text-left px-3 py-2 hover:bg-[var(--color-surface-2)]/60 transition-colors cursor-pointer flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-[10px] w-2.5 shrink-0 mt-1`,children:t?`▼`:`▶`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0 flex flex-col gap-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] whitespace-nowrap tabular-nums`,children:Vl(e.resolved_at??e.created_at)}),(0,K.jsx)(sr,{variant:Rl[e.decision]??`gray`,children:e.decision}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-brand)] font-mono`,children:e.tool}),r&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] ml-auto`,children:[`Δ`,r]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-2)] truncate flex-1 min-w-0`,children:e.rule_message||e.rule_id||`—`}),n&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)] font-mono truncate flex-1 min-w-0 hidden md:block`,children:n})]})]})]}),t&&(0,K.jsxs)(`div`,{className:`px-3 pb-3 pt-1 space-y-2 bg-[var(--color-surface-0)]`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1 text-xs font-mono items-center`,children:[(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`rule`}),` `,e.rule_id?(0,K.jsx)(_l,{ruleId:e.rule_id,children:(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.rule_id})}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:`—`})]}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`created`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Vl(e.created_at)})]}),e.resolved_at&&(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`resolved`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Vl(e.resolved_at)})]}),e.rule_id&&(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger ml-auto`,onClick:()=>d({ruleId:e.rule_id,ruleMessage:e.rule_message||e.rule_id,fireCount:h.get(e.rule_id)??1}),"aria-label":`Silence rule ${e.rule_id}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Silence rule`]})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`text-xs flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5 shrink-0`,children:`why`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:Kl(e.input)})]})]},e.id)})})})]}),(0,K.jsx)(Zl,{target:u,onClose:()=>d(null),onConfirm:S}),f&&(0,K.jsx)(Xl,{ruleId:f.ruleId,ruleMessage:f.ruleMessage,onDismiss:()=>p(null),onUndo:()=>C(f.ruleId)})]})}function $l(){let{data:e,refetch:t}=V(`/api/json/inspector-targets`),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null),c=(0,_.useRef)(null),l=(0,_.useRef)(1),u=(0,_.useRef)(new Map),d=(0,_.useRef)(new Map),f=(0,_.useCallback)(()=>{let e=c.current;if(c.current=null,e)try{e.close()}catch{}r(!1),a(!1),s(null)},[]),p=(0,_.useCallback)(e=>{c.current&&f(),a(!0),s(null);let t=new WebSocket(`/ws/inspector?target=${encodeURIComponent(e)}`);c.current=t,t.onopen=()=>{r(!0),a(!1),s(null)},t.onclose=()=>{c.current=null,r(!1),a(!1)},t.onerror=()=>{a(!1),s(`Connection failed — is the inspector running with the correct target ID?`)},t.onmessage=e=>{try{let t=JSON.parse(e.data);if(t.id!=null){let e=u.current.get(t.id);e&&(u.current.delete(t.id),e(t.result))}else if(t.method){let e=d.current.get(t.method);if(e)for(let n of e)n(t.params)}}catch{}}},[f]),m=(0,_.useCallback)((e,t)=>new Promise((n,r)=>{let i=c.current;if(!i||i.readyState!==WebSocket.OPEN){r(Error(`Not connected`));return}let a=l.current++;u.current.set(a,e=>n(e)),i.send(JSON.stringify({id:a,method:e,params:t})),setTimeout(()=>{u.current.has(a)&&(u.current.delete(a),r(Error(`Command timed out`)))},1e4)}),[]),h=(0,_.useCallback)((e,t)=>{let n=d.current.get(e);return n||(n=new Set,d.current.set(e,n)),n.add(t),()=>{d.current.get(e)?.delete(t)}},[]),g=(0,_.useRef)(!1);return(0,_.useEffect)(()=>{e?.active&&e?.target&&!n&&!i&&!g.current&&(g.current=!0,p(e.target.id))},[e?.active,e?.target?.id,n,i,p]),(0,_.useEffect)(()=>()=>{f()},[f]),{active:e?.active??!1,bunVersion:e?.version?.[`Bun-Version`]??null,preconfiguredTarget:e?.target??null,connected:n,connecting:i,error:o,connect:p,disconnect:f,sendCommand:m,onEvent:h,refetch:t}}var eu=18,tu=5e-4;function nu(e,t){return t===`(garbage collector)`||t===`(idle)`?`#450a0a`:e?e.startsWith(`node:`)||e.startsWith(`bun:`)?`#172554`:e.startsWith(`file:`)||e.startsWith(`/`)||e.includes(`.ts`)||e.includes(`.js`)?`#451a03`:`#1f2937`:`#1f2937`}function ru(e,t){return t===`(garbage collector)`||t===`(idle)`?`#fca5a5`:e?e.startsWith(`node:`)||e.startsWith(`bun:`)?`#93c5fd`:e.startsWith(`file:`)||e.startsWith(`/`)||e.includes(`.ts`)||e.includes(`.js`)?`#fbbf24`:`#6b7280`:`#6b7280`}function iu(e,t){let n=new Map;for(let t of e.nodes)n.set(t.id,t);let r=new Map;function i(e){let t=n.get(e);if(!t)return 0;let a=t.hitCount??0;for(let e of t.children??[])a+=i(e);return r.set(e,a),a}let a=e.nodes[0];if(!a)return[];i(a.id);let o=t??a.id,s=r.get(o)??0;if(s===0)return[];let c=[];function l(e,t,i){let a=n.get(e);if(!a)return;let o=r.get(e)??0,u=o/s;if(u<tu)return;c.push({x:i,width:u,depth:t,node:a,subtreeHits:o});let d=i;for(let e of a.children??[]){let n=(r.get(e)??0)/s;l(e,t+1,d),d+=n}}return l(o,0,0),c}function au(e){return e<1e3?`${e}µs`:e<1e6?`${(e/1e3).toFixed(1)}ms`:`${(e/1e6).toFixed(2)}s`}function ou({profile:e}){let t=(0,_.useRef)(null),[n,r]=(0,_.useState)(800),[i,a]=(0,_.useState)(null),[o,s]=(0,_.useState)(null);(0,_.useEffect)(()=>{let e=t.current;if(!e)return;let n=new ResizeObserver(e=>{let t=e[0]?.contentRect.width;t&&r(t)});return n.observe(e),r(e.clientWidth||800),()=>n.disconnect()},[]);let c=iu(e,i),l=(c.reduce((e,t)=>Math.max(e,t.depth),0)+1)*eu+4,u=e.endTime-e.startTime,d=(0,_.useCallback)(e=>{a(t=>t===e.node.id?null:e.node.id),s(null)},[]);return c.length===0?(0,K.jsx)(`p`,{className:`text-xs text-[#555] py-2`,children:`No samples — profile may be empty.`}):(0,K.jsxs)(`div`,{className:`relative select-none`,children:[i!==null&&(0,K.jsx)(`button`,{onClick:()=>a(null),className:`mb-2 text-xs text-amber-400 hover:underline`,children:`← Reset zoom`}),(0,K.jsx)(`div`,{ref:t,className:`overflow-x-hidden`,children:(0,K.jsx)(`svg`,{width:n,height:l,onMouseLeave:()=>s(null),children:c.map((e,t)=>{let r=e.x*n,a=Math.max(e.width*n,1),o=e.depth*eu+1,c=e.node.callFrame.functionName||`(anonymous)`,l=e.node.callFrame.url,f=i===e.node.id;return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(`rect`,{x:r,y:o,width:a,height:eu-1,fill:f?`#92400e`:nu(l,c),stroke:`#080808`,strokeWidth:.5,style:{cursor:`pointer`},onClick:()=>d(e),onMouseMove:t=>s({clientX:t.clientX,clientY:t.clientY,rect:e,totalDuration:u})}),a>24&&(0,K.jsx)(`text`,{x:r+2,y:o+eu-5,fontSize:9,fill:ru(l,c),style:{pointerEvents:`none`,userSelect:`none`},clipPath:`url(#fc-clip-${t})`,children:c}),a>24&&(0,K.jsx)(`clipPath`,{id:`fc-clip-${t}`,children:(0,K.jsx)(`rect`,{x:r,y:o,width:a,height:eu})})]},t)})})}),o&&(0,K.jsxs)(`div`,{className:`fixed z-50 bg-[#111] border border-[#2a2a2a] rounded-lg p-2.5 text-xs shadow-xl pointer-events-none`,style:{left:o.clientX+14,top:o.clientY-8,maxWidth:320},children:[(0,K.jsx)(`div`,{className:`font-mono text-amber-400 truncate font-medium`,children:o.rect.node.callFrame.functionName||`(anonymous)`}),o.rect.node.callFrame.url&&(0,K.jsxs)(`div`,{className:`text-[#666] truncate mt-0.5 text-[10px]`,children:[o.rect.node.callFrame.url,`:`,o.rect.node.callFrame.lineNumber]}),(0,K.jsxs)(`div`,{className:`mt-1.5 space-y-0.5 text-[#aaa]`,children:[(0,K.jsxs)(`div`,{children:[`Samples:`,` `,(0,K.jsx)(`span`,{className:`text-white tabular-nums`,children:o.rect.subtreeHits})]}),(0,K.jsxs)(`div`,{children:[`Time share:`,` `,(0,K.jsxs)(`span`,{className:`text-white tabular-nums`,children:[(o.rect.width*100).toFixed(1),`%`]})]}),u>0&&(0,K.jsxs)(`div`,{children:[`Est. duration:`,` `,(0,K.jsx)(`span`,{className:`text-white tabular-nums`,children:au(Math.round(o.rect.width*u))})]})]}),o.rect.node.deoptReason&&(0,K.jsxs)(`div`,{className:`text-red-400 mt-1.5 text-[10px]`,children:[`⚠ `,o.rect.node.deoptReason]}),(0,K.jsx)(`div`,{className:`text-[#555] mt-1.5 text-[10px]`,children:`Click to zoom · click again to reset`})]})]})}function su(e){return e<1e6?`${(e/1e3).toFixed(0)}µs`:e<1e9?`${(e/1e6).toFixed(1)}ms`:`${(e/1e9).toFixed(2)}s`}function cu(e){return new Date(e*1e3).toLocaleString()}var lu={critical:`red`,high:`red`,medium:`amber`,low:`blue`},uu={critical:`border-l-red-500/70`,high:`border-l-red-500/50`,medium:`border-l-amber-400/60`,low:`border-l-sky-400/50`};function du(){let{data:e}=V(`/api/json/profile`);if(!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading profile…`});let{diagnosis:t,sessions:n}=e;return!t||t.analyzed_evals===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center`,children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] font-mono`,children:[`no eval data yet — run`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg eval`}),` to start recording`]})}):(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsx)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-2`,children:[{label:`evals analyzed`,value:String(t.analyzed_evals)},{label:`median (inside)`,value:su(t.median_eval_ns)},{label:`p99 (inside)`,value:su(t.p99_eval_ns)},{label:`bottleneck`,value:t.bottleneck??`—`}].map(e=>(0,K.jsx)(kc,{label:e.label,value:e.value,labelPlacement:`above`,valueClassName:`text-xl font-medium tabular-nums text-[var(--color-fg-0)]`},e.label))}),t.phases.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`phase breakdown`})}),(0,K.jsx)(Y,{children:(0,K.jsx)(`div`,{className:`space-y-2`,children:t.phases.filter(e=>e.median_ns>0).map(e=>{let n=e.name===t.bottleneck;return(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-xs`,children:[(0,K.jsx)(`span`,{className:`w-28 font-mono truncate ${n?`text-[var(--color-brand)] font-medium`:`text-[var(--color-fg-2)]`}`,title:n?`bottleneck`:void 0,children:e.name}),(0,K.jsx)(jc,{pct:Math.min(e.pct_of_total,100),tone:n?`amber`:`gray`,className:`h-1 flex-1`}),(0,K.jsx)(`span`,{className:`w-16 text-right text-[var(--color-fg-1)] tabular-nums font-mono`,children:su(e.median_ns)}),(0,K.jsxs)(`span`,{className:`w-10 text-right text-[var(--color-fg-3)] tabular-nums font-mono`,children:[e.pct_of_total,`%`]}),(0,K.jsxs)(`span`,{className:`w-20 text-right text-[var(--color-fg-4)] tabular-nums font-mono text-[10px]`,children:[`p95 `,su(e.p95_ns)]})]},e.name)})})})]}),t.recommendations.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`recommendations · `,t.recommendations.length]})}),(0,K.jsx)(Y,{className:`space-y-2`,children:t.recommendations.map((e,t)=>(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] bg-[var(--color-surface-0)] rounded-sm px-3 py-2.5 border-l-2 ${uu[e.severity]??`border-l-[var(--color-line-2)]`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1.5`,children:[(0,K.jsx)(sr,{variant:lu[e.severity]??`gray`,children:e.severity}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:e.type})]}),(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-1)] leading-relaxed`,children:e.message}),e.fix_command&&(0,K.jsxs)(`code`,{className:`text-[11px] text-[var(--color-brand)] font-mono mt-1.5 block`,children:[`$ `,e.fix_command]})]},t))})]}),t.anomalies.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`anomalies · `,t.anomalies.length]})}),(0,K.jsx)(Y,{children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:t.anomalies.map((e,t)=>(0,K.jsxs)(`div`,{className:`py-2 flex items-center gap-4 text-xs font-mono`,children:[(0,K.jsx)(`span`,{className:`w-24 text-[var(--color-brand)] uppercase tracking-wider text-[10px]`,children:e.type}),(0,K.jsxs)(`span`,{className:`w-10 tabular-nums text-[var(--color-fg-1)]`,children:[e.count,`×`]}),(0,K.jsxs)(`span`,{className:`w-20 tabular-nums text-[var(--color-fg-1)]`,children:[e.max_ms,`ms max`]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:e.likely_cause})]},t))})})]}),n.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`session history`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[n.length,` session`,n.length===1?``:`s`]})]}),(0,K.jsx)(Y,{className:`p-0`,children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:[...n].reverse().map((e,t)=>(0,K.jsxs)(`div`,{className:`px-4 py-2.5 flex flex-wrap items-center gap-x-5 gap-y-1 text-xs ${e.is_current?`bg-amber-400/[0.04] border-l-2 border-l-amber-400/60`:``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-48 shrink-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums font-mono`,children:cu(e.start_ts)}),e.is_current&&(0,K.jsx)(sr,{variant:`amber`,children:`current`})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums font-mono w-20`,children:[e.evals,` eval`,e.evals===1?``:`s`]}),(0,K.jsxs)(`span`,{className:`text-emerald-300 tabular-nums font-mono`,children:[e.allowed,` allow`]}),e.blocked>0&&(0,K.jsxs)(`span`,{className:`text-red-300 tabular-nums font-mono`,children:[e.blocked,` block (`,e.block_rate_pct,`%)`]}),e.asked>0&&(0,K.jsxs)(`span`,{className:`text-sky-300 tabular-nums font-mono`,children:[e.asked,` ask`]}),e.forced>0&&(0,K.jsxs)(`span`,{className:`text-violet-300 tabular-nums font-mono`,children:[e.forced,` force`]}),e.avg_ns>0&&(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums ml-auto font-mono`,children:[`avg `,su(e.avg_ns)]}),e.top_rule&&(0,K.jsxs)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.top_rule)}`,className:`text-[var(--color-fg-4)] hover:text-[var(--color-brand)] font-mono truncate max-w-xs transition-colors w-full pl-48`,title:`most blocked rule: ${e.top_rule}`,children:[`top block: `,e.top_rule]})]},t))})})]})]})}var fu={log:`text-[var(--color-fg-1)]`,info:`text-sky-300`,warn:`text-amber-300`,error:`text-red-300`,debug:`text-[var(--color-fg-3)]`};function pu(e){return e.value==null?e.description?e.description:`[${e.type}]`:String(e.value)}function mu(){let e=$l(),[t,n]=(0,_.useState)(!1),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)(null),[l,u]=(0,_.useState)(!1),d=(0,_.useRef)(null),f=(0,_.useRef)(0);(0,_.useEffect)(()=>{d.current?.scrollIntoView({behavior:`smooth`})},[a]),(0,_.useEffect)(()=>{if(e.connected)return e.sendCommand(`Runtime.enable`).catch(()=>{}),e.onEvent(`Runtime.consoleAPICalled`,e=>{let t=e;o(e=>{let n=[...e,{id:f.current++,type:t.type??`log`,args:t.args??[],timestamp:t.timestamp??Date.now()}];return n.length>500?n.slice(-500):n})})},[e.connected]);let p=(0,_.useCallback)(()=>{e.preconfiguredTarget&&e.connect(e.preconfiguredTarget.id)},[e]),m=(0,_.useCallback)(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),i(null)}catch(e){console.error(`Profiler.start failed:`,e)}},[e]),h=(0,_.useCallback)(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch(e){console.error(`Profiler.stop failed:`,e),n(!1)}},[e]),g=(0,_.useCallback)(async()=>{u(!0);try{let t=await e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0});c(JSON.parse(t.result.value))}catch{}finally{u(!1)}},[e]);function v(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/1024/1024).toFixed(1)}MB`}let y=e.connected?`connected${e.bunVersion?` · bun v${e.bunVersion}`:``}`:e.connecting?`connecting…`:e.active?`inspector active, connecting…`:`inspector not available`,b=e.connected?`bg-emerald-400`:e.connecting?`bg-amber-400 pulse-soft`:e.active?`bg-sky-400`:`bg-[var(--color-line-2)]`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full ${b}`}),y]}),e.connected?(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.disconnect,children:`disconnect`}):(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.preconfiguredTarget?p:e.refetch,disabled:e.connecting,children:e.preconfiguredTarget?`reconnect`:`refresh`})]})]}),e.error&&(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:e.error})})]}),e.connected&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu profiler`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300 flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-400 pulse-soft`}),`recording`]}),t?(0,K.jsx)(X,{variant:`danger`,size:`sm`,onClick:h,children:`stop & render`}):(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:m,children:`start recording`})]})]}),(0,K.jsx)(Y,{children:r?(0,K.jsx)(Nc,{profile:r,children:(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 overflow-x-hidden`,children:(0,K.jsx)(ou,{profile:r})})}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:t?`recording… perform actions in ssg, then stop.`:`click start recording, perform actions, then stop.`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:g,disabled:l,children:l?`…`:`refresh`})]}),(0,K.jsx)(Y,{children:s?(0,K.jsx)(Pc,{memory:s,formatValue:v}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:`click refresh to fetch process.memoryUsage().`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`console`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:()=>o([]),children:`clear`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 h-56 overflow-y-auto font-mono text-[11px]`,children:[a.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`console output will appear here…`}):a.map(e=>(0,K.jsxs)(`div`,{className:`py-0.5 border-b border-[var(--color-line-0)] ${fu[e.type]??`text-[var(--color-fg-1)]`}`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] mr-2 uppercase tracking-wider`,children:[`[`,e.type,`]`]}),e.args.map(pu).join(` `)]},e.id)),(0,K.jsx)(`div`,{ref:d})]})})]})]}),!e.connected&&!e.connecting&&(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center`,children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:e.active?`waiting for inspector connection…`:`inspector auto-starts with ssg serve. profiler, memory, and console appear here once connected.`})})]})}function hu({active:e,onClick:t,children:n}){return(0,K.jsxs)(`button`,{onClick:t,className:`relative px-3 h-9 text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer ${e?`text-[var(--color-fg-0)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,children:[n,e&&(0,K.jsx)(`span`,{className:`absolute inset-x-2 -bottom-px h-px bg-[var(--color-brand)]`})]})}function gu(){let[e,t]=(0,_.useState)(`eval`);return(0,K.jsxs)(`div`,{className:`space-y-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center border-b border-[var(--color-line-0)] mb-5`,children:[(0,K.jsx)(hu,{active:e===`eval`,onClick:()=>t(`eval`),children:`eval profile`}),(0,K.jsx)(hu,{active:e===`inspector`,onClick:()=>t(`inspector`),children:`runtime inspector`})]}),e===`eval`?(0,K.jsx)(du,{}):(0,K.jsx)(mu,{})]})}var _u=`ssg:ui:mode:v1`,vu=`ssg:ui:mode:seeded`,yu=`ssg:ui-mode-change`,bu=new Set([`professional`,`enterprise`,`agent-dev`]);function xu(){try{let e=localStorage.getItem(_u);if(e===`newcomer`||e===`pro`)return e}catch{}return null}function Su(e){try{localStorage.setItem(_u,e)}catch{}}async function Cu(){if(xu()===null){try{if(localStorage.getItem(vu))return;localStorage.setItem(vu,`1`)}catch{return}try{let e=await fetch(`/api/json/wizard-state`);if(!e.ok){Su(`newcomer`);return}let t=await e.json(),n=bu.has(t.profile??``)?`pro`:`newcomer`;Su(n),window.dispatchEvent(new CustomEvent(yu,{detail:n}))}catch{Su(`newcomer`)}}}function wu(){let[e,t]=(0,_.useState)(()=>xu()??`newcomer`);return(0,_.useEffect)(()=>{Cu().then(()=>{let n=xu();n&&n!==e&&t(n)});let n=e=>{let n=e.detail;(n===`newcomer`||n===`pro`)&&t(n)};return window.addEventListener(yu,n),()=>window.removeEventListener(yu,n)},[]),{mode:e,setMode:(0,_.useCallback)(e=>{t(e),Su(e),window.dispatchEvent(new CustomEvent(yu,{detail:e}))},[])}}var Tu=[{id:`safe-writes`,title:`Protect your files from accidents`,plainDescription:`Asks before AI overwrites or erases anything important — so you stay in control of what changes.`,example:`If AI tries to overwrite a config file, you get to approve it first.`,hubRulesetId:`safe-writes`,scenario:`any`,emoji:`🛡️`,details:{protects:[`Asks first before editing project manifests & lockfiles — package.json, Cargo.toml, go.mod, and friends`,`Asks first before editing shell startup files — .bashrc, .zshrc, .profile`,`Asks first before editing git config or git hooks`,`Asks first before editing CI / build pipeline files`,`Asks first before editing AI-agent instruction files — CLAUDE.md, .cursorrules, AGENTS.md`],tryThis:`Ask your AI to add a dependency to package.json. Instead of saving silently, it pauses for your approval first.`}},{id:`no-destructive-fs`,title:`Stop AI from erasing files`,plainDescription:`Blocks the kind of filesystem operations that can permanently delete your work.`,example:`If AI tries to wipe a folder, SSG blocks it automatically.`,hubRulesetId:`no-destructive-fs`,scenario:`coding`,emoji:`🗑️`,details:{protects:[`Blocks recursive force-deletes that can wipe an entire directory tree in a single command`,`Blocks bulk deletes through find with delete or exec-remove predicates`,`Blocks disk-wipe, format & partition tools — dd, mkfs, shred, fdisk`,`Blocks Windows recursive deletes — Remove-Item with Recurse, rmdir /s, del /s`,`Blocks git clean with its force flags, which erases untracked and ignored files alike`],tryThis:`Ask your AI to recursively delete a throwaway folder. The attempt is blocked outright — it never reaches your shell.`}},{id:`secrets-guard`,title:`Keep secrets and credentials safe`,plainDescription:`Watches for AI trying to read or write your passwords, API keys, and private keys.`,example:`Reading your .env file, SSH keys, or .netrc triggers an approval request.`,hubRulesetId:`secrets-guard`,scenario:`any`,emoji:`🔑`,details:{protects:[`Blocks reading .env files`,`Blocks reading private keys, SSH keys, .netrc & .pgpass`,`Blocks reading cloud credential stores — AWS, GCP, Azure, kube, docker`,`Blocks dumping secret files through cat / head / tail / type`,`Blocks writing hardcoded API keys — AWS, Anthropic, OpenAI — into source`,`Blocks writing PEM private keys into source files`],tryThis:`Ask your AI to read your .env file. The read is blocked, so the contents never land in the chat transcript.`}},{id:`email-guardrails`,title:`Ask before AI sends emails`,plainDescription:`Makes sure AI never sends a message on your behalf without your explicit OK.`,example:`Any outbound email action is queued for your approval before it goes.`,hubRulesetId:`email-guardrails`,scenario:`knowledge-work`,emoji:`📧`,details:{protects:[`Asks first before local mail commands — mail, sendmail, mutt, msmtp`,`Asks first before curl is used to talk SMTP directly`,`Asks first before calls to transactional-email APIs — SendGrid, Mailgun, Postmark, Resend, SES, and more`],tryThis:`Ask your AI to send a quick test email. It pauses and asks you to confirm the recipient and body before anything goes out.`}},{id:`no-paid-apis`,title:`Block surprise charges from paid APIs`,plainDescription:`Blocks AI from calling APIs that can rack up unexpected bills — cloud storage, AI providers, payment services.`,example:`A call to OpenAI, AWS S3, or Stripe triggers a block until you allow it.`,hubRulesetId:`no-paid-apis`,scenario:`any`,emoji:`💳`,details:{protects:[`Asks first before calls to paid LLM APIs — OpenAI, Anthropic, Groq, Bedrock, and more`,`Asks first before payment APIs — Stripe, PayPal, Square, Adyen`,`Asks first before SMS / voice APIs — Twilio, Vonage, MessageBird`,`Asks first before cloud-storage writes — aws s3 cp/sync, gsutil, az storage`],tryThis:`Ask your AI to call the OpenAI API. It checks with you before sending — so a runaway loop cannot quietly rack up spend.`}},{id:`read-only-mode`,title:`Read-only mode (maximum safety)`,plainDescription:`AI can look but not touch — all write operations are blocked. Great when you just want to explore safely.`,example:`AI can read your codebase and answer questions but cannot change any files.`,hubRulesetId:`read-only`,scenario:`any`,emoji:`🔒`,details:{protects:[`Blocks every file write and edit`,`Blocks state-changing shell commands — file deletes & moves, package installs, sudo, docker, kubectl, terraform`,`Blocks shell redirection that writes to disk`,`Blocks git commands that change state — commit, push, reset, checkout`,`Blocks network requests that are not GET — no POST, PUT, PATCH, DELETE`],tryThis:`Ask your AI to edit any file. Every write is refused until you remove this pack — but reading code and answering questions still works.`}}];function Eu(e){return e?Tu.filter(t=>t.scenario===`any`||t.scenario===e):Tu}function Du({pack:e,installed:t,state:n,expanded:r,onInstall:i,onUninstall:a,onToggleDetails:o}){let s=n!==`idle`;return(0,K.jsxs)(`div`,{className:`ss-list-row ss-list-row--pack`,style:{cursor:`default`,background:t?`linear-gradient(180deg, color-mix(in oklab, var(--color-hig-green) 8%, transparent) 0%, transparent 60%), var(--color-surface-1)`:`var(--color-surface-1)`,borderColor:t?`color-mix(in oklab, var(--color-hig-green) 28%, var(--color-line-1))`:`var(--color-line-1)`},children:[(0,K.jsxs)(`div`,{className:`ss-pack-main`,children:[(0,K.jsx)(`span`,{className:`ss-pack-emoji`,"aria-hidden":`true`,children:e.emoji}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`h3`,{className:`ss-pack-title`,children:e.title}),t&&(0,K.jsxs)(`span`,{className:`agent-badge agent-badge--detected`,title:`This pack is currently active.`,children:[(0,K.jsx)(`span`,{className:`agent-badge-dot`}),`Installed`]})]}),(0,K.jsx)(`p`,{className:`ss-pack-desc`,children:e.plainDescription}),(0,K.jsxs)(`p`,{className:`ss-pack-example`,children:[(0,K.jsx)(`span`,{className:`ss-pack-example__label`,children:`Example`}),e.example]}),(0,K.jsx)(`button`,{type:`button`,className:`ss-pack-detail-toggle`,"aria-expanded":r,onClick:()=>o(e.id),children:r?`Hide details`:t?`What this is doing →`:`What's inside →`})]}),(0,K.jsx)(`div`,{className:`ss-pack-action`,children:t?(0,K.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>a(e.id),className:`ss-btn ss-btn--secondary`,style:{height:30,padding:`0 12px`,fontSize:11},title:`Remove this pack from your machine.`,children:n===`uninstalling`?`Removing…`:`Remove`}):(0,K.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>i(e.id),className:`ss-btn ss-btn--primary`,style:{height:30,padding:`0 14px`,fontSize:11},title:`Install this guardrail pack.`,children:n===`installing`?`Installing…`:`Install`})})]}),r&&(0,K.jsxs)(`div`,{className:`ss-pack-detail`,children:[(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:t?`Installed`:`What gets installed`}),(0,K.jsxs)(`p`,{className:`ss-pack-detail__text`,children:[(0,K.jsxs)(`code`,{children:[e.hubRulesetId,`.rules`]}),` — one plain-text rules file`,t?` now living in `:`, written to `,`your `,(0,K.jsx)(`code`,{children:`.sigmashake/rules/`}),` folder.`,` `,t?`It's active right away — no restart needed.`:`Installing adds just this one file; removing the pack deletes it.`]})]}),(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:`What it does`}),(0,K.jsx)(`ul`,{className:`ss-pack-detail__list`,children:e.details.protects.map(e=>(0,K.jsx)(`li`,{children:e},e))})]}),(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:`See it working`}),(0,K.jsx)(`p`,{className:`ss-pack-detail__text`,children:e.details.tryThis}),(0,K.jsxs)(`p`,{className:`ss-pack-detail__hint`,children:[`Every block and approval prompt is logged on the`,` `,(0,K.jsx)(`a`,{href:`/audit`,children:`Activity`}),` page. To fire a rule on purpose without leaving the dashboard, open `,(0,K.jsx)(`a`,{href:`/try`,children:`Try It`}),`.`]})]})]})]})}function Ou(){let e=new URLSearchParams(window.location.search).get(`starter`),t=Eu(e),[n,r]=(0,_.useState)(new Set),[i,a]=(0,_.useState)({}),[o,s]=(0,_.useState)(new Set),[c,l]=(0,_.useState)(null);function u(e){s(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}(0,_.useEffect)(()=>{let e=!1;return fetch(`/api/json/hub/installed`).then(e=>e.json()).then(t=>{e||r(new Set(t.installed))}).catch(()=>{}),()=>{e=!0}},[]);function d(e,t){l({msg:e,type:t}),setTimeout(()=>l(null),5e3)}async function f(){try{let e=await(await fetch(`/api/json/hub/installed`)).json();r(new Set(e.installed))}catch{}}async function p(e){let t=Tu.find(t=>t.id===e);if(t){a(t=>({...t,[e]:`installing`}));try{let n=await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:t.hubRulesetId})}),i=await n.text(),a=n.headers.get(`Content-Type`)??``,o=null;if(a.includes(`application/json`))try{o=JSON.parse(i)}catch{}o?.ok?(r(e=>new Set([...e,t.hubRulesetId])),s(t=>new Set([...t,e])),d(o.already_installed?`${t.title} — already installed`:`${t.title} — installed`,`ok`)):d(o?o.error??`Could not install ${t.title}`:i.replace(/<[^>]+>/g,``).trim()||`Could not install ${t.title} (HTTP ${n.status})`,`error`)}catch(e){d(`Could not reach the dashboard server (${e instanceof Error?e.message:String(e)})`,`error`)}finally{a(t=>({...t,[e]:`idle`})),f()}}}async function m(e){let t=Tu.find(t=>t.id===e);if(t&&window.confirm(`Remove “${t.title}”?\n\nThe rules in this pack stop applying. You can install it again any time.`)){a(t=>({...t,[e]:`uninstalling`}));try{let e=await fetch(`/api/hub/uninstall`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:t.hubRulesetId})}),n=await e.text(),i=e.headers.get(`Content-Type`)??``,a=null;if(i.includes(`application/json`))try{a=JSON.parse(n)}catch{}a?.ok||e.ok&&!a?(r(e=>{let n=new Set(e);return n.delete(t.hubRulesetId),n}),d(`${t.title} — removed`,`ok`)):d(a?a.error??`Could not remove ${t.title}`:n.replace(/<[^>]+>/g,``).trim()||`Could not remove ${t.title} (HTTP ${e.status})`,`error`)}catch(e){d(`Could not reach the dashboard server (${e instanceof Error?e.message:String(e)})`,`error`)}finally{a(t=>({...t,[e]:`idle`})),f()}}}let h={coding:`for coding with AI`,"knowledge-work":`for email and docs`},g=t.filter(e=>n.has(e.hubRulesetId)).length;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid var(--color-line-1)`,background:`var(--color-surface-1)`},children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:8},children:`Guardrails`}),(0,K.jsxs)(`h1`,{className:`text-[18px] font-semibold text-[var(--color-fg-0)] tracking-tight`,children:[`One-tap protection`,e&&h[e]?` ${h[e]}`:``]}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-1.5 leading-relaxed`,children:[`Each pack is a small set of rules that guard against a specific AI risk. Toggle them on and off — installing or removing only touches rule files in `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`.sigmashake/`}),`.`]}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-3`,children:[g,` of `,t.length,` active`]})]}),c&&(0,K.jsx)(`div`,{className:`rounded-xl px-4 py-2.5 text-[12px]`,style:{border:`1px solid ${c.type===`ok`?`color-mix(in oklab, var(--color-hig-green) 36%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 36%, transparent)`}`,background:c.type===`ok`?`color-mix(in oklab, var(--color-hig-green) 12%, var(--color-surface-1))`:`color-mix(in oklab, var(--color-hig-red) 12%, var(--color-surface-1))`,color:c.type===`ok`?`var(--color-hig-green)`:`var(--color-hig-red)`,backdropFilter:`saturate(180%) blur(10px)`},children:c.msg}),(0,K.jsx)(`div`,{className:`ss-list`,children:t.map(e=>(0,K.jsx)(Du,{pack:e,installed:n.has(e.hubRulesetId),state:i[e.id]??`idle`,expanded:o.has(e.id),onInstall:p,onUninstall:m,onToggleDetails:u},e.id))}),(0,K.jsx)(`div`,{className:`rounded-xl p-4`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:[`Want more control? The`,` `,(0,K.jsx)(`a`,{href:`/hub`,className:`text-[var(--color-brand)] hover:underline`,children:`advanced library`}),` `,`has the full set of community rulesets and lets you preview every rule before installing.`]})})]})}function ku(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function Au(e){let t=e;if(t.endsWith(`/.sigmashake/rules`)&&(t=t.slice(0,-18)),t.endsWith(`\\.sigmashake\\rules`)&&(t=t.slice(0,-18)),t.startsWith(`/home/`)){let e=t.slice(6),n=e.indexOf(`/`);return n>=0?`~/${e.slice(n+1)}`:`~`}if(t.startsWith(`C:\\Users\\`)){let e=t.slice(9),n=e.indexOf(`\\`);return n>=0?`~\\${e.slice(n+1)}`:`~`}if(t.length>40){let e=t.split(/[/\\]/);if(e.length>2)return`…/${e[e.length-1]}`}return t}var ju=[{value:`downloads`,label:`most downloaded`},{value:`newest`,label:`newest`},{value:`rules`,label:`most rules`}],Mu=[``,`critical`,`high`,`medium`,`low`],Nu=[``,`deny`,`ask`,`allow`,`log`];function Pu(){return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)] p-4 space-y-3 shimmer`,children:[(0,K.jsx)(`div`,{className:`h-4 bg-[var(--color-surface-3)] rounded-sm w-2/3`}),(0,K.jsx)(`div`,{className:`h-3 bg-[var(--color-surface-2)] rounded-sm w-1/3`}),(0,K.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,K.jsx)(`div`,{className:`h-5 bg-[var(--color-surface-3)] rounded-sm w-14`}),(0,K.jsx)(`div`,{className:`h-5 bg-[var(--color-surface-3)] rounded-sm w-10`})]}),(0,K.jsx)(`div`,{className:`h-7 bg-[var(--color-surface-3)] rounded-sm`})]})}function Fu({tech:e}){return(0,K.jsx)(`span`,{className:`inline-flex items-center px-1.5 py-0.5 rounded-sm text-[10px] font-mono uppercase tracking-wider border ${{typescript:`bg-sky-500/8 text-sky-300 border-sky-500/25`,ts:`bg-sky-500/8 text-sky-300 border-sky-500/25`,javascript:`bg-amber-500/8 text-amber-300 border-amber-500/25`,js:`bg-amber-500/8 text-amber-300 border-amber-500/25`,python:`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`,rust:`bg-orange-500/8 text-orange-300 border-orange-500/25`,go:`bg-cyan-500/8 text-cyan-300 border-cyan-500/25`,bash:`bg-violet-500/8 text-violet-300 border-violet-500/25`}[e.toLowerCase()]??`bg-[var(--color-surface-2)] text-[var(--color-fg-3)] border-[var(--color-line-1)]`}`,children:e})}function Iu({install:e,onRemove:t,removing:n}){let r=Au(e.path),i=e.in_sync?`bg-emerald-400`:`bg-amber-400 animate-pulse`;return(0,K.jsxs)(`div`,{className:`group/chip inline-flex items-center gap-1.5 max-w-full pl-1.5 pr-0.5 py-0.5 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)] text-[10px] font-mono text-[var(--color-fg-2)]`,title:e.in_sync?`In sync — files present in ${e.path}`:`Drift — ${e.drift_reason??`files missing or empty`} (${e.path})`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 ${i}`,"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`truncate`,title:e.path,children:r}),(0,K.jsx)(`button`,{type:`button`,onClick:r=>{r.preventDefault(),r.stopPropagation(),n||t(e.path)},disabled:n,title:`Remove from this location`,"aria-label":`Uninstall from ${e.path}`,className:`shrink-0 inline-flex items-center justify-center w-4 h-4 rounded-sm text-[var(--color-fg-4)] hover:text-red-300 hover:bg-red-500/10 transition-colors cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed`,children:n?(0,K.jsx)(`svg`,{className:`animate-spin`,width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}):(0,K.jsxs)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]})}function Lu({isInstalling:e,hasInstalls:t,onInstallDefault:n,onPickPath:r}){let[i,a]=(0,_.useState)(!1),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!i)return;function e(e){o.current&&(o.current.contains(e.target)||a(!1))}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[i]),(0,K.jsxs)(`div`,{ref:o,className:`relative flex w-full`,children:[(0,K.jsx)(`button`,{onClick:e=>{e.preventDefault(),e.stopPropagation(),n()},disabled:e,className:`flex-1 h-7 rounded-l-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer
8
+ `+e.stack}}var be=Object.prototype.hasOwnProperty,z=t.unstable_scheduleCallback,xe=t.unstable_cancelCallback,Se=t.unstable_shouldYield,Ce=t.unstable_requestPaint,we=t.unstable_now,Te=t.unstable_getCurrentPriorityLevel,Ee=t.unstable_ImmediatePriority,De=t.unstable_UserBlockingPriority,Oe=t.unstable_NormalPriority,B=t.unstable_LowPriority,ke=t.unstable_IdlePriority,V=t.log,Ae=t.unstable_setDisableYieldValue,je=null,Me=null;function Ne(e){if(typeof V==`function`&&Ae(e),Me&&typeof Me.setStrictMode==`function`)try{Me.setStrictMode(je,e)}catch{}}var Pe=Math.clz32?Math.clz32:Le,Fe=Math.log,Ie=Math.LN2;function Le(e){return e>>>=0,e===0?32:31-(Fe(e)/Ie|0)|0}var Re=256,ze=262144,Be=4194304;function Ve(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function He(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=Ve(n))):i=Ve(o):i=Ve(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Ve(n))):i=Ve(o)):i=Ve(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function Ue(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function We(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Ge(){var e=Be;return Be<<=1,!(Be&62914560)&&(Be=4194304),e}function Ke(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qe(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function Je(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Pe(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&Ye(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Ye(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Pe(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Xe(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Pe(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function Ze(e,t){var n=t&-t;return n=n&42?1:Qe(n),(n&(e.suspendedLanes|t))===0?n:0}function Qe(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function $e(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function et(){var e=N.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function tt(e,t){var n=N.p;try{return N.p=e,t()}finally{N.p=n}}var nt=Math.random().toString(36).slice(2),rt=`__reactFiber$`+nt,it=`__reactProps$`+nt,at=`__reactContainer$`+nt,ot=`__reactEvents$`+nt,st=`__reactListeners$`+nt,ct=`__reactHandles$`+nt,lt=`__reactResources$`+nt,ut=`__reactMarker$`+nt;function dt(e){delete e[rt],delete e[it],delete e[ot],delete e[st],delete e[ct]}function ft(e){var t=e[rt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[at]||n[rt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[rt])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function pt(e){if(e=e[rt]||e[at]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function mt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function ht(e){var t=e[lt];return t||=e[lt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function gt(e){e[ut]=!0}var _t=new Set,vt={};function yt(e,t){bt(e,t),bt(e+`Capture`,t)}function bt(e,t){for(vt[e]=t,e=0;e<t.length;e++)_t.add(t[e])}var xt=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),St={},Ct={};function wt(e){return be.call(Ct,e)?!0:be.call(St,e)?!1:xt.test(e)?Ct[e]=!0:(St[e]=!0,!1)}function Tt(e,t,n){if(wt(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}function Et(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Dt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Ot(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function kt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function At(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function jt(e){if(!e._valueTracker){var t=kt(e)?`checked`:`value`;e._valueTracker=At(e,t,``+e[t])}}function Mt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=kt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Nt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var Pt=/[\n"\\]/g;function Ft(e){return e.replace(Pt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function It(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Ot(t)):e.value!==``+Ot(t)&&(e.value=``+Ot(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Rt(e,o,Ot(n)):Rt(e,o,Ot(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Ot(s):e.removeAttribute(`name`)}function Lt(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){jt(e);return}n=n==null?``:``+Ot(n),t=t==null?n:``+Ot(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),jt(e)}function Rt(e,t,n){t===`number`&&Nt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function zt(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Ot(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function Bt(e,t,n){if(t!=null&&(t=``+Ot(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+Ot(n)}function Vt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(re(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Ot(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),jt(e)}function Ht(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Ut=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Wt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Ut.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Gt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Wt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Wt(e,o,t[o])}function Kt(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var qt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),Jt=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Yt(e){return Jt.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function Xt(){}var Zt=null;function Qt(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var $t=null,en=null;function tn(e){var t=pt(e);if(t&&(e=t.stateNode)){var n=e[it]||null;a:switch(e=t.stateNode,t.type){case`input`:if(It(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Ft(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[it]||null;if(!a)throw Error(i(90));It(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Mt(r)}break a;case`textarea`:Bt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&zt(e,!!n.multiple,t,!1)}}}var nn=!1;function rn(e,t,n){if(nn)return e(t,n);nn=!0;try{return e(t)}finally{if(nn=!1,($t!==null||en!==null)&&(vu(),$t&&(t=$t,e=en,en=$t=null,tn(t),e)))for(t=0;t<e.length;t++)tn(e[t])}}function an(e,t){var n=e.stateNode;if(n===null)return null;var r=n[it]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var on=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),sn=!1;if(on)try{var cn={};Object.defineProperty(cn,`passive`,{get:function(){sn=!0}}),window.addEventListener(`test`,cn,cn),window.removeEventListener(`test`,cn,cn)}catch{sn=!1}var ln=null,un=null,dn=null;function fn(){if(dn)return dn;var e,t=un,n=t.length,r,i=`value`in ln?ln.value:ln.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return dn=i.slice(e,1<r?1-r:void 0)}function pn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function mn(){return!0}function hn(){return!1}function gn(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?mn:hn,this.isPropagationStopped=hn,this}return h(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=mn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=mn)},persist:function(){},isPersistent:mn}),t}var _n={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},vn=gn(_n),yn=h({},_n,{view:0,detail:0}),H=gn(yn),bn,xn,Sn,Cn=h({},yn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Nn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==Sn&&(Sn&&e.type===`mousemove`?(bn=e.screenX-Sn.screenX,xn=e.screenY-Sn.screenY):xn=bn=0,Sn=e),bn)},movementY:function(e){return`movementY`in e?e.movementY:xn}}),wn=gn(Cn),Tn=gn(h({},Cn,{dataTransfer:0})),En=gn(h({},yn,{relatedTarget:0})),Dn=gn(h({},_n,{animationName:0,elapsedTime:0,pseudoElement:0})),On=gn(h({},_n,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),kn=gn(h({},_n,{data:0})),U={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},An={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`},jn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function Mn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=jn[e])?!!t[e]:!1}function Nn(){return Mn}var Pn=gn(h({},yn,{key:function(e){if(e.key){var t=U[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=pn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?An[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Nn,charCode:function(e){return e.type===`keypress`?pn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?pn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Fn=gn(h({},Cn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),In=gn(h({},yn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Nn})),W=gn(h({},_n,{propertyName:0,elapsedTime:0,pseudoElement:0})),Ln=gn(h({},Cn,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),Rn=gn(h({},_n,{newState:0,oldState:0})),zn=[9,13,27,32],Bn=on&&`CompositionEvent`in window,Vn=null;on&&`documentMode`in document&&(Vn=document.documentMode);var Hn=on&&`TextEvent`in window&&!Vn,Un=on&&(!Bn||Vn&&8<Vn&&11>=Vn),Wn=` `,Gn=!1;function Kn(e,t){switch(e){case`keyup`:return zn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function qn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var Jn=!1;function Yn(e,t){switch(e){case`compositionend`:return qn(t);case`keypress`:return t.which===32?(Gn=!0,Wn):null;case`textInput`:return e=t.data,e===Wn&&Gn?null:e;default:return null}}function Xn(e,t){if(Jn)return e===`compositionend`||!Bn&&Kn(e,t)?(e=fn(),dn=un=ln=null,Jn=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return Un&&t.locale!==`ko`?null:t.data;default:return null}}var Zn={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 Qn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Zn[e.type]:t===`textarea`}function $n(e,t,n,r){$t?en?en.push(r):en=[r]:$t=r,t=Td(t,`onChange`),0<t.length&&(n=new vn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var er=null,G=null;function tr(e){vd(e,0)}function nr(e){if(Mt(mt(e)))return e}function rr(e,t){if(e===`change`)return t}var ir=!1;if(on){var K;if(on){var ar=`oninput`in document;if(!ar){var q=document.createElement(`div`);q.setAttribute(`oninput`,`return;`),ar=typeof q.oninput==`function`}K=ar}else K=!1;ir=K&&(!document.documentMode||9<document.documentMode)}function J(){er&&(er.detachEvent(`onpropertychange`,Y),G=er=null)}function Y(e){if(e.propertyName===`value`&&nr(G)){var t=[];$n(t,G,e,Qt(e)),rn(tr,t)}}function or(e,t,n){e===`focusin`?(J(),er=t,G=n,er.attachEvent(`onpropertychange`,Y)):e===`focusout`&&J()}function sr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return nr(G)}function cr(e,t){if(e===`click`)return nr(t)}function lr(e,t){if(e===`input`||e===`change`)return nr(t)}function X(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var ur=typeof Object.is==`function`?Object.is:X;function dr(e,t){if(ur(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!be.call(t,i)||!ur(e[i],t[i]))return!1}return!0}function fr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function pr(e,t){var n=fr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=fr(n)}}function mr(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?mr(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function hr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Nt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Nt(e.document)}return t}function gr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var _r=on&&`documentMode`in document&&11>=document.documentMode,vr=null,yr=null,br=null,xr=!1;function Sr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;xr||vr==null||vr!==Nt(r)||(r=vr,`selectionStart`in r&&gr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),br&&dr(br,r)||(br=r,r=Td(yr,`onSelect`),0<r.length&&(t=new vn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=vr)))}function Cr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var wr={animationend:Cr(`Animation`,`AnimationEnd`),animationiteration:Cr(`Animation`,`AnimationIteration`),animationstart:Cr(`Animation`,`AnimationStart`),transitionrun:Cr(`Transition`,`TransitionRun`),transitionstart:Cr(`Transition`,`TransitionStart`),transitioncancel:Cr(`Transition`,`TransitionCancel`),transitionend:Cr(`Transition`,`TransitionEnd`)},Tr={},Er={};on&&(Er=document.createElement(`div`).style,`AnimationEvent`in window||(delete wr.animationend.animation,delete wr.animationiteration.animation,delete wr.animationstart.animation),`TransitionEvent`in window||delete wr.transitionend.transition);function Dr(e){if(Tr[e])return Tr[e];if(!wr[e])return e;var t=wr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Er)return Tr[e]=t[n];return e}var Or=Dr(`animationend`),kr=Dr(`animationiteration`),Ar=Dr(`animationstart`),jr=Dr(`transitionrun`),Mr=Dr(`transitionstart`),Nr=Dr(`transitioncancel`),Pr=Dr(`transitionend`),Fr=new Map,Ir=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);Ir.push(`scrollEnd`);function Lr(e,t){Fr.set(e,t),yt(t,[e])}var Rr=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},zr=[],Br=0,Vr=0;function Hr(){for(var e=Br,t=Vr=Br=0;t<e;){var n=zr[t];zr[t++]=null;var r=zr[t];zr[t++]=null;var i=zr[t];zr[t++]=null;var a=zr[t];if(zr[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&Kr(n,i,a)}}function Ur(e,t,n,r){zr[Br++]=e,zr[Br++]=t,zr[Br++]=n,zr[Br++]=r,Vr|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function Wr(e,t,n,r){return Ur(e,t,n,r),qr(e)}function Gr(e,t){return Ur(e,null,null,t),qr(e)}function Kr(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Pe(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function qr(e){if(50<lu)throw lu=0,uu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Jr={};function Yr(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Xr(e,t,n,r){return new Yr(e,t,n,r)}function Zr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function Qr(e,t){var n=e.alternate;return n===null?(n=Xr(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function $r(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function ei(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)Zr(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,se.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case ee:return e=Xr(31,n,t,a),e.elementType=ee,e.lanes=o,e;case y:return ti(n.children,a,o,t);case b:s=8,a|=24;break;case x:return e=Xr(12,n,t,a|2),e.elementType=x,e.lanes=o,e;case T:return e=Xr(13,n,t,a),e.elementType=T,e.lanes=o,e;case E:return e=Xr(19,n,t,a),e.elementType=E,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case C:s=10;break a;case S:s=9;break a;case w:s=11;break a;case D:s=14;break a;case O:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=Xr(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function ti(e,t,n,r){return e=Xr(7,e,r,t),e.lanes=n,e}function ni(e,t,n){return e=Xr(6,e,null,t),e.lanes=n,e}function ri(e){var t=Xr(18,null,null,0);return t.stateNode=e,t}function ii(e,t,n){return t=Xr(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var ai=new WeakMap;function oi(e,t){if(typeof e==`object`&&e){var n=ai.get(e);return n===void 0?(t={value:e,source:t,stack:ye(t)},ai.set(e,t),t):n}return{value:e,source:t,stack:ye(t)}}var si=[],ci=0,li=null,ui=0,di=[],fi=0,pi=null,mi=1,hi=``;function gi(e,t){si[ci++]=ui,si[ci++]=li,li=e,ui=t}function _i(e,t,n){di[fi++]=mi,di[fi++]=hi,di[fi++]=pi,pi=e;var r=mi;e=hi;var i=32-Pe(r)-1;r&=~(1<<i),n+=1;var a=32-Pe(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,mi=1<<32-Pe(t)+i|n<<i|r,hi=a+e}else mi=1<<a|n<<i|r,hi=e}function vi(e){e.return!==null&&(gi(e,1),_i(e,1,0))}function yi(e){for(;e===li;)li=si[--ci],si[ci]=null,ui=si[--ci],si[ci]=null;for(;e===pi;)pi=di[--fi],di[fi]=null,hi=di[--fi],di[fi]=null,mi=di[--fi],di[fi]=null}function bi(e,t){di[fi++]=mi,di[fi++]=hi,di[fi++]=pi,mi=t.id,hi=t.overflow,pi=e}var xi=null,Si=null,Ci=!1,wi=null,Ti=!1,Ei=Error(i(519));function Di(e){throw Ni(oi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Ei}function Oi(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[rt]=e,t[it]=r,n){case`dialog`:$(`cancel`,t),$(`close`,t);break;case`iframe`:case`object`:case`embed`:$(`load`,t);break;case`video`:case`audio`:for(n=0;n<gd.length;n++)$(gd[n],t);break;case`source`:$(`error`,t);break;case`img`:case`image`:case`link`:$(`error`,t),$(`load`,t);break;case`details`:$(`toggle`,t);break;case`input`:$(`invalid`,t),Lt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:$(`invalid`,t);break;case`textarea`:$(`invalid`,t),Vt(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||jd(t.textContent,n)?(r.popover!=null&&($(`beforetoggle`,t),$(`toggle`,t)),r.onScroll!=null&&$(`scroll`,t),r.onScrollEnd!=null&&$(`scrollend`,t),r.onClick!=null&&(t.onclick=Xt),t=!0):t=!1,t||Di(e,!0)}function ki(e){for(xi=e.return;xi;)switch(xi.tag){case 5:case 31:case 13:Ti=!1;return;case 27:case 3:Ti=!0;return;default:xi=xi.return}}function Ai(e){if(e!==xi)return!1;if(!Ci)return ki(e),Ci=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Ud(e.type,e.memoizedProps)),n=!n),n&&Si&&Di(e),ki(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Si=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));Si=uf(e)}else t===27?(t=Si,Zd(e.type)?(e=lf,lf=null,Si=e):Si=t):Si=xi?cf(e.stateNode.nextSibling):null;return!0}function ji(){Si=xi=null,Ci=!1}function Mi(){var e=wi;return e!==null&&(Yl===null?Yl=e:Yl.push.apply(Yl,e),wi=null),e}function Ni(e){wi===null?wi=[e]:wi.push(e)}var Pi=P(null),Fi=null,Ii=null;function Li(e,t,n){I(Pi,t._currentValue),t._currentValue=n}function Ri(e){e._currentValue=Pi.current,F(Pi)}function zi(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Bi(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),zi(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),zi(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Vi(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;ur(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===le.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[Qf]:e.push(Qf))}a=a.return}e!==null&&Bi(t,e,n,r),t.flags|=262144}function Hi(e){for(e=e.firstContext;e!==null;){if(!ur(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Ui(e){Fi=e,Ii=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function Wi(e){return Ki(Fi,e)}function Gi(e,t){return Fi===null&&Ui(e),Ki(e,t)}function Ki(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Ii===null){if(e===null)throw Error(i(308));Ii=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Ii=Ii.next=t;return n}var qi=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},Ji=t.unstable_scheduleCallback,Yi=t.unstable_NormalPriority,Xi={$$typeof:C,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Zi(){return{controller:new qi,data:new Map,refCount:0}}function Qi(e){e.refCount--,e.refCount===0&&Ji(Yi,function(){e.controller.abort()})}var $i=null,ea=0,ta=0,na=null;function ra(e,t){if($i===null){var n=$i=[];ea=0,ta=ud(),na={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ea++,t.then(ia,ia),t}function ia(){if(--ea===0&&$i!==null){na!==null&&(na.status=`fulfilled`);var e=$i;$i=null,ta=0,na=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function aa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var oa=M.S;M.S=function(e,t){Ql=we(),typeof t==`object`&&t&&typeof t.then==`function`&&ra(e,t),oa!==null&&oa(e,t)};var sa=P(null);function ca(){var e=sa.current;return e===null?Pl.pooledCache:e}function la(e,t){t===null?I(sa,sa.current):I(sa,t.pool)}function ua(){var e=ca();return e===null?null:{parent:Xi._currentValue,pool:e}}var da=Error(i(460)),fa=Error(i(474)),pa=Error(i(542)),ma={then:function(){}};function ha(e){return e=e.status,e===`fulfilled`||e===`rejected`}function ga(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(Xt,Xt),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,ba(e),e;default:if(typeof t.status==`string`)t.then(Xt,Xt);else{if(e=Pl,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,ba(e),e}throw va=t,da}}function _a(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(va=e,da):e}}var va=null;function ya(){if(va===null)throw Error(i(459));var e=va;return va=null,e}function ba(e){if(e===da||e===pa)throw Error(i(483))}var xa=null,Sa=0;function Ca(e){var t=Sa;return Sa+=1,xa===null&&(xa=[]),ga(xa,e,t)}function wa(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Ta(e,t){throw t.$$typeof===g?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Ea(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=Qr(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=ni(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===y?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===O&&_a(i)===t.type)?(t=a(t,n.props),wa(t,n),t.return=e,t):(t=ei(n.type,n.key,n.props,null,e.mode,r),wa(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=ii(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=ti(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=ni(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case _:return n=ei(t.type,t.key,t.props,null,e.mode,n),wa(n,t),n.return=e,n;case v:return t=ii(t,e.mode,n),t.return=e,t;case O:return t=_a(t),f(e,t,n)}if(re(t)||j(t))return t=ti(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Ca(t),n);if(t.$$typeof===C)return f(e,Gi(e,t),n);Ta(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case _:return n.key===i?l(e,t,n,r):null;case v:return n.key===i?u(e,t,n,r):null;case O:return n=_a(n),p(e,t,n,r)}if(re(n)||j(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Ca(n),r);if(n.$$typeof===C)return p(e,t,Gi(e,n),r);Ta(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case _:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case v:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case O:return r=_a(r),m(e,t,n,r,i)}if(re(r)||j(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,Ca(r),i);if(r.$$typeof===C)return m(e,t,n,Gi(t,r),i);Ta(t,r)}return null}function h(i,a,s,c){for(var l=null,u=null,d=a,h=a=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),a=o(_,a,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Ci&&gi(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(a=o(d,a,h),u===null?l=d:u.sibling=d,u=d);return Ci&&gi(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),a=o(g,a,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),Ci&&gi(i,h),l}function g(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(a,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(a,h),s=o(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(a,h),Ci&&gi(a,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return Ci&&gi(a,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,a,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=o(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(a,e)}),Ci&&gi(a,g),u}function b(e,r,o,c){if(typeof o==`object`&&o&&o.type===y&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case _:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===y){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===O&&_a(l)===r.type){n(e,r.sibling),c=a(r,o.props),wa(c,o),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}o.type===y?(c=ti(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=ei(o.type,o.key,o.props,null,e.mode,c),wa(c,o),c.return=e,e=c)}return s(e);case v:a:{for(l=o.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=ii(o,e.mode,c),c.return=e,e=c}return s(e);case O:return o=_a(o),b(e,r,o,c)}if(re(o))return h(e,r,o,c);if(j(o)){if(l=j(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),g(e,r,o,c)}if(typeof o.then==`function`)return b(e,r,Ca(o),c);if(o.$$typeof===C)return b(e,r,Gi(e,o),c);Ta(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=ni(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Sa=0;var i=b(e,t,n,r);return xa=null,i}catch(t){if(t===da||t===pa)throw t;var a=Xr(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Da=Ea(!0),Oa=Ea(!1),ka=!1;function Aa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function ja(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Ma(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Na(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Nl&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=qr(e),Kr(e,null,n),t}return Ur(e,r,t,n),qr(e)}function Pa(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xe(e,n)}}function Fa(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Ia=!1;function La(){if(Ia){var e=na;if(e!==null)throw e}}function Ra(e,t,n,r){Ia=!1;var i=e.updateQueue;ka=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Fl&f)===f:(r&f)===f){f!==0&&f===ta&&(Ia=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var m=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(m=g.payload,typeof m==`function`){d=m.call(_,d,f);break a}d=m;break a;case 3:m.flags=m.flags&-65537|128;case 0:if(m=g.payload,f=typeof m==`function`?m.call(_,d,f):m,f==null)break a;d=h({},d,f);break a;case 2:ka=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),Ul|=o,e.lanes=o,e.memoizedState=d}}function za(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Ba(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)za(n[e],t)}var Va=P(null),Ha=P(0);function Ua(e,t){e=Vl,I(Ha,e),I(Va,t),Vl=e|t.baseLanes}function Wa(){I(Ha,Vl),I(Va,Va.current)}function Ga(){Vl=Ha.current,F(Va),F(Ha)}var Ka=P(null),qa=null;function Ja(e){var t=e.alternate;I($a,$a.current&1),I(Ka,e),qa===null&&(t===null||Va.current!==null||t.memoizedState!==null)&&(qa=e)}function Ya(e){I($a,$a.current),I(Ka,e),qa===null&&(qa=e)}function Xa(e){e.tag===22?(I($a,$a.current),I(Ka,e),qa===null&&(qa=e)):Za(e)}function Za(){I($a,$a.current),I(Ka,Ka.current)}function Qa(e){F(Ka),qa===e&&(qa=null),F($a)}var $a=P(0);function eo(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||af(n)||of(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var to=0,Z=null,no=null,ro=null,io=!1,ao=!1,oo=!1,so=0,co=0,lo=null,uo=0;function fo(){throw Error(i(321))}function po(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!ur(e[n],t[n]))return!1;return!0}function mo(e,t,n,r,i,a){return to=a,Z=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,M.H=e===null||e.memoizedState===null?js:Ms,oo=!1,a=n(r,i),oo=!1,ao&&(a=go(t,n,r,i)),ho(e),a}function ho(e){M.H=As;var t=no!==null&&no.next!==null;if(to=0,ro=no=Z=null,io=!1,co=0,lo=null,t)throw Error(i(300));e===null||Ys||(e=e.dependencies,e!==null&&Hi(e)&&(Ys=!0))}function go(e,t,n,r){Z=e;var a=0;do{if(ao&&(lo=null),co=0,ao=!1,25<=a)throw Error(i(301));if(a+=1,ro=no=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}M.H=Ns,o=t(n,r)}while(ao);return o}function _o(){var e=M.H,t=e.useState()[0];return t=typeof t.then==`function`?wo(t):t,e=e.useState()[0],(no===null?null:no.memoizedState)!==e&&(Z.flags|=1024),t}function vo(){var e=so!==0;return so=0,e}function yo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function bo(e){if(io){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}io=!1}to=0,ro=no=Z=null,ao=!1,co=so=0,lo=null}function xo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return ro===null?Z.memoizedState=ro=e:ro=ro.next=e,ro}function So(){if(no===null){var e=Z.alternate;e=e===null?null:e.memoizedState}else e=no.next;var t=ro===null?Z.memoizedState:ro.next;if(t!==null)ro=t,no=e;else{if(e===null)throw Z.alternate===null?Error(i(467)):Error(i(310));no=e,e={memoizedState:no.memoizedState,baseState:no.baseState,baseQueue:no.baseQueue,queue:no.queue,next:null},ro===null?Z.memoizedState=ro=e:ro=ro.next=e}return ro}function Co(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function wo(e){var t=co;return co+=1,lo===null&&(lo=[]),e=ga(lo,e,t),t=Z,(ro===null?t.memoizedState:ro.next)===null&&(t=t.alternate,M.H=t===null||t.memoizedState===null?js:Ms),e}function To(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return wo(e);if(e.$$typeof===C)return Wi(e)}throw Error(i(438,String(e)))}function Eo(e){var t=null,n=Z.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Z.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Co(),Z.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=k;return t.index++,n}function Do(e,t){return typeof t==`function`?t(e):t}function Oo(e){return ko(So(),no,e)}function ko(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(to&f)===f:(Fl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===ta&&(d=!0);else if((to&p)===p){u=u.next,p===ta&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,Z.lanes|=p,Ul|=p;f=u.action,oo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,Z.lanes|=f,Ul|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!ur(o,e.memoizedState)&&(Ys=!0,d&&(n=na,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Ao(e){var t=So(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);ur(o,t.memoizedState)||(Ys=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function jo(e,t,n){var r=Z,a=So(),o=Ci;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!ur((no||a).memoizedState,n);if(s&&(a.memoizedState=n,Ys=!0),a=a.queue,ns(Po.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||ro!==null&&ro.memoizedState.tag&1){if(r.flags|=2048,Zo(9,{destroy:void 0},No.bind(null,r,a,n,t),null),Pl===null)throw Error(i(349));o||to&127||Mo(r,t,n)}return n}function Mo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Z.updateQueue,t===null?(t=Co(),Z.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function No(e,t,n,r){t.value=n,t.getSnapshot=r,Fo(t)&&Io(e)}function Po(e,t,n){return n(function(){Fo(t)&&Io(e)})}function Fo(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!ur(e,n)}catch{return!0}}function Io(e){var t=Gr(e,2);t!==null&&pu(t,e,2)}function Lo(e){var t=xo();if(typeof e==`function`){var n=e;if(e=n(),oo){Ne(!0);try{n()}finally{Ne(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:e},t}function Ro(e,t,n,r){return e.baseState=n,ko(e,no,typeof r==`function`?r:Do)}function zo(e,t,n,r,a){if(Ds(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};M.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,Bo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function Bo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=M.T,o={};M.T=o;try{var s=n(i,r),c=M.S;c!==null&&c(o,s),Vo(e,t,s)}catch(n){Uo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),M.T=a}}else try{a=n(i,r),Vo(e,t,a)}catch(n){Uo(e,t,n)}}function Vo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Ho(e,t,n)},function(n){return Uo(e,t,n)}):Ho(e,t,n)}function Ho(e,t,n){t.status=`fulfilled`,t.value=n,Wo(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Bo(e,n)))}function Uo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Wo(t),t=t.next;while(t!==r)}e.action=null}function Wo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Go(e,t){return t}function Ko(e,t){if(Ci){var n=Pl.formState;if(n!==null){a:{var r=Z;if(Ci){if(Si){b:{for(var i=Si,a=Ti;i.nodeType!==8;){if(!a){i=null;break b}if(i=cf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){Si=cf(i.nextSibling),r=i.data===`F!`;break a}}Di(r)}r=!1}r&&(t=n[0])}}return n=xo(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Go,lastRenderedState:t},n.queue=r,n=ws.bind(null,Z,r),r.dispatch=n,r=Lo(!1),a=Es.bind(null,Z,!1,r.queue),r=xo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=zo.bind(null,Z,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function qo(e){return Jo(So(),no,e)}function Jo(e,t,n){if(t=ko(e,t,Go)[0],e=Oo(Do)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=wo(t)}catch(e){throw e===da?pa:e}else r=t;t=So();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Z.flags|=2048,Zo(9,{destroy:void 0},Yo.bind(null,i,n),null)),[r,a,e]}function Yo(e,t){e.action=t}function Xo(e){var t=So(),n=no;if(n!==null)return Jo(t,n,e);So(),t=t.memoizedState,n=So();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function Zo(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Z.updateQueue,t===null&&(t=Co(),Z.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function Qo(){return So().memoizedState}function $o(e,t,n,r){var i=xo();Z.flags|=e,i.memoizedState=Zo(1|t,{destroy:void 0},n,r===void 0?null:r)}function es(e,t,n,r){var i=So();r=r===void 0?null:r;var a=i.memoizedState.inst;no!==null&&r!==null&&po(r,no.memoizedState.deps)?i.memoizedState=Zo(t,a,n,r):(Z.flags|=e,i.memoizedState=Zo(1|t,a,n,r))}function ts(e,t){$o(8390656,8,e,t)}function ns(e,t){es(2048,8,e,t)}function rs(e){Z.flags|=4;var t=Z.updateQueue;if(t===null)t=Co(),Z.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function is(e){var t=So().memoizedState;return rs({ref:t,nextImpl:e}),function(){if(Nl&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function as(e,t){return es(4,2,e,t)}function os(e,t){return es(4,4,e,t)}function ss(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function cs(e,t,n){n=n==null?null:n.concat([e]),es(4,4,ss.bind(null,t,e),n)}function ls(){}function us(e,t){var n=So();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&po(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function ds(e,t){var n=So();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&po(t,r[1]))return r[0];if(r=e(),oo){Ne(!0);try{e()}finally{Ne(!1)}}return n.memoizedState=[r,t],r}function fs(e,t,n){return n===void 0||to&1073741824&&!(Fl&261930)?e.memoizedState=t:(e.memoizedState=n,e=fu(),Z.lanes|=e,Ul|=e,n)}function ps(e,t,n,r){return ur(n,t)?n:Va.current===null?!(to&42)||to&1073741824&&!(Fl&261930)?(Ys=!0,e.memoizedState=n):(e=fu(),Z.lanes|=e,Ul|=e,t):(e=fs(e,n,r),ur(e,t)||(Ys=!0),e)}function ms(e,t,n,r,i){var a=N.p;N.p=a!==0&&8>a?a:8;var o=M.T,s={};M.T=s,Es(e,!1,t,n);try{var c=i(),l=M.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ts(e,t,aa(c,r),du(e)):Ts(e,t,r,du(e))}catch(n){Ts(e,t,{then:function(){},status:`rejected`,reason:n},du())}finally{N.p=a,o!==null&&s.types!==null&&(o.types=s.types),M.T=o}}function hs(){}function gs(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=_s(e).queue;ms(e,a,t,ie,n===null?hs:function(){return vs(e),n(r)})}function _s(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:ie,baseState:ie,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:ie},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Do,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function vs(e){var t=_s(e);t.next===null&&(t=e.alternate.memoizedState),Ts(e,t.next.queue,{},du())}function ys(){return Wi(Qf)}function bs(){return So().memoizedState}function xs(){return So().memoizedState}function Ss(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=du();e=Ma(n);var r=Na(t,e,n);r!==null&&(pu(r,t,n),Pa(r,t,n)),t={cache:Zi()},e.payload=t;return}t=t.return}}function Cs(e,t,n){var r=du();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ds(e)?Os(t,n):(n=Wr(e,t,n,r),n!==null&&(pu(n,e,r),ks(n,t,r)))}function ws(e,t,n){Ts(e,t,n,du())}function Ts(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Ds(e))Os(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,ur(s,o))return Ur(e,t,i,0),Pl===null&&Hr(),!1}catch{}if(n=Wr(e,t,i,r),n!==null)return pu(n,e,r),ks(n,t,r),!0}return!1}function Es(e,t,n,r){if(r={lane:2,revertLane:ud(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Ds(e)){if(t)throw Error(i(479))}else t=Wr(e,n,r,2),t!==null&&pu(t,e,2)}function Ds(e){var t=e.alternate;return e===Z||t!==null&&t===Z}function Os(e,t){ao=io=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function ks(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Xe(e,n)}}var As={readContext:Wi,use:To,useCallback:fo,useContext:fo,useEffect:fo,useImperativeHandle:fo,useLayoutEffect:fo,useInsertionEffect:fo,useMemo:fo,useReducer:fo,useRef:fo,useState:fo,useDebugValue:fo,useDeferredValue:fo,useTransition:fo,useSyncExternalStore:fo,useId:fo,useHostTransitionStatus:fo,useFormState:fo,useActionState:fo,useOptimistic:fo,useMemoCache:fo,useCacheRefresh:fo};As.useEffectEvent=fo;var js={readContext:Wi,use:To,useCallback:function(e,t){return xo().memoizedState=[e,t===void 0?null:t],e},useContext:Wi,useEffect:ts,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),$o(4194308,4,ss.bind(null,t,e),n)},useLayoutEffect:function(e,t){return $o(4194308,4,e,t)},useInsertionEffect:function(e,t){$o(4,2,e,t)},useMemo:function(e,t){var n=xo();t=t===void 0?null:t;var r=e();if(oo){Ne(!0);try{e()}finally{Ne(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=xo();if(n!==void 0){var i=n(t);if(oo){Ne(!0);try{n(t)}finally{Ne(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Cs.bind(null,Z,e),[r.memoizedState,e]},useRef:function(e){var t=xo();return e={current:e},t.memoizedState=e},useState:function(e){e=Lo(e);var t=e.queue,n=ws.bind(null,Z,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:ls,useDeferredValue:function(e,t){return fs(xo(),e,t)},useTransition:function(){var e=Lo(!1);return e=ms.bind(null,Z,e.queue,!0,!1),xo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=Z,a=xo();if(Ci){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),Pl===null)throw Error(i(349));Fl&127||Mo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,ts(Po.bind(null,r,o,e),[e]),r.flags|=2048,Zo(9,{destroy:void 0},No.bind(null,r,o,n,t),null),n},useId:function(){var e=xo(),t=Pl.identifierPrefix;if(Ci){var n=hi,r=mi;n=(r&~(1<<32-Pe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=so++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=uo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:ys,useFormState:Ko,useActionState:Ko,useOptimistic:function(e){var t=xo();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Es.bind(null,Z,!0,n),n.dispatch=t,[e,t]},useMemoCache:Eo,useCacheRefresh:function(){return xo().memoizedState=Ss.bind(null,Z)},useEffectEvent:function(e){var t=xo(),n={impl:e};return t.memoizedState=n,function(){if(Nl&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},Ms={readContext:Wi,use:To,useCallback:us,useContext:Wi,useEffect:ns,useImperativeHandle:cs,useInsertionEffect:as,useLayoutEffect:os,useMemo:ds,useReducer:Oo,useRef:Qo,useState:function(){return Oo(Do)},useDebugValue:ls,useDeferredValue:function(e,t){return ps(So(),no.memoizedState,e,t)},useTransition:function(){var e=Oo(Do)[0],t=So().memoizedState;return[typeof e==`boolean`?e:wo(e),t]},useSyncExternalStore:jo,useId:bs,useHostTransitionStatus:ys,useFormState:qo,useActionState:qo,useOptimistic:function(e,t){return Ro(So(),no,e,t)},useMemoCache:Eo,useCacheRefresh:xs};Ms.useEffectEvent=is;var Ns={readContext:Wi,use:To,useCallback:us,useContext:Wi,useEffect:ns,useImperativeHandle:cs,useInsertionEffect:as,useLayoutEffect:os,useMemo:ds,useReducer:Ao,useRef:Qo,useState:function(){return Ao(Do)},useDebugValue:ls,useDeferredValue:function(e,t){var n=So();return no===null?fs(n,e,t):ps(n,no.memoizedState,e,t)},useTransition:function(){var e=Ao(Do)[0],t=So().memoizedState;return[typeof e==`boolean`?e:wo(e),t]},useSyncExternalStore:jo,useId:bs,useHostTransitionStatus:ys,useFormState:Xo,useActionState:Xo,useOptimistic:function(e,t){var n=So();return no===null?(n.baseState=e,[e,n.queue.dispatch]):Ro(n,no,e,t)},useMemoCache:Eo,useCacheRefresh:xs};Ns.useEffectEvent=is;function Ps(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:h({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Fs={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=du(),i=Ma(r);i.payload=t,n!=null&&(i.callback=n),t=Na(e,i,r),t!==null&&(pu(t,e,r),Pa(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=du(),i=Ma(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Na(e,i,r),t!==null&&(pu(t,e,r),Pa(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=du(),r=Ma(n);r.tag=2,t!=null&&(r.callback=t),t=Na(e,r,n),t!==null&&(pu(t,e,n),Pa(t,e,n))}};function Is(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!dr(n,r)||!dr(i,a):!0}function Ls(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Fs.enqueueReplaceState(t,t.state,null)}function Rs(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=h({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function zs(e){Rr(e)}function Bs(e){console.error(e)}function Vs(e){Rr(e)}function Hs(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Us(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Ws(e,t,n){return n=Ma(n),n.tag=3,n.payload={element:null},n.callback=function(){Hs(e,t)},n}function Gs(e){return e=Ma(e),e.tag=3,e}function Ks(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){Us(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Us(t,n,r),typeof i!=`function`&&(tu===null?tu=new Set([this]):tu.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function qs(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Vi(t,n,a,!0),n=Ka.current,n!==null){switch(n.tag){case 31:case 13:return qa===null?Tu():n.alternate===null&&Hl===0&&(Hl=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===ma?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Wu(e,r,a)),!1;case 22:return n.flags|=65536,r===ma?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Wu(e,r,a)),!1}throw Error(i(435,n.tag))}return Wu(e,r,a),Tu(),!1}if(Ci)return t=Ka.current,t===null?(r!==Ei&&(t=Error(i(423),{cause:r}),Ni(oi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=oi(r,n),a=Ws(e.stateNode,r,a),Fa(e,a),Hl!==4&&(Hl=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==Ei&&(e=Error(i(422),{cause:r}),Ni(oi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=oi(o,n),Jl===null?Jl=[o]:Jl.push(o),Hl!==4&&(Hl=2),t===null)return!0;r=oi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=Ws(n.stateNode,r,e),Fa(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(tu===null||!tu.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Gs(a),Ks(a,e,n,r),Fa(n,a),!1}n=n.return}while(n!==null);return!1}var Js=Error(i(461)),Ys=!1;function Xs(e,t,n,r){t.child=e===null?Oa(t,null,n,r):Da(t,e.child,n,r)}function Zs(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return Ui(t),r=mo(e,t,n,o,a,i),s=vo(),e!==null&&!Ys?(yo(e,t,i),xc(e,t,i)):(Ci&&s&&vi(t),t.flags|=1,Xs(e,t,r,i),t.child)}function Qs(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!Zr(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,$s(e,t,a,r,i)):(e=ei(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!Sc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?dr:n,n(o,r)&&e.ref===t.ref)return xc(e,t,i)}return t.flags|=1,e=Qr(a,r),e.ref=t.ref,e.return=t,t.child=e}function $s(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(dr(a,r)&&e.ref===t.ref)if(Ys=!1,t.pendingProps=r=a,Sc(e,i))e.flags&131072&&(Ys=!0);else return t.lanes=e.lanes,xc(e,t,i)}return sc(e,t,n,r,i)}function ec(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return nc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&la(t,a===null?null:a.cachePool),a===null?Wa():Ua(t,a),Xa(t);else return r=t.lanes=536870912,nc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&la(t,null),Wa(),Za(t)):(la(t,a.cachePool),Ua(t,a),Za(t),t.memoizedState=null);return Xs(e,t,i,n),t.child}function tc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function nc(e,t,n,r,i){var a=ca();return a=a===null?null:{parent:Xi._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&la(t,null),Wa(),Xa(t),e!==null&&Vi(e,t,r,!0),t.childLanes=i,null}function rc(e,t){return t=gc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function ic(e,t,n){return Da(t,e.child,null,n),e=rc(t,t.pendingProps),e.flags|=2,Qa(t),t.memoizedState=null,e}function ac(e,t,n){var r=t.pendingProps,a=(t.flags&128)!=0;if(t.flags&=-129,e===null){if(Ci){if(r.mode===`hidden`)return e=rc(t,r),t.lanes=536870912,tc(null,e);if(Ya(t),(e=Si)?(e=rf(e,Ti),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:pi===null?null:{id:mi,overflow:hi},retryLane:536870912,hydrationErrors:null},n=ri(e),n.return=t,t.child=n,xi=t,Si=null)):e=null,e===null)throw Di(t);return t.lanes=536870912,null}return rc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(Ya(t),a)if(t.flags&256)t.flags&=-257,t=ic(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558));else if(Ys||Vi(e,t,n,!1),a=(n&e.childLanes)!==0,Ys||a){if(r=Pl,r!==null&&(s=Ze(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,Gr(e,s),pu(r,e,s),Js;Tu(),t=ic(e,t,n)}else e=o.treeContext,Si=cf(s.nextSibling),xi=t,Ci=!0,wi=null,Ti=!1,e!==null&&bi(t,e),t=rc(t,r),t.flags|=4096;return t}return e=Qr(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function oc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function sc(e,t,n,r,i){return Ui(t),n=mo(e,t,n,r,void 0,i),r=vo(),e!==null&&!Ys?(yo(e,t,i),xc(e,t,i)):(Ci&&r&&vi(t),t.flags|=1,Xs(e,t,n,i),t.child)}function cc(e,t,n,r,i,a){return Ui(t),t.updateQueue=null,n=go(t,r,n,i),ho(e),r=vo(),e!==null&&!Ys?(yo(e,t,a),xc(e,t,a)):(Ci&&r&&vi(t),t.flags|=1,Xs(e,t,n,a),t.child)}function lc(e,t,n,r,i){if(Ui(t),t.stateNode===null){var a=Jr,o=n.contextType;typeof o==`object`&&o&&(a=Wi(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Fs,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Aa(t),o=n.contextType,a.context=typeof o==`object`&&o?Wi(o):Jr,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Ps(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&Fs.enqueueReplaceState(a,a.state,null),Ra(t,r,a,i),La(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Rs(n,s);a.props=c;var l=a.context,u=n.contextType;o=Jr,typeof u==`object`&&u&&(o=Wi(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ls(t,a,r,o),ka=!1;var f=t.memoizedState;a.state=f,Ra(t,r,a,i),La(),l=t.memoizedState,s||f!==l||ka?(typeof d==`function`&&(Ps(t,n,d,r),l=t.memoizedState),(c=ka||Is(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,ja(e,t),o=t.memoizedProps,u=Rs(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=Jr,typeof l==`object`&&l&&(c=Wi(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ls(t,a,r,c),ka=!1,f=t.memoizedState,a.state=f,Ra(t,r,a,i),La();var p=t.memoizedState;o!==d||f!==p||ka||e!==null&&e.dependencies!==null&&Hi(e.dependencies)?(typeof s==`function`&&(Ps(t,n,s,r),p=t.memoizedState),(u=ka||Is(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Hi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,oc(e,t),r=(t.flags&128)!=0,a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Da(t,e.child,null,i),t.child=Da(t,null,n,i)):Xs(e,t,n,i),t.memoizedState=a.state,e=t.child):e=xc(e,t,i),e}function uc(e,t,n,r){return ji(),t.flags|=256,Xs(e,t,n,r),t.child}var dc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function fc(e){return{baseLanes:e,cachePool:ua()}}function pc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Kl),e}function mc(e,t,n){var r=t.pendingProps,a=!1,o=(t.flags&128)!=0,s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:($a.current&2)!=0),s&&(a=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Ci){if(a?Ja(t):Za(t),(e=Si)?(e=rf(e,Ti),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:pi===null?null:{id:mi,overflow:hi},retryLane:536870912,hydrationErrors:null},n=ri(e),n.return=t,t.child=n,xi=t,Si=null)):e=null,e===null)throw Di(t);return of(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(Za(t),a=t.mode,c=gc({mode:`hidden`,children:c},a),r=ti(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=fc(n),r.childLanes=pc(e,s,n),t.memoizedState=dc,tc(null,r)):(Ja(t),hc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(Ja(t),t.flags&=-257,t=_c(e,t,n)):t.memoizedState===null?(Za(t),c=r.fallback,a=t.mode,r=gc({mode:`visible`,children:r.children},a),c=ti(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Da(t,e.child,null,n),r=t.child,r.memoizedState=fc(n),r.childLanes=pc(e,s,n),t.memoizedState=dc,t=tc(null,r)):(Za(t),t.child=e.child,t.flags|=128,t=null);else if(Ja(t),of(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Ni({value:r,source:null,stack:null}),t=_c(e,t,n)}else if(Ys||Vi(e,t,n,!1),s=(n&e.childLanes)!==0,Ys||s){if(s=Pl,s!==null&&(r=Ze(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,Gr(e,r),pu(s,e,r),Js;af(c)||Tu(),t=_c(e,t,n)}else af(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,Si=cf(c.nextSibling),xi=t,Ci=!0,wi=null,Ti=!1,e!==null&&bi(t,e),t=hc(t,r.children),t.flags|=4096);return t}return a?(Za(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=Qr(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=ti(c,a,n,null),c.flags|=2):c=Qr(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,tc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=fc(n):(a=c.cachePool,a===null?a=ua():(l=Xi._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=pc(e,s,n),t.memoizedState=dc,tc(e.child,r)):(Ja(t),n=e.child,e=n.sibling,n=Qr(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function hc(e,t){return t=gc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function gc(e,t){return e=Xr(22,e,null,t),e.lanes=0,e}function _c(e,t,n){return Da(t,e.child,null,n),e=hc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function vc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),zi(e.return,t,n)}function yc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function bc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=$a.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,I($a,o),Xs(e,t,r,n),r=Ci?ui:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&vc(e,n,t);else if(e.tag===19)vc(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&eo(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),yc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&eo(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}yc(t,!0,n,null,a,r);break;case`together`:yc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function xc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ul|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(Vi(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=Qr(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=Qr(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Sc(e,t){return(e.lanes&t)===0?(e=e.dependencies,!!(e!==null&&Hi(e))):!0}function Cc(e,t,n){switch(t.tag){case 3:ue(t,t.stateNode.containerInfo),Li(t,Xi,e.memoizedState.cache),ji();break;case 27:case 5:fe(t);break;case 4:ue(t,t.stateNode.containerInfo);break;case 10:Li(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Ya(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(Ja(t),e=xc(e,t,n),e===null?null:e.sibling):mc(e,t,n):(Ja(t),t.flags|=128,null);Ja(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(Vi(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return bc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),I($a,$a.current),r)break;return null;case 22:return t.lanes=0,ec(e,t,n,t.pendingProps);case 24:Li(t,Xi,e.memoizedState.cache)}return xc(e,t,n)}function wc(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)Ys=!0;else{if(!Sc(e,n)&&!(t.flags&128))return Ys=!1,Cc(e,t,n);Ys=!!(e.flags&131072)}else Ys=!1,Ci&&t.flags&1048576&&_i(t,ui,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=_a(t.elementType),t.type=e,typeof e==`function`)Zr(e)?(r=Rs(e,r),t.tag=1,t=lc(null,t,e,r,n)):(t.tag=0,t=sc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===w){t.tag=11,t=Zs(null,t,e,r,n);break a}else if(a===D){t.tag=14,t=Qs(null,t,e,r,n);break a}}throw t=ne(e)||e,Error(i(306,t,``))}}return t;case 0:return sc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Rs(r,t.pendingProps),lc(e,t,r,a,n);case 3:a:{if(ue(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,ja(e,t),Ra(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Li(t,Xi,r),r!==o.cache&&Bi(t,[Xi],n,!0),La(),r=s.element,o.isDehydrated)if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=uc(e,t,r,n);break a}else if(r!==a){a=oi(Error(i(424)),t),Ni(a),t=uc(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Si=cf(e.firstChild),xi=t,Ci=!0,wi=null,Ti=!0,n=Oa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(ji(),r===a){t=xc(e,t,n);break a}Xs(e,t,r,n)}t=t.child}return t;case 26:return oc(e,t),e===null?(n=kf(t.type,null,t.pendingProps,null))?t.memoizedState=n:Ci||(n=t.type,e=t.pendingProps,r=Bd(ce.current).createElement(n),r[rt]=t,r[it]=e,Pd(r,n,e),gt(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return fe(t),e===null&&Ci&&(r=t.stateNode=ff(t.type,t.pendingProps,ce.current),xi=t,Ti=!0,a=Si,Zd(t.type)?(lf=a,Si=cf(r.firstChild)):Si=a),Xs(e,t,t.pendingProps.children,n),oc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Ci&&((a=r=Si)&&(r=tf(r,t.type,t.pendingProps,Ti),r===null?a=!1:(t.stateNode=r,xi=t,Si=cf(r.firstChild),Ti=!1,a=!0)),a||Di(t)),fe(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Ud(a,o)?r=null:s!==null&&Ud(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=mo(e,t,_o,null,null,n),Qf._currentValue=a),oc(e,t),Xs(e,t,r,n),t.child;case 6:return e===null&&Ci&&((e=n=Si)&&(n=nf(n,t.pendingProps,Ti),n===null?e=!1:(t.stateNode=n,xi=t,Si=null,e=!0)),e||Di(t)),null;case 13:return mc(e,t,n);case 4:return ue(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Da(t,null,r,n):Xs(e,t,r,n),t.child;case 11:return Zs(e,t,t.type,t.pendingProps,n);case 7:return Xs(e,t,t.pendingProps,n),t.child;case 8:return Xs(e,t,t.pendingProps.children,n),t.child;case 12:return Xs(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Li(t,t.type,r.value),Xs(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,Ui(t),a=Wi(a),r=r(a),t.flags|=1,Xs(e,t,r,n),t.child;case 14:return Qs(e,t,t.type,t.pendingProps,n);case 15:return $s(e,t,t.type,t.pendingProps,n);case 19:return bc(e,t,n);case 31:return ac(e,t,n);case 22:return ec(e,t,n,t.pendingProps);case 24:return Ui(t),r=Wi(Xi),e===null?(a=ca(),a===null&&(a=Pl,o=Zi(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Aa(t),Li(t,Xi,a)):((e.lanes&n)!==0&&(ja(e,t),Ra(t,null,null,n),La()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Li(t,Xi,r),r!==a.cache&&Bi(t,[Xi],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Li(t,Xi,r))),Xs(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Tc(e){e.flags|=4}function Ec(e,t,n,r,i){if((t=(e.mode&32)!=0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(Su())e.flags|=8192;else throw va=ma,fa}else e.flags&=-16777217}function Dc(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Wf(t))if(Su())e.flags|=8192;else throw va=ma,fa}function Oc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ge(),e.lanes|=t,ql|=t)}function kc(e,t){if(!Ci)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Ac(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function jc(e,t,n){var r=t.pendingProps;switch(yi(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ac(t),null;case 1:return Ac(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),Ri(Xi),de(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Ai(t)?Tc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Mi())),Ac(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Tc(t),o===null?(Ac(t),Ec(t,a,null,r,n)):(Ac(t),Dc(t,o))):o?o===e.memoizedState?(Ac(t),t.flags&=-16777217):(Tc(t),Ac(t),Dc(t,o)):(e=e.memoizedProps,e!==r&&Tc(t),Ac(t),Ec(t,a,e,r,n)),null;case 27:if(pe(t),n=ce.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Ac(t),null}e=se.current,Ai(t)?Oi(t,e):(e=ff(a,r,n),t.stateNode=e,Tc(t))}return Ac(t),null;case 5:if(pe(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return Ac(t),null}if(o=se.current,Ai(t))Oi(t,o);else{var s=Bd(ce.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[rt]=t,o[it]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Pd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Tc(t)}}return Ac(t),Ec(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Tc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=ce.current,Ai(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=xi,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[rt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||jd(e.nodeValue,n)),e||Di(t,!0)}else e=Bd(e).createTextNode(r),e[rt]=t,t.stateNode=e}return Ac(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Ai(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[rt]=t}else ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ac(t),e=!1}else n=Mi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(Qa(t),t):(Qa(t),null);if(t.flags&128)throw Error(i(558))}return Ac(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=Ai(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[rt]=t}else ji(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Ac(t),a=!1}else a=Mi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(Qa(t),t):(Qa(t),null)}return Qa(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Oc(t,t.updateQueue),Ac(t),null);case 4:return de(),e===null&&xd(t.stateNode.containerInfo),Ac(t),null;case 10:return Ri(t.type),Ac(t),null;case 19:if(F($a),r=t.memoizedState,r===null)return Ac(t),null;if(a=(t.flags&128)!=0,o=r.rendering,o===null)if(a)kc(r,!1);else{if(Hl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=eo(e),o!==null){for(t.flags|=128,kc(r,!1),e=o.updateQueue,t.updateQueue=e,Oc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)$r(n,e),n=n.sibling;return I($a,$a.current&1|2),Ci&&gi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&we()>$l&&(t.flags|=128,a=!0,kc(r,!1),t.lanes=4194304)}else{if(!a)if(e=eo(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Oc(t,e),kc(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!Ci)return Ac(t),null}else 2*we()-r.renderingStartTime>$l&&n!==536870912&&(t.flags|=128,a=!0,kc(r,!1),t.lanes=4194304);r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(Ac(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=we(),e.sibling=null,n=$a.current,I($a,a?n&1|2:n&1),Ci&&gi(t,r.treeForkCount),e);case 22:case 23:return Qa(t),Ga(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Ac(t),t.subtreeFlags&6&&(t.flags|=8192)):Ac(t),n=t.updateQueue,n!==null&&Oc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&F(sa),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),Ri(Xi),Ac(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Mc(e,t){switch(yi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ri(Xi),de(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return pe(t),null;case 31:if(t.memoizedState!==null){if(Qa(t),t.alternate===null)throw Error(i(340));ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(Qa(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));ji()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return F($a),null;case 4:return de(),null;case 10:return Ri(t.type),null;case 22:case 23:return Qa(t),Ga(),e!==null&&F(sa),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return Ri(Xi),null;case 25:return null;default:return null}}function Nc(e,t){switch(yi(t),t.tag){case 3:Ri(Xi),de();break;case 26:case 27:case 5:pe(t);break;case 4:de();break;case 31:t.memoizedState!==null&&Qa(t);break;case 13:Qa(t);break;case 19:F($a);break;case 10:Ri(t.type);break;case 22:case 23:Qa(t),Ga(),e!==null&&F(sa);break;case 24:Ri(Xi)}}function Pc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Uu(t,t.return,e)}}function Fc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Uu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Uu(t,t.return,e)}}function Ic(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Ba(t,n)}catch(t){Uu(e,e.return,t)}}}function Lc(e,t,n){n.props=Rs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Uu(e,t,n)}}function Rc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Uu(e,t,n)}}function zc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Uu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Uu(e,t,n)}else n.current=null}function Bc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Uu(e,e.return,t)}}function Vc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[it]=t}catch(t){Uu(e,e.return,t)}}function Hc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Uc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Hc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Wc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Xt));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Wc(e,t,n),e=e.sibling;e!==null;)Wc(e,t,n),e=e.sibling}function Gc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Gc(e,t,n),e=e.sibling;e!==null;)Gc(e,t,n),e=e.sibling}function Kc(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[rt]=e,t[it]=n}catch(t){Uu(e,e.return,t)}}var qc=!1,Jc=!1,Yc=!1,Xc=typeof WeakSet==`function`?WeakSet:Set,Zc=null;function Qc(e,t){if(e=e.containerInfo,Rd=sp,e=hr(e),gr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,Zc=t;Zc!==null;)if(t=Zc,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,Zc=e;else for(;Zc!==null;){switch(t=Zc,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=Rs(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Uu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ef(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ef(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,Zc=e;break}Zc=t.return}}function $c(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:ml(e,n),r&4&&Pc(5,n);break;case 1:if(ml(e,n),r&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Uu(n,n.return,e)}else{var i=Rs(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Uu(n,n.return,e)}}r&64&&Ic(n),r&512&&Rc(n,n.return);break;case 3:if(ml(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Ba(e,t)}catch(e){Uu(n,n.return,e)}}break;case 27:t===null&&r&4&&Kc(n);case 26:case 5:ml(e,n),t===null&&r&4&&Bc(n),r&512&&Rc(n,n.return);break;case 12:ml(e,n);break;case 31:ml(e,n),r&4&&al(e,n);break;case 13:ml(e,n),r&4&&ol(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=qu.bind(null,n),sf(e,n))));break;case 22:if(r=n.memoizedState!==null||qc,!r){t=t!==null&&t.memoizedState!==null||Jc,i=qc;var a=Jc;qc=r,(Jc=t)&&!a?gl(e,n,(n.subtreeFlags&8772)!=0):ml(e,n),qc=i,Jc=a}break;case 30:break;default:ml(e,n)}}function el(e){var t=e.alternate;t!==null&&(e.alternate=null,el(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&dt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var tl=null,nl=!1;function rl(e,t,n){for(n=n.child;n!==null;)il(e,t,n),n=n.sibling}function il(e,t,n){if(Me&&typeof Me.onCommitFiberUnmount==`function`)try{Me.onCommitFiberUnmount(je,n)}catch{}switch(n.tag){case 26:Jc||zc(n,t),rl(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:Jc||zc(n,t);var r=tl,i=nl;Zd(n.type)&&(tl=n.stateNode,nl=!1),rl(e,t,n),pf(n.stateNode),tl=r,nl=i;break;case 5:Jc||zc(n,t);case 6:if(r=tl,i=nl,tl=null,rl(e,t,n),tl=r,nl=i,tl!==null)if(nl)try{(tl.nodeType===9?tl.body:tl.nodeName===`HTML`?tl.ownerDocument.body:tl).removeChild(n.stateNode)}catch(e){Uu(n,t,e)}else try{tl.removeChild(n.stateNode)}catch(e){Uu(n,t,e)}break;case 18:tl!==null&&(nl?(e=tl,Qd(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):Qd(tl,n.stateNode));break;case 4:r=tl,i=nl,tl=n.stateNode.containerInfo,nl=!0,rl(e,t,n),tl=r,nl=i;break;case 0:case 11:case 14:case 15:Fc(2,n,t),Jc||Fc(4,n,t),rl(e,t,n);break;case 1:Jc||(zc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Lc(n,t,r)),rl(e,t,n);break;case 21:rl(e,t,n);break;case 22:Jc=(r=Jc)||n.memoizedState!==null,rl(e,t,n),Jc=r;break;default:rl(e,t,n)}}function al(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Np(e)}catch(e){Uu(t,t.return,e)}}}function ol(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Np(e)}catch(e){Uu(t,t.return,e)}}function sl(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new Xc),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new Xc),t;default:throw Error(i(435,e.tag))}}function cl(e,t){var n=sl(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=Ju.bind(null,e,t);t.then(r,r)}})}function ll(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(Zd(c.type)){tl=c.stateNode,nl=!1;break a}break;case 5:tl=c.stateNode,nl=!1;break a;case 3:case 4:tl=c.stateNode.containerInfo,nl=!0;break a}c=c.return}if(tl===null)throw Error(i(160));il(o,s,a),tl=null,nl=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)dl(t,e),t=t.sibling}var ul=null;function dl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:ll(t,e),fl(e),r&4&&(Fc(3,e,e.return),Pc(3,e),Fc(5,e,e.return));break;case 1:ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),r&64&&qc&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=ul;if(ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null)if(r===null)if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[ut]||o[rt]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Pd(o,r,n),o[rt]=e,gt(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Vf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[rt]=e,gt(o),r=o}e.stateNode=r}else Hf(a,e.type,e.stateNode);else e.stateNode=If(a,r,e.memoizedProps);else o===r?r===null&&e.stateNode!==null&&Vc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Hf(a,e.type,e.stateNode):If(a,r,e.memoizedProps))}break;case 27:ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),n!==null&&r&4&&Vc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(ll(t,e),fl(e),r&512&&(Jc||n===null||zc(n,n.return)),e.flags&32){a=e.stateNode;try{Ht(a,``)}catch(t){Uu(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,Vc(e,a,n===null?a:n.memoizedProps)),r&1024&&(Yc=!0);break;case 6:if(ll(t,e),fl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Uu(e,e.return,t)}}break;case 3:if(Bf=null,a=ul,ul=gf(t.containerInfo),ll(t,e),ul=a,fl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Np(t.containerInfo)}catch(t){Uu(e,e.return,t)}Yc&&(Yc=!1,pl(e));break;case 4:r=ul,ul=gf(e.stateNode.containerInfo),ll(t,e),fl(e),ul=r;break;case 12:ll(t,e),fl(e);break;case 31:ll(t,e),fl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 13:ll(t,e),fl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(Zl=we()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=qc,d=Jc;if(qc=u||a,Jc=d||l,ll(t,e),Jc=d,qc=u,fl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||qc||Jc||hl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Uu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){Uu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?$d(m,!0):$d(l.stateNode,!1)}catch(e){Uu(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,cl(e,n))));break;case 19:ll(t,e),fl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,cl(e,r)));break;case 30:break;case 21:break;default:ll(t,e),fl(e)}}function fl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Hc(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;Gc(e,Uc(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(Ht(o,``),n.flags&=-33),Gc(e,Uc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;Wc(e,Uc(e),s);break;default:throw Error(i(161))}}catch(t){Uu(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function pl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;pl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function ml(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)$c(e,t.alternate,t),t=t.sibling}function hl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Fc(4,t,t.return),hl(t);break;case 1:zc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Lc(t,t.return,n),hl(t);break;case 27:pf(t.stateNode);case 26:case 5:zc(t,t.return),hl(t);break;case 22:t.memoizedState===null&&hl(t);break;case 30:hl(t);break;default:hl(t)}e=e.sibling}}function gl(e,t,n){for(n&&=(t.subtreeFlags&8772)!=0,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:gl(i,a,n),Pc(4,a);break;case 1:if(gl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Uu(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)za(c[i],s)}catch(e){Uu(r,r.return,e)}}n&&o&64&&Ic(a),Rc(a,a.return);break;case 27:Kc(a);case 26:case 5:gl(i,a,n),n&&r===null&&o&4&&Bc(a),Rc(a,a.return);break;case 12:gl(i,a,n);break;case 31:gl(i,a,n),n&&o&4&&al(i,a);break;case 13:gl(i,a,n),n&&o&4&&ol(i,a);break;case 22:a.memoizedState===null&&gl(i,a,n),Rc(a,a.return);break;case 30:break;default:gl(i,a,n)}t=t.sibling}}function _l(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&Qi(n))}function vl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Qi(e))}function yl(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)bl(e,t,n,r),t=t.sibling}function bl(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:yl(e,t,n,r),i&2048&&Pc(9,t);break;case 1:yl(e,t,n,r);break;case 3:yl(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&Qi(e)));break;case 12:if(i&2048){yl(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Uu(t,t.return,e)}}else yl(e,t,n,r);break;case 31:yl(e,t,n,r);break;case 13:yl(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?yl(e,t,n,r):(a._visibility|=2,xl(e,t,n,r,(t.subtreeFlags&10256)!=0||!1)):a._visibility&2?yl(e,t,n,r):Sl(e,t),i&2048&&_l(o,t);break;case 24:yl(e,t,n,r),i&2048&&vl(t.alternate,t);break;default:yl(e,t,n,r)}}function xl(e,t,n,r,i){for(i&&=(t.subtreeFlags&10256)!=0||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:xl(a,o,s,c,i),Pc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,xl(a,o,s,c,i)):u._visibility&2?xl(a,o,s,c,i):Sl(a,o),i&&l&2048&&_l(o.alternate,o);break;case 24:xl(a,o,s,c,i),i&&l&2048&&vl(o.alternate,o);break;default:xl(a,o,s,c,i)}t=t.sibling}}function Sl(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Sl(n,r),i&2048&&_l(r.alternate,r);break;case 24:Sl(n,r),i&2048&&vl(r.alternate,r);break;default:Sl(n,r)}t=t.sibling}}var Cl=8192;function wl(e,t,n){if(e.subtreeFlags&Cl)for(e=e.child;e!==null;)Tl(e,t,n),e=e.sibling}function Tl(e,t,n){switch(e.tag){case 26:wl(e,t,n),e.flags&Cl&&e.memoizedState!==null&&Gf(n,ul,e.memoizedState,e.memoizedProps);break;case 5:wl(e,t,n);break;case 3:case 4:var r=ul;ul=gf(e.stateNode.containerInfo),wl(e,t,n),ul=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Cl,Cl=16777216,wl(e,t,n),Cl=r):wl(e,t,n));break;default:wl(e,t,n)}}function El(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Dl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Zc=r,Al(r,e)}El(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Ol(e),e=e.sibling}function Ol(e){switch(e.tag){case 0:case 11:case 15:Dl(e),e.flags&2048&&Fc(9,e,e.return);break;case 3:Dl(e);break;case 12:Dl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,kl(e)):Dl(e);break;default:Dl(e)}}function kl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];Zc=r,Al(r,e)}El(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Fc(8,t,t.return),kl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,kl(t));break;default:kl(t)}e=e.sibling}}function Al(e,t){for(;Zc!==null;){var n=Zc;switch(n.tag){case 0:case 11:case 15:Fc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:Qi(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,Zc=r;else a:for(n=e;Zc!==null;){r=Zc;var i=r.sibling,a=r.return;if(el(r),r===n){Zc=null;break a}if(i!==null){i.return=a,Zc=i;break a}Zc=a}}}var jl={getCacheForType:function(e){var t=Wi(Xi),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return Wi(Xi).controller.signal}},Ml=typeof WeakMap==`function`?WeakMap:Map,Nl=0,Pl=null,Q=null,Fl=0,Il=0,Ll=null,Rl=!1,zl=!1,Bl=!1,Vl=0,Hl=0,Ul=0,Wl=0,Gl=0,Kl=0,ql=0,Jl=null,Yl=null,Xl=!1,Zl=0,Ql=0,$l=1/0,eu=null,tu=null,nu=0,ru=null,iu=null,au=0,ou=0,su=null,cu=null,lu=0,uu=null;function du(){return Nl&2&&Fl!==0?Fl&-Fl:M.T===null?et():ud()}function fu(){if(Kl===0)if(!(Fl&536870912)||Ci){var e=ze;ze<<=1,!(ze&3932160)&&(ze=262144),Kl=e}else Kl=536870912;return e=Ka.current,e!==null&&(e.flags|=32),Kl}function pu(e,t,n){(e===Pl&&(Il===2||Il===9)||e.cancelPendingCommit!==null)&&(bu(e,0),_u(e,Fl,Kl,!1)),qe(e,n),(!(Nl&2)||e!==Pl)&&(e===Pl&&(!(Nl&2)&&(Wl|=n),Hl===4&&_u(e,Fl,Kl,!1)),nd(e))}function mu(e,t,n){if(Nl&6)throw Error(i(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||Ue(e,t),a=r?Ou(e,t):Eu(e,t,!0),o=r;do{if(a===0){zl&&!r&&_u(e,t,0,!1);break}else{if(n=e.current.alternate,o&&!gu(n)){a=Eu(e,t,!1),o=!1;continue}if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=Jl;var l=c.current.memoizedState.isDehydrated;if(l&&(bu(c,s).flags|=256),s=Eu(c,s,!1),s!==2){if(Bl&&!l){c.errorRecoveryDisabledLanes|=o,Wl|=o,a=4;break a}o=Yl,Yl=a,o!==null&&(Yl===null?Yl=o:Yl.push.apply(Yl,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){bu(e,0),_u(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:_u(r,t,Kl,!Rl);break a;case 2:Yl=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=Zl+300-we(),10<a)){if(_u(r,t,Kl,!Rl),He(r,0,!0)!==0)break a;au=t,r.timeoutHandle=Kd(hu.bind(null,r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,`Throttled`,-0,0),a);break a}hu(r,n,Yl,eu,Xl,t,Kl,Wl,ql,Rl,o,null,-0,0)}}break}while(1);nd(e)}function hu(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:Xt},Tl(t,a,d);var m=(a&62914560)===a?Zl-we():(a&4194048)===a?Ql-we():0;if(m=qf(d,m),m!==null){au=a,e.cancelPendingCommit=m(Fu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),_u(e,a,o,!l);return}}Fu(e,t,a,n,r,i,o,s,c)}function gu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!ur(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function _u(e,t,n,r){t&=~Gl,t&=~Wl,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Pe(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Ye(e,n,t)}function vu(){return Nl&6?!0:(rd(0,!1),!1)}function yu(){if(Q!==null){if(Il===0)var e=Q.return;else e=Q,Ii=Fi=null,bo(e),xa=null,Sa=0,e=Q;for(;e!==null;)Nc(e.alternate,e),e=e.return;Q=null}}function bu(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,qd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),au=0,yu(),Pl=e,Q=n=Qr(e.current,null),Fl=t,Il=0,Ll=null,Rl=!1,zl=Ue(e,t),Bl=!1,ql=Kl=Gl=Wl=Ul=Hl=0,Yl=Jl=null,Xl=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Pe(r),a=1<<i;t|=e[i],r&=~a}return Vl=t,Hr(),n}function xu(e,t){Z=null,M.H=As,t===da||t===pa?(t=ya(),Il=3):t===fa?(t=ya(),Il=4):Il=t===Js?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,Ll=t,Q===null&&(Hl=1,Hs(e,oi(t,e.current)))}function Su(){var e=Ka.current;return e===null?!0:(Fl&4194048)===Fl?qa===null:(Fl&62914560)===Fl||Fl&536870912?e===qa:!1}function Cu(){var e=M.H;return M.H=As,e===null?As:e}function wu(){var e=M.A;return M.A=jl,e}function Tu(){Hl=4,Rl||(Fl&4194048)!==Fl&&Ka.current!==null||(zl=!0),!(Ul&134217727)&&!(Wl&134217727)||Pl===null||_u(Pl,Fl,Kl,!1)}function Eu(e,t,n){var r=Nl;Nl|=2;var i=Cu(),a=wu();(Pl!==e||Fl!==t)&&(eu=null,bu(e,t)),t=!1;var o=Hl;a:do try{if(Il!==0&&Q!==null){var s=Q,c=Ll;switch(Il){case 8:yu(),o=6;break a;case 3:case 2:case 9:case 6:Ka.current===null&&(t=!0);var l=Il;if(Il=0,Ll=null,Mu(e,s,c,l),n&&zl){o=0;break a}break;default:l=Il,Il=0,Ll=null,Mu(e,s,c,l)}}Du(),o=Hl;break}catch(t){xu(e,t)}while(1);return t&&e.shellSuspendCounter++,Ii=Fi=null,Nl=r,M.H=i,M.A=a,Q===null&&(Pl=null,Fl=0,Hr()),o}function Du(){for(;Q!==null;)Au(Q)}function Ou(e,t){var n=Nl;Nl|=2;var r=Cu(),a=wu();Pl!==e||Fl!==t?(eu=null,$l=we()+500,bu(e,t)):zl=Ue(e,t);a:do try{if(Il!==0&&Q!==null){t=Q;var o=Ll;b:switch(Il){case 1:Il=0,Ll=null,Mu(e,t,o,1);break;case 2:case 9:if(ha(o)){Il=0,Ll=null,ju(t);break}t=function(){Il!==2&&Il!==9||Pl!==e||(Il=7),nd(e)},o.then(t,t);break a;case 3:Il=7;break a;case 4:Il=5;break a;case 7:ha(o)?(Il=0,Ll=null,ju(t)):(Il=0,Ll=null,Mu(e,t,o,7));break;case 5:var s=null;switch(Q.tag){case 26:s=Q.memoizedState;case 5:case 27:var c=Q;if(s?Wf(s):c.stateNode.complete){Il=0,Ll=null;var l=c.sibling;if(l!==null)Q=l;else{var u=c.return;u===null?Q=null:(Q=u,Nu(u))}break b}}Il=0,Ll=null,Mu(e,t,o,5);break;case 6:Il=0,Ll=null,Mu(e,t,o,6);break;case 8:yu(),Hl=6;break a;default:throw Error(i(462))}}ku();break}catch(t){xu(e,t)}while(1);return Ii=Fi=null,M.H=r,M.A=a,Nl=n,Q===null?(Pl=null,Fl=0,Hr(),Hl):0}function ku(){for(;Q!==null&&!Se();)Au(Q)}function Au(e){var t=wc(e.alternate,e,Vl);e.memoizedProps=e.pendingProps,t===null?Nu(e):Q=t}function ju(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=cc(n,t,t.pendingProps,t.type,void 0,Fl);break;case 11:t=cc(n,t,t.pendingProps,t.type.render,t.ref,Fl);break;case 5:bo(t);default:Nc(n,t),t=Q=$r(t,Vl),t=wc(n,t,Vl)}e.memoizedProps=e.pendingProps,t===null?Nu(e):Q=t}function Mu(e,t,n,r){Ii=Fi=null,bo(t),xa=null,Sa=0;var i=t.return;try{if(qs(e,i,t,n,Fl)){Hl=1,Hs(e,oi(n,e.current)),Q=null;return}}catch(t){if(i!==null)throw Q=i,t;Hl=1,Hs(e,oi(n,e.current)),Q=null;return}t.flags&32768?(Ci||r===1?e=!0:zl||Fl&536870912?e=!1:(Rl=e=!0,(r===2||r===9||r===3||r===6)&&(r=Ka.current,r!==null&&r.tag===13&&(r.flags|=16384))),Pu(t,e)):Nu(t)}function Nu(e){var t=e;do{if(t.flags&32768){Pu(t,Rl);return}e=t.return;var n=jc(t.alternate,t,Vl);if(n!==null){Q=n;return}if(t=t.sibling,t!==null){Q=t;return}Q=t=e}while(t!==null);Hl===0&&(Hl=5)}function Pu(e,t){do{var n=Mc(e.alternate,e);if(n!==null){n.flags&=32767,Q=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Q=e;return}Q=e=n}while(e!==null);Hl=6,Q=null}function Fu(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Bu();while(nu!==0);if(Nl&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=Vr,Je(e,n,o,s,c,l),e===Pl&&(Q=Pl=null,Fl=0),iu=t,ru=e,au=n,ou=o,su=a,cu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Yu(Oe,function(){return Vu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=M.T,M.T=null,a=N.p,N.p=2,s=Nl,Nl|=4;try{Qc(e,t,n)}finally{Nl=s,N.p=a,M.T=r}}nu=1,Iu(),Lu(),Ru()}}function Iu(){if(nu===1){nu=0;var e=ru,t=iu,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Nl;Nl|=4;try{dl(t,e);var a=zd,o=hr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&mr(s.ownerDocument.documentElement,s)){if(c!==null&&gr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=pr(s,h),v=pr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}sp=!!Rd,zd=Rd=null}finally{Nl=i,N.p=r,M.T=n}}e.current=t,nu=2}}function Lu(){if(nu===2){nu=0;var e=ru,t=iu,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=M.T,M.T=null;var r=N.p;N.p=2;var i=Nl;Nl|=4;try{$c(e,t.alternate,t)}finally{Nl=i,N.p=r,M.T=n}}nu=3}}function Ru(){if(nu===4||nu===3){nu=0,Ce();var e=ru,t=iu,n=au,r=cu;t.subtreeFlags&10256||t.flags&10256?nu=5:(nu=0,iu=ru=null,zu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(tu=null),$e(n),t=t.stateNode,Me&&typeof Me.onCommitFiberRoot==`function`)try{Me.onCommitFiberRoot(je,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=M.T,i=N.p,N.p=2,M.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{M.T=t,N.p=i}}au&3&&Bu(),nd(e),i=e.pendingLanes,n&261930&&i&42?e===uu?lu++:(lu=0,uu=e):lu=0,rd(0,!1)}}function zu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,Qi(t)))}function Bu(){return Iu(),Lu(),Ru(),Vu()}function Vu(){if(nu!==5)return!1;var e=ru,t=ou;ou=0;var n=$e(au),r=M.T,a=N.p;try{N.p=32>n?32:n,M.T=null,n=su,su=null;var o=ru,s=au;if(nu=0,iu=ru=null,au=0,Nl&6)throw Error(i(331));var c=Nl;if(Nl|=4,Ol(o.current),bl(o,o.current,s,n),Nl=c,rd(0,!1),Me&&typeof Me.onPostCommitFiberRoot==`function`)try{Me.onPostCommitFiberRoot(je,o)}catch{}return!0}finally{N.p=a,M.T=r,zu(e,t)}}function Hu(e,t,n){t=oi(n,t),t=Ws(e.stateNode,t,2),e=Na(e,t,2),e!==null&&(qe(e,2),nd(e))}function Uu(e,t,n){if(e.tag===3)Hu(e,e,n);else for(;t!==null;){if(t.tag===3){Hu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(tu===null||!tu.has(r))){e=oi(n,e),n=Gs(2),r=Na(t,n,2),r!==null&&(Ks(n,r,t,e),qe(r,2),nd(r));break}}t=t.return}}function Wu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ml;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Bl=!0,i.add(n),e=Gu.bind(null,e,t,n),t.then(e,e))}function Gu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Pl===e&&(Fl&n)===n&&(Hl===4||Hl===3&&(Fl&62914560)===Fl&&300>we()-Zl?!(Nl&2)&&bu(e,0):Gl|=n,ql===Fl&&(ql=0)),nd(e)}function Ku(e,t){t===0&&(t=Ge()),e=Gr(e,t),e!==null&&(qe(e,t),nd(e))}function qu(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Ku(e,n)}function Ju(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),Ku(e,n)}function Yu(e,t){return z(e,t)}var Xu=null,Zu=null,Qu=!1,$u=!1,ed=!1,td=0;function nd(e){e!==Zu&&e.next===null&&(Zu===null?Xu=Zu=e:Zu=Zu.next=e),$u=!0,Qu||(Qu=!0,ld())}function rd(e,t){if(!ed&&$u){ed=!0;do for(var n=!1,r=Xu;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Pe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,cd(r,a))}else a=Fl,a=He(r,r===Pl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Ue(r,a)||(n=!0,cd(r,a));r=r.next}while(n);ed=!1}}function id(){ad()}function ad(){$u=Qu=!1;var e=0;td!==0&&Gd()&&(e=td);for(var t=we(),n=null,r=Xu;r!==null;){var i=r.next,a=od(r,t);a===0?(r.next=null,n===null?Xu=i:n.next=i,i===null&&(Zu=n)):(n=r,(e!==0||a&3)&&($u=!0)),r=i}nu!==0&&nu!==5||rd(e,!1),td!==0&&(td=0)}function od(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Pe(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=We(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Pl,n=Fl,n=He(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(Il===2||Il===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&xe(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Ue(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&xe(r),$e(n)){case 2:case 8:n=De;break;case 32:n=Oe;break;case 268435456:n=ke;break;default:n=Oe}return r=sd.bind(null,e),n=z(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&xe(r),e.callbackPriority=2,e.callbackNode=null,2}function sd(e,t){if(nu!==0&&nu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Bu()&&e.callbackNode!==n)return null;var r=Fl;return r=He(e,e===Pl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(mu(e,r,t),od(e,we()),e.callbackNode!=null&&e.callbackNode===n?sd.bind(null,e):null)}function cd(e,t){if(Bu())return null;mu(e,t,!0)}function ld(){Yd(function(){Nl&6?z(Ee,id):ad()})}function ud(){if(td===0){var e=ta;e===0&&(e=Re,Re<<=1,!(Re&261888)&&(Re=256)),td=e}return td}function dd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:Yt(``+e)}function fd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function pd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=dd((i[it]||null).action),o=r.submitter;o&&(t=(t=o[it]||null)?dd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new vn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(td!==0){var e=o?fd(i,o):new FormData(i);gs(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?fd(i,o):new FormData(i),gs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var md=0;md<Ir.length;md++){var hd=Ir[md];Lr(hd.toLowerCase(),`on`+(hd[0].toUpperCase()+hd.slice(1)))}Lr(Or,`onAnimationEnd`),Lr(kr,`onAnimationIteration`),Lr(Ar,`onAnimationStart`),Lr(`dblclick`,`onDoubleClick`),Lr(`focusin`,`onFocus`),Lr(`focusout`,`onBlur`),Lr(jr,`onTransitionRun`),Lr(Mr,`onTransitionStart`),Lr(Nr,`onTransitionCancel`),Lr(Pr,`onTransitionEnd`),bt(`onMouseEnter`,[`mouseout`,`mouseover`]),bt(`onMouseLeave`,[`mouseout`,`mouseover`]),bt(`onPointerEnter`,[`pointerout`,`pointerover`]),bt(`onPointerLeave`,[`pointerout`,`pointerover`]),yt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),yt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),yt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),yt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),yt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),yt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var gd=`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(` `),_d=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(gd));function vd(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Rr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Rr(e)}i.currentTarget=null,a=c}}}}function $(e,t){var n=t[ot];n===void 0&&(n=t[ot]=new Set);var r=e+`__bubble`;n.has(r)||(Sd(t,e,2,!1),n.add(r))}function yd(e,t,n){var r=0;t&&(r|=4),Sd(n,e,r,t)}var bd=`_reactListening`+Math.random().toString(36).slice(2);function xd(e){if(!e[bd]){e[bd]=!0,_t.forEach(function(t){t!==`selectionchange`&&(_d.has(t)||yd(t,!1,e),yd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[bd]||(t[bd]=!0,yd(`selectionchange`,!1,t))}}function Sd(e,t,n,r){switch(mp(t)){case 2:var i=cp;break;case 8:i=lp;break;default:i=up}n=i.bind(null,t,n,e),i=void 0,!sn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function Cd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=ft(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}rn(function(){var r=a,i=Qt(n),s=[];a:{var c=Fr.get(e);if(c!==void 0){var l=vn,u=e;switch(e){case`keypress`:if(pn(n)===0)break a;case`keydown`:case`keyup`:l=Pn;break;case`focusin`:u=`focus`,l=En;break;case`focusout`:u=`blur`,l=En;break;case`beforeblur`:case`afterblur`:l=En;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=wn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=Tn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=In;break;case Or:case kr:case Ar:l=Dn;break;case Pr:l=W;break;case`scroll`:case`scrollend`:l=H;break;case`wheel`:l=Ln;break;case`copy`:case`cut`:case`paste`:l=On;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Fn;break;case`toggle`:case`beforetoggle`:l=Rn}var d=(t&4)!=0,f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=an(m,p),g!=null&&d.push(wd(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==Zt&&(u=n.relatedTarget||n.fromElement)&&(ft(u)||u[at]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?ft(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=wn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Fn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:mt(l),h=u==null?c:mt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,ft(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Ed,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Dd(s,c,l,d,!1),u!==null&&f!==null&&Dd(s,f,u,d,!0)}}a:{if(c=r?mt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=rr;else if(Qn(c))if(ir)v=lr;else{v=sr;var y=or}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Kt(r.elementType)&&(v=rr):v=cr;if(v&&=v(e,r)){$n(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Rt(c,`number`,c.value)}switch(y=r?mt(r):window,e){case`focusin`:(Qn(y)||y.contentEditable===`true`)&&(vr=y,yr=r,br=null);break;case`focusout`:br=yr=vr=null;break;case`mousedown`:xr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:xr=!1,Sr(s,n,i);break;case`selectionchange`:if(_r)break;case`keydown`:case`keyup`:Sr(s,n,i)}var b;if(Bn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else Jn?Kn(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Un&&n.locale!==`ko`&&(Jn||x!==`onCompositionStart`?x===`onCompositionEnd`&&Jn&&(b=fn()):(ln=i,un=`value`in ln?ln.value:ln.textContent,Jn=!0)),y=Td(r,x),0<y.length&&(x=new kn(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=qn(n),b!==null&&(x.data=b)))),(b=Hn?Yn(e,n):Xn(e,n))&&(x=Td(r,`onBeforeInput`),0<x.length&&(y=new kn(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),pd(s,e,r,n,i)}vd(s,t)})}function wd(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Td(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=an(e,n),i!=null&&r.unshift(wd(e,i,a)),i=an(e,t),i!=null&&r.push(wd(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Ed(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Dd(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=an(n,a),l!=null&&o.unshift(wd(n,l,c))):i||(l=an(n,a),l!=null&&o.push(wd(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Od=/\r\n?/g,kd=/\u0000|\uFFFD/g;function Ad(e){return(typeof e==`string`?e:``+e).replace(Od,`
9
+ `).replace(kd,``)}function jd(e,t){return t=Ad(t),Ad(e)===t}function Md(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||Ht(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&Ht(e,``+r);break;case`className`:Et(e,`class`,r);break;case`tabIndex`:Et(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Et(e,n,r);break;case`style`:Gt(e,r,o);break;case`data`:if(t!==`object`){Et(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Yt(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof o==`function`&&(n===`formAction`?(t!==`input`&&Md(e,t,`name`,a.name,a,null),Md(e,t,`formEncType`,a.formEncType,a,null),Md(e,t,`formMethod`,a.formMethod,a,null),Md(e,t,`formTarget`,a.formTarget,a,null)):(Md(e,t,`encType`,a.encType,a,null),Md(e,t,`method`,a.method,a,null),Md(e,t,`target`,a.target,a,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=Yt(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=Xt);break;case`onScroll`:r!=null&&$(`scroll`,e);break;case`onScrollEnd`:r!=null&&$(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=Yt(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:$(`beforetoggle`,e),$(`toggle`,e),Tt(e,`popover`,r);break;case`xlinkActuate`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Dt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Dt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Tt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=qt.get(n)||n,Tt(e,n,r))}}function Nd(e,t,n,r,a,o){switch(n){case`style`:Gt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?Ht(e,r):(typeof r==`number`||typeof r==`bigint`)&&Ht(e,``+r);break;case`onScroll`:r!=null&&$(`scroll`,e);break;case`onScrollEnd`:r!=null&&$(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=Xt);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!vt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[it]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):Tt(e,n,r)}}}function Pd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:$(`error`,e),$(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Md(e,t,o,s,n,null)}}a&&Md(e,t,`srcSet`,n.srcSet,n,null),r&&Md(e,t,`src`,n.src,n,null);return;case`input`:$(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:Md(e,t,r,d,n,null)}}Lt(e,o,c,l,u,s,a,!1);return;case`select`:for(a in $(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Md(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&zt(e,!!r,n,!0):zt(e,!!r,t,!1);return;case`textarea`:for(s in $(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:Md(e,t,s,c,n,null)}Vt(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Md(e,t,l,r,n,null)}return;case`dialog`:$(`beforetoggle`,e),$(`toggle`,e),$(`cancel`,e),$(`close`,e);break;case`iframe`:case`object`:$(`load`,e);break;case`video`:case`audio`:for(r=0;r<gd.length;r++)$(gd[r],e);break;case`image`:$(`error`,e),$(`load`,e);break;case`details`:$(`toggle`,e);break;case`embed`:case`source`:case`link`:$(`error`,e),$(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:Md(e,t,u,r,n,null)}return;default:if(Kt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Nd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Md(e,t,c,r,n,null))}function Fd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Md(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&Md(e,t,p,m,r,f)}}It(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||Md(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&Md(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?zt(e,!!n,n?[]:``,!1):zt(e,!!n,t,!0)):zt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Md(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&Md(e,t,s,a,r,o)}Bt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Md(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Md(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Md(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:Md(e,t,u,p,r,m)}return;default:if(Kt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Nd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Nd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Md(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Md(e,t,f,p,r,m)}function Id(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Ld(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Id(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Rd=null,zd=null;function Bd(e){return e.nodeType===9?e:e.ownerDocument}function Vd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Hd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Ud(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Wd=null;function Gd(){var e=window.event;return e&&e.type===`popstate`?e===Wd?!1:(Wd=e,!0):(Wd=null,!1)}var Kd=typeof setTimeout==`function`?setTimeout:void 0,qd=typeof clearTimeout==`function`?clearTimeout:void 0,Jd=typeof Promise==`function`?Promise:void 0,Yd=typeof queueMicrotask==`function`?queueMicrotask:Jd===void 0?Kd:function(e){return Jd.resolve(null).then(e).catch(Xd)};function Xd(e){setTimeout(function(){throw e})}function Zd(e){return e===`head`}function Qd(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Np(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)pf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,pf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ut]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&pf(e.ownerDocument.body);n=i}while(n);Np(t)}function $d(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function ef(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:ef(n),dt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function tf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[ut])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=cf(e.nextSibling),e===null)break}return null}function nf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=cf(e.nextSibling),e===null))return null;return e}function rf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=cf(e.nextSibling),e===null))return null;return e}function af(e){return e.data===`$?`||e.data===`$~`}function of(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function sf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function cf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var lf=null;function uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return cf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function df(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function ff(e,t,n){switch(t=Bd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function pf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);dt(e)}var mf=new Map,hf=new Set;function gf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var _f=N.d;N.d={f:vf,r:yf,D:Sf,C:Cf,L:wf,m:Tf,X:Df,S:Ef,M:Of};function vf(){var e=_f.f(),t=vu();return e||t}function yf(e){var t=pt(e);t!==null&&t.tag===5&&t.type===`form`?vs(t):_f.r(e)}var bf=typeof document>`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Ft(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),gt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Ft(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Ft(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Ft(n.imageSizes)+`"]`)):i+=`[href="`+Ft(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=h({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),gt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Ft(r)+`"][href="`+Ft(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=h({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),gt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=ht(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=h({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);gt(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=ht(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),gt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=ht(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=h({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),gt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var a=(a=ce.current)?gf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=ht(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=ht(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=ht(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Af(e){return`href="`+Ft(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return h({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),gt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Ft(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Ft(n.href)+`"]`);if(r)return t.instance=r,gt(r),r;var a=h({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),gt(r),Pd(r,`style`,a),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Af(n.href);var o=e.querySelector(jf(a));if(o)return t.state.loading|=4,t.instance=o,gt(o),o;r=Mf(n),(a=mf.get(a))&&Rf(r,a),o=(e.ownerDocument||e).createElement(`link`),gt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(a=e.querySelector(Ff(o)))?(t.instance=a,gt(a),a):(r=n,(a=mf.get(o))&&(r=h({},n),zf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),gt(a),Pd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Rf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function zf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Bf=null;function Vf(e,t,n){if(Bf===null){var r=new Map,i=Bf=new Map;i.set(n,r)}else i=Bf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ut]||a[rt]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Hf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,gt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),gt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&Kf===0&&(Kf=62500*Ld());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=Jf.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Qf={$$typeof:C,Provider:null,Consumer:null,_currentValue:ie,_currentValue2:ie,_threadCount:0};function $f(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ke(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ke(0),this.hiddenUpdates=Ke(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function ep(e,t,n,r,i,a,o,s,c,l,u,d){return e=new $f(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=Xr(3,null,null,t),e.current=a,a.stateNode=e,t=Zi(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Aa(a),e}function tp(e){return e?(e=Jr,e):Jr}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=Ma(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Na(e,r,t),n!==null&&(pu(n,e,t),Pa(n,e,t))}function rp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ip(e,t){rp(e,t),(e=e.alternate)&&rp(e,t)}function ap(e){if(e.tag===13||e.tag===31){var t=Gr(e,67108864);t!==null&&pu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=du();t=Qe(t);var n=Gr(e,t);n!==null&&pu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=2,up(e,t,n,r)}finally{N.p=a,M.T=i}}function lp(e,t,n,r){var i=M.T;M.T=null;var a=N.p;try{N.p=8,up(e,t,n,r)}finally{N.p=a,M.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)Cd(e,t,r,fp,n),Cp(e,r);else if(Tp(i,e,t,n,r))r.stopPropagation();else if(Cp(e,r),t&4&&-1<Sp.indexOf(e)){for(;i!==null;){var a=pt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Ve(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Pe(o);s.entanglements[1]|=c,o&=~c}nd(a),!(Nl&6)&&($l=we()+500,rd(0,!1))}}break;case 31:case 13:s=Gr(a,2),s!==null&&pu(s,a,2),vu(),ip(a,2)}if(a=dp(r),a===null&&Cd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else Cd(e,t,r,null,n)}}function dp(e){return e=Qt(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=ft(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return fp=e,null}function mp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(Te()){case Ee:return 2;case De:return 8;case Oe:case B:return 32;case ke:return 268435456;default:return 32}default:return 32}}var hp=!1,gp=null,_p=null,vp=null,yp=new Map,bp=new Map,xp=[],Sp=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Cp(e,t){switch(e){case`focusin`:case`focusout`:gp=null;break;case`dragenter`:case`dragleave`:_p=null;break;case`mouseover`:case`mouseout`:vp=null;break;case`pointerover`:case`pointerout`:yp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:bp.delete(t.pointerId)}}function wp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=pt(t),t!==null&&ap(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Tp(e,t,n,r,i){switch(t){case`focusin`:return gp=wp(gp,e,t,n,r,i),!0;case`dragenter`:return _p=wp(_p,e,t,n,r,i),!0;case`mouseover`:return vp=wp(vp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return yp.set(a,wp(yp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,bp.set(a,wp(bp.get(a)||null,e,t,n,r,i)),!0}return!1}function Ep(e){var t=ft(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,tt(e.priority,function(){op(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,tt(e.priority,function(){op(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Dp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=dp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Zt=r,n.target.dispatchEvent(r),Zt=null}else return t=pt(n),t!==null&&ap(t),e.blockedOn=n,!1;t.shift()}return!0}function Op(e,t,n){Dp(e)&&n.delete(t)}function kp(){hp=!1,gp!==null&&Dp(gp)&&(gp=null),_p!==null&&Dp(_p)&&(_p=null),vp!==null&&Dp(vp)&&(vp=null),yp.forEach(Op),bp.forEach(Op)}function Ap(e,n){e.blockedOn===n&&(e.blockedOn=null,hp||(hp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,kp)))}var jp=null;function Mp(e){jp!==e&&(jp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){jp===e&&(jp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(pp(r||n)===null)continue;break}var a=pt(n);a!==null&&(e.splice(t,3),t-=3,gs(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Np(e){function t(t){return Ap(t,e)}gp!==null&&Ap(gp,e),_p!==null&&Ap(_p,e),vp!==null&&Ap(vp,e),yp.forEach(t),bp.forEach(t);for(var n=0;n<xp.length;n++){var r=xp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<xp.length&&(n=xp[0],n.blockedOn===null);)Ep(n),n.blockedOn===null&&xp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[it]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[it]||null)s=o.formAction;else if(pp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Mp(n)}}}function Pp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Fp(e){this._internalRoot=e}Ip.prototype.render=Fp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;np(n,du(),e,t,null,null)},Ip.prototype.unmount=Fp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;np(e.current,2,null,e,null,null),vu(),t[at]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=et();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xp.length&&t!==0&&t<xp[n].priority;n++);xp.splice(n,0,e),n===0&&Ep(e)}};var Lp=n.version;if(Lp!==`19.2.4`)throw Error(i(527,Lp,`19.2.4`));N.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=d(t),e=e===null?null:p(e),e=e===null?null:e.stateNode,e};var Rp={bundleType:0,version:`19.2.4`,rendererPackageName:`react-dom`,currentDispatcherRef:M,reconcilerVersion:`19.2.4`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{je=zp.inject(Rp),Me=zp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=zs,s=Bs,c=Vs;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=ep(e,1,!1,null,null,n,r,null,o,s,c,Pp),e[at]=t.current,xd(e),new Fp(t)}})),g=c(o(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=h()}))(),1),_=c(u(),1),v=500,y=200,b=3e3,x=1e3,S=3e4,C=Object.freeze({counters:Object.freeze({}),latestBurst:null,burstRing:Object.freeze([]),burstSeq:0,lifecycleRing:Object.freeze([]),connectionSeq:0,connected:!1,reconnectAttempts:0,lastErrorAt:null,reconnectDelayMs:x}),w=new Set,T={},E=[],D=[],O=[],ee=!1,k=!1,A=null,j=null,te=null,ne=!1,re=typeof localStorage<`u`&&localStorage.getItem(`DEBUG_SSE`)===`1`;function M(e,t){re&&(t?console.debug(`[ssg-sse] ${e}`,t):console.debug(`[ssg-sse] ${e}`))}function N(){ne||(ne=!0,queueMicrotask(ie))}function ie(){ne=!1;let e=Object.keys(T),t=E,n=D,r=O,i=ee,a=A!==null||j!==null||te!==null;if(e.length===0&&t.length===0&&n.length===0&&r.length===0&&!i&&!a)return;let o=C.counters;if(e.length>0){let t={...C.counters};for(let n of e)t[n]=(t[n]??0)+(T[n]??0);o=Object.freeze(t),T={}}let s=C.burstRing,c=C.latestBurst,l=C.burstSeq;if(t.length>0){let e=C.burstRing.length+t.length>v?[...C.burstRing,...t].slice(-v):[...C.burstRing,...t];s=Object.freeze(e),c=t[t.length-1]??c,l=C.burstSeq+t.length,E=[]}if(n.length>0){let e=new Map;for(let t of n)e.set(t.tool_use_id,t);let t=!1,r=s.map(n=>{if(!n.tool_use_id)return n;let r=e.get(n.tool_use_id);if(!r)return n;t=!0;let i=n.output_tokens??0,a=n.complete_ts_ms??0,o=Math.max(i,r.output_tokens),s=Math.max(a,r.ts_ms),c=Math.max(n.complete_duration_ms??0,r.duration_ms??0);return{...n,output_tokens:o,complete_ts_ms:s,...c>0?{complete_duration_ms:c}:{}}});t&&(s=Object.freeze(r),l=C.burstSeq+1),D=[]}let u=C.lifecycleRing;if(r.length>0){let e=C.lifecycleRing.length+r.length>y?[...C.lifecycleRing,...r].slice(-y):[...C.lifecycleRing,...r];u=Object.freeze(e),O=[]}let d=C.connected,f=C.connectionSeq;i&&(d=k,f=C.connectionSeq+1,ee=!1);let p=C.reconnectAttempts,m=C.lastErrorAt,h=C.reconnectDelayMs;A!==null&&(p=A,A=null),j!==null&&(m=j,j=null),te!==null&&(h=te,te=null),C=Object.freeze({counters:o,latestBurst:c,burstRing:s,burstSeq:l,lifecycleRing:u,connectionSeq:f,connected:d,reconnectAttempts:p,lastErrorAt:m,reconnectDelayMs:h});for(let e of w)e()}var ae=null,oe=0,P=new Set,F=new Map,I=null,se=x,L=null;function ce(e,t){if(e===`eval-burst`){try{let e=JSON.parse(t.data);Array.isArray(e?.bursts)&&(E.push(...e.bursts),N())}catch{}return}if(e===`eval-burst-complete`){try{let e=JSON.parse(t.data);if(e&&typeof e.tool_use_id==`string`&&e.tool_use_id.length>0&&typeof e.output_tokens==`number`&&Number.isFinite(e.output_tokens)&&typeof e.ts_ms==`number`&&Number.isFinite(e.ts_ms)){let t={ts_ms:e.ts_ms,tool_use_id:e.tool_use_id,output_tokens:Math.max(0,e.output_tokens),...typeof e.duration_ms==`number`&&Number.isFinite(e.duration_ms)?{duration_ms:e.duration_ms}:{}};D.push(t),N()}}catch{}return}if(e===`session-lifecycle`){try{let e=JSON.parse(t.data);Array.isArray(e?.events)&&e.events.length>0&&(O.push(...e.events),N())}catch{}return}T[e]=(T[e]??0)+1,N()}function le(e){if(!ae||F.has(e))return;let t=t=>ce(e,t);ae.addEventListener(e,t),F.set(e,t)}var ue=0,de=0,fe=2e3;function pe(){if(ae)return;M(`opening EventSource`,{url:`/api/events`}),de=Date.now();let e=new EventSource(`/api/events`);ae=e,F.clear();for(let e of P)le(e);e.onopen=()=>{let e=C.lastErrorAt!==null;se=x,ue=0,A=0,te=x,ee=!0,k=!0,N(),e&&Se(`reconnect`),M(`connected`)},e.onerror=()=>{e.close(),ae=null,F.clear(),ee=!0,k=!1,j=Date.now(),N(),ue===0&&Date.now()-de<fe?M(`first-open interrupted (page-load race) — reconnect in ${se}ms`):console.warn(`[ssg-sse] EventSource error — reconnect in ${se}ms (attempt ${ue+1})`),oe>0&&(I=setTimeout(()=>{I=null,oe>0&&pe()},se),ue++,A=ue,se=Math.min(se*2,S),te=se,N())}}function me(){I&&=(clearTimeout(I),null),ae?.close(),ae=null,F.clear(),se=x,ue=0,A=0,te=x,ee=!0,k=!1,N()}typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>{document.visibilityState===`visible`&&oe!==0&&(ae||(I&&=(clearTimeout(I),null),M(`visibilitychange → reconnecting`),pe()))});function he(){for(let e of P)e!==`eval-burst`&&(T[e]=(T[e]??0)+1);N()}function R(e){return w.add(e),()=>{w.delete(e)}}function ge(){return C}var _e=2e3,ve=1e4,ye=1440*60*1e3,be=500,z=0,xe=null;function Se(e){let t=Date.now();if(t-z<ve){M(`hydrate skipped (cooldown)`,{reason:e});return}if(xe)return;let n=t-ye,r=C.burstRing[C.burstRing.length-1],i=C.burstRing.length>0&&r!==void 0?r.ts_ms+1:n,a=e===`reconnect`?Math.max(i,n):n,o=t;if(a>=o)return;z=t;let s=new AbortController;xe=s,M(`hydrate start`,{reason:e,since:a,until:o,ringLen:C.burstRing.length}),(async()=>{let t=a,n=0;try{for(;n<_e&&t<o&&!s.signal.aborted;){let r=Math.min(be,_e-n),i=await fetch(`/api/json/graph/backfill?since_ms=${t}&until_ms=${o}&limit=${r}`,{signal:s.signal,credentials:`same-origin`});if(!i.ok)break;let a=await i.json();if(!Array.isArray(a.bursts)||a.bursts.length===0||(E.push(...a.bursts),N(),n+=a.bursts.length,M(`hydrate page`,{reason:e,page:n,count:a.bursts.length}),a.bursts.length<r))break;let c=a.bursts[a.bursts.length-1];if(c===void 0)break;t=c.ts_ms+1}M(`hydrate done`,{reason:e,fetched:n})}catch(t){t.name!==`AbortError`&&console.warn(`[ssg-sse] ring hydration failed (${e})`,t)}finally{xe=null}})()}function Ce(e){for(let t of e)P.add(t),le(t);return oe++,oe===1&&(Se(`initial`),pe(),L=setInterval(he,b)),()=>{oe--,oe===0&&(me(),L&&=(clearInterval(L),null))}}var we=Object.freeze([`eval-burst`,`eval-burst-complete`,`counters-updated`]);function Te(){(0,_.useEffect)(()=>Ce(we),[])}function Ee(){return Te(),(0,_.useSyncExternalStore)(R,ge).latestBurst}function De(){return Te(),(0,_.useSyncExternalStore)(R,ge).burstRing}function Oe(){return Te(),(0,_.useSyncExternalStore)(R,ge).burstSeq}function B(){let e=document.querySelector(`meta[name="ssg-csrf"]`)?.content??``;return e?{"X-SigmaShake-Token":e}:{}}function ke(e){let t=(0,_.useSyncExternalStore)(R,ge),n=e.join(`,`);(0,_.useEffect)(()=>Ce(e),[n]);let r=(0,_.useRef)({});return(0,_.useMemo)(()=>{let n={},i=!1;for(let a of e){let e=t.counters[a]??0;n[a]=e,r.current[a]!==e&&(i=!0)}return!i&&Object.keys(r.current).length===e.length?r.current:(r.current=n,n)},[t,n])}function V(e,t=[]){let[n,r]=(0,_.useState)({data:null,loading:!0,error:null}),[i,a]=(0,_.useState)(0),o=(0,_.useRef)(null),s=(0,_.useCallback)(()=>{a(e=>e+1)},[]);return(0,_.useEffect)(()=>{let t=new AbortController;return o.current=t,r(e=>({...e,loading:!0,error:null})),fetch(e,{signal:t.signal}).then(async e=>{if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()}).then(e=>{t.signal.aborted||r({data:e,loading:!1,error:null})}).catch(e=>{if(t.signal.aborted)return;let n=e instanceof Error?e.message:String(e);r(e=>({...e,loading:!1,error:n}))}),()=>{t.abort()}},[e,i,...t]),{...n,refetch:s}}var Ae=e=>e,je=e=>({in:t=>t**+e,out:t=>1-(1-t)**e,inOut:t=>t<.5?(2*t)**e/2:1-(-2*t+2)**e/2}),Me=je(2),Ne=je(3),Pe=je(4),Fe=je(5),Ie={in:e=>1-Math.cos(e*Math.PI/2),out:e=>Math.sin(e*Math.PI/2),inOut:e=>-(Math.cos(Math.PI*e)-1)/2},Le={in:e=>e===0?0:2**(10*e-10),out:e=>e===1?1:1-2**(-10*e),inOut:e=>e===0?0:e===1?1:e<.5?2**(20*e-10)/2:(2-2**(-20*e+10))/2},Re={in:e=>1-Math.sqrt(1-e**2),out:e=>Math.sqrt(1-(e-1)**2),inOut:e=>e<.5?(1-Math.sqrt(1-(2*e)**2))/2:(Math.sqrt(1-(-2*e+2)**2)+1)/2};function ze(e=1.70158){let t=e;return e=>e*e*((t+1)*e-t)}function Be(e=1.70158){let t=e;return e=>{let n=e-1;return n*n*((t+1)*n+t)+1}}function Ve(e=1.70158){let t=e*1.525;return e=>e<.5?(2*e)**2*((t+1)*2*e-t)/2:((2*e-2)**2*((t+1)*(e*2-2)+t)+2)/2}function He(e=1,t=.3){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>e===0?0:e===1?1:n*2**(-10*e)*Math.sin((e-i)*(Math.PI*2)/r)+1}function Ue(e=1,t=.3){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>e===0?0:e===1?1:-(n*2**(10*(e-1))*Math.sin((e-1-i)*(Math.PI*2)/r))}function We(e=1,t=.45){let n=Math.max(e,1),r=Math.max(t,.08),i=r/(Math.PI*2)*Math.asin(1/n);return e=>{if(e===0)return 0;if(e===1)return 1;let t=e*2;return t<1?-.5*(n*2**(10*(t-1))*Math.sin((t-1-i)*(Math.PI*2)/r)):n*2**(-10*(t-1))*Math.sin((t-1-i)*(Math.PI*2)/r)*.5+1}}var Ge=7.5625,Ke=2.75,qe=e=>{if(e<1/Ke)return Ge*e*e;if(e<2/Ke){let t=e-1.5/Ke;return Ge*t*t+.75}if(e<2.5/Ke){let t=e-2.25/Ke;return Ge*t*t+.9375}let t=e-2.625/Ke;return Ge*t*t+.984375},Je=e=>1-qe(1-e),Ye=e=>e<.5?(1-qe(1-2*e))/2:(1+qe(2*e-1))/2;function Xe(e){let t=Math.max(1,Math.floor(e));return e=>e>=1?1:e<=0?0:Math.floor(e*t)/t}function Ze(e,t,n,r){let i=3*e,a=3*(n-e)-i,o=1-i-a,s=3*t,c=3*(r-t)-s,l=1-s-c,u=e=>((o*e+a)*e+i)*e,d=e=>((l*e+c)*e+s)*e,f=e=>(3*o*e+2*a)*e+i,p=e=>{let t=e;for(let n=0;n<8;n++){let n=u(t)-e;if(Math.abs(n)<1e-5)return t;let r=f(t);if(Math.abs(r)<1e-6)break;t-=n/r}let n=0,r=1;for(t=e;n<r;){let i=u(t);if(Math.abs(i-e)<1e-5)return t;e>i?n=t:r=t,t=(n+r)/2}return t};return e=>e<=0?0:e>=1?1:d(p(e))}function Qe(e={}){let t=Math.max(1,e.stiffness??100),n=Math.max(0,e.damping??10),r=Math.max(.01,e.mass??1),i=e.velocity??0,a=Math.sqrt(t/r),o=n/(2*Math.sqrt(t*r)),s;if(o<1){let e=a*Math.sqrt(1-o*o),t=(o*a+-i)/e;s=n=>1-Math.exp(-o*a*n)*(1*Math.cos(e*n)+t*Math.sin(e*n))}else if(o===1){let e=a+-i;s=t=>1-Math.exp(-a*t)*(1+e*t)}else{let e=Math.sqrt(o*o-1),t=-a*(o-e),n=-a*(o+e),r=(n- -i)/(n-t),c=1-r;s=e=>1-(r*Math.exp(t*e)+c*Math.exp(n*e))}let c=400;for(let e=16;e<=4e3;e+=16){let t=s(e/1e3);if(Math.abs(1-t)<.005){let t=s((e-16)/1e3);if(Math.abs(1-t)<.005){c=e;break}}c=e}let l=c/1e3;return{duration:c,fn:e=>s(Math.max(0,Math.min(1,e))*l)}}var $e={linear:Ae,inQuad:Me.in,outQuad:Me.out,inOutQuad:Me.inOut,inCubic:Ne.in,outCubic:Ne.out,inOutCubic:Ne.inOut,inQuart:Pe.in,outQuart:Pe.out,inOutQuart:Pe.inOut,inQuint:Fe.in,outQuint:Fe.out,inOutQuint:Fe.inOut,inSine:Ie.in,outSine:Ie.out,inOutSine:Ie.inOut,inExpo:Le.in,outExpo:Le.out,inOutExpo:Le.inOut,inCirc:Re.in,outCirc:Re.out,inOutCirc:Re.inOut,inBack:ze(),outBack:Be(),inOutBack:Ve(),inElastic:Ue(),outElastic:He(),inOutElastic:We(),inBounce:Je,outBounce:qe,inOutBounce:Ye};function et(e){if(typeof e==`function`)return e;if(e===void 0)return $e.outCubic;let t=$e[e];if(t)return t;let n=e.match(/^(\w+)\(([^)]*)\)$/);if(n){let e=n[1],t=n[2].split(`,`).map(e=>parseFloat(e.trim())).filter(e=>!Number.isNaN(e));switch(e){case`outElastic`:return He(t[0],t[1]);case`inElastic`:return Ue(t[0],t[1]);case`inOutElastic`:return We(t[0],t[1]);case`outBack`:return Be(t[0]);case`inBack`:return ze(t[0]);case`inOutBack`:return Ve(t[0]);case`steps`:return Xe(t[0]??4);case`cubicBezier`:return t.length>=4?Ze(t[0],t[1],t[2],t[3]):$e.outCubic;default:return $e.outCubic}}return $e.outCubic}function tt(e,t){if(t<=1||e===void 0||e===`first`)return 0;if(e===`last`)return t-1;if(e===`center`)return(t-1)/2;let n=Math.floor(e);return n<0?0:n>t-1?t-1:n}function nt(e,t={}){let n=t.start??0,r=t.direction===`reverse`;return(i,a)=>{if(a<=0)return n;let o=tt(t.from,a),s=Math.abs(i-o),c=Math.max(o,a-1-o),l=c===0?0:s/c,u=r?1-l:l,d;if(Array.isArray(e)){let[t,n]=e;d=t+u*(n-t)}else d=(r?c-s:s)*e;return n+d}}var rt=new Set([`duration`,`delay`,`ease`,`loop`,`alternate`,`onBegin`,`onUpdate`,`onComplete`]);function it(e){if(typeof e==`number`||typeof e==`string`)return e;if(Array.isArray(e)&&e.length===2){let[t,n]=e;if((typeof t==`number`||typeof t==`string`)&&(typeof n==`number`||typeof n==`string`))return[t,n]}return null}function at(e){return e?typeof e==`string`?typeof document>`u`?[]:Array.from(document.querySelectorAll(e)):e instanceof Element?[e]:`length`in e?Array.from(e):[]:[]}function ot(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}var st=/^(-?\d*\.?\d+)([a-z%]*)$/i;function ct(e){if(typeof e==`number`)return{value:e,unit:``};let t=e.trim().match(st);return t?{value:parseFloat(t[1]),unit:t[2]??``}:{value:0,unit:``}}function lt(e){return e.unit===``?`${e.value}`:`${e.value}${e.unit}`}var ut=new Set([`translate`,`translateX`,`translateY`,`translateZ`,`scale`,`scaleX`,`scaleY`,`scaleZ`,`rotate`,`rotateX`,`rotateY`,`rotateZ`,`skew`,`skewX`,`skewY`]),dt=new WeakMap;function ft(e){let t=dt.get(e);return t||(t={values:{}},dt.set(e,t)),t}function pt(e){let t=[];for(let[n,r]of Object.entries(e.values)){let e=r.unit||(n.startsWith(`rotate`)||n.startsWith(`skew`)?`deg`:n.startsWith(`translate`)?`px`:``);t.push(`${n}(${r.value}${e})`)}return t.join(` `)}function mt(e,t,n){if(ut.has(t)){let r=ft(e);r.values[t]=n,e.style.transform=pt(r);return}if(t===`opacity`){e.style.opacity=`${n.value}`;return}e.style.setProperty(t,lt(n))}function ht(e,t){return ut.has(t)?ft(e).values[t]||{value:t.startsWith(`scale`)?1:0,unit:``}:ct(e.style.getPropertyValue(t)||(typeof window<`u`?window.getComputedStyle(e).getPropertyValue(t):``)||(t===`opacity`?`1`:`0`))}function gt(e,t,n){return e+(t-e)*n}function _t(e,t,n){return e===void 0?0:typeof e==`number`?e:e(t,n)}function vt(e){if(e&&typeof e==`object`&&`spring`in e){let t=Qe(e.spring);return{ease:t.fn,duration:t.duration}}return{ease:et(e),duration:null}}var yt=0,bt=new Set;function xt(e){for(let t of bt){if(t.done||e<t.start)continue;let{target:n,options:r}=t,i=e-t.start,a=Math.max(1,n.duration),o=r.loop??!1,s=r.alternate===!0,c=o===!0?1/0:typeof o==`number`?Math.max(1,o):1,l=Math.floor(i/a),u=(i-l*a)/a,d=s&&l%2==1?1-u:u;if(l>=c){for(let e of n.props)mt(n.el,e.name,St(e.from,e.to,s&&c%2==0?0:1));r.onUpdate?.(1,n.el,n.index),r.onComplete?.(n.el,n.index),t.done=!0;continue}for(let e of n.props){let t=e.ease(Math.max(0,Math.min(1,d)));n.el!==null&&mt(n.el,e.name,St(e.from,e.to,t))}n.el!==null&&r.onUpdate?.(d,n.el,n.index)}for(let e of[...bt])e.done&&bt.delete(e);if(bt.size===0){yt=0;return}yt=requestAnimationFrame(xt)}function St(e,t,n){let r=e.unit||t.unit;return{value:gt(e.value,t.value,n),unit:r}}function Ct(){yt===0&&(typeof requestAnimationFrame>`u`||(yt=requestAnimationFrame(xt)))}function wt(e,t){let n=at(e),r=n.length,i=Object.keys(t).filter(e=>!rt.has(e)),a=ot(),{ease:o,duration:s}=vt(t.ease),c=t.duration??s??400,l=[],u=[],d=typeof performance<`u`?performance.now():Date.now(),f=(e,n)=>{let a=[];for(let n of i){let r=t[n];if(r===void 0)continue;let i=it(r);if(i===null)continue;let s,c;Array.isArray(i)?(s=ct(i[0]),c=ct(i[1])):(s=ht(e,n),c=ct(i)),a.push({name:n,from:s,to:c,ease:o})}return{el:e,index:n,props:a,duration:c,delay:_t(t.delay,n,r)}};if(n.length===0)return{cancel:()=>{},finished:Promise.resolve(),get done(){return!0}};let p=!1;for(let e=0;e<n.length;e++){let r=n[e],i=f(r,e),o=d+i.delay;if(t.onBegin?.(r,e),a){for(let e of i.props)mt(r,e.name,e.to);t.onUpdate?.(1,r,e),t.onComplete?.(r,e),u.push(Promise.resolve());continue}for(let e of i.props)mt(r,e.name,e.from);let s={target:i,start:o,options:t,done:!1};l.push(s),bt.add(s),u.push(new Promise(e=>{let n=t.onComplete,r=(t,r)=>{try{n?.(t,r)}finally{e()}};s.options={...t,onComplete:r}}))}return Ct(),{cancel(){if(!p){p=!0;for(let e of l)e.done=!0,bt.delete(e)}},finished:Promise.all(u).then(()=>void 0),get done(){return p||l.every(e=>e.done)}}}function Tt(e={}){let t=(0,_.useRef)(null),n=(0,_.useRef)(!1),r=(0,_.useCallback)(()=>{if(n.current)return;let r=t.current;if(!r)return;let i=r.querySelectorAll(`[data-reveal]`);if(i.length===0)return;if(n.current=!0,ot()){i.forEach(e=>{e.style.opacity=`1`,e.style.transform=``});return}let a=e.staggerMs??40,o=e.maxStaggerMs??320,s=Math.min(a,Math.max(10,o/i.length)),c=e.translateY??14,l=e.durationMs??520,u=e.from??`center`;i.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(${c}px)`,e.style.willChange=`transform, opacity`}),wt(Array.from(i),{opacity:[0,1],translateY:[c,0],duration:l,ease:`outBack(1.2)`,delay:nt(s,{from:u}),onComplete:e=>{e.style.willChange=``}})},[e.staggerMs,e.maxStaggerMs,e.durationMs,e.translateY,e.from]);return(0,_.useEffect)(()=>{let n=t.current;if(!n)return;if(typeof IntersectionObserver>`u`){r();return}let i=!1,a=new IntersectionObserver(e=>{for(let t of e)if(t.isIntersecting&&!i){r(),a.disconnect();return}},{threshold:.08});a.observe(n);let o=n.querySelectorAll(`[data-reveal]`);if(!ot()){let t=e.translateY??14;o.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(${t}px)`})}let s=n.getBoundingClientRect();return s.top<(window.innerHeight||document.documentElement.clientHeight)&&s.bottom>0&&(r(),a.disconnect()),()=>{i=!0,a.disconnect()}},[r,e.translateY]),t}function Et(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=Et(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function Dt(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=Et(e))&&(r&&(r+=` `),r+=t);return r}var Ot=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,kt=Dt,At=(e,t)=>n=>{if(t?.variants==null)return kt(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=Ot(t)||Ot(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return kt(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},jt=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},Mt=(e,t)=>({classGroupId:e,validator:t}),Nt=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),Pt=`-`,Ft=[],It=`arbitrary..`,Lt=e=>{let t=Bt(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return zt(e);let n=e.split(Pt);return Rt(n,n[0]===``&&n.length>1?1:0,t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?jt(i,t):t:i||Ft}return n[e]||Ft}}},Rt=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=Rt(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(Pt):e.slice(t).join(Pt),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},zt=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?It+r:void 0})(),Bt=e=>{let{theme:t,classGroups:n}=e;return Vt(n,t)},Vt=(e,t)=>{let n=Nt();for(let r in e){let i=e[r];Ht(i,n,r,t)}return n},Ht=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];Ut(i,t,n,r)}},Ut=(e,t,n,r)=>{if(typeof e==`string`){Wt(e,t,n);return}if(typeof e==`function`){Gt(e,t,n,r);return}Kt(e,t,n,r)},Wt=(e,t,n)=>{let r=e===``?t:qt(t,e);r.classGroupId=n},Gt=(e,t,n,r)=>{if(Jt(e)){Ht(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(Mt(n,e))},Kt=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];Ht(o,qt(t,a),n,r)}},qt=(e,t)=>{let n=e,r=t.split(Pt),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=Nt(),n.nextPart.set(t,i)),n=i}return n},Jt=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,Yt=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},Xt=`!`,Zt=`:`,Qt=[],$t=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),en=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===Zt){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(Xt)?(c=s.slice(0,-1),l=!0):s.startsWith(Xt)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return $t(t,l,c,u)};if(t){let e=t+Zt,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):$t(Qt,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},tn=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},nn=e=>({cache:Yt(e.cacheSize),parseClassName:en(e),sortModifiers:tn(e),...Lt(e)}),rn=/\s+/,an=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a}=t,o=[],s=e.trim().split(rn),c=``;for(let e=s.length-1;e>=0;--e){let t=s[e],{isExternal:l,modifiers:u,hasImportantModifier:d,baseClassName:f,maybePostfixModifierPosition:p}=n(t);if(l){c=t+(c.length>0?` `+c:c);continue}let m=!!p,h=r(m?f.substring(0,p):f);if(!h){if(!m){c=t+(c.length>0?` `+c:c);continue}if(h=r(f),!h){c=t+(c.length>0?` `+c:c);continue}m=!1}let g=u.length===0?``:u.length===1?u[0]:a(u).join(`:`),_=d?g+Xt:g,v=_+h;if(o.indexOf(v)>-1)continue;o.push(v);let y=i(h,m);for(let e=0;e<y.length;++e){let t=y[e];o.push(_+t)}c=t+(c.length>0?` `+c:c)}return c},on=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=sn(n))&&(i&&(i+=` `),i+=r);return i},sn=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=sn(e[r]))&&(n&&(n+=` `),n+=t);return n},cn=(e,...t)=>{let n,r,i,a,o=o=>(n=nn(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=an(e,n);return i(e,a),a};return a=o,(...e)=>a(on(...e))},ln=[],un=e=>{let t=t=>t[e]||ln;return t.isThemeGetter=!0,t},dn=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,fn=/^\((?:(\w[\w-]*):)?(.+)\)$/i,pn=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,mn=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,hn=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,gn=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,_n=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,vn=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,yn=e=>pn.test(e),H=e=>!!e&&!Number.isNaN(Number(e)),bn=e=>!!e&&Number.isInteger(Number(e)),xn=e=>e.endsWith(`%`)&&H(e.slice(0,-1)),Sn=e=>mn.test(e),Cn=()=>!0,wn=e=>hn.test(e)&&!gn.test(e),Tn=()=>!1,En=e=>_n.test(e),Dn=e=>vn.test(e),On=e=>!U(e)&&!W(e),kn=e=>Wn(e,Jn,Tn),U=e=>dn.test(e),An=e=>Wn(e,Yn,wn),jn=e=>Wn(e,Xn,H),Mn=e=>Wn(e,Qn,Cn),Nn=e=>Wn(e,Zn,Tn),Pn=e=>Wn(e,Kn,Tn),Fn=e=>Wn(e,qn,Dn),In=e=>Wn(e,$n,En),W=e=>fn.test(e),Ln=e=>Gn(e,Yn),Rn=e=>Gn(e,Zn),zn=e=>Gn(e,Kn),Bn=e=>Gn(e,Jn),Vn=e=>Gn(e,qn),Hn=e=>Gn(e,$n,!0),Un=e=>Gn(e,Qn,!0),Wn=(e,t,n)=>{let r=dn.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Gn=(e,t,n=!1)=>{let r=fn.exec(e);return r?r[1]?t(r[1]):n:!1},Kn=e=>e===`position`||e===`percentage`,qn=e=>e===`image`||e===`url`,Jn=e=>e===`length`||e===`size`||e===`bg-size`,Yn=e=>e===`length`,Xn=e=>e===`number`,Zn=e=>e===`family-name`,Qn=e=>e===`number`||e===`weight`,$n=e=>e===`shadow`,er=cn(()=>{let e=un(`color`),t=un(`font`),n=un(`text`),r=un(`font-weight`),i=un(`tracking`),a=un(`leading`),o=un(`breakpoint`),s=un(`container`),c=un(`spacing`),l=un(`radius`),u=un(`shadow`),d=un(`inset-shadow`),f=un(`text-shadow`),p=un(`drop-shadow`),m=un(`blur`),h=un(`perspective`),g=un(`aspect`),_=un(`ease`),v=un(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),W,U],S=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],C=()=>[`auto`,`contain`,`none`],w=()=>[W,U,c],T=()=>[yn,`full`,`auto`,...w()],E=()=>[bn,`none`,`subgrid`,W,U],D=()=>[`auto`,{span:[`full`,bn,W,U]},bn,W,U],O=()=>[bn,`auto`,W,U],ee=()=>[`auto`,`min`,`max`,`fr`,W,U],k=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],A=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],j=()=>[`auto`,...w()],te=()=>[yn,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...w()],ne=()=>[yn,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...w()],re=()=>[yn,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...w()],M=()=>[e,W,U],N=()=>[...b(),zn,Pn,{position:[W,U]}],ie=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],ae=()=>[`auto`,`cover`,`contain`,Bn,kn,{size:[W,U]}],oe=()=>[xn,Ln,An],P=()=>[``,`none`,`full`,l,W,U],F=()=>[``,H,Ln,An],I=()=>[`solid`,`dashed`,`dotted`,`double`],se=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],L=()=>[H,xn,zn,Pn],ce=()=>[``,`none`,m,W,U],le=()=>[`none`,H,W,U],ue=()=>[`none`,H,W,U],de=()=>[H,W,U],fe=()=>[yn,`full`,...w()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[Sn],breakpoint:[Sn],color:[Cn],container:[Sn],"drop-shadow":[Sn],ease:[`in`,`out`,`in-out`],font:[On],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[Sn],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[Sn],shadow:[Sn],spacing:[`px`,H],text:[Sn],"text-shadow":[Sn],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,yn,U,W,g]}],container:[`container`],columns:[{columns:[H,U,W,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:S()}],"overflow-x":[{"overflow-x":S()}],"overflow-y":[{"overflow-y":S()}],overscroll:[{overscroll:C()}],"overscroll-x":[{"overscroll-x":C()}],"overscroll-y":[{"overscroll-y":C()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{"inset-s":T(),start:T()}],end:[{"inset-e":T(),end:T()}],"inset-bs":[{"inset-bs":T()}],"inset-be":[{"inset-be":T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[bn,`auto`,W,U]}],basis:[{basis:[yn,`full`,`auto`,s,...w()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[H,yn,`auto`,`initial`,`none`,U]}],grow:[{grow:[``,H,W,U]}],shrink:[{shrink:[``,H,W,U]}],order:[{order:[bn,`first`,`last`,`none`,W,U]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:D()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:D()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":ee()}],"auto-rows":[{"auto-rows":ee()}],gap:[{gap:w()}],"gap-x":[{"gap-x":w()}],"gap-y":[{"gap-y":w()}],"justify-content":[{justify:[...k(),`normal`]}],"justify-items":[{"justify-items":[...A(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...A()]}],"align-content":[{content:[`normal`,...k()]}],"align-items":[{items:[...A(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...A(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":k()}],"place-items":[{"place-items":[...A(),`baseline`]}],"place-self":[{"place-self":[`auto`,...A()]}],p:[{p:w()}],px:[{px:w()}],py:[{py:w()}],ps:[{ps:w()}],pe:[{pe:w()}],pbs:[{pbs:w()}],pbe:[{pbe:w()}],pt:[{pt:w()}],pr:[{pr:w()}],pb:[{pb:w()}],pl:[{pl:w()}],m:[{m:j()}],mx:[{mx:j()}],my:[{my:j()}],ms:[{ms:j()}],me:[{me:j()}],mbs:[{mbs:j()}],mbe:[{mbe:j()}],mt:[{mt:j()}],mr:[{mr:j()}],mb:[{mb:j()}],ml:[{ml:j()}],"space-x":[{"space-x":w()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":w()}],"space-y-reverse":[`space-y-reverse`],size:[{size:te()}],"inline-size":[{inline:[`auto`,...ne()]}],"min-inline-size":[{"min-inline":[`auto`,...ne()]}],"max-inline-size":[{"max-inline":[`none`,...ne()]}],"block-size":[{block:[`auto`,...re()]}],"min-block-size":[{"min-block":[`auto`,...re()]}],"max-block-size":[{"max-block":[`none`,...re()]}],w:[{w:[s,`screen`,...te()]}],"min-w":[{"min-w":[s,`screen`,`none`,...te()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...te()]}],h:[{h:[`screen`,`lh`,...te()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...te()]}],"max-h":[{"max-h":[`screen`,`lh`,...te()]}],"font-size":[{text:[`base`,n,Ln,An]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,Un,Mn]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,xn,U]}],"font-family":[{font:[Rn,Nn,t]}],"font-features":[{"font-features":[U]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,W,U]}],"line-clamp":[{"line-clamp":[H,`none`,W,jn]}],leading:[{leading:[a,...w()]}],"list-image":[{"list-image":[`none`,W,U]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,W,U]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...I(),`wavy`]}],"text-decoration-thickness":[{decoration:[H,`from-font`,`auto`,W,An]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[H,`auto`,W,U]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:w()}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,W,U]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,W,U]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:N()}],"bg-repeat":[{bg:ie()}],"bg-size":[{bg:ae()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},bn,W,U],radial:[``,W,U],conic:[bn,W,U]},Vn,Fn]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:oe()}],"gradient-via-pos":[{via:oe()}],"gradient-to-pos":[{to:oe()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:P()}],"rounded-s":[{"rounded-s":P()}],"rounded-e":[{"rounded-e":P()}],"rounded-t":[{"rounded-t":P()}],"rounded-r":[{"rounded-r":P()}],"rounded-b":[{"rounded-b":P()}],"rounded-l":[{"rounded-l":P()}],"rounded-ss":[{"rounded-ss":P()}],"rounded-se":[{"rounded-se":P()}],"rounded-ee":[{"rounded-ee":P()}],"rounded-es":[{"rounded-es":P()}],"rounded-tl":[{"rounded-tl":P()}],"rounded-tr":[{"rounded-tr":P()}],"rounded-br":[{"rounded-br":P()}],"rounded-bl":[{"rounded-bl":P()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-bs":[{"border-bs":F()}],"border-w-be":[{"border-be":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":F()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...I(),`hidden`,`none`]}],"divide-style":[{divide:[...I(),`hidden`,`none`]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-bs":[{"border-bs":M()}],"border-color-be":[{"border-be":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...I(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[H,W,U]}],"outline-w":[{outline:[``,H,Ln,An]}],"outline-color":[{outline:M()}],shadow:[{shadow:[``,`none`,u,Hn,In]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":[`none`,d,Hn,In]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:F()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[H,An]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":[`none`,f,Hn,In]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[H,W,U]}],"mix-blend":[{"mix-blend":[...se(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":se()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[H]}],"mask-image-linear-from-pos":[{"mask-linear-from":L()}],"mask-image-linear-to-pos":[{"mask-linear-to":L()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":L()}],"mask-image-t-to-pos":[{"mask-t-to":L()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":L()}],"mask-image-r-to-pos":[{"mask-r-to":L()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":L()}],"mask-image-b-to-pos":[{"mask-b-to":L()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":L()}],"mask-image-l-to-pos":[{"mask-l-to":L()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":L()}],"mask-image-x-to-pos":[{"mask-x-to":L()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":L()}],"mask-image-y-to-pos":[{"mask-y-to":L()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[W,U]}],"mask-image-radial-from-pos":[{"mask-radial-from":L()}],"mask-image-radial-to-pos":[{"mask-radial-to":L()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[H]}],"mask-image-conic-from-pos":[{"mask-conic-from":L()}],"mask-image-conic-to-pos":[{"mask-conic-to":L()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:N()}],"mask-repeat":[{mask:ie()}],"mask-size":[{mask:ae()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,W,U]}],filter:[{filter:[``,`none`,W,U]}],blur:[{blur:ce()}],brightness:[{brightness:[H,W,U]}],contrast:[{contrast:[H,W,U]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,Hn,In]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:[``,H,W,U]}],"hue-rotate":[{"hue-rotate":[H,W,U]}],invert:[{invert:[``,H,W,U]}],saturate:[{saturate:[H,W,U]}],sepia:[{sepia:[``,H,W,U]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,W,U]}],"backdrop-blur":[{"backdrop-blur":ce()}],"backdrop-brightness":[{"backdrop-brightness":[H,W,U]}],"backdrop-contrast":[{"backdrop-contrast":[H,W,U]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,H,W,U]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[H,W,U]}],"backdrop-invert":[{"backdrop-invert":[``,H,W,U]}],"backdrop-opacity":[{"backdrop-opacity":[H,W,U]}],"backdrop-saturate":[{"backdrop-saturate":[H,W,U]}],"backdrop-sepia":[{"backdrop-sepia":[``,H,W,U]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":w()}],"border-spacing-x":[{"border-spacing-x":w()}],"border-spacing-y":[{"border-spacing-y":w()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,W,U]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[H,`initial`,W,U]}],ease:[{ease:[`linear`,`initial`,_,W,U]}],delay:[{delay:[H,W,U]}],animate:[{animate:[`none`,v,W,U]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,W,U]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:le()}],"rotate-x":[{"rotate-x":le()}],"rotate-y":[{"rotate-y":le()}],"rotate-z":[{"rotate-z":le()}],scale:[{scale:ue()}],"scale-x":[{"scale-x":ue()}],"scale-y":[{"scale-y":ue()}],"scale-z":[{"scale-z":ue()}],"scale-3d":[`scale-3d`],skew:[{skew:de()}],"skew-x":[{"skew-x":de()}],"skew-y":[{"skew-y":de()}],transform:[{transform:[W,U,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:fe()}],"translate-x":[{"translate-x":fe()}],"translate-y":[{"translate-y":fe()}],"translate-z":[{"translate-z":fe()}],"translate-none":[`translate-none`],accent:[{accent:M()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:M()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,W,U]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scroll-m":[{"scroll-m":w()}],"scroll-mx":[{"scroll-mx":w()}],"scroll-my":[{"scroll-my":w()}],"scroll-ms":[{"scroll-ms":w()}],"scroll-me":[{"scroll-me":w()}],"scroll-mbs":[{"scroll-mbs":w()}],"scroll-mbe":[{"scroll-mbe":w()}],"scroll-mt":[{"scroll-mt":w()}],"scroll-mr":[{"scroll-mr":w()}],"scroll-mb":[{"scroll-mb":w()}],"scroll-ml":[{"scroll-ml":w()}],"scroll-p":[{"scroll-p":w()}],"scroll-px":[{"scroll-px":w()}],"scroll-py":[{"scroll-py":w()}],"scroll-ps":[{"scroll-ps":w()}],"scroll-pe":[{"scroll-pe":w()}],"scroll-pbs":[{"scroll-pbs":w()}],"scroll-pbe":[{"scroll-pbe":w()}],"scroll-pt":[{"scroll-pt":w()}],"scroll-pr":[{"scroll-pr":w()}],"scroll-pb":[{"scroll-pb":w()}],"scroll-pl":[{"scroll-pl":w()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,W,U]}],fill:[{fill:[`none`,...M()]}],"stroke-w":[{stroke:[H,Ln,An,jn]}],stroke:[{stroke:[`none`,...M()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function G(...e){return er(Dt(e))}function tr(e){let t=Math.max(0,Math.floor((Date.now()-e*1e3)/1e3));if(t<60)return`${t}s ago`;let n=Math.floor(t/60);if(n<60)return`${n}m ago`;let r=Math.floor(n/60);if(r<24)return`${r}h ago`;let i=Math.floor(r/24);return i<30?`${i}d ago`:`${Math.floor(i/30)}mo ago`}function nr(e){return new Date(e*1e3).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function rr(e,t){try{let e=JSON.parse(t);if(!e||typeof e!=`object`)return t;for(let t of[`command`,`CommandLine`,`Input`,`query`,`Task`,`Prompt`])if(typeof e[t]==`string`&&e[t].length>0)return e[t];for(let t of[`file_path`,`path`,`TargetFile`,`AbsolutePath`,`SearchPath`,`DirectoryPath`,`Url`,`ImageName`])if(typeof e[t]==`string`&&e[t].length>0)return e[t];for(let t of Object.values(e))if(typeof t==`string`&&t.length>0)return t;return``}catch{return t}}var ir=o((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),K=o(((e,t)=>{t.exports=ir()}))(),ar=At(`hig-card flex flex-col min-h-0 overflow-hidden`,{variants:{variant:{default:``,interactive:`hover:border-[var(--color-line-2)] hover:shadow-[var(--hig-shadow-2)] transition-all cursor-pointer`,flush:`bg-transparent border-[var(--color-line-0)] shadow-none`}},defaultVariants:{variant:`default`}});function q({className:e,variant:t,...n}){return(0,K.jsx)(`div`,{className:G(ar({variant:t,className:e})),...n})}function J({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`flex items-center justify-between gap-2 px-4 pt-3 pb-2 shrink-0`,e),...t})}function Y({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`px-4 py-3 flex-1 min-h-0 overflow-auto`,e),...t})}var or=At(`inline-flex items-center gap-1 rounded-sm px-1.5 py-0.5 text-[10px] font-mono font-medium leading-none tracking-wide uppercase border whitespace-nowrap`,{variants:{variant:{green:`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`,red:`bg-red-500/8 text-red-300 border-red-500/25`,amber:`bg-amber-500/10 text-amber-300 border-amber-500/30`,blue:`bg-sky-500/8 text-sky-300 border-sky-500/25`,gray:`bg-[var(--color-surface-2)] text-[var(--color-fg-3)] border-[var(--color-line-1)]`,purple:`bg-violet-500/8 text-violet-300 border-violet-500/25`,outline:`bg-transparent text-[var(--color-fg-3)] border-[var(--color-line-1)]`}},defaultVariants:{variant:`outline`}});function sr({className:e,variant:t,...n}){return(0,K.jsx)(`span`,{className:G(or({variant:t,className:e})),...n})}var cr=At(`hig-button relative overflow-hidden focus-visible:outline-none disabled:pointer-events-none disabled:opacity-45`,{variants:{variant:{primary:`hig-button-primary`,secondary:``,ghost:`hig-button-plain`,danger:`hig-button-destructive`},size:{sm:`hig-button-small`,md:``,icon:`!w-7 !h-7 !min-w-0 !p-0`}},defaultVariants:{variant:`primary`,size:`md`}});function lr(e,t){if(ot())return;let n=e.getBoundingClientRect(),r=Math.hypot(n.width,n.height),i=document.createElement(`span`);i.style.position=`absolute`,i.style.left=`${t.clientX-n.left-r/2}px`,i.style.top=`${t.clientY-n.top-r/2}px`,i.style.width=`${r}px`,i.style.height=`${r}px`,i.style.borderRadius=`50%`,i.style.pointerEvents=`none`,i.style.background=`currentColor`,i.style.opacity=`0.22`,i.style.transform=`scale(0)`,i.style.mixBlendMode=`screen`,e.appendChild(i),wt(i,{scale:[0,1],opacity:[.22,0],duration:540,ease:`outExpo`,onComplete:()=>{i.remove()}})}var X=_.forwardRef(({className:e,variant:t,size:n,onMouseDown:r,onClick:i,...a},o)=>(0,K.jsx)(`button`,{ref:o,className:G(cr({variant:t,size:n,className:e})),onMouseDown:e=>{lr(e.currentTarget,e),r?.(e)},onClick:i,...a}));X.displayName=`Button`;var ur=e=>Math.round(e).toLocaleString(void 0,{useGrouping:!0});function dr(e,t){if(e===`spring`){let e=Qe();return{ease:e.fn,durationMs:e.duration}}return e===`quart`?{ease:Pe.out,durationMs:t}:{ease:Ne.out,durationMs:t}}function fr({value:e,duration:t=320,format:n=ur,className:r,curve:i=`cubic`}){let[a,o]=(0,_.useState)(e),s=(0,_.useRef)(e),c=(0,_.useRef)(e),l=(0,_.useRef)(0),u=(0,_.useRef)(null),d=(0,_.useRef)(ot()),f=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(c.current===e)return;let n=f.current;if(n&&!d.current){for(let e of n.getAnimations())e.id===`lc-value-pulse`&&e.cancel();let e=n.animate([{textShadow:`0 0 0 rgba(245, 158, 11, 0)`},{textShadow:`0 0 10px rgba(245, 158, 11, 0.55)`,offset:.2},{textShadow:`0 0 0 rgba(245, 158, 11, 0)`}],{duration:520,easing:`ease-out`});e.id=`lc-value-pulse`}if(d.current){c.current=e,s.current=e,o(e);return}s.current=a,c.current=e,l.current=performance.now(),u.current!==null&&cancelAnimationFrame(u.current);let{ease:r,durationMs:p}=dr(i,t),m=e=>{let t=Math.min(1,(e-l.current)/p),n=r(t);o(s.current+(c.current-s.current)*n),t<1?u.current=requestAnimationFrame(m):u.current=null};return u.current=requestAnimationFrame(m),()=>{u.current!==null&&(cancelAnimationFrame(u.current),u.current=null)}},[e,t,i]),(0,K.jsx)(`span`,{ref:f,className:G(`tabular-nums`,r),children:n(a)})}function pr({data:e,width:t=80,height:n=24,color:r=`#38bdf8`,threshold:i,maxValue:a}){if(e.length<2)return(0,K.jsx)(`svg`,{width:t,height:n,className:`shrink-0`,children:(0,K.jsx)(`line`,{x1:0,y1:n/2,x2:t,y2:n/2,stroke:`var(--color-line-2)`,strokeWidth:1})});let o=a??Math.max(...e,1),s=t-2,c=n-2,l=e.map((t,n)=>{let r=1+n/(e.length-1)*s,i=1+c-t/o*c;return`${r.toFixed(1)},${i.toFixed(1)}`}),u=i===void 0?null:1+c-Math.min(i,o)/o*c;return(0,K.jsxs)(`svg`,{width:t,height:n,className:`shrink-0`,children:[(0,K.jsx)(`polyline`,{points:l.join(` `),fill:`none`,stroke:r,strokeWidth:1.5,strokeLinejoin:`round`,strokeLinecap:`round`}),u!==null&&(0,K.jsx)(`line`,{x1:1,y1:u,x2:t-1,y2:u,stroke:`var(--color-brand)`,strokeWidth:1,strokeDasharray:`3,2`,opacity:.7})]})}var mr=new Set,hr=0,gr=0;function _r(){for(let e of mr)e();mr.size>0&&(hr=requestAnimationFrame(_r))}function vr(e){let t=gr++;return mr.add(e),mr.size===1&&(hr=requestAnimationFrame(_r)),[()=>{mr.delete(e),mr.size===0&&(cancelAnimationFrame(hr),hr=0)},t]}function yr(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}function br({value:e,samples:t,maxValue:n,width:r=320,height:i=64,windowMs:a=6e4,color:o=`var(--color-brand)`,fillColor:s=`rgba(245, 158, 11, 0.12)`,className:c}){let l=(0,_.useRef)(null),u=(0,_.useRef)(null),d=(0,_.useRef)([]),f=(0,_.useRef)(t??null),p=(0,_.useRef)(e??0),m=(0,_.useRef)(yr());return(0,_.useEffect)(()=>{f.current=t??null},[t]),(0,_.useEffect)(()=>{t===void 0&&e!==void 0&&e!==p.current&&(p.current=e,d.current.push({ts:Date.now(),v:e}),d.current.length>600&&d.current.splice(0,d.current.length-600))},[e,t]),(0,_.useEffect)(()=>{let e=()=>{let e=Date.now(),t=e-a,o;if(f.current){let e=f.current;o=[];for(let n of e)n.ts>=t&&o.push(n)}else{let n=d.current;for(;n.length>1&&n[1].ts<t;)n.shift();(n.length===0||n[n.length-1].ts<e-200)&&n.push({ts:e,v:p.current}),o=n.filter(e=>e.ts>=t)}if(o.length<2)l.current&&l.current.setAttribute(`points`,``),u.current&&u.current.setAttribute(`points`,``);else{let e=n??Math.max(1,...o.map(e=>e.v)),s=[];for(let n of o){let o=(n.ts-t)/a*r,c=i-n.v/e*(i-2)-1;s.push(`${o.toFixed(1)},${c.toFixed(1)}`)}let c=s.join(` `);if(l.current&&l.current.setAttribute(`points`,c),u.current){let e=s[0].split(`,`),t=s[s.length-1].split(`,`),n=`${e[0]},${i} ${c} ${t[0]},${i}`;u.current.setAttribute(`points`,n)}}};if(m.current){let t=window.setInterval(e,500);return()=>clearInterval(t)}let[t]=vr(e);return t},[r,i,a,n]),(0,K.jsxs)(`svg`,{width:`100%`,height:i,viewBox:`0 0 ${r} ${i}`,className:G(`block`,c),preserveAspectRatio:`none`,children:[(0,K.jsx)(`polygon`,{ref:u,fill:s,stroke:`none`}),(0,K.jsx)(`polyline`,{ref:l,fill:`none`,stroke:o,strokeWidth:1.5,strokeLinejoin:`round`,strokeLinecap:`round`})]})}var xr=At(`hero-metric relative flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] px-4 py-3 overflow-hidden`,{variants:{tone:{neutral:`hero-metric--neutral`,amber:`hero-metric--amber`,green:`hero-metric--green`,red:`hero-metric--red`,blue:`hero-metric--blue`,purple:`hero-metric--purple`,gray:`hero-metric--gray`}},defaultVariants:{tone:`neutral`}}),Sr={neutral:`var(--color-fg-1)`,amber:`var(--color-decision-ask)`,green:`var(--color-decision-allow)`,red:`var(--color-decision-block)`,blue:`var(--color-decision-force)`,purple:`var(--color-decision-log)`,gray:`var(--color-fg-3)`},Cr={neutral:`color-mix(in srgb, var(--color-fg-1) 10%, transparent)`,amber:`color-mix(in srgb, var(--color-decision-ask) 14%, transparent)`,green:`color-mix(in srgb, var(--color-decision-allow) 14%, transparent)`,red:`color-mix(in srgb, var(--color-decision-block) 14%, transparent)`,blue:`color-mix(in srgb, var(--color-decision-force) 14%, transparent)`,purple:`color-mix(in srgb, var(--color-decision-log) 14%, transparent)`,gray:`color-mix(in srgb, var(--color-fg-3) 10%, transparent)`},wr={neutral:`text-[var(--color-fg-0)]`,amber:`text-amber-300`,green:`text-emerald-300`,red:`text-red-300`,blue:`text-sky-300`,purple:`text-violet-300`,gray:`text-[var(--color-fg-2)]`},Tr=1e3,Er=.35;function Dr(e,t,n){let r=Date.now(),i=r-n,a=Math.max(2,Math.floor(n/Tr)),o=Array(a).fill(0);for(let n of e){if(t&&!t(n)||n.ts_ms<i||n.ts_ms>r)continue;let e=a-1-Math.floor((r-n.ts_ms)/Tr);e>=0&&e<a&&o[e]++}let s=Array(a),c=o[0];for(let e=0;e<a;e++)c=Er*o[e]+(1-Er)*c,s[e]={ts:i+(e+1)*Tr,v:c};return s}function Or({label:e,value:t,series:n,burstRing:r,filter:i,sparkWindowMs:a=6e4,sub:o,tone:s,format:c,className:l,...u}){let d=s??`neutral`,f=Sr[d]??Sr.neutral,p=Cr[d]??Cr.neutral,m=wr[d]??wr.neutral,h=(0,_.useRef)(null),g=(0,_.useRef)(t);(0,_.useEffect)(()=>{if(g.current===t)return;g.current=t;let e=h.current;e&&wt(e,{"--tick":[0,1],duration:160,ease:`outCubic`,onComplete:()=>{wt(e,{"--tick":[1,0],duration:520,ease:`outCubic`,onComplete:e=>{e.style.removeProperty(`--tick`)}})}})},[t]);let v=(0,_.useMemo)(()=>r?Dr(r,i,a):null,[r,i,a]),y=v!==null,b=!y&&n&&n.length>=2;return(0,K.jsxs)(`div`,{ref:h,className:G(xr({tone:s,className:l})),...u,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),o?(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:o}):null]}),(0,K.jsxs)(`div`,{className:`flex items-end justify-between gap-3`,children:[(0,K.jsx)(fr,{value:t,format:c,className:G(`text-[2.4rem] leading-none font-semibold tracking-tight`,m)}),y?(0,K.jsx)(br,{samples:v,width:108,height:36,windowMs:a,color:f,fillColor:p,className:`shrink-0`}):b?(0,K.jsx)(pr,{data:n,width:96,height:28,color:f}):null]})]})}var kr=135,Ar=405,jr=Ar-kr,Mr=`#34d399`,Nr=`#f59e0b`,Pr=`#ef4444`;function Fr(e,t,n,r){let i=(r-90)*(Math.PI/180);return{x:e+n*Math.cos(i),y:t+n*Math.sin(i)}}function Ir(e,t,n,r,i){let a=Fr(e,t,n,r),o=Fr(e,t,n,i),s=i-r>180?1:0;return`M ${a.x.toFixed(2)} ${a.y.toFixed(2)} A ${n} ${n} 0 ${s} 1 ${o.x.toFixed(2)} ${o.y.toFixed(2)}`}function Lr(e,t){return kr+Math.max(0,Math.min(1,e/Math.max(t,1e-9)))*jr}function Rr(e,t,n){return e+(t-e)*n}function zr(e){let t=parseInt(e.slice(1),16);return[t>>16&255,t>>8&255,t&255]}function Br(e,t,n){let[r,i,a]=zr(e),[o,s,c]=zr(t);return`rgb(${Math.round(Rr(r,o,n))},${Math.round(Rr(i,s,n))},${Math.round(Rr(a,c,n))})`}function Vr(e,t,n){let r=.04;return e<t-r?Mr:e<t+r?Br(Mr,Nr,(e-(t-r))/(r*2)):e<n-r?Nr:e<n+r?Br(Nr,Pr,(e-(n-r))/(r*2)):Pr}function Hr(){return typeof window>`u`||!window.matchMedia?!1:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches}var Ur=0;function Wr(){return Ur=Ur+1|0,Ur.toString(36)}function Gr({value:e,max:t,warnAt:n=.7,critAt:r=.9,marker50:i,marker99:a,label:o,display:s,displayFormat:c,scaleLabels:l,mode:u=`needle`,size:d=180,className:f,revLights:p=!0,revLightCount:m=20}){let h=Math.ceil(u===`needle`&&l!==void 0?d*.2:d*.08),g=-h,v=-h,y=d+h*2,b=d+h*2,x=d/2,S=d/2,C=d*.42,w=Math.max(0,Math.min(1,e/Math.max(t,1e-9))),T=(0,_.useMemo)(()=>Ir(x,S,C,kr,Ar),[x,S,C]),E=(0,_.useMemo)(()=>Ir(x,S,C-8,kr,Ar),[x,S,C]),D=kr+n*jr,O=kr+r*jr,ee=(0,_.useMemo)(()=>Ir(x,S,C,kr,D),[x,S,C,D]),k=(0,_.useMemo)(()=>Ir(x,S,C,D,O),[x,S,C,D,O]),A=(0,_.useMemo)(()=>Ir(x,S,C,O,Ar),[x,S,C,O]),j=(0,_.useMemo)(()=>Ir(x,S,C-14,300,420),[x,S,C]),te=kr+w*jr,ne=(0,_.useMemo)(()=>Ir(x,S,C,kr,Math.max(kr+.01,te)),[x,S,C,te]),re=Vr(w,n,r),M=(0,_.useMemo)(()=>Wr(),[]),N=`lgf-${M}`,ie=`lgb-${M}`,ae=`lgd-${M}`,oe=`lgh-${M}`,P=`lgg-${M}`,F=`lgl-${M}`,I=(0,_.useMemo)(()=>{if(u!==`needle`)return[];let e=[];for(let t=0;t<=10;t++)e.push(kr+t/10*jr);return e},[u]),se=(0,_.useMemo)(()=>{if(u!==`needle`)return[];let e=[];for(let t=0;t<=40;t++)t%4!=0&&e.push(kr+t/40*jr);return e},[u]),L=(0,_.useRef)(null),ce=(0,_.useRef)(null),le=(0,_.useRef)(null),ue=(0,_.useRef)(null),de=(0,_.useRef)(null),fe=(0,_.useRef)(null),pe=(0,_.useRef)(null),me=(0,_.useRef)(null),he=(0,_.useRef)([]),R=(0,_.useRef)(e),ge=(0,_.useRef)(t),_e=(0,_.useRef)(n),ve=(0,_.useRef)(r);(0,_.useEffect)(()=>{R.current=e,ge.current=t,_e.current=n,ve.current=r},[e,t,n,r]);let ye=(0,_.useMemo)(()=>{if(!p||u!==`needle`)return[];let e=Math.max(4,m),t=C-11,n=[];for(let r=0;r<e;r++){let i=kr+(r+.5)/e*jr;n.push(Fr(x,S,t,i))}return n},[p,m,u,x,S,C]);he.current.length!==ye.length&&(he.current.length=ye.length);let be=x+C-6,z=x+d*.04,xe=Math.max(2,d*.016),Se=`${be},${S} ${z},${S-xe} ${z},${S+xe}`,Ce=x-d*.04,we=x-C*.24,Te=Math.max(1.4,d*.012),Ee=`${we},${S} ${Ce},${S-Te} ${Ce},${S+Te}`,De=d*.48,Oe=d*.17,B=x-De/2,ke=S+d*.16,V=ke+Oe*.68;return(0,_.useEffect)(()=>{let e=Hr(),t=performance.now(),n=R.current,r=0,i=R.current,a=0,o=R.current,s=``,l=``,d=``,f=-1,m=``,h=``,[g]=vr(()=>{let g=performance.now(),_=(g-t)/1e3;t=g;let v=Math.min(.04,Math.max(.001,_)),y=R.current,b=ge.current,w=_e.current,T=ve.current,E=Math.max(b,1e-9),D=y;if(e)n=y,i=y,o=y,r=0,a=0;else{let e=v/2;for(let t=0;t<2;t++){let t=-210*(n-D)-22*r;r+=t*e,n+=r*e;let o=-55*(i-n)-13*a;a+=o*e,i+=a*e}let t=1-Math.exp(-v*8);o+=(y-o)*t,Math.abs(n-y)<E*1e-5&&Math.abs(r)<1e-4&&(n=y,r=0),Math.abs(o-y)<E*1e-5&&(o=y)}let O=Math.max(0,Math.min(1,n/Math.max(b,1e-9))),ee=kr+O*jr,k=kr+Math.max(0,Math.min(1,i/Math.max(b,1e-9)))*jr,A=Vr(O,w,T),j=`rotate(${(ee-90).toFixed(3)} ${x} ${S})`;L.current&&j!==s&&(L.current.setAttribute(`transform`,j),s=j),A!==d&&(ce.current&&ce.current.setAttribute(`fill`,A),le.current&&le.current.setAttribute(`fill`,A),ue.current&&ue.current.setAttribute(`stroke`,A),fe.current&&fe.current.setAttribute(`fill`,A),d=A);let te=`rotate(${(k-90).toFixed(3)} ${x} ${S})`;if(de.current&&te!==l&&(de.current.setAttribute(`transform`,te),l=te),pe.current&&c){let e=c(o);e!==h&&(pe.current.textContent=e,h=e)}if(me.current&&u===`ring`){let e=Ir(x,S,C,kr,Math.max(kr+.01,ee));e!==m&&(me.current.setAttribute(`d`,e),m=e)}if(p&&u===`needle`){let e=Math.round(O*1e3)/1e3;if(e!==f){f=e;let t=he.current,n=t.length;if(n>0){let e=1/n;for(let r=0;r<n;r++){let i=t[r];if(!i)continue;let a=(r+.5)/n,o=O-a,s=Math.max(0,Math.min(1,.5+o/e));i.setAttribute(`fill`,Vr(a,w,T)),i.setAttribute(`opacity`,s.toFixed(3))}}}}});return g},[x,S,C,u,p,c]),(0,K.jsxs)(`div`,{className:G(`flex flex-col items-center justify-center gap-1 min-h-0 min-w-0`,f),children:[(0,K.jsxs)(`svg`,{width:y,height:b,viewBox:`${g} ${v} ${y} ${b}`,preserveAspectRatio:`xMidYMid meet`,className:`block max-w-full max-h-full min-h-0`,children:[(0,K.jsxs)(`defs`,{children:[(0,K.jsxs)(`filter`,{id:N,x:`-40%`,y:`-40%`,width:`180%`,height:`180%`,children:[(0,K.jsx)(`feGaussianBlur`,{stdDeviation:`1.2`,result:`blur`}),(0,K.jsxs)(`feMerge`,{children:[(0,K.jsx)(`feMergeNode`,{in:`blur`}),(0,K.jsx)(`feMergeNode`,{in:`SourceGraphic`})]})]}),(0,K.jsxs)(`radialGradient`,{id:ie,cx:`50%`,cy:`32%`,r:`80%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#4e535d`}),(0,K.jsx)(`stop`,{offset:`55%`,stopColor:`#2a2e36`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#0b0d11`})]}),(0,K.jsxs)(`radialGradient`,{id:ae,cx:`50%`,cy:`45%`,r:`75%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#1b1f27`}),(0,K.jsx)(`stop`,{offset:`80%`,stopColor:`#0a0c10`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#05060a`})]}),(0,K.jsxs)(`radialGradient`,{id:oe,cx:`40%`,cy:`30%`,r:`70%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#f4f5f8`}),(0,K.jsx)(`stop`,{offset:`45%`,stopColor:`#aab1bd`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#1c1f26`})]}),(0,K.jsxs)(`linearGradient`,{id:P,x1:`50%`,y1:`0%`,x2:`50%`,y2:`100%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#ffffff`,stopOpacity:`0.22`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#ffffff`,stopOpacity:`0`})]}),(0,K.jsxs)(`linearGradient`,{id:F,x1:`50%`,y1:`0%`,x2:`50%`,y2:`100%`,children:[(0,K.jsx)(`stop`,{offset:`0%`,stopColor:`#0a0c11`}),(0,K.jsx)(`stop`,{offset:`100%`,stopColor:`#15181f`})]})]}),u===`needle`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`circle`,{cx:x,cy:S,r:C+12,fill:`url(#${ie})`,stroke:`#000`,strokeOpacity:.55,strokeWidth:1}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:C+5,fill:`none`,stroke:`#0a0c11`,strokeWidth:1}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:C-2,fill:`url(#${ae})`})]}):null,(0,K.jsx)(`path`,{d:T,fill:`none`,stroke:`var(--color-line-1)`,strokeWidth:u===`ring`?12:3,strokeLinecap:`round`,opacity:u===`ring`?1:.35}),u===`needle`?(0,K.jsx)(`path`,{d:E,fill:`none`,stroke:`var(--color-line-0)`,strokeWidth:1,strokeLinecap:`round`,opacity:.55}):null,u===`needle`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`path`,{d:ee,fill:`none`,stroke:Mr,strokeWidth:5,strokeLinecap:`round`,opacity:.78}),(0,K.jsx)(`path`,{d:k,fill:`none`,stroke:Nr,strokeWidth:5,strokeLinecap:`round`,opacity:.82}),(0,K.jsx)(`path`,{d:A,fill:`none`,stroke:Pr,strokeWidth:5,strokeLinecap:`round`,opacity:.9}),se.map((e,t)=>{let n=Fr(x,S,C-4,e),r=Fr(x,S,C+2,e);return(0,K.jsx)(`line`,{x1:n.x,y1:n.y,x2:r.x,y2:r.y,stroke:`var(--color-fg-4)`,strokeWidth:.9,strokeLinecap:`round`,opacity:.7},`mi-${t}`)}),I.map((e,t)=>{let n=Fr(x,S,C-8,e),r=Fr(x,S,C+4,e);return(0,K.jsx)(`line`,{x1:n.x,y1:n.y,x2:r.x,y2:r.y,stroke:`var(--color-fg-2)`,strokeWidth:1.8,strokeLinecap:`round`},`ma-${t}`)}),p?ye.map((e,t)=>(0,K.jsx)(`circle`,{ref:e=>{he.current[t]=e},cx:e.x,cy:e.y,r:Math.max(1.6,d*.013),fill:Mr,opacity:0,filter:`url(#${N})`},t)):null,i===void 0?null:(0,K.jsx)(Kr,{cx:x,cy:S,r:C,angle:Lr(i,t),emphasis:!0}),a===void 0?null:(0,K.jsx)(Kr,{cx:x,cy:S,r:C,angle:Lr(a,t),emphasis:!0}),l?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:D,text:l(n),size:d}),(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:O,text:l(r),size:d}),(0,K.jsx)(qr,{cx:x,cy:S,r:C,angle:Ar,text:l(1),size:d})]}):null,(0,K.jsx)(`path`,{d:j,fill:`none`,stroke:`url(#${P})`,strokeWidth:d*.14,strokeLinecap:`butt`}),c||s!==void 0?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`rect`,{x:B,y:ke,width:De,height:Oe,rx:d*.022,ry:d*.022,fill:`url(#${F})`,stroke:`#242a33`,strokeWidth:1}),(0,K.jsx)(`rect`,{x:B+1,y:ke+1,width:De-2,height:1,fill:`#ffffff`,opacity:.08})]}):null,(0,K.jsx)(`g`,{ref:de,opacity:.28,children:(0,K.jsx)(`polygon`,{ref:fe,points:Se,fill:re})}),(0,K.jsxs)(`g`,{ref:L,children:[(0,K.jsx)(`polygon`,{ref:ce,points:Se,fill:re,stroke:`#05070a`,strokeWidth:.6}),(0,K.jsx)(`polygon`,{ref:le,points:Ee,fill:re,opacity:.7})]}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:d*.06,fill:`url(#${oe})`,stroke:`#06080c`,strokeWidth:1}),(0,K.jsx)(`circle`,{ref:ue,cx:x,cy:S,r:d*.036,fill:`#0a0c11`,stroke:re,strokeWidth:1.4}),(0,K.jsx)(`circle`,{cx:x,cy:S,r:d*.012,fill:`#f5f7fb`,opacity:.9})]}):(0,K.jsx)(`path`,{ref:me,d:ne,fill:`none`,stroke:re,strokeWidth:12,strokeLinecap:`round`}),u===`needle`&&(c||s!==void 0)?c?(0,K.jsx)(`text`,{ref:pe,x,y:V,textAnchor:`middle`,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:d*.1,fontWeight:600,fill:`#e8ecf3`,children:c(e)}):(0,K.jsx)(`text`,{x,y:V,textAnchor:`middle`,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:d*.1,fontWeight:600,fill:`#e8ecf3`,children:s}):c?(0,K.jsx)(`text`,{ref:pe,x,y:S+4,textAnchor:`middle`,className:`font-mono tabular-nums`,fontSize:d*.13,fill:`var(--color-fg-0)`,children:c(e)}):s===void 0?null:(0,K.jsx)(`text`,{x,y:S+4,textAnchor:`middle`,className:`font-mono tabular-nums`,fontSize:d*.13,fill:`var(--color-fg-0)`,children:s})]}),o?(0,K.jsx)(`span`,{className:`overline shrink-0 tracking-[0.12em] uppercase`,children:o}):null]})}function Kr({cx:e,cy:t,r:n,angle:r,emphasis:i=!1}){let a=Fr(e,t,n-(i?10:6),r),o=Fr(e,t,n+(i?8:6),r);return(0,K.jsx)(`line`,{x1:a.x,y1:a.y,x2:o.x,y2:o.y,stroke:i?`var(--color-fg-1)`:`var(--color-fg-2)`,strokeWidth:i?2:1.5,strokeLinecap:`round`})}function qr({cx:e,cy:t,r:n,angle:r,text:i,size:a}){let o=Fr(e,t,n+Math.max(16,a*.1),r),s=r>=135&&r<215?`end`:r>=325?`start`:`middle`;return(0,K.jsx)(`text`,{x:o.x,y:o.y,textAnchor:s,dominantBaseline:`middle`,className:`font-mono tabular-nums`,fontSize:a*.062,fontWeight:600,fill:`var(--color-fg-2)`,stroke:`var(--color-bg-0)`,strokeWidth:3,paintOrder:`stroke`,children:i})}var Jr={containerPaddingY:24,containerPaddingX:24,topToTrendGap:12,scatterHeaderH:18,scatterLegendH:16,scatterInnerGap:8,trendRowH:28,trendRowGap:6,trendTopPad:9,scatterAbsoluteMin:60,scatterAcceptableMin:70,gaugeFootprintFactor:1.36,gaugeAbsoluteMin:84,gaugeAbsoluteMax:240};function Yr(e,t,n=200){let r=Math.max(0,Math.floor(e)),i=Math.max(0,Math.floor(t)),a=Math.max(0,r-Jr.containerPaddingX),o=Math.max(0,i-Jr.containerPaddingY),s=o-(Jr.trendRowH*3+Jr.trendRowGap*2+Jr.trendTopPad+Jr.topToTrendGap),c=s-Jr.scatterHeaderH-Jr.scatterLegendH-Jr.scatterInnerGap>=Jr.scatterAcceptableMin,l=c?s:o,u=l-Jr.scatterHeaderH-Jr.scatterLegendH-Jr.scatterInnerGap,d=u>=Jr.scatterAbsoluteMin,f=u>=Jr.scatterAbsoluteMin&&l>=140,p=Math.floor(l/Jr.gaugeFootprintFactor),m=Math.floor(a*.45/Jr.gaugeFootprintFactor),h=Math.max(Jr.gaugeAbsoluteMin,Math.min(Jr.gaugeAbsoluteMax,n,p,m)),g=Math.ceil(h*Jr.gaugeFootprintFactor+8),_=l-(d?Jr.scatterHeaderH:0)-(f?Jr.scatterLegendH:0)-Jr.scatterInnerGap;return{gaugeSize:h,gaugeColumnMaxWidth:g,scatterMinHeight:Math.max(Jr.scatterAbsoluteMin,Math.min(160,_)),showTrendRows:c,showScatterHeader:d,showLegend:f,variant:o>=480?`wide`:o>=300?`normal`:`compact`}}var Xr={allow:`#34d399`,block:`#ef4444`,ask:`#f59e0b`,log:`#a78bfa`,force:`#38bdf8`,shadow:`#6e7076`};function Zr(e){return!Number.isFinite(e)||e<=0?`—`:e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:`${(e/1e6).toFixed(2)} ms`}function Qr({latency:e,bursts:t,gaugeMaxMs:n=10,windowMs:r=3e4,trendWindowSec:i=60,gaugeSize:a=200,compact:o=!1,className:s}){let c=e?e.p50_ns/1e6:0,l=e?e.p95_ns/1e6:0,u=e?e.p99_ns/1e6:0,d=(0,_.useRef)(null),[f,p]=(0,_.useState)((0,_.useMemo)(()=>Yr(a*2,a*2,a),[a]));(0,_.useEffect)(()=>{let e=d.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=0,r=0,i=e=>{let t=Math.round(e.width/4)*4,i=Math.round(e.height/4)*4;t===n&&i===r||(n=t,r=i,p(Yr(t,i,a)))};i(e.getBoundingClientRect());let o=new ResizeObserver(e=>{let n=e[0];n&&(t&&cancelAnimationFrame(t),t=requestAnimationFrame(()=>{i(n.contentRect)}))});return o.observe(e),()=>{t&&cancelAnimationFrame(t),o.disconnect()}},[a]);let m=(0,_.useRef)(null),h=(0,_.useRef)([]),g=(0,_.useRef)(0);(0,_.useEffect)(()=>{if(t.length===0)return;let e=h.current,n=g.current,i=n;for(let r of t)r.ts_ms<=n||(e.push({ts:r.ts_ms,durationNs:r.duration_ns,color:Xr[r.decision]??`#6e7076`}),r.ts_ms>i&&(i=r.ts_ms));g.current=i;let a=Date.now()-r*2;for(;e.length&&e[0].ts<a;)e.shift()},[t,r]),(0,_.useEffect)(()=>{let e=m.current;if(!e)return;let t=e.getContext(`2d`);if(!t)return;let i=0,a=0,o=0,s=8e3,c=.25,l=1e3,u=n*1e6,d=Math.log10(l),f=Math.log10(u),[p]=vr(()=>{let n=window.devicePixelRatio||1,p=e.clientWidth,m=e.clientHeight;if(p===0||m===0)return;(p!==a||m!==o||n!==i)&&(e.width=Math.floor(p*n),e.height=Math.floor(m*n),t.setTransform(n,0,0,n,0,0),a=p,o=m,i=n),t.clearRect(0,0,p,m),t.strokeStyle=`rgba(110, 112, 118, 0.18)`,t.lineWidth=1,t.setLineDash([2,4]);let g=[{ns:1e5,label:`100µs`},{ns:1e6,label:`1ms`},{ns:1e7,label:`10ms`}];t.font=`9px ui-monospace, SFMono-Regular, Menlo, monospace`,t.textBaseline=`middle`,t.fillStyle=`rgba(110, 112, 118, 0.7)`;for(let e of g){if(e.ns<l||e.ns>u)continue;let n=m-(Math.log10(e.ns)-d)/(f-d)*m;t.beginPath(),t.moveTo(0,n),t.lineTo(p-28,n),t.stroke(),t.fillText(e.label,p-26,n)}t.setLineDash([]);let _=Date.now(),v=_-r,y=h.current;for(;y.length&&y[0].ts<v;)y.shift();t.globalCompositeOperation=`source-over`;for(let e of y){let n=(e.ts-v)/r*p,i=Math.max(l,Math.min(u,e.durationNs)),a=m-(Math.log10(i)-d)/(f-d)*m,o=_-e.ts,h;if(o<=s)h=1-o/s*(1-c);else{let e=r-s;h=e>0?Math.max(0,c*(1-(o-s)/e)):0}h<=0||(t.globalAlpha=h,t.fillStyle=e.color,t.beginPath(),t.arc(n,a,2.5,0,Math.PI*2),t.fill())}t.globalAlpha=1,t.fillStyle=`rgba(110, 112, 118, 0.55)`,t.font=`9px ui-monospace, SFMono-Regular, Menlo, monospace`,t.textBaseline=`bottom`,t.textAlign=`left`,t.fillText(`← ${Math.round(r/1e3)} s ago`,4,m-2),t.textAlign=`right`,t.fillText(`now →`,p-4,m-2),t.textAlign=`left`});return p},[r,n]);let v=(0,_.useRef)({p50:[],p95:[],p99:[]});(0,_.useEffect)(()=>{if(!e)return;let t=v.current,n=Date.now(),r=n-i*1e3,a=(e,t)=>{let i=t/1e6;for(e.length===0&&e.push({ts:r,v:i}),e.push({ts:n,v:i});e.length>1&&e[0].ts<r;)e.shift()};a(t.p50,e.p50_ns),a(t.p95,e.p95_ns),a(t.p99,e.p99_ns)},[e,i]);let y=(0,_.useMemo)(()=>{let e=v.current;return{p50:[...e.p50],p95:[...e.p95],p99:[...e.p99]}},[e]);return(0,K.jsxs)(`div`,{ref:d,"data-lt-variant":f.variant,className:G(`flex h-full min-h-0 flex-col gap-3 overflow-hidden rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] p-3`,s),children:[(0,K.jsxs)(`div`,{className:G(`grid gap-3 min-h-0 flex-1`,`grid-cols-[auto_1fr]`),children:[(0,K.jsx)(`div`,{className:`flex items-stretch justify-center overflow-hidden min-h-0 min-w-0`,style:{maxWidth:f.gaugeColumnMaxWidth},children:(0,K.jsx)(Gr,{value:l,max:n,warnAt:Math.min(.85,.5/n),critAt:Math.min(.92,2/n),marker50:c,marker99:u,displayFormat:e=>Zr(e*1e6),scaleLabels:f.gaugeSize>=130?e=>Zr(e*n*1e6):void 0,size:f.gaugeSize,label:`p95 latency`})}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-1 min-w-0 min-h-0 flex-1`,children:[f.showScatterHeader?(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 shrink-0 min-w-0`,children:[(0,K.jsx)(`span`,{className:`overline truncate min-w-0`,children:`live trace · 30 s scatter`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] shrink min-w-0 truncate text-right`,children:[h.current.length,` live · log-Y`]})]}):null,f.showLegend?(0,K.jsx)(`div`,{className:`shrink-0`,children:(0,K.jsx)($r,{})}):null,(0,K.jsx)(`canvas`,{ref:m,"data-testid":`latency-scatter-canvas`,className:`block w-full flex-1 min-h-0 rounded-sm bg-[var(--color-surface-0)] border border-[var(--color-line-0)]`,style:{minHeight:f.scatterMinHeight}})]})]}),f.showTrendRows?(0,K.jsxs)(`div`,{"data-testid":`latency-trend-rows`,className:`grid grid-cols-1 gap-1.5 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(ei,{label:`p50 · median`,value:Zr(e?.p50_ns??0),color:`#34d399`,fill:`rgba(52, 211, 153, 0.14)`,samples:y.p50,windowMs:i*1e3}),(0,K.jsx)(ei,{label:`p95 · 95th`,value:Zr(e?.p95_ns??0),color:`#38bdf8`,fill:`rgba(56, 189, 248, 0.14)`,samples:y.p95,windowMs:i*1e3}),(0,K.jsx)(ei,{label:`p99 · 99th`,value:Zr(e?.p99_ns??0),color:`#6366f1`,fill:`rgba(99, 102, 241, 0.14)`,samples:y.p99,windowMs:i*1e3})]}):null]})}function $r(){return(0,K.jsx)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[{key:`allow`,color:Xr.allow},{key:`ask`,color:Xr.ask},{key:`block`,color:Xr.block},{key:`force`,color:Xr.force},{key:`log`,color:Xr.log},{key:`shadow`,color:Xr.shadow}].map(e=>(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block h-1.5 w-1.5 rounded-full`,style:{background:e.color}}),(0,K.jsx)(`span`,{className:`uppercase tracking-wide`,children:e.key})]},e.key))})}function ei({label:e,value:t,color:n,fill:r,samples:i,windowMs:a}){return(0,K.jsxs)(`div`,{className:`grid grid-cols-[72px_minmax(0,1fr)_92px] items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`overline text-right truncate min-w-0`,children:e}),(0,K.jsx)(br,{samples:i,width:1200,height:28,windowMs:a,color:n,fillColor:r,className:`w-full h-7`}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-right truncate min-w-0`,style:{color:n},title:t,children:t})]})}function ti({counters:e,className:t,showLegend:n=!0}){let r=[{key:`allow`,label:`Allow`,value:e.allow,color:`var(--color-decision-allow)`,textClass:`text-emerald-300`},{key:`ask`,label:`Ask`,value:e.ask,color:`var(--color-decision-ask)`,textClass:`text-amber-300`},{key:`block`,label:`Block`,value:e.block,color:`var(--color-decision-block)`,textClass:`text-red-300`},{key:`force`,label:`Force`,value:e.force,color:`var(--color-decision-force)`,textClass:`text-sky-300`},{key:`log`,label:`Log`,value:e.log,color:`var(--color-decision-log)`,textClass:`text-violet-300`},{key:`shadow`,label:`Shadow`,value:e.shadow,color:`var(--color-decision-shadow)`,textClass:`text-[var(--color-fg-3)]`}],i=r.reduce((e,t)=>e+t.value,0),a=(0,_.useRef)(null),o=(0,_.useRef)({});return(0,_.useEffect)(()=>{let e=a.current;if(!e)return;let t=e.querySelectorAll(`[data-seg]`);if(t.length===0)return;let n=ot();t.forEach(e=>{let t=e.dataset.seg,a=r.find(e=>e.key===t);if(!a)return;let s=i===0?0:a.value/i*100,c=o.current[t]??0;n||Math.abs(c-s)<.01?e.style.width=`${s}%`:wt(e,{width:[`${c}%`,`${s}%`],duration:480,ease:`outExpo`}),o.current[t]=s})},[e,i]),(0,K.jsxs)(`div`,{className:G(`flex flex-col gap-2`,t),children:[(0,K.jsx)(`div`,{ref:a,className:`flex h-3 w-full overflow-hidden rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-2)]`,children:i===0?(0,K.jsx)(`div`,{className:`w-full bg-[var(--color-surface-3)]`}):r.map(e=>(0,K.jsx)(`div`,{"data-seg":e.key,style:{width:`${i===0?0:e.value/i*100}%`,background:e.color}},e.key))}),n?(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-x-3 gap-y-1 text-[11px] font-mono`,children:r.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2 min-w-0`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 min-w-0`,children:[(0,K.jsx)(`span`,{className:`h-2 w-2 shrink-0 rounded-sm`,style:{background:e.color}}),(0,K.jsx)(`span`,{className:G(`uppercase tracking-wide truncate`,e.textClass),children:e.label})]}),(0,K.jsx)(fr,{value:e.value,className:`shrink-0 tabular-nums text-[var(--color-fg-1)]`})]},e.key))}):null]})}function ni(e){return e<60?`${Math.floor(e)}s`:e<3600?`${Math.floor(e/60)}m ${Math.floor(e%60)}s`:e<86400?`${Math.floor(e/3600)}h ${Math.floor(e%3600/60)}m`:`${Math.floor(e/86400)}d ${Math.floor(e%86400/3600)}h`}function ri(e,t){if(t===void 0||t<=0)return`var(--color-brand)`;let n=e/t;return n>=.9?`var(--color-decision-block)`:n>=.7?`var(--color-decision-ask)`:`var(--color-decision-allow)`}function ii(e){return e===`var(--color-decision-block)`?`color-mix(in srgb, var(--color-decision-block) 14%, transparent)`:e===`var(--color-decision-ask)`?`color-mix(in srgb, var(--color-decision-ask) 14%, transparent)`:e===`var(--color-decision-allow)`?`color-mix(in srgb, var(--color-decision-allow) 14%, transparent)`:e===`var(--color-decision-log)`?`color-mix(in srgb, var(--color-decision-log) 14%, transparent)`:`color-mix(in srgb, var(--color-brand) 12%, transparent)`}function ai(e,t){if(e.length===0)return[];let n=Date.now(),r=t/Math.max(1,e.length),i=Array(e.length);for(let t=0;t<e.length;t++)i[t]={ts:n-(e.length-1-t)*r,v:e[t]};return i}function oi({cpuPct:e,cpuSeries:t,cpuLimit:n,memMb:r,memSeries:i,memLimit:a,heapUsedMb:o,heapTotalMb:s,heapSeries:c,uptimeSec:l,className:u}){let d=6e4,f=ri(e,n),p=ri(r,a),m=`var(--color-decision-log)`,h=(0,_.useMemo)(()=>ai(t,d),[t]),g=(0,_.useMemo)(()=>ai(i,d),[i]),v=(0,_.useMemo)(()=>ai(c,d),[c]),y=(0,_.useRef)([]);(0,_.useEffect)(()=>{let e=y.current.filter(e=>!!e);if(e.length===0)return;e.forEach(e=>{e.style.opacity=`0`,e.style.transform=`translateY(28px) scale(0.94)`});let t=wt(e,{translateY:[28,0],scale:[.94,1],opacity:[0,1],duration:720,delay:nt(140),ease:`outBack(1.25)`,onComplete:e=>{e.style.transform=``}});return()=>t.cancel()},[]);let b=n!==void 0&&n>0&&e>=n*.9,x=a!==void 0&&a>0&&r>=a*.9;return(0,K.jsx)(`div`,{className:G(`rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] p-3`,u),children:(0,K.jsxs)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-3`,children:[(0,K.jsx)(si,{registerRef:e=>y.current[0]=e,label:`CPU`,color:f,fill:ii(f),pulse:b,valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:e,format:e=>e.toFixed(1),className:`text-[var(--color-fg-0)]`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:`%`})]}),subText:n?`limit ${n}%`:void 0,samples:h,maxValue:100,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[1]=e,label:`Memory`,color:p,fill:ii(p),pulse:x,valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:r,format:e=>e.toFixed(0),className:`text-[var(--color-fg-0)]`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:`MB`})]}),subText:a?`limit ${a} MB`:void 0,samples:g,maxValue:a?a*1.1:void 0,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[2]=e,label:`Heap`,color:m,fill:ii(m),valueNode:(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:o,format:e=>e.toFixed(0),className:`text-[var(--color-fg-0)]`}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-base`,children:[`/ `,s.toFixed(0),` MB`]})]}),subText:s>0?`${(o/s*100).toFixed(0)}% used`:void 0,samples:v,maxValue:s>0?s:void 0,windowMs:d}),(0,K.jsx)(si,{registerRef:e=>y.current[3]=e,label:`Uptime`,color:`var(--color-fg-2)`,fill:`rgba(214, 215, 217, 0.04)`,valueNode:(0,K.jsx)(`span`,{className:`text-[var(--color-fg-0)] tabular-nums`,children:ni(l)}),subText:`since daemon start`})]})})}function si({label:e,valueNode:t,subText:n,color:r,fill:i,samples:a,maxValue:o,windowMs:s,pulse:c,registerRef:l}){let u=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!c||!u.current)return;let e=!1,t=null,n=()=>{e||!u.current||(t=wt(u.current,{"--breach":[0,1],duration:420,ease:`outCubic`,onComplete:()=>{e||!u.current||(t=wt(u.current,{"--breach":[1,0],duration:560,ease:`outCubic`,onComplete:()=>{e||n()}}))}}))};return n(),()=>{e=!0,t?.cancel();let n=u.current;n&&n.style.removeProperty(`--breach`)}},[c]),(0,K.jsxs)(`div`,{ref:e=>{u.current=e,l(e)},className:`flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-0)] border-[var(--color-line-1)] px-4 py-3 min-h-[140px] system-pulse__tile`,"data-breach":c?`true`:void 0,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),n?(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:n}):null]}),(0,K.jsx)(`span`,{className:`text-[1.9rem] leading-none font-semibold tracking-tight font-mono`,style:{color:r},children:t}),a&&a.length>=2?(0,K.jsx)(`div`,{className:`mt-auto`,children:(0,K.jsx)(br,{samples:a,width:320,height:64,windowMs:s??6e4,color:r,fillColor:i,maxValue:o,className:`w-full`})}):(0,K.jsx)(`div`,{className:`mt-auto h-[64px] flex items-end`,children:(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`— no series —`})})]})}var ci={__daemon:`SigmaShake itself`,bash:`Run a terminal command`,shell:`Run a terminal command`,run_command:`Run a terminal command`,exec:`Run a terminal command`,run_shell_command:`Run a terminal command`,read:`Read a file`,read_file:`Read a file`,view_file:`Read a file`,cat:`Read a file`,view:`Read a file`,write:`Save changes to a file`,write_to_file:`Save changes to a file`,create_file:`Create a new file`,edit:`Edit an existing file`,multiedit:`Edit several spots in a file`,patch:`Edit an existing file`,apply_patch:`Edit an existing file`,replace:`Edit an existing file`,grep:`Search the codebase`,ripgrep:`Search the codebase`,search:`Search the codebase`,search_codebase:`Search the codebase`,glob:`Find files by name`,find:`Find files by name`,list_files:`List files in a folder`,ls:`List files in a folder`,webfetch:`Read a webpage`,fetch:`Read a webpage`,websearch:`Search the web`,search_web:`Search the web`,browser_action:`Use a web browser`,agent:`Ask a helper AI to investigate`,spawn:`Ask a helper AI to investigate`,task:`Update its to-do list`,todowrite:`Update its to-do list`,todo_write:`Update its to-do list`,notebookedit:`Edit a Jupyter notebook`,notebook_edit:`Edit a Jupyter notebook`};function li(e){return e?ci[e.toLowerCase()]||`Use the ${e.replace(/^_+/,``)} tool`:`Take an action`}function ui(e){return e?{"claude-code":`Claude Code`,claudecode:`Claude Code`,cursor:`Cursor`,copilot:`GitHub Copilot`,codex:`OpenAI Codex`,gemini:`Gemini`,antigravity:`Antigravity`,pi:`Pi`,generic:`AI agent`,daemon:`SigmaShake`}[e.toLowerCase()]??e:`AI agent`}function di(e){return e?e.startsWith(`__`):!1}function fi(e){for(let t of[`file_path`,`path`,`TargetFile`,`AbsolutePath`,`filename`,`file`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function pi(e){for(let t of[`command`,`CommandLine`,`cmd`,`Input`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function mi(e){for(let t of[`query`,`pattern`,`Query`,`q`,`search`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function hi(e){for(let t of[`url`,`URL`,`Url`]){let n=e[t];if(typeof n==`string`&&n.length>0)return n}return null}function gi(e){let t=e.replace(/[\\/]+$/,``),n=t.lastIndexOf(`/`),r=t.lastIndexOf(`\\`),i=Math.max(n,r);return i>=0?t.slice(i+1):t}function _i(e){let t=e.trim(),n=(t.split(/[|;&]/)[0]?.trim()??t).split(/\s+/),r=n[0]?.toLowerCase()??``,i=n[1]?.toLowerCase()??``,a=(e,t)=>({headline:e,detail:t});if(r===`rm`)return a(`Delete files`,`Deleting files from disk: \`${t}\``);if(r===`mkdir`)return a(`Create a folder`,`Creating a new folder: \`${t}\``);if(r===`mv`)return a(`Move or rename a file`,`Moving or renaming: \`${t}\``);if(r===`cp`)return a(`Copy a file`,`Copying files: \`${t}\``);if(r===`cat`||r===`head`||r===`tail`||r===`less`)return a(`Show file contents`,`Printing file contents: \`${t}\``);if(r===`ls`||r===`tree`||r===`find`)return a(`List files`,`Listing files: \`${t}\``);if(r===`cd`||r===`pwd`)return a(`Check the working folder`,`Checking or changing the current folder: \`${t}\``);if(r===`echo`||r===`printf`)return a(`Print a message`,`Printing a message: \`${t}\``);if(r===`curl`||r===`wget`)return a(`Download from the internet`,`Downloading something from the internet: \`${t}\``);if(r===`kill`||r===`pkill`)return a(`Stop a running program`,`Stopping a running program: \`${t}\``);if(r===`git`)return new Set([`status`,`log`,`diff`,`show`,`branch`,`remote`,`blame`,`config`]).has(i)?a(`Check git history`,`Reading git information (\`git ${i}\`) — no changes are made.`):i===`add`||i===`restore`||i===`reset`?a(`Stage or unstage changes`,`Preparing changes for commit (\`git ${i}\`).`):i===`commit`?a(`Save a checkpoint`,`Saving a snapshot of your changes to git history.`):i===`push`?a(`Send code to the remote`,`Uploading your commits to the remote git repository (e.g. GitHub).`):i===`pull`||i===`fetch`?a(`Get latest from the remote`,`Downloading the newest commits from the remote repository.`):i===`checkout`||i===`switch`?a(`Switch git branch`,`Switching which version of the code is loaded (\`git ${i}\`).`):i===`merge`||i===`rebase`?a(`Combine git branches`,`Combining changes from another branch (\`git ${i}\`).`):a(`Use git`,`Running a git command: \`${t}\``);if(r===`npm`||r===`bun`||r===`pnpm`||r===`yarn`){if(i===`install`||i===`i`||i===`add`)return a(`Install packages`,`Downloading project dependencies from the internet (\`${r} ${i}\`).`);if(i===`run`)return a(`Run a project script`,`Running a project script: \`${t}\``);if(i===`test`)return a(`Run automated tests`,`Running the project's automated tests.`);if(i===`build`)return a(`Build the project`,`Compiling the project for release.`)}return r===`pip`||r===`pip3`||r===`uv`?a(`Install Python packages`,`Installing Python packages: \`${t}\``):r===`pytest`||r===`jest`||r===`vitest`||r===`mocha`||r===`bun`&&i===`test`?a(`Run automated tests`,`Running automated tests: \`${t}\``):r===`docker`||r===`podman`?a(`Use Docker`,`Running a container command: \`${t}\``):r===`ssh`||r===`scp`||r===`rsync`?a(`Talk to another machine`,`Connecting to another computer over the network: \`${t}\``):a(`Run a terminal command`,`Running in the terminal: \`${t}\``)}function vi(e,t){let n=e??``,r=n.toLowerCase(),i=li(n),a=null;try{let e=JSON.parse(t);e&&typeof e==`object`&&!Array.isArray(e)&&(a=e)}catch{}if(r===`__daemon`){let e=a?.event,t=a?.detail;return typeof e==`string`&&e.length>0?{headline:`SigmaShake itself`,detail:`SigmaShake ${e===`start`?`started`:e===`stop`?`stopped`:e}${typeof t==`string`&&t.length>0?` — ${t}`:``}.`}:{headline:`SigmaShake itself`,detail:`A SigmaShake lifecycle event.`}}if(!a)return{headline:i,detail:`${i}.`};if(r===`bash`||r===`shell`||r===`run_command`||r===`exec`||r===`run_shell_command`){let e=pi(a);return e?_i(e):{headline:i,detail:`Running a terminal command.`}}if(r===`read`||r===`read_file`||r===`view_file`||r===`cat`||r===`view`){let e=fi(a);return e?{headline:i,detail:`Reading the file \`${gi(e)}\` so it can understand the current code. No changes are made.`}:{headline:i,detail:`Reading a file. No changes are made.`}}if(r===`write`||r===`write_to_file`||r===`create_file`){let e=fi(a);return e?{headline:`Save changes to a file`,detail:`Creating or overwriting the file \`${gi(e)}\`. This will replace anything that was there before.`}:{headline:i,detail:`Creating or overwriting a file.`}}if(r===`edit`||r===`multiedit`||r===`patch`||r===`apply_patch`||r===`replace`){let e=fi(a);return e?{headline:i,detail:`Editing the file \`${gi(e)}\` — changing specific parts of it without rewriting the whole thing.`}:{headline:i,detail:`Editing a file in place.`}}if(r===`grep`||r===`ripgrep`||r===`search`||r===`search_codebase`){let e=mi(a);return e?{headline:i,detail:`Searching the project for the text "${e}".`}:{headline:i,detail:`Searching the project for matching text.`}}if(r===`glob`||r===`find`||r===`list_files`||r===`ls`){let e=mi(a)??fi(a);return e?{headline:i,detail:`Looking for files matching "${e}".`}:{headline:i,detail:`Looking for files in the project.`}}if(r===`webfetch`||r===`fetch`||r===`browser_action`){let e=hi(a);return e?{headline:i,detail:`Reading a webpage from the internet: ${e}`}:{headline:i,detail:`Reading a webpage from the internet.`}}if(r===`websearch`||r===`search_web`){let e=mi(a);return e?{headline:i,detail:`Searching the web for "${e}".`}:{headline:i,detail:`Searching the web.`}}return r===`agent`||r===`spawn`?{headline:i,detail:`Asking a separate helper AI to investigate something on its own, then report back. Helps keep this conversation focused.`}:r===`task`||r===`todowrite`||r===`todo_write`?{headline:i,detail:`Updating its internal to-do list so it can keep track of progress on a multi-step task.`}:{headline:i,detail:`${i}.`}}var yi=At(`relative font-mono text-[11px] overflow-hidden border bg-[var(--color-surface-1)] border-[var(--color-line-1)] rounded-sm`,{variants:{density:{compact:``,roomy:`text-[12px]`}},defaultVariants:{density:`compact`}}),bi={allow:`#34d399`,block:`#ef4444`,ask:`#f59e0b`,log:`#a78bfa`,force:`#38bdf8`,shadow:`#6e7076`},xi={allow:`text-emerald-300`,block:`text-red-300`,ask:`text-amber-300`,log:`text-violet-300`,force:`text-sky-300`,shadow:`text-[var(--color-fg-3)]`};function Si(e){let t=new Date(e);return`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}.${String(t.getMilliseconds()).padStart(3,`0`)}`}function Ci(e){return e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:e<1e9?`${(e/1e6).toFixed(2)} ms`:`${(e/1e9).toFixed(2)} s`}function wi(e){return e.variant===`raw`?(0,K.jsx)(Ei,{...e}):(0,K.jsx)(Ti,{...e})}function Ti({bursts:e,windowSize:t=60,filterDecision:n,filterClient:r,className:i,density:a,height:o=260}){let[s,c]=(0,_.useState)(!1),l=(0,_.useRef)(null),u=(0,_.useMemo)(()=>{let i=e;n&&(i=i.filter(e=>e.decision===n)),r&&(i=i.filter(e=>e.client===r));let a=i.slice(-t),o=Array(a.length);for(let e=0;e<a.length;e++)o[e]=a[a.length-1-e];return o},[e,n,r,t]);s?l.current===null&&(l.current=u):l.current=null;let d=s&&l.current?l.current:u,f=(0,_.useRef)(null),p=(0,_.useRef)(0);return(0,_.useLayoutEffect)(()=>{if(s)return;let e=d[0];if(!e||e.ts_ms===p.current)return;p.current=e.ts_ms;let t=f.current;t&&(ot()||wt(t,{translateX:[-10,0],opacity:[0,1],duration:220,ease:`outExpo`}))},[d,s]),(0,K.jsxs)(`div`,{className:G(yi({density:a,className:i})),onMouseEnter:()=>c(!0),onMouseLeave:()=>c(!1),children:[(0,K.jsx)(`div`,{className:`overflow-auto`,style:{height:o},children:d.length===0?(0,K.jsx)(`div`,{className:`px-3 py-4 text-[var(--color-fg-4)]`,children:`— waiting for events —`}):d.map((e,t)=>{let n=e.input_preview&&e.input_preview.length>0?e.input_preview:e.rule_id?`rule: ${e.rule_id}`:`—`;return(0,K.jsxs)(`div`,{ref:t===0?f:void 0,className:`telemetry-row grid items-center gap-2 px-3 py-1 border-b border-[var(--color-line-0)] last:border-b-0 hover:bg-[var(--color-surface-2)]`,style:{gridTemplateColumns:`90px 56px minmax(80px, 130px) minmax(0, 1fr) 70px 80px`,borderLeft:`3px solid ${bi[e.decision]??`#666`}`},children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:Si(e.ts_ms)}),(0,K.jsx)(`span`,{className:G(`uppercase tracking-wide font-medium`,xi[e.decision]??`text-[var(--color-fg-2)]`),children:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,title:e.tool?`${e.tool} — ${li(e.tool)}`:`unknown tool`,children:e.tool||`—`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] truncate`,title:n,children:n}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums text-right`,children:Ci(e.duration_ns)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate text-right`,title:e.client,children:e.client})]},e.audit_id??`${e.ts_ms}:${e.tool}`)})}),s?(0,K.jsx)(Di,{}):null]})}function Ei({lines:e,windowSize:t=300,className:n,density:r,height:i=260}){let[a,o]=(0,_.useState)(!1),s=(0,_.useRef)(null),c=(0,_.useMemo)(()=>{let n=e.slice(-t),r=Array(n.length);for(let e=0;e<n.length;e++)r[e]=n[n.length-1-e];return r},[e,t]);a?s.current===null&&(s.current=c):s.current=null;let l=a&&s.current?s.current:c;return(0,K.jsxs)(`div`,{className:G(yi({density:r,className:n})),onMouseEnter:()=>o(!0),onMouseLeave:()=>o(!1),children:[(0,K.jsx)(`div`,{className:`overflow-auto px-3 py-2 leading-relaxed text-[var(--color-fg-2)] whitespace-pre`,style:{height:i},children:l.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`— empty —`}):l.map((e,t)=>(0,K.jsx)(`div`,{className:`hover:bg-[var(--color-surface-2)]`,children:e},`${t}:${e.slice(0,40)}`))}),a?(0,K.jsx)(Di,{}):null]})}function Di(){return(0,K.jsx)(`span`,{className:`absolute top-1 right-2 text-[10px] uppercase tracking-wider font-mono text-[var(--color-brand)] bg-[var(--color-surface-0)] px-1.5 py-0.5 border border-[var(--color-brand)]/40 rounded-sm`,children:`paused`})}var Oi=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),ki=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Ai=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),ji=e=>{let t=Ai(e);return t.charAt(0).toUpperCase()+t.slice(1)},Mi={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},Ni=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},Pi=(0,_.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:a,iconNode:o,...s},c)=>(0,_.createElement)(`svg`,{ref:c,...Mi,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Oi(`lucide`,i),...!a&&!Ni(s)&&{"aria-hidden":`true`},...s},[...o.map(([e,t])=>(0,_.createElement)(e,t)),...Array.isArray(a)?a:[a]])),Fi=(e,t)=>{let n=(0,_.forwardRef)(({className:n,...r},i)=>(0,_.createElement)(Pi,{ref:i,iconNode:t,className:Oi(`lucide-${ki(ji(e))}`,`lucide-${e}`,n),...r}));return n.displayName=ji(e),n},Ii=Fi(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),Li=Fi(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),Ri=Fi(`grip-horizontal`,[[`circle`,{cx:`12`,cy:`9`,r:`1`,key:`124mty`}],[`circle`,{cx:`19`,cy:`9`,r:`1`,key:`1ruzo2`}],[`circle`,{cx:`5`,cy:`9`,r:`1`,key:`1a8b28`}],[`circle`,{cx:`12`,cy:`15`,r:`1`,key:`1e56xg`}],[`circle`,{cx:`19`,cy:`15`,r:`1`,key:`1a92ep`}],[`circle`,{cx:`5`,cy:`15`,r:`1`,key:`5r1jwy`}]]),zi=Fi(`pencil`,[[`path`,{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`,key:`1a8usu`}],[`path`,{d:`m15 5 4 4`,key:`1mk7zo`}]]),Bi=Fi(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),Vi=Fi(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Hi=Fi(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Ui=Fi(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]),Wi=Fi(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Gi=[`hero-metrics`,`graph`,`latency-trace`,`throughput`,`decision-mix`,`telemetry-feed`,`system-pulse`,`pending-approvals`,`recent-blocks`],Ki={"hero-metrics":`Hero metrics`,graph:`Graph intelligence`,"latency-trace":`Latency trace`,throughput:`Throughput`,"decision-mix":`Decision mix`,"telemetry-feed":`Telemetry feed`,"system-pulse":`System pulse`,"pending-approvals":`Pending approvals`,"recent-blocks":`Recent blocks`},qi={"hero-metrics":{minW:6,minH:2,defaultW:12,defaultH:2},graph:{minW:4,minH:3,defaultW:8,defaultH:5},"latency-trace":{minW:4,minH:3,defaultW:8,defaultH:4},throughput:{minW:2,minH:2,defaultW:4,defaultH:2},"decision-mix":{minW:2,minH:2,defaultW:4,defaultH:2},"telemetry-feed":{minW:6,minH:3,defaultW:12,defaultH:4},"system-pulse":{minW:4,minH:3,defaultW:12,defaultH:3},"pending-approvals":{minW:3,minH:2,defaultW:6,defaultH:3},"recent-blocks":{minW:3,minH:2,defaultW:6,defaultH:3}};function Ji({panel:e,isEditing:t,children:n,drag:r}){let i=(0,_.useRef)(null),a={gridColumn:`${e.x+1} / span ${e.w}`,gridRow:`${e.y+1} / span ${e.h}`};return(0,K.jsxs)(`div`,{ref:i,className:`grid-panel ${t?`grid-panel--edit`:``}`,style:a,role:t?`region`:void 0,"aria-label":t?Ki[e.id]:void 0,tabIndex:t?0:void 0,onKeyDown:t?t=>r.onPanelKeyDown(t,e.id):void 0,"data-panel-id":e.id,children:[t&&(0,K.jsx)(`button`,{type:`button`,className:`grid-panel__drag-handle`,title:`Drag ${Ki[e.id]} (or Arrow keys)`,"aria-label":`Drag ${Ki[e.id]}`,onPointerDown:t=>{let n=i.current;n&&r.onDragPointerDown(t,e.id,n)},children:(0,K.jsx)(Ri,{size:12,strokeWidth:2})}),(0,K.jsx)(`div`,{className:`grid-panel__content`,"data-reveal":t?void 0:``,children:n}),t&&(0,K.jsx)(`button`,{type:`button`,className:`grid-panel__resize-handle`,title:`Resize ${Ki[e.id]} (or Shift+Arrow keys)`,"aria-label":`Resize ${Ki[e.id]}`,onPointerDown:t=>{let n=i.current;n&&r.onResizePointerDown(t,e.id,n)},children:(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 10 10`,"aria-hidden":!0,children:[(0,K.jsx)(`path`,{d:`M10 0 L10 10 L0 10 Z`,fill:`currentColor`,fillOpacity:`0.4`}),(0,K.jsx)(`path`,{d:`M3 10 L10 3 M6 10 L10 6 M9 10 L10 9`,stroke:`currentColor`,strokeWidth:`0.8`,fill:`none`})]})})]})}var Yi=(0,_.memo)(Ji);function Xi(e){let t=getComputedStyle(e),n=e.getBoundingClientRect(),r=parseFloat(t.rowGap||t.gap||`0`)||0,i=r*11;return{cellWidthPx:(n.width-i)/12+r,cellHeightPx:72+r}}function Zi(e){let t=(0,_.useRef)(null),n=(0,_.useRef)(e);n.current=e;let r=(0,_.useCallback)(()=>{let e=t.current;if(e){e.element.style.transform=``,e.element.style.width=``,e.element.style.height=``,e.element.style.zIndex=``,e.element.classList.remove(`grid-panel--dragging`),e.element.classList.remove(`grid-panel--resizing`);try{e.element.releasePointerCapture(e.pointerId)}catch{}t.current=null}},[]);(0,_.useEffect)(()=>{function e(e){let n=t.current;if(!n||e.pointerId!==n.pointerId)return;let r=e.clientX-n.startPointerX,i=e.clientY-n.startPointerY;if(n.mode===`drag`)n.element.style.transform=`translate3d(${r}px, ${i}px, 0)`;else{let e=qi[n.startPanel.id],t=e.minW*n.cellWidthPx-n.cellWidthPx+40,a=e.minH*n.cellHeightPx-n.cellHeightPx+40,o=Math.max(t,n.startRectW+r),s=Math.max(a,n.startRectH+i);n.element.style.width=`${o}px`,n.element.style.height=`${s}px`}}function i(e,t,n){let r=qi[e.startPanel.id];if(e.mode===`drag`){let r=Math.round(t/e.cellWidthPx),i=Math.round(n/e.cellHeightPx),a=e.startPanel.x+r,o=e.startPanel.y+i;return a<0&&(a=0),a+e.startPanel.w>12&&(a=12-e.startPanel.w),o<0&&(o=0),{id:e.id,x:a,y:o,w:e.startPanel.w,h:e.startPanel.h}}let i=Math.round(t/e.cellWidthPx),a=Math.round(n/e.cellHeightPx),o=e.startPanel.w+i,s=e.startPanel.h+a;return o<r.minW&&(o=r.minW),s<r.minH&&(s=r.minH),e.startPanel.x+o>12&&(o=12-e.startPanel.x),{id:e.id,x:e.startPanel.x,y:e.startPanel.y,w:o,h:s}}function a(e){let a=t.current;if(!a||e.pointerId!==a.pointerId)return;let o=i(a,e.clientX-a.startPointerX,e.clientY-a.startPointerY);r(),o.x===a.startPanel.x&&o.y===a.startPanel.y&&o.w===a.startPanel.w&&o.h===a.startPanel.h||n.current.onCommit(o)}function o(e){let n=t.current;!n||e.pointerId!==n.pointerId||r()}function s(e){e.key===`Escape`&&t.current&&r()}function c(){document.visibilityState===`hidden`&&t.current&&r()}return document.addEventListener(`pointermove`,e),document.addEventListener(`pointerup`,a),document.addEventListener(`pointercancel`,o),document.addEventListener(`keydown`,s),document.addEventListener(`visibilitychange`,c),()=>{document.removeEventListener(`pointermove`,e),document.removeEventListener(`pointerup`,a),document.removeEventListener(`pointercancel`,o),document.removeEventListener(`keydown`,s),document.removeEventListener(`visibilitychange`,c),t.current&&r()}},[r]);let i=(0,_.useCallback)((e,r,i,a)=>{if(!n.current.enabled||t.current)return;let o=n.current.getPanel(r),s=n.current.gridRef.current;if(!o||!s)return;e.preventDefault(),e.stopPropagation();let{cellWidthPx:c,cellHeightPx:l}=Xi(s),u=i.getBoundingClientRect();t.current={id:r,mode:a,startPointerX:e.clientX,startPointerY:e.clientY,startPanel:o,element:i,cellWidthPx:c,cellHeightPx:l,pointerId:e.pointerId,startRectW:u.width,startRectH:u.height},i.classList.add(a===`drag`?`grid-panel--dragging`:`grid-panel--resizing`),i.style.zIndex=`10`;try{i.setPointerCapture(e.pointerId)}catch{}},[]);return{onDragPointerDown:(0,_.useCallback)((e,t,n)=>i(e,t,n,`drag`),[i]),onResizePointerDown:(0,_.useCallback)((e,t,n)=>i(e,t,n,`resize`),[i]),onPanelKeyDown:(0,_.useCallback)((e,t)=>{if(!n.current.enabled)return;let r=n.current.getPanel(t);if(!r)return;let i=e.shiftKey,a=0,o=0;switch(e.key){case`ArrowLeft`:a=-1;break;case`ArrowRight`:a=1;break;case`ArrowUp`:o=-1;break;case`ArrowDown`:o=1;break;default:return}e.preventDefault(),e.stopPropagation();let s=qi[t];if(i){let e=r.w+a,i=r.h+o;if(e<s.minW&&(e=s.minW),i<s.minH&&(i=s.minH),r.x+e>12&&(e=12-r.x),e===r.w&&i===r.h)return;n.current.onCommit({id:t,x:r.x,y:r.y,w:e,h:i})}else{let e=r.x+a,i=r.y+o;if(e<0&&(e=0),e+r.w>12&&(e=12-r.w),i<0&&(i=0),e===r.x&&i===r.y)return;n.current.onCommit({id:t,x:e,y:i,w:r.w,h:r.h})}},[]),isGesturing:(0,_.useCallback)(()=>t.current!==null,[])}}function Qi(e,t){return e.x<t.x+t.w&&e.x+e.w>t.x&&e.y<t.y+t.h&&e.y+e.h>t.y}function $i(e){return{id:e.id,x:e.x,y:e.y,w:e.w,h:e.h}}function ea(e,t){let n=[$i(e)],r=t.map($i);r.sort((e,t)=>e.y===t.y?e.x-t.x:e.y-t.y);for(let e of r){for(;;){let t=!1;for(let r of n)if(Qi(e,r)){let n=r.y+r.h;n>e.y&&(e.y=n,t=!0)}if(!t)break}n.push(e)}return n}function ta(e){if(e.length===0)return[];let t=[...e].map($i).sort((e,t)=>e.y===t.y?e.x-t.x:e.y-t.y),n=[];for(let e of t){let t=!0;for(;t;){t=!1;for(let r of n)Qi(e,r)&&(e.y=r.y+r.h,t=!0)}n.push(e)}return n}function na(e,t,n){let r=e.findIndex(e=>e.id===t);if(r===-1)return{panels:e.map($i)};let i=ea({id:e[r].id,x:n.x,y:n.y,w:n.w,h:n.h},e.filter((e,t)=>t!==r)),a=new Map(i.map(e=>[e.id,e]));return{panels:ta(e.map(e=>a.get(e.id)).filter(Boolean))}}function ra({panels:e,isEditing:t,renderers:n,onPanelsChange:r}){let i=(0,_.useRef)(null),a=(0,_.useRef)(e);a.current=e;let o=(0,_.useMemo)(()=>{let t=new Map;for(let n of e)t.set(n.id,n);return t},[e]),s=Zi({gridRef:i,getPanel:(0,_.useCallback)(e=>o.get(e),[o]),onCommit:(0,_.useCallback)(e=>{let t=a.current,{panels:n}=na(t,e.id,{x:e.x,y:e.y,w:e.w,h:e.h});r(n)},[r]),enabled:t});return(0,K.jsx)(`div`,{ref:i,className:`grid-layout ${t?`grid-layout--editing`:``}`,"aria-live":t?`polite`:void 0,children:e.map(e=>(0,K.jsx)(Yi,{panel:e,isEditing:t,drag:s,children:n[e.id]()},e.id))})}function ia({manager:e,isEditing:t,onToggleEditing:n}){let{config:r,activeLayout:i,canAddUserLayout:a,saveError:o,selectLayout:s,saveAs:c,renameActive:l,deleteLayout:u,resetActive:d,exportConfig:f,importConfig:p}=e,[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(``),[x,S]=(0,_.useState)(!1),[C,w]=(0,_.useState)(i.name),[T,E]=(0,_.useState)(!1),[D,O]=(0,_.useState)(!1),ee=(0,_.useRef)(null);(0,_.useEffect)(()=>{w(i.name)},[i.name]),(0,_.useEffect)(()=>{o&&h(o)},[o]),(0,_.useEffect)(()=>{if(!m)return;let e=setTimeout(()=>h(null),4e3);return()=>clearTimeout(e)},[m]);function k(){y.trim()&&(c(y.trim()),b(``),v(!1),h(`Saved "${y.trim()}"`))}function A(){C.trim()&&(l(C.trim()),S(!1),h(`Renamed`))}function j(){let e=i.name;u(i.id),O(!1),h(`Deleted "${e}"`)}function te(){d(),E(!1),h(`Reset to default`)}function ne(){let e=f(),t=new Blob([e],{type:`application/json`}),n=URL.createObjectURL(t),r=new Date().toISOString().slice(0,10),i=document.createElement(`a`);i.href=n,i.download=`ssg-layout-${r}.json`,i.click(),URL.revokeObjectURL(n),h(`Layout exported`)}function re(e){let t=e.target.files?.[0];e.target.value=``,t&&t.text().then(e=>{h(p(e).message)}).catch(()=>h(`Import failed: could not read file`))}return(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`overline shrink-0`,children:`layout`}),(0,K.jsxs)(`select`,{value:r.activeLayoutId,onChange:e=>s(e.target.value),className:`bg-[var(--color-surface-2)] border border-[var(--color-line-1)] rounded-sm px-2 py-1 text-[11px] font-mono text-[var(--color-fg-1)] hover:border-[var(--color-line-2)] focus:outline-none focus:ring-1 focus:ring-[var(--color-brand)] cursor-pointer`,"aria-label":`Select layout`,children:[(0,K.jsx)(`optgroup`,{label:`Built-in`,children:r.layouts.filter(e=>e.builtIn).map(e=>(0,K.jsx)(`option`,{value:e.id,children:e.name},e.id))}),r.layouts.some(e=>!e.builtIn)&&(0,K.jsx)(`optgroup`,{label:`Your layouts`,children:r.layouts.filter(e=>!e.builtIn).map(e=>(0,K.jsx)(`option`,{value:e.id,children:e.name},e.id))})]}),i.builtIn&&(0,K.jsx)(`span`,{className:`chip text-[var(--color-fg-3)]`,title:`Built-in preset`,children:`built-in`})]}),(0,K.jsx)(`div`,{className:`flex items-center gap-1.5 shrink-0`,children:t?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(X,{variant:`secondary`,size:`sm`,onClick:()=>v(!0),disabled:!a,title:a?`Save the current arrangement as a new preset`:`Layout limit reached — delete one first`,children:[(0,K.jsx)(Vi,{size:11,strokeWidth:2.25}),`Save as`]}),!i.builtIn&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>{w(i.name),S(!0)},children:[(0,K.jsx)(zi,{size:11,strokeWidth:2.25}),`Rename`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>O(!0),children:[(0,K.jsx)(Hi,{size:11,strokeWidth:2.25}),`Delete`]})]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>E(!0),title:`Replace the current layout with the Default preset`,children:[(0,K.jsx)(Bi,{size:11,strokeWidth:2.25}),`Reset`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:ne,title:`Download current layouts as JSON`,children:[(0,K.jsx)(Li,{size:11,strokeWidth:2.25}),`Export`]}),(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:()=>ee.current?.click(),title:`Load layouts from a JSON file`,children:[(0,K.jsx)(Ui,{size:11,strokeWidth:2.25}),`Import`]}),(0,K.jsx)(`input`,{ref:ee,type:`file`,accept:`application/json,.json`,onChange:re,className:`hidden`,"aria-hidden":!0}),(0,K.jsxs)(X,{variant:`primary`,size:`sm`,onClick:()=>n(!1),children:[(0,K.jsx)(Ii,{size:11,strokeWidth:2.5}),`Done`]})]}):(0,K.jsxs)(X,{variant:`secondary`,size:`sm`,onClick:()=>n(!0),children:[(0,K.jsx)(zi,{size:11,strokeWidth:2.25}),`Edit layout`]})}),g&&(0,K.jsx)(aa,{title:`Save layout as`,value:y,placeholder:`My dashboard`,onChange:b,onConfirm:k,onCancel:()=>{v(!1),b(``)},confirmLabel:`Save`}),x&&(0,K.jsx)(aa,{title:`Rename layout`,value:C,placeholder:i.name,onChange:w,onConfirm:A,onCancel:()=>S(!1),confirmLabel:`Rename`}),T&&(0,K.jsx)(oa,{title:`Reset this layout?`,body:`The current arrangement will be replaced with the Default preset. Saved layouts are not affected.`,confirmLabel:`Reset`,onConfirm:te,onCancel:()=>E(!1),destructive:!1}),D&&(0,K.jsx)(oa,{title:`Delete "${i.name}"?`,body:`This layout will be removed. You can always recreate it via Save as.`,confirmLabel:`Delete`,onConfirm:j,onCancel:()=>O(!1),destructive:!0}),m&&(0,K.jsx)(`div`,{role:`status`,className:`fixed bottom-5 left-1/2 -translate-x-1/2 z-50 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-3)] px-3 py-2 text-[11px] font-mono text-[var(--color-fg-1)] shadow-lg`,children:m})]})}function aa({title:e,value:t,placeholder:n,onChange:r,onConfirm:i,onCancel:a,confirmLabel:o}){return(0,K.jsx)(`div`,{role:`dialog`,"aria-modal":!0,"aria-label":e,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm`,onClick:a,children:(0,K.jsxs)(`div`,{onClick:e=>e.stopPropagation(),className:`w-80 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-2)] p-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:e}),(0,K.jsx)(`input`,{value:t,onChange:e=>r(e.target.value),placeholder:n,autoFocus:!0,onKeyDown:e=>{e.key===`Enter`&&i(),e.key===`Escape`&&a()},className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] rounded-sm px-2 py-1.5 text-[13px] font-mono text-[var(--color-fg-1)] focus:outline-none focus:border-[var(--color-brand)]`}),(0,K.jsxs)(`div`,{className:`mt-3 flex justify-end gap-2`,children:[(0,K.jsxs)(X,{variant:`ghost`,size:`sm`,onClick:a,children:[(0,K.jsx)(Wi,{size:11,strokeWidth:2.25}),`Cancel`]}),(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:i,children:o})]})]})})}function oa({title:e,body:t,confirmLabel:n,destructive:r,onConfirm:i,onCancel:a}){return(0,K.jsx)(`div`,{role:`dialog`,"aria-modal":!0,"aria-label":e,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/60 backdrop-blur-sm`,onClick:a,children:(0,K.jsxs)(`div`,{onClick:e=>e.stopPropagation(),className:`w-96 rounded-sm border border-[var(--color-line-2)] bg-[var(--color-surface-2)] p-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:e}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:t}),(0,K.jsxs)(`div`,{className:`mt-4 flex justify-end gap-2`,children:[(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:a,children:`Cancel`}),(0,K.jsx)(X,{variant:r?`danger`:`primary`,size:`sm`,onClick:i,children:n})]})]})})}var sa={default:`builtin-default`,focusLatency:`builtin-focus-latency`,focusApprovals:`builtin-focus-approvals`,compact:`builtin-compact`},ca={id:sa.default,name:`Default`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`graph`,x:0,y:2,w:8,h:5},{id:`latency-trace`,x:8,y:2,w:4,h:3},{id:`throughput`,x:8,y:5,w:2,h:2},{id:`decision-mix`,x:10,y:5,w:2,h:2},{id:`telemetry-feed`,x:0,y:7,w:12,h:3},{id:`system-pulse`,x:0,y:10,w:12,h:3},{id:`pending-approvals`,x:0,y:13,w:6,h:3},{id:`recent-blocks`,x:6,y:13,w:6,h:3}]},la={id:sa.focusLatency,name:`Focus · Latency`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`latency-trace`,x:0,y:2,w:8,h:5},{id:`graph`,x:8,y:2,w:4,h:5},{id:`throughput`,x:0,y:7,w:6,h:2},{id:`decision-mix`,x:6,y:7,w:6,h:2},{id:`system-pulse`,x:0,y:9,w:12,h:3},{id:`telemetry-feed`,x:0,y:12,w:12,h:3},{id:`pending-approvals`,x:0,y:15,w:6,h:2},{id:`recent-blocks`,x:6,y:15,w:6,h:2}]},ua={id:sa.focusApprovals,name:`Focus · Approvals`,builtIn:!0,panels:[{id:`pending-approvals`,x:0,y:0,w:8,h:4},{id:`graph`,x:8,y:0,w:4,h:4},{id:`recent-blocks`,x:0,y:4,w:12,h:3},{id:`hero-metrics`,x:0,y:7,w:12,h:2},{id:`latency-trace`,x:0,y:9,w:6,h:3},{id:`telemetry-feed`,x:6,y:9,w:6,h:3},{id:`system-pulse`,x:0,y:12,w:12,h:3},{id:`throughput`,x:0,y:15,w:6,h:2},{id:`decision-mix`,x:6,y:15,w:6,h:2}]},da={id:sa.compact,name:`Compact`,builtIn:!0,panels:[{id:`hero-metrics`,x:0,y:0,w:12,h:2},{id:`graph`,x:0,y:2,w:8,h:3},{id:`latency-trace`,x:8,y:2,w:4,h:3},{id:`system-pulse`,x:0,y:5,w:12,h:3},{id:`throughput`,x:0,y:8,w:4,h:2},{id:`decision-mix`,x:4,y:8,w:4,h:2},{id:`telemetry-feed`,x:0,y:10,w:12,h:3},{id:`pending-approvals`,x:0,y:13,w:6,h:2},{id:`recent-blocks`,x:6,y:13,w:6,h:2}]},fa=Object.freeze([ca,la,ua,da]);function pa(){return fa.map(e=>({...e,panels:e.panels.map(e=>({...e}))}))}function ma(){return{version:1,activeLayoutId:sa.default,layouts:pa()}}function ha(e){return Object.values(sa).includes(e)}var ga=new Set(Gi),_a=new Set(fa.map(e=>e.id));function va(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ya(e,t,n,r){if(typeof e!=`number`||!Number.isFinite(e))return r;let i=Math.floor(e);return i<t?t:i>n?n:i}function ba(e,t){let n=(typeof e==`string`?e:``).replace(/[\u0000-\u001F\u007F]/g,``).trim();return n.length===0?t:n.slice(0,40)}function xa(e){let t=e.find(e=>e.id===`system-pulse`);if(!t||t.h>=3)return e;let n=3-t.h,r=t.y+t.h;return e.map(e=>e.id===`system-pulse`?{...e,h:3}:e.y>=r?{...e,y:e.y+n}:e)}function Sa(e){for(let t=0;t<e.length;t++){let n=e[t];for(let r=t+1;r<e.length;r++){let t=e[r];if(n.x<t.x+t.w&&n.x+n.w>t.x&&n.y<t.y+t.h&&n.y+n.h>t.y)return!0}}return!1}function Ca(e){if(!va(e))return null;let{id:t}=e;if(typeof t!=`string`||!ga.has(t))return null;let n=t,r=qi[n],i=ya(e.x,0,11,0),a=ya(e.w,r.minW,12,r.defaultW);return{id:n,x:i+a>12?12-a:i,y:ya(e.y,0,999,0),w:a,h:ya(e.h,r.minH,99,r.defaultH)}}function wa(e,t){if(!va(e))return{layout:null,droppedPanels:0};let n=typeof e.id==`string`&&e.id.length>0?e.id:null;if(!n)return{layout:null,droppedPanels:0};let r=ba(e.name,t),i=_a.has(n),a=e.panels;if(!Array.isArray(a))return{layout:null,droppedPanels:0};let o=new Set,s=[],c=0;for(let e of a){let t=Ca(e);if(!t){c+=1;continue}if(o.has(t.id)){c+=1;continue}o.add(t.id),s.push(t)}return s.length===0?{layout:null,droppedPanels:c}:{layout:{id:n,name:r,builtIn:i,panels:xa(s)},droppedPanels:c}}function Ta(e){if(!va(e)||e.version!==1)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0};let t=e.layouts;if(!Array.isArray(t)||t.length===0)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0};let n=[],r=0,i=0,a=0;for(let e of t){let{layout:t,droppedPanels:o}=wa(e,`Layout ${n.length+1}`);if(r+=o,t){if(!t.builtIn){if(i>=12){a+=1;continue}i+=1}n.push(t)}}if(n.length===0)return{config:ma(),droppedPanels:r,prunedLayouts:a,fellBackToDefault:!0};let o=new Set(n.map(e=>e.id));for(let e of fa)o.has(e.id)||n.push({...e,panels:e.panels.map(e=>({...e}))});let s=new Map(fa.map(e=>[e.id,e])),c=0,l=0;for(let e=0;e<n.length;e++){let t=n[e],r=s.get(t.id);if(!r)continue;if(Sa(t.panels)){n[e]={...r,panels:r.panels.map(e=>({...e}))},l+=1;continue}let i=new Set(t.panels.map(e=>e.id)),a=r.panels.filter(e=>!i.has(e.id));if(a.length===0)continue;let o=t.panels.reduce((e,t)=>Math.max(e,t.y+t.h),0);for(let e of a)t.panels.push({id:e.id,x:0,y:o,w:e.w,h:e.h}),o+=e.h,c+=1}let u=e.activeLayoutId;return{config:{version:1,activeLayoutId:typeof u==`string`&&n.some(e=>e.id===u)?u:fa[0].id,layouts:n},droppedPanels:r,prunedLayouts:a,fellBackToDefault:!1,backfilledPanels:c,refreshedBuiltins:l}}var Ea=`ssg:dashboard-layout:v1`,Da=300;function Oa(){if(typeof localStorage>`u`)return null;try{let e=`__ssg_probe__`;return localStorage.setItem(e,`1`),localStorage.removeItem(e),localStorage}catch{return null}}var ka;function Aa(){return ka===void 0&&(ka=Oa()),ka}function ja(){let e=Aa();if(!e)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!1};let t=null;try{t=e.getItem(Ea)}catch{t=null}if(t===null)return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!1};let n=null;try{n=JSON.parse(t)}catch{return{config:ma(),droppedPanels:0,prunedLayouts:0,fellBackToDefault:!0}}return Ta(n)}var Ma=null,Na=null,Pa=null;function Fa(e){return Pa=e,()=>{Pa===e&&(Pa=null)}}function Ia(e){Pa?Pa(e):typeof console<`u`&&console.warn(`[ssg-layout]`,e)}function La(){if(Na=null,!Ma)return;let e=Aa();if(!e){Ma=null;return}let t=Ma;Ma=null;try{e.setItem(Ea,JSON.stringify(t))}catch(e){e instanceof Error&&e.name===`QuotaExceededError`?Ia(`Layout storage full — save skipped`):Ia(`Layout save failed: ${e instanceof Error?e.message:String(e)}`)}}function Ra(e){Ma=e,Na===null&&(Na=setTimeout(La,Da))}function za(e){Ma=e,Na!==null&&(clearTimeout(Na),Na=null),La()}function Ba(e){let t=0;for(let n of e.layouts)n.builtIn||(t+=1);return t}function Va(e){return e.map(e=>({...e}))}function Ha(){return`user-`+Math.random().toString(16).slice(2,11)}function Ua(){let[e,t]=(0,_.useState)(()=>ja().config),[n,r]=(0,_.useState)(null);(0,_.useEffect)(()=>Fa(e=>r(e)),[]),(0,_.useEffect)(()=>{Ra(e)},[e]);let i=e.layouts.find(t=>t.id===e.activeLayoutId)??e.layouts[0]??pa()[0],a=Ba(e)<12,o=(0,_.useCallback)(e=>{t(t=>t.layouts.some(t=>t.id===e)?{...t,activeLayoutId:e}:t)},[]),s=(0,_.useCallback)(e=>{t(t=>{let n=t.activeLayoutId;return{...t,layouts:t.layouts.map(t=>t.id===n?{...t,panels:Va(e)}:t)}})},[]),c=(0,_.useCallback)(e=>{let n=e.trim();n&&t(e=>{if(Ba(e)>=12)return e;let t=e.layouts.find(t=>t.id===e.activeLayoutId)??e.layouts[0];if(!t)return e;let r={id:Ha(),name:n,builtIn:!1,panels:Va(t.panels)};return{...e,activeLayoutId:r.id,layouts:[...e.layouts,r]}})},[]),l=(0,_.useCallback)(e=>{let n=e.trim();n&&t(e=>({...e,layouts:e.layouts.map(t=>t.id===e.activeLayoutId&&!t.builtIn?{...t,name:n}:t)}))},[]),u=(0,_.useCallback)(e=>{t(t=>{let n=t.layouts.find(t=>t.id===e);if(!n||n.builtIn)return t;let r=t.layouts.filter(t=>t.id!==e),i=t.activeLayoutId===e?r[0]?.id??fa[0].id:t.activeLayoutId;return{...t,activeLayoutId:i,layouts:r}})},[]),d=(0,_.useCallback)(()=>{t(e=>{let t=e.layouts.find(t=>t.id===e.activeLayoutId);if(!t)return e;let n=ha(t.id)?fa.find(e=>e.id===t.id):fa[0];return n?{...e,layouts:e.layouts.map(e=>e.id===t.id?{...e,panels:Va(n.panels)}:e)}:e})},[]),f=(0,_.useCallback)(()=>JSON.stringify(e,null,2),[e]),p=(0,_.useCallback)(e=>{let n;try{n=JSON.parse(e)}catch{return{ok:!1,message:`Import failed: not valid JSON`}}let r=Ta(n);if(r.fellBackToDefault)return{ok:!1,message:`Import rejected: schema invalid, no changes applied`};t(r.config),za(r.config);let i=[`Layout imported`];return r.droppedPanels>0&&i.push(`${r.droppedPanels} unrecognized panel(s) dropped`),r.prunedLayouts>0&&i.push(`${r.prunedLayouts} excess layout(s) pruned`),{ok:!0,message:i.join(` · `)}},[]);return(0,_.useEffect)(()=>{e.layouts.length===0&&t(ma())},[e.layouts.length]),{config:e,activeLayout:i,canAddUserLayout:a,saveError:n,selectLayout:o,updateActivePanels:s,saveAs:c,renameActive:l,deleteLayout:u,resetActive:d,exportConfig:f,importConfig:p}}var Wa=new Set([`compact`,`end`,`stop`,`subagent-stop`,`close`]),Ga=Object.freeze([`session-lifecycle`]);function Ka(e){(0,_.useEffect)(()=>Ce(Ga),[]);let t=(0,_.useSyncExternalStore)(R,ge),[n,r]=(0,_.useState)(new Map),i=(0,_.useRef)(0);(0,_.useEffect)(()=>{let e=t.lifecycleRing;if(e.length<=i.current)return;let n=e.slice(i.current);i.current=e.length,qa(n,r)},[t.lifecycleRing]);let a=(0,_.useRef)(void 0);return(0,_.useEffect)(()=>{!e||e===a.current||(a.current=e,qa(e,r))},[e]),{closedAt:n,isBurstActive(e,t){let r=n.get(e);return r===void 0||t>r}}}function qa(e,t){let n=e.filter(e=>Wa.has(e.event));n.length!==0&&t(e=>{let t=!1,r=new Map(e);for(let e of n){let n=r.get(e.session_key);(n===void 0||e.ts_ms>n)&&(r.set(e.session_key,e.ts_ms),t=!0)}return t?r:e})}function Ja(e){return`${e.client}:${e.agent_id??`solo`}`}var Ya=Object.freeze({allow:`#22c55e`,block:`#ef4444`,ask:`#f59e0b`,log:`#60a5fa`,force:`#a855f7`,shadow:`#6b7280`}),Xa=5*6e4,Za=1200,Qa=30*6e4,$a=1.4;function eo(e){let t=(e.input_tokens??0)+(e.output_tokens??0);if(t<=0)return 6;let n=6+Math.log2(1+t/50)*$a;return n<4?4:n>16?16:n}function to(e){let t=(e.input_tokens??0)+(e.output_tokens??0);if(t<=0)return 0;let n=Math.log2(1+t/50)*$a/10;return n<=0?0:n>=1?1:n}function Z(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(Math.round(e))}function no(e,t){if(t<=0)return e;let n=e.startsWith(`#`)?e.slice(1):e;if(n.length!==6)return e;let r=parseInt(n.slice(0,2),16),i=parseInt(n.slice(2,4),16),a=parseInt(n.slice(4,6),16);if(Number.isNaN(r)||Number.isNaN(i)||Number.isNaN(a))return e;let o=Math.max(r,i,a);if(o===0)return e;let s=t>1?1:t,c=(255-o)*s,l=Math.round(r+r/o*c),u=Math.round(i+i/o*c),d=Math.round(a+a/o*c),f=e=>(e<0?0:e>255?255:e).toString(16).padStart(2,`0`);return`#${f(l)}${f(u)}${f(d)}`}var ro=1440*60*1e3,io=1800*1e3,ao=3e3;function oo(e,t){if(e.length===0)return t.slice();if(t.length===0)return e.slice();let n=new Set,r=[],i=0,a=0;for(;i<e.length&&a<t.length;){let o=e[i].ts_ms<=t[a].ts_ms?e[i++]:t[a++],s=so(o);n.has(s)||(n.add(s),r.push(o))}for(;i<e.length;i++){let t=e[i],a=so(t);n.has(a)||(n.add(a),r.push(t))}for(;a<t.length;a++){let e=t[a],i=so(e);n.has(i)||(n.add(i),r.push(e))}return r}function so(e){return e.audit_id??`${e.ts_ms}:${e.tool}:${e.client}`}function co(e,t){if(e.length===0)return t.slice();if(t.length===0)return e.slice();let n=new Set,r=[];for(let i of[...e,...t]){let e=`${i.session_key}:${i.ts_ms}:${i.event}`;n.has(e)||(n.add(e),r.push(i))}return r}function lo(e,t,n,r=200,i=Qa,a=12){let o=new Map,s=new Map;for(let r of e){if(r.ts_ms>n)break;let e=Ja(r);if(!t(e,r.ts_ms))continue;let i=o.get(e);i?i.push(r):o.set(e,[r]);let a=s.get(e);(a===void 0||r.ts_ms>a)&&s.set(e,r.ts_ms)}let c=n-i,l=[];for(let[e,t]of s)t<c&&l.push(e);for(let e of l)o.delete(e),s.delete(e);if(o.size>a){let e=new Set(Array.from(s.entries()).sort((e,t)=>t[1]-e[1]).slice(0,a).map(([e])=>e));for(let t of[...o.keys()])e.has(t)||o.delete(t)}let u=[];for(let e of o.values()){let t=e.length>r?e.slice(-r):e;u.push(...t)}return u.sort((e,t)=>e.ts_ms-t.ts_ms),u}function uo(e={}){let t=e.windowMs??12e4,n=De(),[r,i]=(0,_.useState)(()=>({mode:`live`,playhead_ms:Date.now(),window_ms:t})),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)([]),[l,u]=(0,_.useState)(!1),d=(0,_.useRef)(null),f=(0,_.useRef)(null),p=(0,_.useRef)(!1);(0,_.useEffect)(()=>{p.current=n.length>0||a.length>0},[n,a]),(0,_.useEffect)(()=>{if(r.mode!==`live`)return;let e=()=>{if(!p.current)return;let e=Date.now();i(t=>t.mode===`live`?t.playhead_ms===e?t:{...t,playhead_ms:e}:t)};e();let t=setInterval(e,500);return()=>clearInterval(t)},[r.mode]);let m=(0,_.useMemo)(()=>oo(a,n),[a,n]),{isBurstActive:h}=Ka(s),g=(0,_.useMemo)(()=>lo(m,h,r.playhead_ms),[m,h,r.playhead_ms]),v=m.length>0?m[0].ts_ms:r.playhead_ms,y=m.length>0?m[m.length-1].ts_ms:r.playhead_ms,b=(0,_.useCallback)(async e=>{if(f.current)return;let t=v,n=Math.min(t,(d.current??Date.now())-e);if(n>=t)return;let r=new AbortController;f.current=r,u(!0);try{let e=await fetch(`/api/json/graph/backfill?since_ms=${n}&until_ms=${t}&limit=500`,{signal:r.signal,credentials:`same-origin`});if(!e.ok)throw Error(`backfill ${e.status}`);let i=await e.json();Array.isArray(i.bursts)&&i.bursts.length>0&&o(e=>{let t=oo(e,i.bursts);return t.length>ao?t.slice(-ao):t}),Array.isArray(i.lifecycle)&&i.lifecycle.length>0&&c(e=>co(e,i.lifecycle)),d.current=n}catch(e){e.name!==`AbortError`&&console.warn(`[graph] backfill failed`,e)}finally{f.current=null,u(!1)}},[v]);(0,_.useEffect)(()=>{r.playhead_ms-v<r.window_ms*.5&&b(Xa)},[r.mode,r.playhead_ms,r.window_ms,v,b]);let x=(0,_.useRef)(!1);(0,_.useEffect)(()=>{x.current||(x.current=!0,b(io))},[]),(0,_.useEffect)(()=>()=>{f.current?.abort(),f.current=null},[]);let S=(0,_.useCallback)(e=>{i(t=>e===`live`?{...t,mode:`live`}:{...t,mode:e})},[]),C=(0,_.useCallback)(e=>{i(t=>({...t,mode:t.mode===`live`?`scrubbing`:t.mode,playhead_ms:e}))},[]),w=(0,_.useCallback)(e=>{i(t=>({...t,window_ms:Math.max(1e3,e)}))},[]),T=(0,_.useCallback)(()=>{i(e=>({...e,mode:`live`,playhead_ms:Date.now()}))},[]),E=(0,_.useCallback)(()=>{i(e=>({...e,mode:`live`,playhead_ms:Date.now(),window_ms:ro})),b(ro)},[b]);return{snapshot:(0,_.useMemo)(()=>({bursts:g,playback:r,oldest_known_ms:v,newest_known_ms:y,loading_backfill:l}),[g,r,v,y,l]),allBursts:m,setMode:S,setPlayhead:C,setWindow:w,jumpToLive:T,requestBackfill:b,jumpTo24h:E}}var fo=2*Math.PI/6e4,po=2.3999632297286535,mo=16,ho=22,go=.4,_o=14,vo=8,yo=24;function bo(e,t,n){let r=new Map;for(let t of e){if(t.exitingAt!=null)continue;let e=r.get(t.session);e?e.push(t):r.set(t.session,[t])}if(r.size===0)return;for(let e of r.values())e.sort((e,t)=>e.ts_ms-t.ts_ms);let i=Math.min(t,n)-yo,a=Array.from(r.keys()).sort(),o=a.length,s=0;for(let e of r.values())e.length>s&&(s=e.length);let c=Math.max(1,Math.min(ho,(i-mo)/Math.max(1,s-1))),l=mo,u=mo+c,d=(l*l+u*u-_o*_o)/(2*l*u),f=Math.max(go,Math.acos(Math.min(1,Math.max(-1,d))));if(o<=vo)for(let e=0;e<o;e++){let t=a[e];if(t===void 0)continue;let n=r.get(t);if(!n)continue;let i=e*2*Math.PI/o;for(let e=0;e<n.length;e++){let t=n[e];t&&(t.slotPhi=i+e*f,t.slotR=mo+e*c)}}else{let e=[];for(let t of r.values())for(let n of t)e.push(n);e.sort((e,t)=>e.ts_ms-t.ts_ms);let t=Math.max(1,Math.min(ho,(i-mo)/Math.max(1,e.length-1)));for(let n=0;n<e.length;n++){let r=e[n];r&&(r.slotPhi=n*po,r.slotR=mo+n*t)}}}function xo(e,t,n,r){for(let i of e)i.exitingAt??(i.slotR==null||i.slotPhi==null||(i.x=t+i.slotR*Math.cos(i.slotPhi+r),i.y=n+i.slotR*Math.sin(i.slotPhi+r)))}function So(e){let t=new Map;for(let n of e){let e=t.get(n.session);e?(e.x+=n.x,e.y+=n.y,e.n+=1):t.set(n.session,{x:n.x,y:n.y,n:1})}for(let e of t.values())e.x/=e.n,e.y/=e.n;return t}function Co(e,t){let n=[],r=new Map;for(let t of e){let e=r.get(t.session);e?e.push(t):r.set(t.session,[t])}for(let e of r.values()){e.sort((e,t)=>e.ts_ms-t.ts_ms);for(let r=1;r<e.length;r++){let i=e[r-1],a=e[r];!i||!a||a.ts_ms-i.ts_ms<=t&&n.push({source:i.id,target:a.id,kind:`session`})}}return n}var wo=`SSG_AUDIO`,To=`SSG_AUDIO_VOLUME`,Eo=12,Do=null,Oo=null,ko=!1,Ao=.18,jo=[],Mo=!1;function No(){if(typeof localStorage>`u`)return{enabled:!1,volume:.18};let e=localStorage.getItem(wo)===`1`,t=localStorage.getItem(To);return{enabled:e,volume:t?Math.max(0,Math.min(1,parseFloat(t))):.18}}function Po(){typeof localStorage>`u`||(localStorage.setItem(wo,ko?`1`:`0`),localStorage.setItem(To,Ao.toString()))}function Fo(){if(typeof window>`u`)return null;if(Do)return Do;let e=window.AudioContext??window.webkitAudioContext;if(!e)return null;try{Do=new e,Oo=Do.createGain(),Oo.gain.value=Ao,Oo.connect(Do.destination),typeof document<`u`&&document.addEventListener(`visibilitychange`,()=>{Do&&(document.visibilityState===`hidden`?Do.suspend():Do.resume())})}catch{Do=null,Oo=null}return Do}function Io(){if(Mo)return;Mo=!0;let{enabled:e,volume:t}=No();ko=e,Ao=t}function Lo(){return Io(),ko}function Ro(e){if(Io(),ko=e,Po(),e){let e=Fo();e&&e.state===`suspended`&&e.resume()}}function zo(){return Io(),Ao}function Bo(e){Io(),Ao=Math.max(0,Math.min(1,e)),Po(),Oo&&(Oo.gain.value=Ao)}function Vo(e){for(;jo.length>0&&e-jo[0]>1e3;)jo.shift();return jo.length>=Eo?!1:(jo.push(e),!0)}var Ho={allow:{type:`sine`,freq:660,durationMs:90,peak:.6},block:{type:`square`,freq:110,durationMs:130,peak:1},force:{type:`sawtooth`,freq:220,freqSweep:440,durationMs:170,peak:.8},ask:{type:`triangle`,freq:880,durationMs:110,peak:.55},log:{type:`sine`,freq:1320,durationMs:30,peak:.35},shadow:{type:`sine`,freq:220,durationMs:60,peak:.18}};function Uo(e){if(Io(),!ko||typeof document<`u`&&document.visibilityState===`hidden`)return;let t=Fo();if(!t||!Oo)return;t.state===`suspended`&&t.resume().catch(()=>{});let n=t.currentTime;if(!Vo(performance.now()))return;let r=Ho[e],i=t.createOscillator();i.type=r.type,i.frequency.value=r.freq,r.freqSweep!==void 0&&(i.frequency.setValueAtTime(r.freq,n),i.frequency.exponentialRampToValueAtTime(Math.max(1,r.freqSweep),n+r.durationMs/1e3));let a=t.createGain();a.gain.setValueAtTime(0,n),a.gain.linearRampToValueAtTime(r.peak,n+.005),a.gain.exponentialRampToValueAtTime(1e-4,n+r.durationMs/1e3),i.connect(a),a.connect(Oo),i.start(n),i.stop(n+r.durationMs/1e3+.05),i.onended=()=>{try{i.disconnect(),a.disconnect()}catch{}}}function Wo(e){let t=e|0;return()=>{t=t+1831565813|0;let e=t;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}}var Go={"claude-code":`C`,"claude-code-ide":`C`,cursor:`>`,copilot:`H`,codex:`X`,pi:`P`,gemini:`G`,antigravity:`A`};function Ko(e){return Go[e.toLowerCase()]??`.`}function qo(e){let t=0;for(let n=0;n<e.length;n++)t=Math.imul(t,31)+e.charCodeAt(n)|0;return(t>>>0)%360}function Jo(e,t,n){for(let[r,i]of t){let{x:t,y:a,n:o}=i,s=50+Math.min(o,12)*7,c=qo(r),l=n.get(r),u;l&&Math.abs(l.x-t)<2&&Math.abs(l.y-a)<2&&l.r===s?u=l.grad:(u=e.createRadialGradient(t,a,0,t,a,s),u.addColorStop(0,`hsla(${c},80%,55%,0.10)`),u.addColorStop(1,`hsla(${c},80%,55%,0)`),n.set(r,{grad:u,x:t,y:a,r:s})),e.fillStyle=u,e.beginPath(),e.arc(t,a,s,0,Math.PI*2),e.fill()}for(let e of n.keys())t.has(e)||n.delete(e)}function Yo(e,t,n,r,i,a,o){let s=8+a*r,c=Math.max(0,1-r)*o;c<=0||(e.save(),e.globalAlpha=c,e.fillStyle=i,e.beginPath(),e.arc(t,n,s,0,Math.PI*2),e.fill(),e.restore())}var Xo=`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,Zo=`bold 10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,Qo=new Map,$o=256;function es(e,t){let n=Qo.get(t);if(n!==void 0)return n;let r=e.measureText(t).width;if(Qo.size>=$o){let e=Qo.keys().next().value;e!==void 0&&Qo.delete(e)}return Qo.set(t,r),r}function ts(e,t,n,r,i,a,o){let s=(r.split(`:`)[0]??r).slice(0,18),c=Ko(s),l=qo(r),u=Ya[o]??`#6b7280`;e.save(),e.textAlign=`center`;let d=`[${c}] ${s}`,f=`${i.length>14?i.slice(0,14):i} · ${a}`;e.font=Zo;let p=es(e,d);e.font=Xo;let m=es(e,f),h=Math.max(p,m)+10;e.globalAlpha=.82,e.fillStyle=`hsla(${l},25%,5%,0.92)`,e.fillRect(t-h/2,n-2,h,28),e.globalAlpha=.92,e.fillStyle=`hsla(${l},78%,70%,1)`,e.font=Zo,e.fillText(d,t,n+10),e.globalAlpha=.72,e.fillStyle=u,e.font=Xo,e.fillText(f,t,n+21),e.restore()}var ns=`bold 13px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,rs=`bold 10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;function is(e){if((!Number.isFinite(e)||e<0)&&(e=0),e<6e4)return`${(e/1e3).toFixed(3)}s`;if(e<36e5)return`${Math.floor(e/6e4)}:${(e%6e4/1e3).toFixed(3).padStart(6,`0`)}`;let t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4),r=(e%6e4/1e3).toFixed(1).padStart(4,`0`);return`${t}:${String(n).padStart(2,`0`)}:${r}`}function as(e,t,n,r,i){e.save(),e.textAlign=`center`,e.font=rs,e.globalAlpha=.7,e.fillStyle=`hsla(${i},78%,72%,0.55)`,e.fillText(`uptime`,t,n),e.font=ns,e.globalAlpha=.96,e.fillStyle=`hsla(${i},78%,82%,1)`,e.fillText(is(r),t,n+13),e.restore()}function os(e,t,n,r){e.save(),e.textAlign=`right`,e.font=rs,e.fillStyle=`rgba(148, 163, 184, 0.55)`,e.globalAlpha=.85,e.fillText(`LIVE`,t,n),e.font=`bold 16px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,e.fillStyle=`#e0e7ff`,e.globalAlpha=.92,e.fillText(is(r),t,n+16),e.restore()}function ss(e,t,n,r,i,a,o){let s=r-t,c=i-n;if(Math.sqrt(s*s+c*c)<24)return;let l=Math.atan2(c,s),u=3.5,d=r-Math.cos(l)*9,f=i-Math.sin(l)*9;e.save(),e.globalAlpha=o*.85,e.fillStyle=a,e.translate(d,f),e.rotate(l),e.beginPath(),e.moveTo(0,0),e.lineTo(-6,-u),e.lineTo(-6,u),e.closePath(),e.fill(),e.restore()}var cs={Read:`▣`,Write:`✎`,Edit:`✎`,MultiEdit:`✎`,NotebookEdit:`✎`,NotebookRead:`▣`,Glob:`✦`,Grep:`✦`,LS:`⊞`,Find:`✦`,ToolSearch:`⊕`,Bash:`$`,Skill:`◈`,WebFetch:`⌬`,WebSearch:`⌬`,Agent:`◇`,Task:`⌘`,TaskCreate:`⌘`,TaskUpdate:`⌘`,TaskList:`⌘`,TaskGet:`⌘`,TaskOutput:`⌘`,TaskStop:`⌘`,TodoWrite:`✓`,TodoRead:`✓`,AskUserQuestion:`?`,EnterPlanMode:`◐`,ExitPlanMode:`◑`,EnterWorktree:`⎇`,ExitWorktree:`⎇`,PushNotification:`⏰`,ScheduleWakeup:`⏰`,CronCreate:`⏰`,CronList:`⏰`,CronDelete:`⏰`,RemoteTrigger:`↗`,Monitor:`◉`};function ls(e){if(!e)return`·`;let t=e.lastIndexOf(`__`);return cs[t>=0?e.slice(t+2):e]??cs[e]??`·`}var us=820,ds=e=>Math.min(1,e),fs=620,ps=e=>1-(1-e)**3,ms=Qe({stiffness:120,damping:22,mass:1}),hs=1800;function gs(e){return e<=2?Math.min(window.devicePixelRatio,2):e<=4?Math.min(window.devicePixelRatio,1.5):Math.min(window.devicePixelRatio,1)}function _s(e){return e<=2?1:e<=4?2:3}function vs(e){return e<=2?24:e<=4?12:6}function ys(e){return e<=4}var bs=!1,xs=!1;function Ss(){if(xs||typeof window>`u`)return;xs=!0;let e=navigator;typeof e.getBattery==`function`&&e.getBattery().then(e=>{let t=()=>{bs=!e.charging&&e.level<.2};t(),e.addEventListener(`chargingchange`,t),e.addEventListener(`levelchange`,t)}).catch(()=>{})}function Cs(){return typeof window>`u`?!1:window.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches||navigator.connection?.saveData?!0:bs}var ws=typeof window<`u`&&new URLSearchParams(window.location.search).get(`fullrate`)===`1`,Ts=typeof window<`u`&&new URLSearchParams(window.location.search).get(`rotate`)!==`0`,Es=typeof window<`u`&&new URLSearchParams(window.location.search).get(`probe`)===`1`;function Ds(e,t,n,r){let i=new Map;for(let t of e)i.set(t.id,t);let a=new Set,o=[];for(let e=0;e<t.length;e++){let s=t[e],c=s.audit_id??`${s.ts_ms}:${s.tool}:${e}`;a.add(c);let l=i.get(c);if(l)l.burst=s,l.exitingAt=void 0,o.push(l);else{let t=Wo(s.ts_ms^e),i=n*.6+(t()-.5)*60,a=r/2+(t()-.5)*40,l=Ja(s);o.push({id:c,burst:s,ts_ms:s.ts_ms,session:l,x:i,y:a,vx:0,vy:0,age:0,tx:i,ty:a})}}let s=performance.now();for(let t of e)a.has(t.id)||(t.exitingAt??=s,s-t.exitingAt<1200&&o.push(t));return o}function Os(e){let{bursts:t,paused:n,selectedId:r,onSelect:i,burstSeq:a,compact:o=!1,activePanelCount:s=1,labelDensity:c=`normal`,onFrameTime:l}=e,u=(0,_.useRef)(l);u.current=l;let d=(0,_.useRef)(c);d.current=c;let f=(0,_.useRef)(null),p=(0,_.useRef)([]),m=(0,_.useRef)([]),h=(0,_.useRef)(null),g=(0,_.useRef)(null),v=(0,_.useRef)(0),y=(0,_.useRef)(0),b=(0,_.useRef)(0),x=(0,_.useRef)(new Map),S=(0,_.useRef)(new Set),C=(0,_.useRef)(new Set),w=(0,_.useRef)(new Set),[T,E]=(0,_.useState)({w:0,h:0}),D=(0,_.useRef)(0),O=(0,_.useRef)(0),ee=(0,_.useRef)(null),k=(0,_.useRef)(Date.now()),A=(0,_.useRef)(new Map),j=(0,_.useRef)({frame:0,cache:null});(0,_.useLayoutEffect)(()=>{let e=f.current?.parentElement;if(!e)return;let t=e.getBoundingClientRect();t.width>0&&t.height>0&&E({w:Math.max(40,t.width),h:Math.max(40,t.height)});let n=new ResizeObserver(e=>{for(let t of e){let{width:e,height:n}=t.contentRect;e<=0||n<=0||E({w:Math.max(40,e),h:Math.max(40,n)})}});return n.observe(e),()=>n.disconnect()},[]),(0,_.useEffect)(()=>{if(T.w<=0||T.h<=0)return;j.current.frame=0;let e=new Map;for(let t of p.current)e.set(t.id,t);p.current=Ds(p.current,t,T.w,T.h),bo(p.current,T.w/2,T.h/2);let n=Ts&&!ot()?performance.now()*fo:0;for(let t of p.current){if(t.slotR==null||t.slotPhi==null)continue;let r=T.w/2+t.slotR*Math.cos(t.slotPhi+n),i=T.h/2+t.slotR*Math.sin(t.slotPhi+n),a=!e.has(t.id),o=Math.hypot(t.x-r,t.y-i);(a||o>40)&&(t.x=r,t.y=i,t.vx=0,t.vy=0)}if(m.current=Co(p.current,1/0),!ot())for(let t=0;t<p.current.length;t++){let n=p.current[t];!n||e.has(n.id)||Uo(n.burst.decision)}let r=p.current.reduce((e,t)=>t.ts_ms>e?t.ts_ms:e,0);y.current=Math.max(performance.now()+us,performance.now()+Za,r+1500),v.current=performance.now()},[t,T.w,T.h,a]),(0,_.useEffect)(()=>{let e=f.current;if(!e)return;let t=e.getContext(`2d`);if(!t)return;Ss();let i=performance.now(),a=0,c=0,l=0,g=.1,[_,E]=vr(()=>{let f=performance.now();if(!ws&&Cs()){if(a^=1,a===1)return}else a!==0&&(a=0);if(!ws){let e=_s(s);if(e>1&&(O.current=(O.current+1)%e,O.current!==0))return}let _=performance.now(),E=_<y.current,D=_-v.current<200,te=_-b.current>500,ne=ot(),re=Ts&&!ne;if(!re&&!E&&!D&&!te)return;b.current=_;let M=f,N=Math.min(50,M-i);i=M;let ie=p.current,ae=m.current,oe=re?performance.now()*fo:0;xo(ie,T.w/2,T.h/2,oe);for(let e of ie)e.age<1&&(e.age=Math.min(1,e.age+N/us));let P=typeof window<`u`?gs(s):1,F=T.w,I=T.h;(e.width!==F*P||e.height!==I*P)&&(e.width=F*P,e.height=I*P,e.style.width=`${F}px`,e.style.height=`${I}px`,t.scale(P,P)),t.fillStyle=`#0a0a0f`,t.fillRect(0,0,F,I);let se=`${F}x${I}`,L=ee.current?.key===se?ee.current.grad:null;if(L||(L=t.createRadialGradient(F/2,I/2,0,F/2,I/2,Math.max(F,I)/1.2),L.addColorStop(0,`rgba(56, 189, 248, 0.06)`),L.addColorStop(1,`rgba(0, 0, 0, 0)`),ee.current={key:se,grad:L}),t.fillStyle=L,t.fillRect(0,0,F,I),!o){let e=j.current;(e.frame++%6==0||e.cache===null)&&(e.cache=So(ie));let n=e.cache;if(Jo(t,n,A.current),!ne){let e=new Map,r=new Map;for(let t of ie)t.exitingAt??(r.set(t.session,(r.get(t.session)??0)+1),e.set(t.session,t));let i=new Map;for(let e of ie){if(e.exitingAt!=null)continue;let t=i.get(e.session);(t===void 0||e.ts_ms<t)&&i.set(e.session,e.ts_ms)}let a=Date.now();for(let[o,s]of n){let n=e.get(o),c=r.get(o)??0;if(!n||c===0)continue;let l=50+Math.min(s.n,12)*7;ts(t,s.x,s.y-l-34,o,n.burst.tool,c,n.burst.decision);let u=i.get(o);if(u!==void 0){let e=Math.max(0,a-u);as(t,s.x,s.y+l+12,e,qo(o))}}}}let ce=e=>e.exitingAt==null?1:Math.max(0,1-(M-e.exitingAt)/Za),le=vs(s),ue=ys(s)&&!ne,de=S.current;if(de.clear(),n)for(let e of ie)de.add(e.id);else{let e=0;for(let t=ie.length-1;t>=0&&e<le;t--){let n=ie[t];!n||n.exitingAt!=null||(de.add(n.id),e++)}}let fe=x.current;fe.clear();for(let e of ie)fe.set(e.id,e);t.lineWidth=2,t.lineCap=`round`,t.lineJoin=`round`;for(let e=0;e<ae.length;e++){let n=ae[e],r=fe.get(n.source),i=fe.get(n.target);if(!r||!i||de.has(r.id)||de.has(i.id))continue;let a=Math.min(ce(r),ce(i));a<=0||(t.globalAlpha=a,t.strokeStyle=(Ya[i.burst.decision]??`#6b7280`)+`aa`,t.beginPath(),t.moveTo(r.x,r.y),t.lineTo(i.x,i.y),t.stroke())}t.globalAlpha=1;let pe=d.current===`large`,me=pe?`10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`8px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`;for(let e=0;e<ae.length;e++){let n=ae[e],r=fe.get(n.source),i=fe.get(n.target);if(!r||!i||!de.has(r.id)&&!de.has(i.id))continue;let a=Ya[i.burst.decision]??`#6b7280`,o=Math.min(ce(r),ce(i));if(o<=0)continue;if(t.globalAlpha=o,t.strokeStyle=a+`aa`,t.beginPath(),t.moveTo(r.x,r.y),t.lineTo(i.x,i.y),t.stroke(),t.globalAlpha=1,ue){let n=(M/hs+e*.618033)%1,s=r.x+(i.x-r.x)*n,c=r.y+(i.y-r.y)*n;t.save(),t.globalAlpha=o*Math.sin(n*Math.PI)*.9,t.fillStyle=a,t.beginPath(),t.arc(s,c,2.5,0,Math.PI*2),t.fill(),t.restore(),ss(t,r.x,r.y,i.x,i.y,a,o)}let s=i.ts_ms-r.ts_ms,c=s<1e3?`${s}ms`:s<6e4?`${(s/1e3).toFixed(1)}s`:`${Math.floor(s/6e4)}m${Math.floor(s%6e4/1e3)}s`,l=(r.x+i.x)/2,u=(r.y+i.y)/2;t.save(),t.globalAlpha=o*.65,t.font=me,t.fillStyle=`#94a3b8`,t.textAlign=`center`,t.textBaseline=`middle`,t.fillText(`${e+1} · ${c}`,l,u-(pe?8:7)),t.restore()}t.globalAlpha=1;let he=C.current;he.clear();let R=w.current;R.clear();let ge=d.current===`large`?10:5;{let e=0;for(let t=ie.length-1;t>=0;t--){let r=ie[t];!r||r.exitingAt!=null||(!n&&e<3&&he.add(r.id),e<ge&&R.add(r.id),e++)}}let _e=r,ve=h.current;for(let e of ie){let r=ce(e);if(r<=0)continue;t.globalAlpha=r;let i=Math.min(1,e.age),a=ds(i);e.displayedRadius=o?4:eo(e.burst);let s=e.displayedRadius,c=o?s*a:(s+2*Math.min(1,e.age))*a,l=Ya[e.burst.decision]??`#6b7280`,u=no(l,to(e.burst));if((e.id===_e||e.id===ve)&&(t.beginPath(),t.arc(e.x,e.y,c+6,0,Math.PI*2),t.fillStyle=u+`33`,t.fill()),ue&&(e.burst.decision===`allow`?Yo(t,e.x,e.y,i,`#22c55e`,14,.3):e.burst.decision===`ask`&&Yo(t,e.x,e.y,i,`#f59e0b`,14,.45)),ue&&(e.burst.decision===`block`||e.burst.decision===`force`)){let n=i*us;if(n<fs){let r=n/fs,i=c+16*ps(r),a=Math.max(0,1-r)*.75;t.beginPath(),t.arc(e.x,e.y,i,0,Math.PI*2),t.strokeStyle=u+Math.floor(a*255).toString(16).padStart(2,`0`),t.lineWidth=1.5,t.stroke()}}if(!ne&&he.has(e.id)&&(t.beginPath(),t.arc(e.x,e.y,c+2,0,Math.PI*2),t.fillStyle=u+`33`,t.fill()),t.beginPath(),t.arc(e.x,e.y,Math.max(.1,c),0,Math.PI*2),t.fillStyle=u,t.fill(),t.strokeStyle=l,t.lineWidth=1.5,t.beginPath(),t.arc(e.x,e.y,Math.max(.1,c),0,Math.PI*2),t.stroke(),R.has(e.id)&&(n||de.has(e.id))){let n=d.current===`large`;t.font=n?`11px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.textAlign=`center`,t.fillStyle=u+`cc`,t.fillText(Ko(e.burst.client),e.x,e.y-c-(n?4:3));let i=n?16:12,a=e.burst.tool.length>i?e.burst.tool.slice(0,i):e.burst.tool,o=ls(e.burst.tool),s=o===`·`?a:`${o} ${a}`;t.fillStyle=u+`88`,t.fillText(s,e.x,e.y+c+(n?13:11));let l=e.burst.input_tokens??0,f=e.burst.output_tokens??0;(l>0||f>0)&&(t.globalAlpha=r*(de.has(e.id)?.8:.35),t.font=n?`10px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`:`8px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.fillStyle=`#94a3b8`,t.textAlign=`center`,t.fillText(`↓${Z(l)} ↑${Z(f)}`,e.x,e.y+c+(n?25:21)),t.globalAlpha=r),t.textAlign=`left`}(e.id===_e||e.id===ve)&&(t.font=`11px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,t.fillStyle=`#e0e7ff`,t.fillText(e.burst.tool,e.x+c+6,e.y+3))}if(t.globalAlpha=1,ue&&ie.length>0){let e=null;for(let t=ie.length-1;t>=0;t--)if(ie[t].exitingAt==null){e=ie[t];break}let n=e?Date.now()-e.ts_ms:1/0,r=5e3;if(e&&n<=r){let i=Math.max(0,1-n/r),a=1100,o=M%a/a,s=14+ms.fn(o)*8,c=Math.max(0,1-o)*.85*i,l=Math.floor(c*255).toString(16).padStart(2,`0`);t.beginPath(),t.arc(e.x,e.y,s,0,Math.PI*2),t.strokeStyle=`#38bdf8${l}`,t.lineWidth=2,t.stroke();let u=M%800/800*Math.PI*2,d=100/360*Math.PI*2,f=.85*i,p=Math.floor(f*255).toString(16).padStart(2,`0`);t.save(),t.beginPath(),t.arc(e.x,e.y,22,u,u+d),t.strokeStyle=`#38bdf8${p}`,t.lineWidth=2.5,t.lineCap=`round`,t.stroke(),t.restore()}}if(!o&&F>220&&os(t,F-12,12,Date.now()-k.current),Es){let t,n=0;for(let e of ie)e.exitingAt??(n++,t||=e);e.dataset.probeCount=String(n),e.dataset.probeX0=(t?.x??0).toFixed(2),e.dataset.probeY0=(t?.y??0).toFixed(2)}c=c===0?N:c*(1-g)+N*g;let ye=u.current;ye&&M-l>250&&(l=M,ye(c))});return D.current=E,O.current=E,_},[n,r,T.w,T.h,o,s]);function te(e,t){let n=f.current;if(!n)return null;let r=n.getBoundingClientRect(),i=e-r.left,a=t-r.top,o=null,s=200;for(let e of p.current){let t=e.x-i,n=e.y-a,r=t*t+n*n;r<s&&(s=r,o=e.id)}return o}return(0,K.jsxs)(`div`,{className:`relative w-full h-full rounded-sm border border-[var(--color-line-1)] overflow-hidden bg-black`,children:[(0,K.jsx)(`canvas`,{ref:f,className:`block w-full h-full cursor-crosshair`,onMouseMove:e=>{let t=te(e.clientX,e.clientY);h.current=t;let n=g.current;if(!n)return;if(!t){n.style.display=`none`;return}let r=p.current.find(e=>e.id===t);if(!r){n.style.display=`none`;return}let i=r.burst,a=Ya[i.decision]??`#6b7280`,o;if(i.complete_duration_ms!=null&&i.complete_duration_ms>0){let e=i.complete_duration_ms;o=e>=1e3?`${(e/1e3).toFixed(1)}s`:`${e.toFixed(0)}ms`}else{let e=i.duration_ns/1e6;o=e<1?`${(e*1e3).toFixed(0)}µs`:`${e.toFixed(1)}ms`}let s=[];i.input_tokens!=null&&s.push(`↓${Z(i.input_tokens)}`),i.output_tokens!=null&&s.push(`↑${Z(i.output_tokens)}`);let c=i.input_preview?` · "${i.input_preview.length>45?i.input_preview.slice(0,45)+`…`:i.input_preview}"`:``,l=s.length>0?` · ${s.join(` `)}`:``;n.textContent=`${i.decision} ${i.tool} · ${o}${l}${c}`,n.style.borderColor=a,n.style.color=a;let u=Math.min(e.clientX+14,window.innerWidth-420),d=Math.max(8,e.clientY-36);n.style.left=`${u}px`,n.style.top=`${d}px`,n.style.display=`block`},onMouseLeave:()=>{h.current=null,g.current&&(g.current.style.display=`none`)},onClick:e=>{i(te(e.clientX,e.clientY),{x:e.clientX,y:e.clientY})}}),t.length===0&&(0,K.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center pointer-events-none px-4 text-center`,children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`graph · idle`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[260px]`,children:[`Each dot = one tool call an AI agent made.`,(0,K.jsx)(`br`,{}),`Color = the ssg rule decision · line = same agent's sequence.`]})]}),(0,K.jsx)(`div`,{ref:g,style:{display:`none`,position:`fixed`,zIndex:45,fontSize:`11px`,fontFamily:`ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,padding:`4px 10px`,background:`rgba(10, 10, 15, 0.92)`,border:`1px solid`,borderRadius:`4px`,pointerEvents:`none`,whiteSpace:`nowrap`,maxWidth:`500px`,overflow:`hidden`,textOverflow:`ellipsis`}})]})}var ks=3e4,As=6e4,js=5e3;function Ms(e,t){let n=t?e.filter(e=>Ja(e)===t):e,r=Date.now(),i=n.length>0?n[n.length-1]:null;if(!i||r-i.ts_ms>js||!i)return{idle:!0,client:``,tool:``,ruleId:null,decision:``,evalsPerSec:`0.0`,allowPct:0,agents:0,topRules:[]};let a=n.filter(e=>r-e.ts_ms<=ks),o=a.filter(e=>e.decision===`allow`).length,s=a.length>0?Math.round(o/a.length*100):0,c=(a.length/(ks/1e3)).toFixed(1),l=new Set(a.map(e=>`${e.client}:${e.agent_id??`solo`}`)).size,u=n.filter(e=>r-e.ts_ms<=As&&e.rule_id),d=new Map;for(let e of u){let t=e.rule_id;t&&d.set(t,(d.get(t)??0)+1)}let f=[...d.entries()].sort((e,t)=>t[1]-e[1]).slice(0,4).map(([e])=>e);return{idle:!1,client:i.client,tool:i.tool,ruleId:i.rule_id,decision:i.decision,evalsPerSec:c,allowPct:s,agents:l,topRules:f}}var Ns={allow:`ALLOW`,block:`BLOCK`,ask:`ASK`,log:`LOG`,force:`FORCE`,shadow:`SHADOW`},Ps={allow:`#22c55e`,block:`#ef4444`,ask:`#f59e0b`,log:`#60a5fa`,force:`#a855f7`,shadow:`#6b7280`};function Fs({className:e,sessionKey:t}){let n=De(),r=Oe(),i=(0,_.useRef)(-1),a=(0,_.useRef)(null),o=(0,_.useMemo)(()=>{if(i.current===r&&a.current)return a.current;i.current=r;let e=Ms(n,t);return a.current=e,e},[n,r,t]),s=o.decision?Ps[o.decision]??`#6b7280`:`#6b7280`,c=o.decision?Ns[o.decision]??o.decision:``,l=o.client?Ko(o.client):``;return o.idle?(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex items-center justify-center gap-2`,`px-4 py-2 rounded-sm`,`bg-[#0a0a0f]/95`,`border border-[var(--color-line-1,#242424)]`,`font-mono text-[11px] text-[var(--color-fg-4,#5a6071)]`,e),children:[(0,K.jsx)(`span`,{className:`status-dot bg-[var(--color-fg-4)] pulse-soft`}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider`,children:`waiting for activity`})]}):(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex flex-col gap-1 px-4 py-2.5 rounded-sm`,`bg-[#0a0a0f]/96`,`border border-[var(--color-line-1,#242424)]`,`font-mono`,!t&&`min-w-[280px] max-w-[460px]`,e),children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[10px] uppercase tracking-widest text-[var(--color-fg-4,#5a6071)]`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),(0,K.jsx)(`span`,{children:`now evaluating`}),(0,K.jsxs)(`span`,{className:`ml-auto tabular-nums`,children:[o.evalsPerSec,`/s · `,o.allowPct,`% allow · `,o.agents,` `,o.agents===1?`agent`:`agents`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[14px] text-[var(--color-fg-0,#f5f5f5)] tracking-tight`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] text-[11px] tabular-nums`,children:[`[`,l,`]`]}),(0,K.jsx)(`span`,{className:`text-sky-300`,children:o.client}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-white font-semibold`,children:o.tool}),o.ruleId&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`->`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] text-[12px]`,children:o.ruleId})]}),(0,K.jsx)(`span`,{className:`ml-auto text-[13px] font-bold tabular-nums`,style:{color:s},children:c})]}),o.topRules.length>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[10px] text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[9px]`,children:`rules`}),o.topRules.map(e=>(0,K.jsx)(`span`,{className:`px-1 py-0.5 rounded-sm bg-[var(--color-surface-2,#121212)] text-[var(--color-fg-3)]`,children:e},e))]})]})}var Is=(0,_.memo)(function({sessionKey:e,bursts:t,activePanelCount:n,selectedId:r,onSelect:i}){let a=t.length>0?t[t.length-1]?.ts_ms??0:0,o=e.indexOf(`:`),s=o>=0?e.slice(0,o):e,c=o>=0?e.slice(o+1):``,l=c!==``&&c!==`solo`,u=t[t.length-1],d=u?Ya[u.decision]??`#6b7280`:`#6b7280`,f=(0,_.useMemo)(()=>t.length>24?t.slice(t.length-24):t,[t]);return(0,K.jsxs)(`div`,{className:`flex flex-col min-h-0 min-w-0 rounded-sm border border-[var(--color-line-1)] bg-black/30 overflow-hidden`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 px-2 py-1 border-b border-[var(--color-line-1)] text-[10px] font-mono shrink-0`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:d},title:u?`latest decision: ${u.decision}`:``}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider truncate`,children:s}),l&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate`,children:c})]}),(0,K.jsxs)(`span`,{className:`ml-auto text-[var(--color-fg-4)] tabular-nums shrink-0`,children:[t.length,`n`]})]}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0 relative`,children:(0,K.jsx)(Os,{bursts:f,paused:!1,selectedId:r,onSelect:i,burstSeq:a,compact:!0,activePanelCount:n})})]})});function Ls(e){return e<=1?1:e<=4?2:3}function Rs(){let e=De(),t=Oe(),[n,r]=(0,_.useState)(null),{isBurstActive:i}=Ka(),a=(0,_.useMemo)(()=>lo(e,i,Date.now()),[e,i,t]),o=(0,_.useRef)(new Map),s=(0,_.useMemo)(()=>{let e=new Map;for(let t of a){let n=Ja(t),r=e.get(n);r?r.push(t):e.set(n,[t])}let t=o.current;for(let[n,r]of e){let i=t.get(n);i&&i.length===r.length&&i[i.length-1]===r[r.length-1]&&e.set(n,i)}return o.current=e,Array.from(e.entries()).sort((e,t)=>{let n=e[1][e[1].length-1]?.ts_ms??0;return(t[1][t[1].length-1]?.ts_ms??0)-n})},[a]),c=(0,_.useMemo)(()=>{let e=new Map;for(let t of a){let n=`${t.client}:${t.agent_id??`solo`}`,r=e.get(n);r?r.count+=1:e.set(n,{client:t.client,count:1})}return e},[a]),l=(0,_.useMemo)(()=>{let e={allow:0,block:0,ask:0,other:0};for(let t of a)t.decision===`allow`?e.allow++:t.decision===`block`||t.decision===`force`?e.block++:t.decision===`ask`?e.ask++:e.other++;return e},[a]),u=(0,_.useMemo)(()=>{let e=new Set,t=0;for(let n of a)n.rule_id&&(e.add(n.rule_id),t+=1);return{distinct:e.size,matched:t,topRule:e.values().next().value}},[a]),d=Ls(s.length);return(0,K.jsxs)(`div`,{className:`flex flex-col h-full min-h-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,children:[(0,K.jsxs)(`header`,{className:`flex items-center gap-2 px-3 py-1.5 border-b border-[var(--color-line-1)]`,children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-3)]`,children:`graph · live`}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),a.length]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[10px] font-mono`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full`,style:{background:Ya.allow}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.allow}),(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full ml-1`,style:{background:Ya.block}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.block}),(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full ml-1`,style:{background:Ya.ask}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums`,children:l.ask})]}),(0,K.jsx)(`span`,{className:`flex-1`}),(0,K.jsxs)(`span`,{className:`chip text-violet-300 border-violet-500/30`,title:`${u.matched} tool calls matched ${u.distinct} ssg ${u.distinct===1?`rule`:`rules`} in active sessions`,children:[u.distinct,` `,u.distinct===1?`rule`:`rules`]}),(0,K.jsxs)(`span`,{className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)]`,title:c.size===0?`no active agents`:Array.from(c.entries()).map(([e,t])=>`${e}: ${t.count}`).join(`
10
+ `),children:[c.size,` `,c.size===1?`agent`:`agents`]}),(0,K.jsx)(`a`,{href:`/graph`,className:`text-[10px] font-mono uppercase tracking-wider text-sky-300 hover:text-sky-200`,title:`Open full /graph page`,children:`expand ↗`})]}),(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 relative`,children:[s.length===0?(0,K.jsx)(Os,{bursts:a,paused:!1,selectedId:n,onSelect:r,burstSeq:t}):(0,K.jsx)(`div`,{className:`absolute inset-0 grid gap-1 p-1`,style:{gridTemplateColumns:`repeat(${d}, minmax(0, 1fr))`,gridAutoRows:`1fr`},children:s.map(([e,t])=>(0,K.jsx)(Is,{sessionKey:e,bursts:t,activePanelCount:s.length,selectedId:n,onSelect:r},e))}),(0,K.jsx)(Fs,{className:`absolute bottom-2 left-2 z-10 max-w-[calc(100%-1rem)]`})]})]})}var zs=`ssg.sfx.enabled`;function Bs(){if(typeof window>`u`)return!1;try{return window.localStorage.getItem(zs)===`true`}catch{return!1}}function Vs(e){if(!(typeof window>`u`))try{window.localStorage.setItem(zs,String(e))}catch{}}function Hs(e,t,n,r,i,a,o=`sine`){try{let s=e.createOscillator(),c=e.createGain(),l=i/1e3;s.type=o,s.frequency.setValueAtTime(n,e.currentTime),s.frequency.exponentialRampToValueAtTime(Math.max(1,r),e.currentTime+l),c.gain.setValueAtTime(a,e.currentTime),c.gain.exponentialRampToValueAtTime(.001,e.currentTime+l),s.connect(c),c.connect(t),s.start(e.currentTime),s.stop(e.currentTime+l+.02)}catch{}}function Us(){let[e,t]=(0,_.useState)(Bs),n=(0,_.useRef)(null),r=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=()=>{let t=n.current;t&&(document.hidden?t.suspend().catch(()=>{}):e&&t.resume().catch(()=>{}))};return document.addEventListener(`visibilitychange`,t),()=>document.removeEventListener(`visibilitychange`,t)},[e]),{enabled:e,toggle:(0,_.useCallback)(()=>{t(e=>{let t=!e;if(Vs(t),t){if(!n.current)try{let e=new AudioContext,t=e.createGain();t.gain.value=.8,t.connect(e.destination),n.current=e,r.current=t}catch{}n.current?.resume().catch(()=>{})}else n.current?.suspend().catch(()=>{});return t})},[]),play:(0,_.useCallback)(t=>{if(!e)return;let i=n.current,a=r.current;if(!(!i||!a||i.state===`suspended`))switch(t){case`block`:Hs(i,a,110,55,150,.08);break;case`force`:Hs(i,a,80,40,200,.1),Hs(i,a,160,80,200,.05,`square`);break;case`milestone`:{Hs(i,a,660,880,100,.06);let e=i,t=a;setTimeout(()=>{e.state!==`suspended`&&Hs(e,t,880,1320,100,.05)},115);break}case`record`:Hs(i,a,880,1320,350,.07);break}},[e])}}var Ws=[`rules-changed`,`activity-updated`,`pending-changed`,`runtime-tick`,`limits-breach`],Gs={critical:{border:`border-l-red-500/70`,iconBg:`bg-red-500/15`,iconFg:`text-red-400`,chipBg:`bg-red-500/10`,chipFg:`text-red-300`,label:`Critical`},warning:{border:`border-l-amber-400/70`,iconBg:`bg-amber-500/15`,iconFg:`text-amber-300`,chipBg:`bg-amber-500/10`,chipFg:`text-amber-200`,label:`Heads up`},info:{border:`border-l-sky-500/70`,iconBg:`bg-sky-500/15`,iconFg:`text-sky-300`,chipBg:`bg-sky-500/10`,chipFg:`text-sky-200`,label:`Tip`}};function Ks({severity:e}){return e===`critical`?(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12.01`,y2:`16`})]}):e===`warning`?(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}):(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12.01`,y2:`8`})]})}function qs({notification:e,onAction:t}){let[n,r]=(0,_.useState)(`idle`),[i,a]=(0,_.useState)(null),o=Gs[e.severity],s=async()=>{if(e.action&&!(e.action.confirm&&!confirm(e.action.confirm))){r(`loading`),a(null);try{await t(e),r(`done`)}catch(e){r(`error`),a(e instanceof Error?e.message:String(e))}}};return(0,K.jsxs)(`div`,{className:`hig-card border-l-2 ${o.border} flex items-start gap-3 px-3 py-2.5`,children:[(0,K.jsx)(`span`,{className:`shrink-0 mt-0.5 inline-flex items-center justify-center w-6 h-6 rounded-full ${o.iconBg} ${o.iconFg}`,"aria-hidden":!0,children:(0,K.jsx)(Ks,{severity:e.severity})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[9px] font-mono font-medium uppercase tracking-wider px-1.5 py-0.5 rounded ${o.chipBg} ${o.chipFg}`,children:o.label}),(0,K.jsx)(`h3`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-tight`,children:e.title})]}),(0,K.jsx)(`p`,{className:`mt-1 text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:e.detail}),n===`error`&&i&&(0,K.jsxs)(`p`,{className:`mt-1.5 text-[11px] font-mono text-red-300`,children:[`Failed: `,i]}),n===`done`&&(0,K.jsx)(`p`,{className:`mt-1.5 text-[11px] font-mono text-emerald-300`,children:`✓ Done — refreshing…`})]}),(0,K.jsx)(`div`,{className:`shrink-0 self-center`,children:e.action?(0,K.jsx)(`button`,{type:`button`,onClick:s,disabled:n===`loading`||n===`done`,className:`inline-flex items-center gap-1 h-8 px-3 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-[var(--color-surface-2)] text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:bg-[var(--color-surface-3)] hover:border-[var(--color-line-2)] transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed whitespace-nowrap`,children:n===`loading`?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}),` working…`]}):n===`done`?(0,K.jsx)(K.Fragment,{children:`✓ done`}):e.action.label}):e.link?(0,K.jsxs)(`a`,{href:e.link.href,className:`inline-flex items-center gap-1 h-8 px-3 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-[var(--color-surface-2)] text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:bg-[var(--color-surface-3)] hover:border-[var(--color-line-2)] transition-colors whitespace-nowrap`,children:[e.link.label,` →`]}):null})]})}function Js({showEmptyState:e=!1,hideHeader:t=!1}={}){let n=ke(Ws),{data:r,refetch:i}=V(`/api/json/maintenance`,[n[`rules-changed`],n[`activity-updated`],n[`pending-changed`],n[`runtime-tick`],n[`limits-breach`]]),a=async e=>{if(!e.action)return;let t=await fetch(e.action.url,{method:e.action.method,headers:{Accept:`application/json`,"Content-Type":`application/json`,...B()}});if(!t.ok){let e=await t.text().catch(()=>``);throw Error(e||`HTTP ${t.status}`)}setTimeout(()=>i(),600)},o=r?.notifications??[];return o.length===0&&!e?null:(0,K.jsxs)(`section`,{"data-reveal":!0,children:[!t&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:o.length===0?`maintenance · all clear`:`maintenance · ${o.length} item${o.length===1?``:`s`}`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>i(),className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] transition-colors cursor-pointer`,title:`Re-check now`,children:`refresh`})]}),o.length===0?(0,K.jsxs)(`div`,{className:`hig-card border-l-2 border-l-emerald-500/60 px-4 py-5 flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`inline-flex items-center justify-center w-8 h-8 rounded-full bg-emerald-500/15 text-emerald-300 shrink-0`,children:(0,K.jsx)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M20 6L9 17l-5-5`})})}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h3`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-tight`,children:`Everything looks good`}),(0,K.jsx)(`p`,{className:`mt-1 text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:`No drift, no capacity warnings, no stalled daemons. We'll let you know if anything changes.`})]})]}):(0,K.jsx)(`div`,{className:`space-y-2`,children:o.map(e=>(0,K.jsx)(qs,{notification:e,onAction:a},e.id))})]})}function Ys(e){return!Number.isFinite(e)||e<=0?`—`:e<1e3?`${e} ns`:e<1e6?`${(e/1e3).toFixed(1)} µs`:`${(e/1e6).toFixed(2)} ms`}async function Xs(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}var Zs=e=>!0,Qs=e=>e.decision===`allow`,$s=e=>e.decision===`block`,ec=e=>e.decision===`ask`,tc=e=>e.decision===`force`,nc=e=>e.decision===`log`;function rc(){let e=new Date;return e.setHours(0,0,0,0),e.getTime()}function ic(){let e=ke([`counters-updated`,`activity-updated`,`pending-changed`,`runtime-tick`]),t=Ee(),n=Oe(),r=De(),i=Us();(0,_.useEffect)(()=>{t&&(t.decision===`block`?i.play(`block`):t.decision===`force`&&i.play(`force`))},[n]);let[a,o]=(0,_.useState)(()=>rc());(0,_.useEffect)(()=>{let e=()=>{if(document.visibilityState!==`visible`)return;let e=rc();o(t=>e===t?t:e)};return document.addEventListener(`visibilitychange`,e),()=>document.removeEventListener(`visibilitychange`,e)},[]);let{data:s}=V(`/api/state/counters?since_ms=${a}`,[e[`counters-updated`],a]),{data:c}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:l}=V(`/api/json/limits`,[e[`runtime-tick`]]),{data:u,refetch:d}=V(`/api/json/pending`,[e[`pending-changed`]]),{data:f}=V(`/api/json/blocked`,[e[`activity-updated`]]),p=Ua(),[m,h]=(0,_.useState)(!1),g=(0,_.useMemo)(()=>{let e=s?.allow??0,n=s?.block??0,r=s?.ask??0,i=s?.log??0,a=s?.force??0,o=e+n+r+i+a,c=t?.counters.total??0;return t&&c>=o&&t?{allow:t.counters.allow,block:t.counters.block,ask:t.counters.ask,log:t.counters.log,force:t.counters.force,shadow:t.counters.shadow,total:t.counters.total}:{allow:e,block:n,ask:r,log:i,force:a,shadow:0,total:o}},[t,s]),v=(0,_.useMemo)(()=>{if(r.length===0)return 0;let e=Date.now()-1e4;return r.filter(t=>t.ts_ms>=e).length/10},[r]),y=c?.history?.cpu_pct??[],b=c?.history?.memory_rss_mb??[],x=[],S=c?.latency,C=(0,_.useMemo)(()=>({"hero-metrics":()=>(0,K.jsx)(`div`,{className:`grid-bleed rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 h-full`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3 h-full`,children:[(0,K.jsx)(Or,{label:`Total`,value:g.total,tone:`amber`,sub:t?Ys(t.duration_ns):void 0,burstRing:r,filter:Zs}),(0,K.jsx)(Or,{label:`Allow`,value:g.allow,tone:`green`,burstRing:r,filter:Qs}),(0,K.jsx)(Or,{label:`Block`,value:g.block,tone:`red`,burstRing:r,filter:$s}),(0,K.jsx)(Or,{label:`Ask`,value:g.ask,tone:`amber`,burstRing:r,filter:ec}),(0,K.jsx)(Or,{label:`Force`,value:g.force,tone:`blue`,burstRing:r,filter:tc}),(0,K.jsx)(Or,{label:`Log`,value:g.log,tone:`purple`,burstRing:r,filter:nc})]})}),graph:()=>(0,K.jsx)(Rs,{}),"latency-trace":()=>(0,K.jsx)(Qr,{latency:S,bursts:r,gaugeMaxMs:10,windowMs:3e4,trendWindowSec:60,gaugeSize:200}),throughput:()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`throughput · evals/s`}),(0,K.jsxs)(sr,{variant:`blue`,children:[v.toFixed(1),`/s`]})]}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(br,{value:v,width:360,height:96,windowMs:6e4,className:`w-full`}),(0,K.jsx)(`p`,{className:`overline mt-2 text-center`,children:`60-second rolling window`})]})]}),"decision-mix":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`decision mix`}),(0,K.jsx)(sr,{variant:`gray`,children:g.total.toLocaleString()})]}),(0,K.jsx)(Y,{children:(0,K.jsx)(ti,{counters:{allow:g.allow,block:g.block,ask:g.ask,log:g.log,force:g.force,shadow:g.shadow}})})]}),"telemetry-feed":()=>(0,K.jsxs)(q,{variant:`flush`,className:`h-full flex flex-col`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`telemetry · live · newest first`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:[`hover to pause · scroll for history · `,r.length,` events buffered`]})]}),(0,K.jsx)(Y,{className:`p-0 flex-1 min-h-0`,children:(0,K.jsx)(wi,{variant:`decision`,bursts:r,windowSize:80,height:360,className:`border-0 rounded-none`})})]}),"system-pulse":()=>(0,K.jsx)(oi,{cpuPct:c?.cpu_pct??0,cpuSeries:y,cpuLimit:l?.config.cpuLimitPct,memMb:c?.memory_rss_mb??0,memSeries:b,memLimit:l?.config.memoryLimitMb,heapUsedMb:c?.heap_used_mb??0,heapTotalMb:c?.heap_total_mb??0,heapSeries:x,uptimeSec:(c?.uptime_ms??0)/1e3}),"pending-approvals":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`pending approvals`}),(0,K.jsx)(sr,{variant:u&&u.length>0?`amber`:`gray`,children:u?.length??0})]}),(0,K.jsx)(Y,{children:u&&u.length>0?(0,K.jsx)(`ul`,{className:`space-y-2`,children:u.slice(0,5).map(e=>(0,K.jsxs)(`li`,{className:`flex items-center justify-between gap-2 border-b border-[var(--color-line-0)] last:border-b-0 py-1.5 text-[12px] font-mono`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`text-[var(--color-fg-1)] truncate`,children:[e.toolCall.tool,` · `,e.ruleId]}),(0,K.jsx)(`div`,{className:`text-[var(--color-fg-3)] text-[11px] truncate`,children:rr(e.toolCall.tool,JSON.stringify(e.toolCall.input??{}))})]}),(0,K.jsxs)(`div`,{className:`flex gap-1 shrink-0`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:()=>Xs(e.id,`allow`).then(d),children:`allow`}),(0,K.jsx)(X,{size:`sm`,variant:`ghost`,onClick:()=>Xs(e.id,`block`).then(d),children:`block`})]})]},e.id))}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] py-3 text-center`,children:`— no pending approvals —`})})]}),"recent-blocks":()=>(0,K.jsxs)(q,{className:`h-full`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline`,children:`recent blocks & forces`}),(0,K.jsx)(sr,{variant:f&&f.length>0?`red`:`gray`,children:f?.length??0})]}),(0,K.jsx)(Y,{children:f&&f.length>0?(0,K.jsx)(`ul`,{className:`space-y-1.5`,children:f.slice(0,6).map((e,t)=>(0,K.jsxs)(`li`,{className:`flex items-center gap-2 text-[12px] font-mono border-b border-[var(--color-line-0)] last:border-b-0 py-1.5`,children:[(0,K.jsx)(sr,{variant:e.decision===`force`?`amber`:`red`,children:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate flex-1`,children:rr(e.tool,e.input)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate text-[11px] max-w-[120px]`,children:e.rule_id??`—`})]},`${e.timestamp}-${t}`))}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] py-3 text-center`,children:`— no recent blocks —`})})]})}),[g,t,r,S,v,c,y,b,x,l,u,f,d]),w=Tt({from:`first`,translateY:22,durationMs:640,staggerMs:80,maxStaggerMs:520});return(0,K.jsxs)(`div`,{ref:m?void 0:w,className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-1`,children:(0,K.jsx)(ia,{manager:p,isEditing:m,onToggleEditing:h})}),(0,K.jsx)(`button`,{type:`button`,onClick:i.toggle,className:`chip cursor-pointer hover:border-sky-500/50 hover:text-sky-300 transition-colors shrink-0`,title:i.enabled?`Mute stream sounds`:`Enable stream sounds`,children:i.enabled?`SFX ON`:`SFX OFF`})]}),(0,K.jsx)(Js,{}),(0,K.jsx)(ra,{panels:p.activeLayout.panels,isEditing:m,renderers:C,onPanelsChange:p.updateActivePanels})]})}var ac=[{path:`/`,aliases:[`dashboard`,`home`,`main`,`top`],selector:`a[href="/"]`},{path:`/agents`,aliases:[`agents`,`agent`,`connected agents`],selector:`a[href="/agents"]`},{path:`/graph`,aliases:[`graph`,`graph view`,`visualisation`,`visualization`],selector:`a[href="/graph"]`},{path:`/rules`,aliases:[`rules`,`rule list`,`policies`],selector:`a[href="/rules"]`},{path:`/hub`,aliases:[`hub`,`rule hub`,`registry`,`marketplace`],selector:`a[href="/hub"]`},{path:`/approvals`,aliases:[`approvals`,`approval queue`,`pending`,`ask queue`,`approvals queue`],selector:`a[href="/approvals"]`},{path:`/audit`,aliases:[`audit`,`activity`,`audit log`,`history`],selector:`a[href="/audit"]`},{path:`/monitor`,aliases:[`monitor`,`live monitor`,`live stream`,`live`],selector:`a[href="/monitor"]`},{path:`/observability`,aliases:[`observability`,`metrics`,`telemetry`,`stats`],selector:`a[href="/observability"]`},{path:`/workspace`,aliases:[`workspace`,`monorepo`,`projects`],selector:`a[href="/workspace"]`},{path:`/setup`,aliases:[`setup`,`setup status`,`install`,`installation`],selector:`a[href="/setup"]`},{path:`/debug`,aliases:[`debug`,`diagnostics`,`troubleshoot`],selector:`a[href="/debug"]`},{path:`/profile`,aliases:[`profile`,`license`,`account`],selector:`a[href="/profile"]`},{path:`/support`,aliases:[`support`,`help`,`feedback`],selector:`a[href="/support"]`},{path:`/notifications`,aliases:[`notifications`,`alerts`,`inbox`],selector:`a[href="/notifications"]`},{path:`/try`,aliases:[`try`,`try it`,`simulator`,`sandbox`,`playground`],selector:`a[href="/try"]`},{path:`/guardrails`,aliases:[`guardrails`,`guardrail packs`,`packs`],selector:`a[href="/guardrails"]`}];function oc(){if(typeof window>`u`)return null;let e=window;return e.SpeechRecognition??e.webkitSpeechRecognition??null}function sc(e){if(!e)return null;let t=e.toLowerCase().trim();for(let e of ac)for(let n of e.aliases)if(t===n)return e;for(let e of ac)for(let n of e.aliases)if(t.includes(n))return e;return null}function cc(e){let t=e.trim().toLowerCase();if(!t)return{kind:`unknown`,said:``,failed:!0};if(/\b(turn|switch|set|put)\s+(ssg|the system|everything)?\s*off\b/.test(t)||/\b(kill switch|panic|safe mode|stop ssg)\b/.test(t)||/\bssg\s+off\b/.test(t)||/^off$/.test(t))return{kind:`set-ssg-mode`,mode:`off`,said:`Switching SSG to OFF`,targetSelector:`.chip[title*="cycle"]`};if(/\b(audit\s+mode|set\s+audit|log[\s-]only|switch\s+to\s+audit|audit\s+only)\b/.test(t)||/\bssg\s+audit\b/.test(t)||/^audit$/.test(t))return{kind:`set-ssg-mode`,mode:`audit`,said:`Switching SSG to AUDIT`,targetSelector:`.chip[title*="cycle"]`};if(/\b(turn|switch|set|put)\s+(ssg|the system|everything)?\s*on\b/.test(t)||/\b(resume|re-enable|reenable|enforce)\b.*\b(ssg|rules)?\b/.test(t)||/\bssg\s+on\b/.test(t)||/^on$/.test(t))return{kind:`set-ssg-mode`,mode:`on`,said:`Resuming SSG enforcement`,targetSelector:`.chip[title*="cycle"]`};if(/\b(ask|approvals?)\b.*\b(dashboard|here|on screen|browser)\b/.test(t))return{kind:`set-ask-mode`,mode:`dashboard`,said:`Routing ASK prompts to the dashboard`,targetSelector:`.chip[title*="ASK"]`};if(/\b(ask|approvals?)\b.*\b(tty|terminal|native|ide|cli)\b/.test(t))return{kind:`set-ask-mode`,mode:`tty`,said:`Routing ASK prompts to the native terminal`,targetSelector:`.chip[title*="ASK"]`};if(/\b(newcomer|beginner|simple|simplified|easy)\s+(mode|ui|view)?\b/.test(t))return{kind:`set-ui-mode`,mode:`newcomer`,said:`Switching to Newcomer mode`,targetSelector:`button[title*="newcomer" i], button[title*="Newcomer"]`};if(/\b(pro|professional|advanced|expert|full)\s+(mode|ui|view)?\b/.test(t))return{kind:`set-ui-mode`,mode:`pro`,said:`Switching to Pro mode`,targetSelector:`button[title*="pro" i], button[title*="Pro"]`};if(/\b(refresh|reset)\b(?!.*reload)/.test(t))return{kind:`refresh`,said:`Resetting the page`};if(/\b(hard\s+reload|reload|force\s+reload|fresh\s+load)\b/.test(t))return{kind:`hard-reload`,said:`Hard-reloading the dashboard`};let n=t.match(/\b(?:show me|show|open|go to|take me to|switch to|jump to|navigate to|bring up|pull up)\s+(.+)$/);if(n){let e=n[1].replace(/[?!.]+$/,``).trim(),t=sc(e);return t?{kind:`navigate`,path:t.path,said:`Opening ${lc(t.path)}`,targetSelector:t.selector}:{kind:`unknown`,said:`I don't have a page called "${e}".`,failed:!0}}let r=sc(t);return r?{kind:`navigate`,path:r.path,said:`Opening ${lc(r.path)}`,targetSelector:r.selector}:{kind:`unknown`,said:`Didn't catch that. Try "go to rules", "audit mode", or "switch to newcomer".`,failed:!0}}function lc(e){return e===`/`?`Dashboard`:e.slice(1).replace(/\b\w/g,e=>e.toUpperCase())}function uc(e){e&&window.dispatchEvent(new CustomEvent(`ssg:voice-target`,{detail:{selector:e}}))}function dc(){window.dispatchEvent(new CustomEvent(`ssg:voice-page-morph`))}function fc({actions:e}){let t=(0,_.useMemo)(()=>!!oc(),[]),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(null),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)(!0),f=(0,_.useRef)(null),p=(0,_.useCallback)(t=>{let n=cc(t);switch(s(n),n.kind){case`navigate`:uc(n.targetSelector),e.navigate(n.path),dc();break;case`set-ssg-mode`:uc(n.targetSelector),e.setSsgMode(n.mode);break;case`set-ask-mode`:uc(n.targetSelector),e.setAskMode(n.mode);break;case`set-ui-mode`:uc(n.targetSelector),e.setUiMode(n.mode);break;case`refresh`:e.refresh(),dc();break;case`hard-reload`:e.hardReload();break;case`unknown`:break}},[e]),m=(0,_.useCallback)(()=>{let e=f.current;if(e)try{e.stop()}catch{}r(!1)},[]),h=(0,_.useCallback)(()=>{let e=oc();if(!e)return;let t=new e;t.continuous=!1,t.interimResults=!0,t.lang=`en-US`,t.onresult=e=>{let t=``,n=``;for(let r=e.resultIndex;r<e.results.length;r++){let i=e.results[r],a=i[0]?.transcript??``;i.isFinal?n+=a:t+=a}a(t||n),n&&p(n)},t.onend=()=>r(!1),t.onerror=()=>r(!1),f.current=t,a(``),s(null);try{t.start(),r(!0)}catch{r(!1)}},[p]);(0,_.useEffect)(()=>()=>m(),[m]);let g=e=>{e.preventDefault();let t=c.trim();t&&(a(t),p(t),l(``))};if(!u)return(0,K.jsx)(`button`,{type:`button`,className:`ssg-voice-dock ssg-voice-dock--collapsed`,onClick:()=>d(!0),title:`Talk to SigmaShake`,"aria-label":`Open voice dock`,children:(0,K.jsx)(pc,{})});let v=o?.kind===`unknown`;return(0,K.jsxs)(`div`,{className:`ssg-voice-dock ssg-voice-dock--open`+(n?` ssg-voice-dock--listening`:``)+(v?` ssg-voice-dock--failed`:``),role:`region`,"aria-label":`Voice dock`,children:[(0,K.jsxs)(`div`,{className:`ssg-voice-dock__row`,children:[(0,K.jsxs)(`button`,{type:`button`,className:`ssg-voice-dock__mic`+(n?` ssg-voice-dock__mic--on`:``),onClick:n?m:h,disabled:!t,title:t?n?`Stop listening`:`Tap then speak — try "audit mode" or "go to rules"`:`Speech recognition isn't supported in this browser. Use the text box.`,children:[(0,K.jsx)(pc,{}),(0,K.jsx)(`span`,{children:n?`Listening…`:t?`Talk`:`Voice off`})]}),(0,K.jsx)(`form`,{className:`ssg-voice-dock__form`,onSubmit:g,children:(0,K.jsx)(`input`,{type:`text`,className:`ssg-voice-dock__input`,placeholder:`Type or say "go to audit"`,value:c,onChange:e=>l(e.target.value),spellCheck:!1})}),(0,K.jsx)(`button`,{type:`button`,className:`ssg-voice-dock__close`,onClick:()=>d(!1),title:`Hide voice dock`,"aria-label":`Hide voice dock`,children:`×`})]}),(i||o)&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__feedback`,children:[i&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__line ssg-voice-dock__line--heard`,children:[(0,K.jsx)(`span`,{className:`ssg-voice-dock__tag`,children:`Heard`}),(0,K.jsx)(`span`,{children:i})]}),o&&(0,K.jsxs)(`div`,{className:`ssg-voice-dock__line ssg-voice-dock__line--`+(v?`miss`:`did`),children:[(0,K.jsx)(`span`,{className:`ssg-voice-dock__tag`,children:v?`Hmm`:`Did`}),(0,K.jsx)(`span`,{children:o.said})]})]})]})}function pc(){return(0,K.jsxs)(`svg`,{className:`ssg-voice-dock__glyph`,width:`14`,height:`14`,viewBox:`0 0 16 16`,fill:`none`,"aria-hidden":`true`,children:[(0,K.jsx)(`rect`,{x:`6`,y:`2`,width:`4`,height:`8`,rx:`2`,fill:`currentColor`}),(0,K.jsx)(`path`,{d:`M4 8 v0.6 a4 4 0 0 0 8 0 V8`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`,fill:`none`}),(0,K.jsx)(`path`,{d:`M8 13 v2`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`})]})}function mc({val:e}){return e==null?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] italic font-mono text-xs`,children:`null`}):typeof e==`boolean`?(0,K.jsx)(`span`,{className:`inline-block font-mono text-[10px] font-medium uppercase tracking-wider px-1.5 py-0.5 rounded-sm border ${e?`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`:`bg-red-500/8 text-red-300 border-red-500/25`}`,children:e.toString()}):typeof e==`number`?(0,K.jsx)(`span`,{className:`font-mono tabular-nums text-violet-300 text-xs`,children:e}):typeof e==`string`?e.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] italic text-xs font-mono`,children:`empty string`}):e.length>200?(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 max-h-40 overflow-y-auto`,children:e}):(0,K.jsx)(`span`,{className:`font-mono text-xs text-[var(--color-fg-1)] break-all`,children:e}):(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 max-h-40 overflow-y-auto`,children:JSON.stringify(e,null,2)})}function hc({inputJson:e}){let t=[];try{let n=JSON.parse(e);n&&typeof n==`object`&&!Array.isArray(n)&&(t=Object.entries(n))}catch{return(0,K.jsx)(`pre`,{className:`text-[11px] font-mono text-[var(--color-fg-1)] whitespace-pre-wrap break-all bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2`,children:e})}return t.length===0?(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-xs italic font-mono`,children:`no input fields`}):(0,K.jsx)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] overflow-hidden text-xs`,children:t.map(([e,t],n)=>(0,K.jsxs)(`div`,{className:`flex gap-0 ${n>0?`border-t border-[var(--color-line-0)]`:``}`,children:[(0,K.jsx)(`div`,{className:`w-40 shrink-0 px-3 py-2 bg-[var(--color-surface-0)] text-[var(--color-fg-3)] font-mono text-[11px] border-r border-[var(--color-line-0)] select-none`,children:e}),(0,K.jsx)(`div`,{className:`flex-1 min-w-0 px-3 py-2 leading-relaxed`,children:(0,K.jsx)(mc,{val:t})})]},e))})}var gc={allow:`green`,block:`red`,force:`amber`,ask:`blue`,log:`gray`},_c={allow:`Allowed`,block:`Blocked`,force:`Forced`,ask:`Held`,log:`Logged`},vc={allow:`border-l-emerald-500/60`,block:`border-l-red-500/60`,force:`border-l-amber-400/60`,ask:`border-l-sky-500/60`,log:`border-l-[var(--color-line-2)]`};function yc(e){return e==null?null:e<1e6?`${(e/1e3).toFixed(0)}µs`:`${(e/1e6).toFixed(1)}ms`}function bc({label:e,value:t,mono:n,children:r}){return(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:e}),r??(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] text-xs ${n?`font-mono`:``} break-all`,children:t??`—`})]})}function xc({text:e}){let[t,n]=(0,_.useState)(!1);return(0,K.jsx)(`button`,{onClick:async t=>{t.stopPropagation();try{await navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1500)}catch{}},className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-[var(--color-line-1)] hover:border-[var(--color-line-2)] rounded-sm px-2 py-1 transition-colors cursor-pointer`,children:t?`✓ copied`:`copy json`})}function Sc({row:e,defaultExpanded:t=!1}){let[n,r]=(0,_.useState)(t),i=(0,_.useRef)(null),a=(0,_.useRef)(!0),o=rr(e.tool,e.input),s=o&&o.length>0?o:e.input&&e.input!==`{}`&&e.input!==``?e.input:`—`,c=gc[e.decision]??`gray`,l=vc[e.decision]??`border-l-[var(--color-line-2)]`,u=nr(e.timestamp),d=yc(e.duration_ns),f=vi(e.tool,e.input);(0,_.useEffect)(()=>{let e=i.current;if(e){if(a.current){a.current=!1,n||(e.style.maxHeight=`0`,e.style.opacity=`0`);return}if(ot()){e.style.maxHeight=n?`none`:`0`,e.style.opacity=n?`1`:`0`;return}if(n){let t=e.scrollHeight;wt(e,{"max-height":[`0px`,`${t}px`],opacity:[0,1],translateY:[-6,0],duration:260,ease:`outCubic`,onComplete:()=>{e.style.maxHeight=`none`}})}else{let t=e.scrollHeight;wt(e,{"max-height":[`${t}px`,`0px`],opacity:[1,0],duration:180,ease:`outCubic`})}}},[n]);let p=(()=>{try{return JSON.stringify(JSON.parse(e.input),null,2)}catch{return e.input}})();return(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] border-l-2 ${l} rounded-sm bg-[var(--color-surface-1)] overflow-hidden transition-colors hover:border-[var(--color-line-2)] hover:border-l-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 px-3 py-2 cursor-pointer select-none group`,onClick:()=>r(e=>!e),role:`button`,"aria-expanded":n,children:[(0,K.jsx)(`svg`,{className:`shrink-0 w-3 text-[var(--color-fg-4)] group-hover:text-[var(--color-fg-2)] transition-all ${n?`rotate-90`:``}`,width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`polyline`,{points:`9 18 15 12 9 6`})}),(0,K.jsx)(`time`,{className:`shrink-0 font-mono text-[11px] text-[var(--color-fg-3)] w-14 tabular-nums`,title:u,dateTime:new Date(e.timestamp*1e3).toISOString(),children:tr(e.timestamp)}),(0,K.jsx)(sr,{variant:c,className:`shrink-0 w-20 justify-center`,children:_c[e.decision]??e.decision}),(0,K.jsxs)(`span`,{className:`flex-1 min-w-0 flex items-baseline gap-2`,title:`${f.headline} · ${e.tool}`,children:[(0,K.jsx)(`span`,{className:`text-[12px] text-[var(--color-fg-0)] font-medium truncate`,children:f.headline}),!di(e.tool)&&s!==`—`&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)] font-mono truncate hidden sm:inline`,title:s,children:s})]}),d&&(0,K.jsx)(`span`,{className:`shrink-0 hidden md:inline w-12 text-right font-mono text-[10px] text-[var(--color-fg-4)] tabular-nums`,title:`Eval latency: ${d}`,children:d}),(0,K.jsx)(`span`,{className:`shrink-0 w-24 text-right text-[10px] text-[var(--color-fg-3)] truncate`,title:e.client?`Adapter: ${e.client}`:`Unidentified caller`,children:ui(e.client)})]}),(0,K.jsx)(`div`,{ref:i,className:`border-t border-[var(--color-line-0)] overflow-hidden`,style:{maxHeight:n?`none`:`0`,opacity:n?1:0},"aria-hidden":!n,children:n&&(0,K.jsxs)(`div`,{className:`px-3 py-3 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-x-6 gap-y-3`,children:[(0,K.jsx)(bc,{label:`When`,value:u}),(0,K.jsx)(bc,{label:`Decision`,children:(0,K.jsx)(sr,{variant:c,children:_c[e.decision]??e.decision})}),(0,K.jsx)(bc,{label:`Action`,children:(0,K.jsxs)(`span`,{className:`text-xs text-[var(--color-fg-1)]`,children:[f.headline,(0,K.jsxs)(`span`,{className:`ml-2 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`(`,e.tool,`)`]})]})}),e.client&&(0,K.jsx)(bc,{label:`AI agent`,value:ui(e.client)}),e.rule_id&&(0,K.jsx)(bc,{label:`Rule ID`,children:(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-xs text-[var(--color-brand)] hover:underline font-mono`,onClick:e=>e.stopPropagation(),children:e.rule_id})}),e.source_file&&(0,K.jsx)(bc,{label:`Source File`,value:e.source_file,mono:!0}),d&&(0,K.jsx)(bc,{label:`Latency`,value:d,mono:!0}),e.rules_evaluated!=null&&(0,K.jsx)(bc,{label:`Rules Evaluated`,value:`${e.rules_evaluated}`,mono:!0})]}),(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-3 py-2.5`,children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:`In plain English`}),(0,K.jsx)(`div`,{className:`text-xs font-medium text-[var(--color-fg-1)] mb-1`,children:f.headline}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] leading-relaxed`,children:f.detail})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`Tool Input`}),(0,K.jsx)(hc,{inputJson:e.input})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[e.rule_id?(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-brand)]/70 hover:text-[var(--color-brand)] transition-colors`,onClick:e=>e.stopPropagation(),children:`→ view rule`}):(0,K.jsx)(`span`,{}),(0,K.jsx)(xc,{text:p})]})]})})]})}function Cc({className:e,children:t,...n}){return(0,K.jsx)(`pre`,{className:G(`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-3 py-2 text-[11px] leading-relaxed font-mono text-[var(--color-fg-1)] overflow-x-auto whitespace-pre-wrap break-all`,e),...n,children:t})}var wc={neutral:`text-[var(--color-fg-0)]`,green:`text-emerald-300`,red:`text-red-300`,amber:`text-amber-300`,blue:`text-sky-300`,purple:`text-violet-300`,gray:`text-[var(--color-fg-3)]`},Tc={neutral:`bg-[var(--color-fg-3)]`,green:`bg-emerald-500`,red:`bg-red-500`,amber:`bg-[var(--color-brand)]`,blue:`bg-sky-500`,purple:`bg-violet-500`,gray:`bg-[var(--color-line-2)]`},Ec=[{label:`User code`,color:`#451a03`},{label:`Runtime (bun:/node:)`,color:`#172554`},{label:`Native/other`,color:`#1f2937`},{label:`GC/idle`,color:`#450a0a`}],Dc={neutral:`#d0d0d0`,green:`#34d399`,red:`#f87171`,amber:`#fbbf24`,blue:`#38bdf8`,purple:`#a78bfa`,gray:`#6e7076`};function Oc({label:e,value:t,sub:n,tone:r=`neutral`,align:i=`left`,labelPlacement:a=`above`,labelClassName:o,valueClassName:s,subClassName:c,trend:l,trendColor:u}){let d=(0,K.jsx)(`div`,{className:G(a===`above`?`overline mb-1.5`:`mt-1 text-[11px] text-[var(--color-fg-3)]`,o),children:e}),f=(0,K.jsx)(`div`,{className:G(`font-mono font-medium tabular-nums`,i===`center`&&`text-center`,wc[r],s),children:t}),p=l&&l.length>1,m=u??Dc[r];return(0,K.jsxs)(K.Fragment,{children:[a===`above`&&d,p?(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[f,(0,K.jsx)(pr,{data:l,width:48,height:18,color:m})]}):f,a===`below`&&d,n&&(0,K.jsx)(`div`,{className:G(`mt-1 text-[10px] font-mono text-[var(--color-fg-3)]`,i===`center`&&`text-center`,c),children:n})]})}function kc({className:e,contentClassName:t,label:n,value:r,sub:i,tone:a,align:o,labelPlacement:s,labelClassName:c,valueClassName:l,subClassName:u,trend:d,trendColor:f,...p}){return(0,K.jsx)(q,{className:e,...p,children:(0,K.jsx)(Y,{className:G(`py-3`,o===`center`&&`text-center`,t),children:(0,K.jsx)(Oc,{label:n,value:r,sub:i,tone:a,align:o,labelPlacement:s,labelClassName:c,valueClassName:l,subClassName:u,trend:d,trendColor:f})})})}function Ac({className:e,...t}){return(0,K.jsx)(`div`,{className:G(`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)] p-3`,t.align===`center`&&`text-center`,e),children:(0,K.jsx)(Oc,{...t})})}function jc({pct:e,tone:t=`green`,markerPct:n,className:r,barClassName:i,markerTitle:a}){let o=Math.max(0,Math.min(100,e)),s=n===void 0?null:Math.max(0,Math.min(100,n));return(0,K.jsxs)(`div`,{className:G(`relative w-full overflow-hidden rounded-sm bg-[var(--color-surface-3)]`,r),children:[(0,K.jsx)(`div`,{className:G(`h-full rounded-sm transition-all duration-500`,Tc[t],i),style:{width:`${o}%`}}),s!==null&&(0,K.jsx)(`div`,{className:`absolute top-0 h-full w-0.5 bg-[var(--color-brand)]/70`,style:{left:`${s}%`},title:a})]})}function Mc({label:e,value:t,tone:n=`neutral`,breached:r=!1,breachLabel:i=`limit exceeded`,trendData:a,trendColor:o,threshold:s,maxValue:c,footer:l,className:u,valueClassName:d}){return(0,K.jsxs)(q,{className:u,children:[(0,K.jsxs)(J,{className:`py-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:e}),r&&(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300`,children:i})]}),(0,K.jsxs)(Y,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`div`,{className:G(`text-2xl font-mono font-medium tabular-nums`,wc[n],d),children:t}),(a?.length??0)>1&&o&&(0,K.jsx)(pr,{data:a??[],width:80,height:28,color:o,threshold:s,maxValue:c})]}),l]})]})}function Nc({profile:e,children:t}){return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`span`,{children:[`nodes:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.nodes.length})]}),(0,K.jsxs)(`span`,{children:[`duration:`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-1)]`,children:[((e.endTime-e.startTime)/1e3).toFixed(0),`ms`]})]}),(0,K.jsxs)(`span`,{children:[`samples:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.samples?.length??0})]})]}),(0,K.jsx)(`div`,{className:`flex gap-3 text-[10px] font-mono text-[var(--color-fg-3)]`,children:Ec.map(e=>(0,K.jsxs)(`span`,{className:`flex items-center`,children:[(0,K.jsx)(`span`,{className:`mr-1 inline-block h-2.5 w-2.5 rounded-[1px]`,style:{background:e.color}}),e.label]},e.label))}),t]})}function Pc({memory:e,formatValue:t}){return(0,K.jsx)(`div`,{className:`grid grid-cols-4 gap-3`,children:[{label:`RSS`,value:t(e.rss)},{label:`Heap Total`,value:t(e.heapTotal)},{label:`Heap Used`,value:t(e.heapUsed)},{label:`External`,value:t(e.external)}].map(e=>(0,K.jsx)(Ac,{align:`center`,label:e.label,value:e.value,valueClassName:`text-lg font-medium text-[var(--color-fg-0)]`},e.label))})}function Fc(e,t){let n=Array(t).fill(0);if(e.length===0)return n;let r=Date.now()-t*1e3;for(let i=e.length-1;i>=0;i--){let a=e[i];if(!a)continue;if(a.ts_ms<r)break;let o=Math.floor((a.ts_ms-r)/1e3);o>=0&&o<t&&n[o]++}return n}function Ic({bins:e=60,height:t=38,className:n}){let r=De(),i=(0,_.useRef)(null),a=(0,_.useRef)([]),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=i.current;if(!t)return;let n=t.getContext(`2d`);if(!n)return;let s=Math.min(window.devicePixelRatio??1,2),c=ot(),l=()=>{let i=Fc(r,e);if(a.current.length!==e)a.current=i.slice();else if(c)a.current=i;else for(let t=0;t<e;t++){let e=a.current[t]??0,n=i[t]??0;a.current[t]=e+(n-e)*.18}let u=t.clientWidth,d=t.clientHeight;(t.width!==u*s||t.height!==d*s)&&(t.width=u*s,t.height=d*s,n.scale(s,s)),n.clearRect(0,0,u,d);let f=Math.max(1,...a.current),p=u/e;for(let t=0;t<e;t++){let e=a.current[t]??0,r=e/f*d,i=t*p,o=e/f;n.fillStyle=`rgba(${Math.round(56+o*199)},${Math.round(189-o*100)},${Math.round(248-o*200)},${.4+o*.55})`,n.fillRect(i+.5,d-r,Math.max(1,p-1),r)}n.strokeStyle=`rgba(148, 163, 184, 0.1)`,n.lineWidth=1,n.beginPath(),n.moveTo(0,d-.5),n.lineTo(u,d-.5),n.stroke(),o.current=requestAnimationFrame(l)};return o.current=requestAnimationFrame(l),()=>{o.current!==null&&cancelAnimationFrame(o.current),o.current=null}},[r,e]),(0,K.jsxs)(`div`,{className:G(`relative w-full`,n),style:{height:t},children:[(0,K.jsx)(`canvas`,{ref:i,className:`block w-full h-full`,style:{width:`100%`,height:`100%`}}),(0,K.jsxs)(`span`,{className:`absolute top-1 left-2 text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)] pointer-events-none`,children:[`bursts/sec · `,e,`s window`]})]})}var Lc=8,Rc=6,zc=Math.PI*.75,Bc=Math.PI*2.25;function Vc({size:e=110,className:t}){let n=De(),r=(0,_.useRef)(null),i=(0,_.useRef)(0),a=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=r.current;if(!t)return;let o=t.getContext(`2d`);if(!o)return;let s=Math.min(window.devicePixelRatio??1,2),c=ot(),l=()=>{let r=Date.now()-1500,u=0;for(let e=n.length-1;e>=0;e--){let t=n[e];if(t){if(t.ts_ms<r)break;u++}}let d=u/1.5,f=Math.min(1,d/Lc);c?i.current=f:i.current+=(f-i.current)*.16;let p=e,m=e;(t.width!==p*s||t.height!==m*s)&&(t.width=p*s,t.height=m*s,t.style.width=`${p}px`,t.style.height=`${m}px`,o.scale(s,s)),o.clearRect(0,0,p,m);let h=p/2,g=m/2+4,_=p/2-8;o.lineWidth=6,o.lineCap=`round`,o.strokeStyle=`rgba(148, 163, 184, 0.18)`,o.beginPath(),o.arc(h,g,_,zc,Bc),o.stroke();let v=zc+Rc/Lc*(Bc-zc);o.strokeStyle=`rgba(239, 68, 68, 0.45)`,o.beginPath(),o.arc(h,g,_,v,Bc),o.stroke();let y=zc+i.current*(Bc-zc),b=i.current*Lc>=Rc;o.strokeStyle=b?`rgba(239, 68, 68, 0.95)`:`rgba(56, 189, 248, 0.92)`,o.lineWidth=6,o.beginPath(),o.arc(h,g,_,zc,y),o.stroke();let x=h+Math.cos(y)*(_-2),S=g+Math.sin(y)*(_-2);o.strokeStyle=b?`#fca5a5`:`#e0e7ff`,o.lineWidth=2,o.beginPath(),o.moveTo(h,g),o.lineTo(x,S),o.stroke(),o.fillStyle=b?`#fca5a5`:`#e0e7ff`,o.beginPath(),o.arc(h,g,3,0,Math.PI*2),o.fill(),o.fillStyle=b?`#fca5a5`:`#e0e7ff`,o.font=`bold 20px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,o.textAlign=`center`,o.fillText(d.toFixed(1),h,g+_*.55),o.fillStyle=`rgba(148, 163, 184, 0.85)`,o.font=`9px ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace`,o.fillText(`eps`,h,g+_*.55+12),a.current=requestAnimationFrame(l)};return a.current=requestAnimationFrame(l),()=>{a.current!==null&&cancelAnimationFrame(a.current),a.current=null}},[n,e]),(0,K.jsx)(`canvas`,{ref:r,className:G(`block`,t),style:{width:e,height:e}})}var Hc={allow:`#22c55e`,block:`#ef4444`,force:`#a855f7`,ask:`#f59e0b`,log:`#60a5fa`,shadow:`#6b7280`},Uc=[`allow`,`block`,`force`,`ask`,`log`];function Wc({windowSec:e=30,height:t=14,className:n}){let r=De(),[i,a]=(0,_.useState)({}),o=(0,_.useRef)(null);(0,_.useEffect)(()=>{let t=ot(),n=()=>{let i=Date.now()-e*1e3,s={},c=0;for(let e=r.length-1;e>=0;e--){let t=r[e];if(t){if(t.ts_ms<i)break;s[t.decision]=(s[t.decision]??0)+1,c++}}let l={};for(let e of Uc)l[e]=c===0?0:(s[e]??0)/c;if(t){a(l);return}a(e=>{let t={};for(let n of Uc){let r=e[n]??0;t[n]=r+((l[n]??0)-r)*.22}return t}),o.current=requestAnimationFrame(n)};return o.current=requestAnimationFrame(n),()=>{o.current!==null&&cancelAnimationFrame(o.current),o.current=null}},[r,e]);let s=Uc.map(e=>({key:e,color:Hc[e]??`#6b7280`,pct:Math.max(0,i[e]??0)})),c=s.reduce((e,t)=>e+t.pct,0)===0;return(0,K.jsxs)(`div`,{className:G(`w-full`,n),children:[(0,K.jsx)(`div`,{className:`flex w-full overflow-hidden rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,style:{height:t},title:`decision mix · last ${e}s`,children:c?(0,K.jsx)(`div`,{className:`w-full h-full flex items-center justify-center text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)]`,children:`— idle —`}):s.map(e=>(0,K.jsx)(`div`,{style:{width:`${e.pct*100}%`,background:e.color,transition:`width 240ms ease-out`},title:`${e.key} · ${(e.pct*100).toFixed(1)}%`},e.key))}),(0,K.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-x-3 gap-y-0.5 text-[9px] font-mono uppercase tracking-widest text-[var(--color-fg-4)]`,children:s.map(e=>(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-full`,style:{background:e.color}}),e.key,` · `,(e.pct*100).toFixed(0),`%`]},e.key))})]})}var Gc={centre:`#FF9500`,"cf-worker":`#5AC8FA`,bun:`#FFCC00`,elixir:`#AF52DE`,native:`#FF3B30`,unknown:`#8E8E93`},Kc={centre:`monorepo`,"cf-worker":`CF Worker`,bun:`Bun / TS`,elixir:`Elixir`,native:`Native`,unknown:`Other`};function qc({refreshKey:e=0}){let t=(0,_.useRef)(null),n=(0,_.useRef)(null),r=(0,_.useRef)([]),i=(0,_.useRef)(null),a=(0,_.useRef)(null),o=(0,_.useRef)(0),s=(0,_.useRef)(null),c=(0,_.useRef)({w:0,h:0}),l=(0,_.useRef)(!1),u=(0,_.useRef)(null),[d,f]=(0,_.useState)(null),[p,m]=(0,_.useState)(!1),[h,g]=(0,_.useState)({centre:0,"cf-worker":0,bun:0,elixir:0,native:0,unknown:0});(0,_.useEffect)(()=>{let e=!1;return m(!1),f(null),fetch(`/api/json/monorepo/graph`).then(async e=>{let t=e.headers.get(`content-type`)??``;if(!e.ok)throw Error(`HTTP ${e.status}`);if(!t.includes(`application/json`))throw Error(`expected JSON, got `+(t||`unknown`));return e.json()}).then(t=>{if(e)return;let i=n.current?.clientWidth??800,a=n.current?.clientHeight??420,s=i/2,c=a/2,l=Math.min(i,a)*.36,u=t.projects,d=[{id:t.centre.id,label:t.centre.label,type:`centre`,description:`Monorepo root — every sigmashake-* project lives here`,isCentre:!0,x:s,y:c,vx:0,vy:0,radius:0,phase:0},...u.map((e,t)=>{let n=t/Math.max(1,u.length)*Math.PI*2;return{id:e.id,label:e.label.replace(/^sigmashake-/,``),type:e.type,description:e.description||`${Kc[e.type]} project`,isCentre:!1,x:s+Math.cos(n)*l,y:c+Math.sin(n)*l,vx:0,vy:0,radius:l,phase:n}})];r.current=d,o.current=0,g(d.reduce((e,t)=>(e[t.type]=(e[t.type]??0)+1,e),{centre:0,"cf-worker":0,bun:0,elixir:0,native:0,unknown:0})),m(!0)}).catch(t=>{e||f(t instanceof Error?t.message:String(t))}),()=>{e=!0}},[e]),(0,_.useEffect)(()=>{if(typeof window>`u`||!window.matchMedia)return;let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),t=()=>{l.current=e.matches};return t(),e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[]),(0,_.useEffect)(()=>{let e=t.current,s=n.current;if(!e||!s)return;let u=e.getContext(`2d`,{alpha:!0});if(!u)return;let d=new ResizeObserver(t=>{for(let n of t){let t=n.contentRect,i=window.devicePixelRatio||1;c.current.w=t.width,c.current.h=t.height,e.width=Math.max(1,Math.floor(t.width*i)),e.height=Math.max(1,Math.floor(t.height*i)),e.style.width=`${t.width}px`,e.style.height=`${t.height}px`,u.setTransform(i,0,0,i,0,0);let a=r.current;if(a.length>0){let e=t.width/2,n=t.height/2,r=Math.min(t.width,t.height)*.36;for(let t of a){if(t.isCentre){t.x=e,t.y=n;continue}t.radius=r}}}});d.observe(s);let f=0,p=performance.now(),m=[],h=(e,t)=>{let n=new Map;e.forEach((e,t)=>n.set(e.id,t));let r=[];for(let e of t){let t=n.get(e.from),i=n.get(e.to);t===void 0||i===void 0||r.push([t,i])}return r},g=e=>{let t=Math.min(.05,(e-p)/1e3);p=e;let n=r.current,{w:s,h:d}=c.current,h=s/2,_=d/2,v=i.current,y=l.current||v?0:.06;o.current+=y*t;let b=5.5,x=.86;for(let e=0;e<n.length;e++){let r=n[e];if(r.isCentre||r.id===v)continue;let i=0,a=0;for(let t=0;t<n.length;t++){if(e===t)continue;let o=n[t];if(o.isCentre)continue;let s=r.x-o.x,c=r.y-o.y,l=s*s+c*c+.01,u=Math.sqrt(l),d=1700/l;i+=s/u*d,a+=c/u*d}let s=r.phase+o.current,c=h+Math.cos(s)*r.radius,l=_+Math.sin(s)*r.radius;i+=(c-r.x)*b,a+=(l-r.y)*b;let u=r.x-h,d=r.y-_,f=Math.sqrt(u*u+d*d)||1,p=r.radius-f;i+=u/f*p*.6,a+=d/f*p*.6,r.vx=(r.vx+i*t)*x,r.vy=(r.vy+a*t)*x,r.x+=r.vx*t,r.y+=r.vy*t}u.clearRect(0,0,s,d);let S=u.createRadialGradient(h,_,0,h,_,Math.max(s,d)/1.4);S.addColorStop(0,`rgba(255, 149, 0, 0.06)`),S.addColorStop(1,`rgba(255, 149, 0, 0)`),u.fillStyle=S,u.fillRect(0,0,s,d),u.lineCap=`round`;for(let e=1;e<n.length;e++){let t=n[0],r=n[e];Jc(u,t,r,.1)}for(let[e,t]of m){let r=n[e],i=n[t];!r||!i||Jc(u,r,i,.24,`#5AC8FA`)}let C=a.current;for(let e of n){let t=Gc[e.type],n=C===e.id,r=v===e.id,i=e.isCentre?22:11,a=n||r?i+4:i;if(n||r||e.isCentre){let n=e.isCentre?a+14:a+8,r=u.createRadialGradient(e.x,e.y,a,e.x,e.y,n);r.addColorStop(0,t),r.addColorStop(1,`rgba(0,0,0,0)`),u.globalAlpha=e.isCentre?.22:.32,u.fillStyle=r,u.beginPath(),u.arc(e.x,e.y,n,0,Math.PI*2),u.fill(),u.globalAlpha=1}if(u.fillStyle=t,u.beginPath(),u.arc(e.x,e.y,a,0,Math.PI*2),u.fill(),u.lineWidth=e.isCentre?2:1.25,u.strokeStyle=`rgba(0,0,0,0.18)`,u.stroke(),u.font=e.isCentre?`600 12px ui-sans-serif, system-ui`:`500 10.5px ui-sans-serif, system-ui`,u.fillStyle=`rgba(60,60,67,0.85)`,u.textBaseline=`middle`,u.textAlign=`center`,e.isCentre)u.fillText(e.label,e.x,e.y+a+14);else{let t=e.x-h,n=e.y-_,r=Math.sqrt(t*t+n*n)||1,i=e.x+t/r*(a+12),o=e.y+n/r*(a+12);u.textAlign=t>=0?`left`:`right`,u.textBaseline=n>=0?`top`:`bottom`,u.fillText(e.label,i,o)}}u.textAlign=`start`,u.textBaseline=`alphabetic`,f=requestAnimationFrame(g)};f=requestAnimationFrame(g);let _=-1,v=``,y=setInterval(()=>{let e=r.current,t=window.__SSG_MONOREPO_EDGES__??``;e.length===_&&t===v||(_=e.length,v=t,m=h(e,t?JSON.parse(t):[]))},250);return()=>{cancelAnimationFrame(f),clearInterval(y),d.disconnect()}},[]),(0,_.useEffect)(()=>{let e=t.current;if(!e)return;let n=t=>{let n=e.getBoundingClientRect();return{x:t.clientX-n.left,y:t.clientY-n.top}},o=(e,t)=>{let n=r.current;for(let r=n.length-1;r>=0;r--){let i=n[r],a=i.x-e,o=i.y-t,s=i.isCentre?26:14;if(a*a+o*o<=s*s)return i}return null},c=t=>{let{x:s,y:c}=n(t),l=i.current;if(l){let e=r.current.find(e=>e.id===l);if(e&&!e.isCentre){let t=e.x,n=e.y;e.x=s,e.y=c,e.vx=(s-t)*12,e.vy=(c-n)*12}return}let d=o(s,c);a.current=d?.id??null,e.style.cursor=d&&!d.isCentre?`grab`:`default`,d&&u.current?(u.current.style.display=`block`,u.current.style.left=`${s+14}px`,u.current.style.top=`${c+14}px`,u.current.innerHTML=`<strong>${Yc(d.id)}</strong><span class="mg-tooltip__kind">${Kc[d.type]}</span>`+(d.description?`<p>${Yc(d.description)}</p>`:``)):u.current&&(u.current.style.display=`none`)},l=t=>{let{x:r,y:a}=n(t),c=o(r,a);c&&!c.isCentre&&(i.current=c.id,e.setPointerCapture(t.pointerId),e.style.cursor=`grabbing`,s.current={x:r,y:a,downX:r,downY:a,downAt:performance.now()})},d=t=>{if(i.current)try{e.releasePointerCapture(t.pointerId)}catch{}i.current=null,e.style.cursor=`default`},f=()=>{a.current=null,u.current&&(u.current.style.display=`none`)};return e.addEventListener(`pointermove`,c),e.addEventListener(`pointerdown`,l),e.addEventListener(`pointerup`,d),e.addEventListener(`pointercancel`,d),e.addEventListener(`pointerleave`,f),()=>{e.removeEventListener(`pointermove`,c),e.removeEventListener(`pointerdown`,l),e.removeEventListener(`pointerup`,d),e.removeEventListener(`pointercancel`,d),e.removeEventListener(`pointerleave`,f)}},[]),(0,_.useEffect)(()=>{p&&fetch(`/api/json/monorepo/graph`).then(e=>e.json()).then(e=>{window.__SSG_MONOREPO_EDGES__=JSON.stringify(e.serviceEdges??[])}).catch(()=>{window.__SSG_MONOREPO_EDGES__=`[]`})},[p]);let v=[`cf-worker`,`bun`,`elixir`,`native`,`unknown`];return(0,K.jsxs)(`div`,{className:`mg`,ref:n,children:[(0,K.jsx)(`canvas`,{ref:t,className:`mg__canvas`,"aria-label":`Monorepo dependency graph`}),(0,K.jsxs)(`div`,{className:`mg__overlay`,children:[(0,K.jsxs)(`div`,{className:`mg__title`,children:[(0,K.jsx)(`strong`,{children:`monorepo map`}),(0,K.jsx)(`span`,{className:`mg__hint`,children:`drag to pluck a project • hover for details`})]}),d&&(0,K.jsx)(`div`,{className:`mg__error`,children:d}),(0,K.jsx)(`ul`,{className:`mg__legend`,children:v.map(e=>h[e]>0?(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`mg__swatch`,style:{background:Gc[e]}}),(0,K.jsx)(`span`,{children:Kc[e]}),(0,K.jsx)(`span`,{className:`mg__count`,children:h[e]})]},e):null)})]}),(0,K.jsx)(`div`,{ref:u,className:`mg-tooltip`})]})}function Jc(e,t,n,r,i=`#FF9500`){let a=n.x-t.x,o=n.y-t.y,s=(t.x+n.x)/2-o*.05,c=(t.y+n.y)/2+a*.05;e.globalAlpha=r,e.strokeStyle=i,e.lineWidth=1.25,e.beginPath(),e.moveTo(t.x,t.y),e.quadraticCurveTo(s,c,n.x,n.y),e.stroke(),e.globalAlpha=1}function Yc(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}var Xc=3;function Zc(e){return e===null?`—`:e<1e6?`${(e/1e3).toFixed(0)}µs`:`${(e/1e6).toFixed(1)}ms`}var Qc=[`counters-updated`,`activity-updated`,`pending-changed`,`runtime-tick`,`limits-breach`];function $c({info:e}){let t=e.tier===`pro`||e.tier===`enterprise`,n=e.status===`needs_reauth`,r=e.pct_used??0,i=r>=90?`bg-red-500`:r>=70?`bg-amber-500`:`bg-emerald-500`;return(0,K.jsxs)(q,{className:n?`border-l-2 border-l-amber-500/70`:t?`border-l-2 border-l-emerald-500/70`:`border-l-2 border-l-sky-500/70`,children:[(0,K.jsxs)(J,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-xs font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`license`}),(0,K.jsx)(sr,{variant:t?`green`:n?`amber`:`blue`,children:e.tier_label}),e.fleet_enrolled&&(0,K.jsx)(sr,{variant:`gray`,children:`fleet`})]}),e.email&&(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-3)]`,children:e.email})]}),(0,K.jsxs)(Y,{className:`space-y-3`,children:[n&&e.detail&&(0,K.jsxs)(`div`,{className:`rounded border border-amber-500/40 bg-amber-500/10 px-3 py-2 text-xs text-amber-200`,children:[e.detail,` — run `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg auth login`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex justify-between text-xs text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{children:`evals today`}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:e.evals_today,curve:`spring`}),e.eval_daily_limit!==null&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:` / `}),e.eval_daily_limit.toLocaleString()]}),e.eval_daily_limit===null&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:` · unlimited`})]})]}),e.eval_daily_limit!==null&&(0,K.jsx)(`div`,{className:`mt-1 h-1.5 w-full overflow-hidden rounded-full bg-[var(--color-bg-2)]`,children:(0,K.jsx)(`div`,{className:`h-full transition-all duration-700 ease-out ${i}`,style:{width:`${r}%`}})})]}),!t&&(0,K.jsxs)(`a`,{href:e.upgrade_url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-xs text-[var(--color-brand)] hover:underline`,children:[`Upgrade to Pro · $`,e.pricing.pro_monthly_usd,`/mo →`]}),t&&e.retention_days>0&&(0,K.jsxs)(`div`,{className:`text-[10px] text-[var(--color-fg-3)] font-mono uppercase tracking-wider`,children:[`cloud retention: `,e.retention_days,` days`]})]})]})}function el(e){return new Date(e*1e3).toLocaleTimeString()}function tl(e,t=24){let n=(0,_.useRef)(null),[r,i]=(0,_.useState)([]);return(0,_.useEffect)(()=>{let r=n.current;if(n.current=e,r===null)return;let a=Math.max(0,e-r);i(e=>{let n=e.length>=t?e.slice(-(t-1)):e.slice();return n.push(a),n})},[e,t]),r}async function nl(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}async function rl(e,t){let n=await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})});if(!n.ok)throw Error(`Toggle failed: ${n.status}`)}async function il(e,t){let n=await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})});if(!n.ok)throw Error(`Toggle failed: ${n.status}`)}async function al(e,t){let n=await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:`ask`})});if(!n.ok)throw Error(`Update decision failed: ${n.status}`)}async function ol(e,t){let n=await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:`block`})});if(!n.ok)throw Error(`Update decision failed: ${n.status}`)}function sl({ruleId:e}){return e?(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e)}`,className:`text-[var(--color-brand)] hover:underline text-xs font-mono break-all`,title:`Go to rule: ${e}`,children:e}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`—`})}function cl({title:e,right:t}){return(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:e}),t]})}function ll({children:e}){return(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:e})}function ul({item:e,onDisable:t,onChangeToAsk:n,onUndo:r}){let[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(`idle`),[c,l]=(0,_.useState)(!1),u=rr(e.tool,e.input),d=e.rule_id&&e.source_file,f=e.decision===`force`?`force`:`block`,p=f===`force`?`amber`:`red`,m=async()=>{s(`loading`);try{await n(),s(`done-ask`)}catch{s(`error`)}},h=async()=>{s(`loading`);try{await t(),s(`done-disable`)}catch{s(`error`)}},g=async()=>{l(!0);try{await r(o===`done-disable`?`disable`:`ask`),s(`idle`)}catch{}finally{l(!1)}},v=o===`done-ask`||o===`done-disable`;return(0,K.jsx)(q,{className:`border-l-2 ${v?`border-l-[var(--color-line-1)]`:f===`force`?`border-l-amber-400/60`:`border-l-red-500/60`} ${v?`opacity-60`:``}`,children:(0,K.jsxs)(`div`,{className:`px-3 py-3`,children:[v&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-2.5 py-1.5 mb-3 text-[11px] font-mono ${o===`done-ask`?`bg-sky-500/5 border border-sky-500/25 text-sky-300`:`bg-amber-500/5 border border-amber-500/25 text-amber-300`}`,children:[(0,K.jsx)(`span`,{className:`truncate`,children:o===`done-ask`?`✓ rule "${e.rule_id}" → ask · prompts next time`:`✓ rule "${e.rule_id}" disabled · no longer blocks`}),(0,K.jsx)(`button`,{onClick:g,disabled:c,className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-current/40 hover:bg-white/5 transition-colors cursor-pointer disabled:opacity-50 uppercase tracking-wider text-[10px]`,children:c?`…`:`↩ undo`})]}),o===`error`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-2.5 py-1.5 mb-3 text-[11px] font-mono bg-red-500/5 border border-red-500/25 text-red-300`,children:[(0,K.jsx)(`span`,{children:`failed to update rule — check server logs`}),(0,K.jsx)(`button`,{onClick:()=>s(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-current/40 hover:bg-white/5 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`retry`})]}),(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1.5 flex-wrap`,children:[(0,K.jsx)(sr,{variant:v?o===`done-ask`?`blue`:`gray`:p,children:v?o===`done-ask`?`ask`:`disabled`:f}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] text-xs font-mono`,children:e.tool}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-xs`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] text-[11px] font-mono tabular-nums`,children:el(e.timestamp)}),e.repeat_count>1&&(0,K.jsxs)(sr,{variant:`gray`,children:[`×`,e.repeat_count]})]}),(0,K.jsx)(`div`,{className:`text-xs font-mono truncate cursor-pointer hover:text-[var(--color-fg-0)] transition-colors ${v?`text-[var(--color-fg-4)] line-through`:`text-[var(--color-fg-1)]`}`,title:u,onClick:()=>a(e=>!e),children:u})]}),d&&!v&&o!==`error`&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 shrink-0 pt-0.5`,children:[(0,K.jsxs)(`button`,{onClick:m,disabled:o===`loading`,className:`inline-flex items-center gap-1 h-7 px-2.5 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-sky-500/8 text-sky-300 border border-sky-500/25 hover:bg-sky-500/15 hover:border-sky-500/40 transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed`,children:[o===`loading`?(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}):(0,K.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),`ask instead`]}),(0,K.jsxs)(`button`,{onClick:h,disabled:o===`loading`,className:`inline-flex items-center gap-1 h-7 px-2.5 rounded-sm text-[11px] font-medium uppercase tracking-wider bg-red-500/8 text-red-300 border border-red-500/25 hover:bg-red-500/15 hover:border-red-500/40 transition-colors cursor-pointer disabled:opacity-50 disabled:cursor-not-allowed`,children:[o===`loading`?(0,K.jsx)(`span`,{className:`animate-spin`,children:`⟳`}):(0,K.jsxs)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`15`,y1:`9`,x2:`9`,y2:`15`}),(0,K.jsx)(`line`,{x1:`9`,y1:`9`,x2:`15`,y2:`15`})]}),`disable rule`]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-4 gap-y-1 mt-2 text-[11px] font-mono`,children:[e.rule_id&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`rule`}),(0,K.jsx)(sl,{ruleId:e.rule_id})]}),e.source_file&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`src`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:e.source_file})]}),e.rules_evaluated!==null&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`evals`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums`,children:e.rules_evaluated})]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`latency`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums`,children:Zc(e.duration_ns)})]}),(0,K.jsx)(`button`,{onClick:()=>a(e=>!e),className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] transition-colors ml-auto cursor-pointer uppercase tracking-wider text-[10px]`,children:i?`▾ hide`:`▸ details`})]}),i&&(0,K.jsxs)(`div`,{className:`mt-3 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`full input`}),(0,K.jsx)(Cc,{children:(()=>{try{return JSON.stringify(JSON.parse(e.input),null,2)}catch{return e.input}})()})]})]})})}function dl(){let e=ke(Qc),t=[e[`counters-updated`],e[`activity-updated`],e[`pending-changed`]],{data:n}=V(`/api/state/counters`,t),{data:r,refetch:i}=V(`/api/json/pending`,t),{data:a,refetch:o}=V(`/api/json/blocked`,t),{data:s}=V(`/api/state/activity`,t),{data:c}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:l}=V(`/api/json/limits`,[e[`limits-breach`]]),{data:u}=V(`/api/json/license`,[e[`activity-updated`]]),[d,f]=(0,_.useState)(!1),p=a?.reduce((e,t)=>e+t.repeat_count,0)??0,m=n?.allow??0,h=(n?.block??0)+(n?.force??0),g=n?.force??0,v=n?.pending??0,y=n?.log??0,b=tl(m),x=tl(h),S=tl(g),C=tl(v),w=tl(y),T=[{label:`allow`,value:m,tone:`green`,trend:b},{label:`block`,value:h,tone:`red`,trend:x},{label:`force`,value:g,tone:`amber`,trend:S},{label:`pending`,value:v,tone:`blue`,trend:C},{label:`log`,value:y,tone:`gray`,trend:w}];return(0,K.jsxs)(`div`,{ref:Tt({from:`first`}),className:`space-y-8`,children:[(0,K.jsx)(Js,{}),(0,K.jsx)(`div`,{"data-reveal":!0,children:(0,K.jsx)(qc,{})}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-5 gap-2`,children:T.map(e=>(0,K.jsx)(kc,{align:`left`,label:e.label,value:(0,K.jsx)(fr,{value:e.value,curve:`spring`}),tone:e.tone,labelPlacement:`above`,contentClassName:`py-3`,valueClassName:`text-2xl font-medium`,trend:e.trend,"data-reveal":!0},e.label))}),(0,K.jsxs)(`div`,{"data-reveal":!0,className:`grid grid-cols-12 gap-2 items-stretch`,children:[(0,K.jsxs)(`div`,{className:`col-span-12 md:col-span-7 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2 flex flex-col gap-2`,children:[(0,K.jsx)(Ic,{bins:60,height:42}),(0,K.jsx)(Wc,{windowSec:60,height:12})]}),(0,K.jsx)(`div`,{className:`col-span-12 md:col-span-5 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] px-3 py-2 flex items-center justify-center`,children:(0,K.jsx)(Vc,{size:130})})]}),u&&(0,K.jsx)(`div`,{"data-reveal":!0,children:(0,K.jsx)($c,{info:u})}),c&&(0,K.jsxs)(`div`,{"data-reveal":!0,className:`grid grid-cols-2 gap-2`,children:[(0,K.jsx)(Mc,{label:`cpu`,value:c.cpu_pct==null?`—`:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(fr,{value:c.cpu_pct,format:e=>Math.round(e).toString()}),`%`]}),tone:l?.breaches.cpu?`red`:(c.cpu_pct??0)>=60?`amber`:`green`,breached:l?.breaches.cpu??!1,trendData:c.history?.cpu_pct,trendColor:l?.breaches.cpu?`#f87171`:`#34d399`,threshold:l?.config.cpuLimitPct,maxValue:100,className:l?.breaches.cpu?`border-red-500/40`:``,footer:(0,K.jsx)(`a`,{href:`/monitor`,className:`mt-1 block text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`view details →`})}),(0,K.jsx)(Mc,{label:`memory rss`,value:c.memory_rss_mb==null?`—`:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(fr,{value:c.memory_rss_mb,format:e=>Math.round(e).toString()}),(0,K.jsx)(`span`,{className:`ml-1 text-sm text-[var(--color-fg-3)]`,children:`MB`})]}),tone:l?.breaches.memory?`red`:`neutral`,breached:l?.breaches.memory??!1,trendData:c.history?.memory_rss_mb,trendColor:l?.breaches.memory?`#f87171`:`#38bdf8`,threshold:l?.config.memoryLimitMb,className:l?.breaches.memory?`border-red-500/40`:``,footer:(0,K.jsx)(`a`,{href:`/monitor`,className:`mt-1 block text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`view details →`})})]}),(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`pending approvals`}),!r||r.length===0?(0,K.jsx)(ll,{children:`no pending approvals`}):(0,K.jsx)(`div`,{className:`space-y-2`,children:r.map(e=>(0,K.jsxs)(q,{className:`border-l-2 border-l-sky-500/50`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsxs)(`div`,{className:`flex gap-2`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:async()=>{await nl(e.id,`allow`),i()},children:`approve`}),(0,K.jsx)(X,{size:`sm`,variant:`danger`,onClick:async()=>{await nl(e.id,`block`),i()},children:`deny`})]})]}),(0,K.jsxs)(Y,{className:`space-y-2 text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex gap-2 items-center`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`tool`}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] font-mono`,children:e.toolCall.tool})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5`,children:`prompt`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:JSON.stringify(e.toolCall.input,null,2)})]})]},e.id))})]}),a&&a.length>0&&(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`blocked actions`,right:(0,K.jsxs)(`span`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:[a.length,` active`,p>a.length?` · ${p} total hits`:``]})}),(0,K.jsx)(`div`,{className:`space-y-2`,children:(d?a:a.slice(0,Xc)).map(e=>(0,K.jsx)(ul,{item:e,onDisable:async()=>{await rl(e.rule_id,e.source_file),o()},onChangeToAsk:async()=>{await al(e.rule_id,e.source_file),o()},onUndo:async t=>{t===`disable`?await il(e.rule_id,e.source_file):await ol(e.rule_id,e.source_file),o()}},`${e.decision}:${e.rule_id??`none`}:${e.tool}:${e.timestamp}:${e.input}`))}),a.length>Xc&&(0,K.jsx)(`div`,{className:`mt-3 flex justify-center`,children:(0,K.jsx)(X,{size:`sm`,variant:`secondary`,onClick:()=>f(e=>!e),children:d?`↑ show less`:`↓ show ${a.length-Xc} more`})})]}),(0,K.jsxs)(`section`,{"data-reveal":!0,children:[(0,K.jsx)(cl,{title:`recent audit log`,right:s&&s.length>0?(0,K.jsx)(`a`,{href:`/audit`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors`,children:`view all →`}):void 0}),!s||s.length===0?(0,K.jsx)(ll,{children:`no audit entries yet`}):(0,K.jsx)(`div`,{className:`space-y-1.5`,children:s.slice(0,15).map(e=>(0,K.jsx)(Sc,{row:e},e.id))})]})]})}function fl({checked:e,onChange:t,disabled:n,size:r=`md`,tone:i=`brand`,label:a}){return(0,K.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,"aria-label":a,disabled:n,onClick:()=>t(!e),className:`ss-toggle ${r===`sm`?`ss-toggle--sm`:``} ${i===`danger`?`ss-toggle--danger`:``}`,children:(0,K.jsx)(`span`,{className:`ss-toggle-thumb`,"aria-hidden":`true`})})}var pl=new Map;async function ml(e){let t=pl.get(e);if(t)return t.status===`ok`?t.data:t.status===`error`?null:t.promise;let n=(async()=>{try{let t=await fetch(`/api/json/rule-explain?ruleId=${encodeURIComponent(e)}`,{headers:{Accept:`application/json`}});if(!t.ok)return pl.set(e,{status:`error`,error:`HTTP ${t.status}`}),null;let n=await t.json();return pl.set(e,{status:`ok`,data:n}),n}catch(t){return pl.set(e,{status:`error`,error:String(t)}),null}})();return pl.set(e,{status:`loading`,promise:n}),n}var hl=220,gl=90;function _l({ruleId:e,children:t,className:n}){let[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(null),[s,c]=(0,_.useState)(null),l=(0,_.useRef)(null),u=(0,_.useRef)(null),d=(0,_.useRef)(null),f=()=>{u.current&&clearTimeout(u.current),d.current&&clearTimeout(d.current),u.current=null,d.current=null},p=(0,_.useCallback)(()=>{let e=l.current;if(!e)return;let t=e.getBoundingClientRect(),n=t.left;n+320>window.innerWidth-12&&(n=Math.max(12,window.innerWidth-320-12));let r=t.bottom+8;r+200>window.innerHeight-12&&(r=Math.max(12,t.top-200-8)),c({top:r,left:n})},[]),m=(0,_.useCallback)(()=>{f(),u.current=setTimeout(()=>{p(),i(!0),ml(e).then(e=>{e&&o(e)});let t=pl.get(e);t&&t.status===`ok`&&o(t.data)},hl)},[e,p]),h=(0,_.useCallback)(()=>{f(),d.current=setTimeout(()=>{i(!1)},gl)},[]);return(0,_.useEffect)(()=>{if(!r)return;let e=()=>p(),t=()=>p(),n=e=>{e.key===`Escape`&&i(!1)};return window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,t),window.addEventListener(`keydown`,n),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,t),window.removeEventListener(`keydown`,n)}},[r,p]),(0,_.useEffect)(()=>()=>f(),[]),(0,K.jsxs)(`span`,{ref:l,className:`ss-rule-trigger${n?` `+n:``}`,onMouseEnter:m,onMouseLeave:h,onFocus:m,onBlur:h,tabIndex:0,"aria-describedby":r?`rule-popover-${e}`:void 0,children:[t,r&&s&&(0,K.jsx)(`span`,{id:`rule-popover-${e}`,role:`tooltip`,className:`ss-rule-popover`,style:{top:s.top,left:s.left},onMouseEnter:()=>f(),onMouseLeave:h,children:a?(0,K.jsx)(vl,{data:a}):(0,K.jsx)(`span`,{className:`ss-rule-popover__loading`,children:`loading rule…`})})]})}function vl({data:e}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{className:`ss-rule-popover__head`,children:[(0,K.jsx)(`code`,{className:`ss-rule-popover__id`,children:e.ruleId}),(0,K.jsx)(`span`,{className:`ss-rule-popover__pill ss-rule-popover__pill--${e.decision}`,children:e.decision}),(0,K.jsx)(`span`,{className:`ss-rule-popover__state ss-rule-popover__state--${e.enabled?`on`:`off`}`,children:e.enabled?`ON`:`OFF`})]}),(0,K.jsx)(`strong`,{className:`ss-rule-popover__headline`,children:e.headline}),(0,K.jsx)(`span`,{className:`ss-rule-popover__summary`,children:e.summary}),e.conditions.length>1&&(0,K.jsxs)(`span`,{className:`ss-rule-popover__section`,children:[(0,K.jsx)(`span`,{className:`ss-rule-popover__label`,children:`Matches when`}),(0,K.jsx)(`ul`,{className:`ss-rule-popover__list`,children:e.conditions.map((e,t)=>(0,K.jsx)(`li`,{children:e},t))})]}),e.hints.length>0&&(0,K.jsx)(`span`,{className:`ss-rule-popover__hints`,children:e.hints.map((e,t)=>(0,K.jsx)(`span`,{className:`ss-rule-popover__hint`,children:e},t))}),(0,K.jsx)(`span`,{className:`ss-rule-popover__foot`,children:(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.ruleId)}`,className:`ss-rule-popover__link`,children:`Open in Rules →`})})]})}var yl=[`rules-changed`],bl=[`block`,`ask`,`log`,`allow`,`force`,`shadow`],xl={block:`text-red-300`,deny:`text-red-300`,ask:`text-sky-300`,allow:`text-emerald-300`,log:`text-[var(--color-fg-3)]`,force:`text-amber-300`,shadow:`text-violet-300`};async function Sl(e,t){await fetch(`/api/rules/toggle`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t})})}async function Cl(e,t,n){await fetch(`/api/rules/update-decision`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({ruleId:e,file:t,decision:n})})}function wl({rule:e,file:t,onToggle:n}){let[r,i]=(0,_.useState)(!1);return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider ${e.enabled?`text-[var(--color-fg-1)]`:`text-[var(--color-fg-4)]`}`,children:e.enabled?`on`:`off`}),(0,K.jsx)(fl,{size:`sm`,checked:e.enabled,disabled:r,label:`${e.enabled?`Disable`:`Enable`} rule ${e.id}`,onChange:async()=>{i(!0);try{await n()}finally{i(!1)}}})]})}function Tl(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(!1);(0,_.useEffect)(()=>{let e=!1;return(async()=>{try{let n=await fetch(`/api/json/rule-write-enforcement`,{headers:{Accept:`application/json`}});if(!n.ok)return;let r=await n.json();!e&&typeof r.enforced==`boolean`&&t(r.enforced)}catch{}})(),()=>{e=!0}},[]);async function o(e){r(!0);try{let n=await fetch(`/api/json/rule-write-enforcement`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({enforced:e})});if(n.ok){let e=await n.json();typeof e.enforced==`boolean`&&t(e.enforced)}}finally{r(!1),a(!1)}}if(e===null)return null;let s=!e;return(0,K.jsx)(q,{className:s?`border-amber-500/40 bg-amber-500/5`:`border-[var(--color-line-1)]`,children:(0,K.jsx)(Y,{className:`px-3 py-2.5`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`rule-write protection`}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-wider ${s?`text-amber-300`:`text-emerald-300`}`,children:s?`disabled`:`enforced`})]}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-1 leading-snug`,children:s?`Agents can currently Write/Edit .rules files. Turn this back on when you finish authoring.`:`Agents cannot Write/Edit/MultiEdit any .sigmashake/rules/**/*.rules file. Disable only when curating rulesets.`})]}),(0,K.jsx)(`div`,{className:`shrink-0`,children:i?(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`button`,{onClick:()=>o(!1),disabled:n,className:`text-[11px] font-mono uppercase tracking-wider bg-amber-500/10 border border-amber-500/40 text-amber-200 hover:bg-amber-500/20 rounded-sm px-2 py-0.5 cursor-pointer transition-colors disabled:opacity-50`,children:`disable`}),(0,K.jsx)(`button`,{onClick:()=>a(!1),disabled:n,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer disabled:opacity-50`,children:`cancel`})]}):(0,K.jsx)(`button`,{onClick:()=>{e?a(!0):o(!0)},disabled:n,className:`text-[11px] font-mono uppercase tracking-wider border rounded-sm px-2.5 py-0.5 cursor-pointer transition-colors disabled:opacity-50 ${s?`bg-emerald-500/10 border-emerald-500/40 text-emerald-200 hover:bg-emerald-500/20`:`bg-[var(--color-surface-1)] border-[var(--color-line-1)] text-[var(--color-fg-1)] hover:bg-[var(--color-surface-2)]`}`,children:s?`enable`:`disable`})})]})})})}function El(){let{data:e,refetch:t}=V(`/api/json/rules`,[ke(yl)[`rules-changed`]]),[n,r]=(0,_.useState)(``),i=new URLSearchParams(window.location.search).get(`highlight`)??``,a=(0,_.useRef)(null);if((0,_.useEffect)(()=>{a.current&&a.current.scrollIntoView({behavior:`smooth`,block:`center`})},[e,i]),!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading rules…`});if(e.rulesets.length===0)return(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 p-10 text-center`,children:[(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-2)] mb-2`,children:`No .rules files found.`}),(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline`,children:`→ browse hub to install rulesets`})]});let o=n.toLowerCase(),s=e.rulesets.map(e=>({...e,rules:o?e.rules.filter(e=>e.id.toLowerCase().includes(o)||e.message.toLowerCase().includes(o)):e.rules})).filter(e=>!o||e.rules.length>0),c=e.rulesets.reduce((e,t)=>e+t.rules.length,0),l=e.rulesets.reduce((e,t)=>e+t.rules.filter(e=>e.enabled).length,0);return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`rules`}),(0,K.jsxs)(`div`,{className:`flex items-baseline gap-3 mt-1`,children:[(0,K.jsxs)(`span`,{className:`font-mono text-sm text-[var(--color-fg-0)] tabular-nums`,children:[l,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`/`,c]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1.5 text-[11px] uppercase tracking-wider`,children:`active`})]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsxs)(`span`,{className:`font-mono text-[11px] text-[var(--color-fg-3)] uppercase tracking-wider`,children:[e.files.length,` file`,e.files.length===1?``:`s`]})]})]}),(0,K.jsx)(`div`,{className:`ml-auto relative`,children:(0,K.jsx)(`input`,{type:`text`,placeholder:`search rules…`,value:n,onChange:e=>r(e.target.value),className:`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-xs rounded-sm px-2.5 py-1.5 w-56 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})})]}),(0,K.jsx)(Tl,{}),s.length===0&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:[`no rules match "`,n,`"`]}),(0,K.jsx)(`div`,{className:`space-y-3`,children:s.map(e=>{let n=e.rules.some(e=>e.id===i),r=e.rules.filter(e=>e.enabled).length;return(0,K.jsx)(q,{children:(0,K.jsxs)(`details`,{open:n||!o,children:[(0,K.jsxs)(`summary`,{className:`flex items-center gap-2 px-3 py-2 cursor-pointer list-none select-none hover:bg-[var(--color-surface-2)]/70 border-b border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`svg`,{className:`text-[var(--color-fg-3)] shrink-0`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),(0,K.jsx)(`polyline`,{points:`14 2 14 8 20 8`})]}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-fg-0)] font-mono`,children:e.file}),(0,K.jsxs)(`span`,{className:`ml-auto font-mono text-[11px] text-[var(--color-fg-3)] tabular-nums`,children:[r,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`/`,e.rules.length]})]})]}),(0,K.jsxs)(Y,{className:`py-0`,children:[e.rules.length===0?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] py-3`,children:`no rules in this file`}):(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:e.rules.map(n=>{let r=n.id===i;return(0,K.jsxs)(`div`,{ref:r?a:null,className:`py-2.5 flex items-start justify-between gap-4 ${r?`bg-amber-400/8 border-l-2 border-l-amber-400/60 -mx-3 px-3 -my-px`:``}`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1 flex-wrap`,children:[(0,K.jsx)(`select`,{value:n.decision,onChange:async r=>{await Cl(n.id,e.file,r.target.value),t()},className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-1.5 py-0.5 text-[11px] font-mono uppercase tracking-wider cursor-pointer focus:outline-none focus:border-[var(--color-brand)]/50 ${xl[n.decision]??`text-[var(--color-fg-2)]`}`,children:bl.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))}),(0,K.jsx)(_l,{ruleId:n.id,children:(0,K.jsx)(`code`,{className:`text-xs font-mono text-[var(--color-fg-0)] break-all`,children:n.id})})]}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] truncate`,children:n.message})]}),(0,K.jsx)(wl,{rule:n,file:e.file,onToggle:async()=>{await Sl(n.id,e.file),t()}})]},n.id)})}),e.content&&(0,K.jsxs)(`details`,{className:`mt-3 pb-3`,children:[(0,K.jsx)(`summary`,{className:`overline cursor-pointer hover:text-[var(--color-fg-1)] select-none`,children:`raw source`}),(0,K.jsx)(`pre`,{className:`mt-2 p-3 bg-[var(--color-surface-0)] border border-[var(--color-line-0)] rounded-sm text-[11px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-words font-mono`,children:e.content})]})]})]})},e.file)})})]})}var Dl=[``,`allow`,`block`,`force`,`ask`,`log`],Ol=[``,`claude-code`,`gemini`,`antigravity`,`cursor`,`copilot`,`codex`,`pi`,`generic`],kl=50;function Al(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(``),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(kl),u=ke([`activity-updated`]),d=new URLSearchParams;e&&d.set(`decision`,e),n&&d.set(`tool`,n),i&&d.set(`client`,i);let{data:f,loading:p,error:m}=V(`/api/state/activity${d.size?`?`+d:``}`,[u[`activity-updated`],e,n,i]),h=e=>t=>{e(t.target.value),l(kl)},g=(0,_.useMemo)(()=>{if(!f)return[];let e=o.trim().toLowerCase();return e?f.filter(t=>t.tool.toLowerCase().includes(e)||t.decision.toLowerCase().includes(e)||(t.rule_id??``).toLowerCase().includes(e)||(t.client??``).toLowerCase().includes(e)||(t.source_file??``).toLowerCase().includes(e)||t.input.toLowerCase().includes(e)):f},[f,o]),v=g.slice(0,c),y=g.length>c,b=f?.length??0,x=g.length,S=`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-sm px-2 py-1.5 focus:outline-none focus:border-[var(--color-brand)]/50 cursor-pointer`;return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`What your AI tried to do`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:[`Every move your AI agent made — and what SigmaShake decided.`,f&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] tabular-nums ml-1.5`,children:o&&x!==b?`· ${x}/${b} match`:`· ${b} actions`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsx)(`select`,{id:`audit-filter-decision`,value:e,onChange:h(t),className:S,children:Dl.map(e=>(0,K.jsx)(`option`,{value:e,children:e===``?`All decisions`:e===`allow`?`Allowed`:e===`block`?`Blocked`:e===`force`?`Forced`:e===`ask`?`Held`:`Logged`},e))}),(0,K.jsx)(`select`,{id:`audit-filter-client`,value:i,onChange:h(a),className:S,children:Ol.map(e=>(0,K.jsx)(`option`,{value:e,children:e===``?`All AI agents`:e===`claude-code`?`Claude Code`:e===`copilot`?`GitHub Copilot`:e===`codex`?`OpenAI Codex`:e.charAt(0).toUpperCase()+e.slice(1)},e))}),(0,K.jsx)(`input`,{id:`audit-filter-tool`,type:`text`,placeholder:`Filter by tool…`,value:n,onChange:h(r),className:`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] rounded-sm px-2.5 py-1.5 w-36 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)]`})]})]}),(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsxs)(`svg`,{className:`absolute left-3 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)] pointer-events-none`,width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`input`,{id:`audit-search`,type:`text`,placeholder:`Search by command, file path, rule, or text…`,value:o,onChange:e=>{s(e.target.value),l(kl)},className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm pl-9 pr-10 py-2.5 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] transition-colors`}),o&&(0,K.jsx)(`button`,{onClick:()=>{s(``),l(kl)},className:`absolute right-3 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] transition-colors cursor-pointer`,title:`Clear search`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]}),f&&f.length>0&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 px-3 text-[10px] uppercase tracking-widest text-[var(--color-fg-4)] select-none`,children:[(0,K.jsx)(`span`,{className:`w-3`}),(0,K.jsx)(`span`,{className:`w-14`,children:`When`}),(0,K.jsx)(`span`,{className:`w-20`,children:`Decision`}),(0,K.jsx)(`span`,{className:`flex-1 min-w-0`,children:`Action`}),(0,K.jsx)(`span`,{className:`hidden md:inline w-12 text-right`,children:`Time`}),(0,K.jsx)(`span`,{className:`w-24 text-right`,children:`AI agent`})]}),m&&(0,K.jsxs)(`p`,{className:`text-sm text-red-300 font-mono`,children:[`failed to load audit log: `,m]}),p&&!f&&(0,K.jsx)(`div`,{className:`space-y-1.5`,children:Array.from({length:10}).map((e,t)=>(0,K.jsx)(`div`,{className:`h-9 bg-[var(--color-surface-1)] rounded-sm border border-[var(--color-line-0)] border-l-2 border-l-[var(--color-line-2)] shimmer`},t))}),!p&&!m&&g.length===0&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] py-16 flex flex-col items-center justify-center text-center`,children:[(0,K.jsxs)(`svg`,{className:`text-[var(--color-fg-4)] mb-3`,width:`32`,height:`32`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)]`,children:o?`No actions match your search.`:`Nothing yet — connect an AI agent and its actions will show up here.`}),o&&(0,K.jsx)(`button`,{onClick:()=>s(``),className:`mt-3 text-[11.5px] text-[var(--color-brand)] hover:underline cursor-pointer`,children:`Clear search`})]}),v.length>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`space-y-1.5`,children:v.map(e=>(0,K.jsx)(Sc,{row:e},e.id))}),y&&(0,K.jsxs)(`div`,{className:`flex items-center justify-center gap-4 pt-2`,children:[(0,K.jsxs)(`button`,{onClick:()=>l(e=>e+kl),className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] border border-[var(--color-line-1)] hover:border-[var(--color-line-2)] rounded-sm px-4 py-1.5 transition-colors cursor-pointer`,children:[`show`,` `,Math.min(kl,g.length-c),` more`]}),(0,K.jsxs)(`span`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:[c,` / `,g.length]})]})]})]})}function jl({open:e,onClose:t,title:n,subtitle:r,children:i,footer:a,size:o=`md`}){let s=(0,_.useRef)(null),c=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!e)return;c.current=document.activeElement;let n=document.body.style.overflow;document.body.style.overflow=`hidden`;let r=e=>{e.key===`Escape`&&(e.preventDefault(),t())};return document.addEventListener(`keydown`,r),s.current?.focus(),()=>{document.removeEventListener(`keydown`,r),document.body.style.overflow=n,c.current?.focus?.()}},[e,t]),e?(0,K.jsx)(`div`,{className:`ss-sheet-backdrop`,onClick:e=>{e.target===e.currentTarget&&t()},role:`presentation`,children:(0,K.jsxs)(`div`,{ref:s,className:`ss-sheet ss-sheet--${o}`,role:`dialog`,"aria-modal":`true`,"aria-label":n??`Detail`,tabIndex:-1,children:[(0,K.jsx)(`button`,{className:`ss-sheet-handle`,onClick:t,"aria-label":`Close`,type:`button`}),(0,K.jsxs)(`div`,{className:`ss-sheet-head`,children:[(0,K.jsxs)(`div`,{className:`ss-sheet-head-text`,children:[n&&(0,K.jsx)(`h2`,{className:`ss-sheet-title`,children:n}),r&&(0,K.jsx)(`p`,{className:`ss-sheet-subtitle`,children:r})]}),(0,K.jsx)(`button`,{type:`button`,onClick:t,"aria-label":`Close`,className:`ss-sheet-close`,children:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`}),(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`})]})})]}),(0,K.jsx)(`div`,{className:`ss-sheet-body`,children:i}),a&&(0,K.jsx)(`div`,{className:`ss-sheet-footer`,children:a})]})}):null}var Ml={allow:`green`,block:`red`,force:`amber`,ask:`blue`,log:`gray`},Nl=[`all`,`allow`,`block`,`force`,`log`],Pl={allow:`text-emerald-300`,block:`text-red-300`,force:`text-amber-300`,log:`text-[var(--color-fg-3)]`};function Q(e){return new Date(e*1e3).toLocaleString()}function Fl(e,t){if(!t)return``;let n=t-e;return n<60?`${n}s`:`${Math.round(n/60)}m`}async function Il(e,t){await fetch(`/api/decide/${e}?decision=${t}`,{method:`POST`,headers:B()})}async function Ll(e,t){try{return await(await fetch(`/api/rules/set-enabled`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({ruleId:e,enabled:t})})).json()}catch(e){return{error:String(e)}}}function Rl(e){try{let t=JSON.parse(e).input;return t&&typeof t==`object`?rr(``,JSON.stringify(t)):rr(``,e)}catch{return e.slice(0,80)}}function zl(e){try{let t=JSON.parse(e);return t.input===void 0?JSON.stringify(JSON.parse(e),null,2):JSON.stringify(t.input,null,2)}catch{return e}}function Bl({label:e,value:t,tone:n}){return(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,K.jsx)(`span`,{className:`font-mono text-sm tabular-nums ${n??`text-[var(--color-fg-0)]`}`,children:t}),(0,K.jsx)(`span`,{className:`font-mono text-[10px] uppercase tracking-wider text-[var(--color-fg-3)]`,children:e})]})}function Vl(e,t){let n=Math.floor(Date.now()/1e3),r=n-86400,i=new Map;for(let t of e){if(t.decision!==`ask`||t.created_at<r||!t.rule_id)continue;let e=i.get(t.rule_id);e?(e.count+=1,t.created_at>e.lastSeen&&(e.lastSeen=t.created_at)):i.set(t.rule_id,{ruleId:t.rule_id,ruleMessage:t.rule_message||t.rule_id,count:1,lastSeen:t.created_at})}for(let e of t){if(!e.ruleId)continue;let t=i.get(e.ruleId);t?(t.count+=1,t.lastSeen=n):i.set(e.ruleId,{ruleId:e.ruleId,ruleMessage:e.ruleMessage||e.ruleId,count:1,lastSeen:n})}return Array.from(i.values()).filter(e=>e.count>=3).sort((e,t)=>t.count-e.count||t.lastSeen-e.lastSeen).slice(0,5)}function Hl(e){let t=Math.max(0,Math.floor(Date.now()/1e3)-e);return t<60?`${t}s ago`:t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}function Ul({ruleId:e,ruleMessage:t,onDismiss:n,onUndo:r}){let[i,a]=(0,_.useState)(!1),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>(o.current=setTimeout(n,6e3),()=>{o.current&&clearTimeout(o.current)}),[n]),(0,K.jsxs)(`div`,{className:`fixed bottom-5 left-1/2 -translate-x-1/2 z-50 flex items-center gap-3 px-4 py-2.5 rounded-full border border-[var(--color-line-2)] bg-[var(--color-surface-1)] backdrop-blur-md shadow-lg`,children:[(0,K.jsxs)(`span`,{className:`text-xs text-[var(--color-fg-1)]`,children:[`Silenced `,(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-0)]`,children:t})]}),(0,K.jsx)(`button`,{type:`button`,disabled:i,onClick:async()=>{a(!0),await r(),n()},className:`text-[11px] font-mono uppercase tracking-wider px-2.5 py-1 rounded-full border border-[var(--color-brand)]/40 text-[var(--color-brand)] hover:bg-[var(--color-brand)]/10 cursor-pointer disabled:opacity-50`,"aria-label":`Undo silencing ${e}`,children:`undo`}),(0,K.jsx)(`button`,{type:`button`,onClick:n,className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer`,"aria-label":`Dismiss`,children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,children:[(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`}),(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`})]})})]})}function Wl({target:e,onClose:t,onConfirm:n}){let[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(null);return(0,_.useEffect)(()=>{o(null)},[e]),e?(0,K.jsxs)(jl,{open:!!e,onClose:t,size:`sm`,title:`Silence this rule?`,subtitle:`It won't ask for approval again until you re-enable it on the Rules page.`,footer:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--secondary`,disabled:r,onClick:t,children:`Cancel`}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,style:{"--tone":`#ff6f6f`},disabled:r,onClick:async()=>{i(!0),o(null);let r=await n(e);if(i(!1),!r.ok){o(r.message??`Could not silence rule.`);return}t()},children:r?`Silencing…`:`Disable rule`})]}),children:[(0,K.jsxs)(`div`,{className:`ss-list`,children:[(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},children:(0,K.jsxs)(`div`,{style:{flex:1,minWidth:0},children:[(0,K.jsx)(`div`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-1`,children:`rule`}),(0,K.jsx)(`div`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`code`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] block mt-1 break-all`,children:e.ruleId})})]})}),(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},children:(0,K.jsxs)(`div`,{style:{flex:1,minWidth:0},children:[(0,K.jsx)(`div`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-1`,children:`recent activity`}),(0,K.jsxs)(`div`,{className:`text-sm text-[var(--color-fg-1)]`,children:[`Triggered`,` `,(0,K.jsx)(`strong`,{className:`text-[var(--color-fg-0)] tabular-nums`,children:e.fireCount}),` `,e.fireCount===1?`time`:`times`,` in the last 24 hours.`]})]})})]}),(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-3 leading-relaxed`,children:[`Disabling a rule is fully reversible — head to`,` `,(0,K.jsx)(`a`,{href:`/rules`,className:`text-[var(--color-brand)] hover:underline`,children:`Rules`}),` `,`to switch it back on.`]}),a&&(0,K.jsx)(`p`,{className:`mt-3 text-xs text-red-300`,role:`alert`,children:a})]}):null}function Gl(){let e=ke([`pending-changed`,`rules-changed`]),{data:t,refetch:n}=V(`/api/json/pending`,[e[`pending-changed`]]),{data:r}=V(`/api/json/approvals`,[e[`pending-changed`]]),[i,a]=(0,_.useState)(`all`),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(new Set),[u,d]=(0,_.useState)(null),[f,p]=(0,_.useState)(null),m=(0,_.useMemo)(()=>Vl(r??[],t??[]),[r,t]),h=(0,_.useMemo)(()=>{let e=new Map;for(let t of m)e.set(t.ruleId,t.count);return e},[m]),g=Math.floor(Date.now()/1e3),v=(r??[]).filter(e=>e.created_at>=g-86400).length,y=(r??[]).reduce((e,t)=>(e[t.decision]=(e[t.decision]??0)+1,e),{}),b=(r??[]).filter(e=>{if(i!==`all`&&e.decision!==i)return!1;if(o){let t=o.toLowerCase(),n=Rl(e.input).toLowerCase();if(!e.tool.toLowerCase().includes(t)&&!e.rule_id.toLowerCase().includes(t)&&!(e.rule_message??``).toLowerCase().includes(t)&&!n.includes(t))return!1}return!0});function x(e){l(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}async function S(e){let t=await Ll(e.ruleId,!1);return t.error||t.ok===!1?{ok:!1,message:t.error??`Server rejected the request.`}:(e.pendingId&&await Il(e.pendingId,`block`),p({ruleId:e.ruleId,ruleMessage:e.ruleMessage}),n(),{ok:!0})}async function C(e){await Ll(e,!0),n()}return(0,K.jsxs)(`div`,{className:`space-y-6`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`approvals`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-1 font-mono`,children:`approve or deny pending tool calls · review past decisions · silence noisy rules`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-5 px-3 py-2.5 rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)]/60`,children:[(0,K.jsx)(Bl,{label:`pending`,value:t?.length??0,tone:`text-amber-300`}),(0,K.jsx)(`span`,{className:`text-[var(--color-line-2)]`,children:`|`}),[`allow`,`block`,`force`,`log`].map(e=>(0,K.jsx)(Bl,{label:e,value:y[e]??0,tone:Pl[e]},e)),(0,K.jsx)(`span`,{className:`text-[var(--color-line-2)]`,children:`|`}),(0,K.jsx)(Bl,{label:`last 24h`,value:v})]}),m.length>0&&(0,K.jsxs)(`section`,{className:`ss-noisy-card`,"aria-label":`Noisy rules`,children:[(0,K.jsxs)(`div`,{className:`ss-noisy-card-head`,children:[(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M12 9v4`}),(0,K.jsx)(`path`,{d:`M12 17h.01`}),(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`})]}),`asking too often · last 24h`]}),m.map(e=>(0,K.jsxs)(`div`,{className:`ss-noisy-row`,children:[(0,K.jsx)(`span`,{className:`ss-noisy-count`,"aria-label":`${e.count} fires`,children:e.count}),(0,K.jsxs)(`div`,{className:`ss-noisy-text`,children:[(0,K.jsx)(`span`,{className:`ss-noisy-title`,children:e.ruleMessage}),(0,K.jsxs)(`span`,{className:`ss-noisy-sub`,children:[(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`code`,{className:`font-mono`,children:e.ruleId})}),(0,K.jsx)(`span`,{style:{margin:`0 6px`},children:`·`}),`last fired `,Hl(e.lastSeen)]})]}),(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger`,onClick:()=>d({ruleId:e.ruleId,ruleMessage:e.ruleMessage,fireCount:e.count}),"aria-label":`Silence rule ${e.ruleId}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Silence`]})]},e.ruleId))]}),t&&t.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`div`,{className:`flex items-center justify-between mb-3`,children:(0,K.jsxs)(`h2`,{className:`overline text-[11px]`,children:[`pending · `,t.length]})}),(0,K.jsx)(`div`,{className:`space-y-2`,children:t.map(e=>{let t=h.get(e.ruleId)??0;return(0,K.jsxs)(q,{className:`border-l-2 border-l-amber-400/60`,children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`text-sm text-[var(--color-fg-0)]`,children:e.ruleMessage}),(0,K.jsxs)(`div`,{className:`flex gap-2 flex-wrap items-center`,children:[(0,K.jsx)(X,{size:`sm`,variant:`primary`,onClick:async()=>{await Il(e.id,`allow`),n()},children:`approve`}),(0,K.jsx)(X,{size:`sm`,variant:`danger`,onClick:async()=>{await Il(e.id,`block`),n()},children:`deny`}),(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger`,onClick:()=>d({ruleId:e.ruleId,ruleMessage:e.ruleMessage,fireCount:t||1,pendingId:e.id}),"aria-label":`Disable rule ${e.ruleId}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Disable rule`]})]})]}),(0,K.jsxs)(Y,{className:`space-y-2 text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex gap-3 flex-wrap items-center`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`tool`}),(0,K.jsx)(`code`,{className:`text-[var(--color-brand)] font-mono`,children:e.toolCall.tool}),(0,K.jsx)(`span`,{className:`overline ml-2`,children:`rule`}),(0,K.jsx)(_l,{ruleId:e.ruleId,children:(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-2)]`,children:e.ruleId})}),t>=3&&(0,K.jsxs)(`span`,{className:`font-mono text-[10px] uppercase tracking-wider px-1.5 py-0.5 rounded-full`,style:{background:`color-mix(in oklab, #ffa657 14%, transparent)`,color:`#ffb27d`,border:`1px solid color-mix(in oklab, #ffa657 28%, transparent)`},title:`Fired ${t} times in the last 24h`,children:[`asks often · `,t,`×`]})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5 shrink-0`,children:`why`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:JSON.stringify(e.toolCall.input,null,2)})]})]},e.id)})})]}),(0,K.jsxs)(`section`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-3 gap-3 flex-wrap`,children:[(0,K.jsx)(`h2`,{className:`overline text-[11px]`,children:`history`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`div`,{className:`flex gap-0.5 rounded-sm border border-[var(--color-line-1)] p-0.5 bg-[var(--color-surface-1)]`,children:Nl.map(e=>(0,K.jsx)(`button`,{onClick:()=>a(e),className:`px-2 py-0.5 rounded-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer ${i===e?`bg-[var(--color-brand)]/10 text-[var(--color-brand)] border border-[var(--color-brand)]/30`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] border border-transparent`}`,children:e},e))}),(0,K.jsx)(`input`,{type:`text`,placeholder:`search tool, rule, command…`,value:o,onChange:e=>s(e.target.value),className:`text-xs font-mono bg-[var(--color-surface-1)] border border-[var(--color-line-1)] rounded-sm px-2.5 py-1 text-[var(--color-fg-1)] placeholder-[var(--color-fg-4)] focus:outline-none focus:border-[var(--color-brand)]/50 w-48`})]})]}),!r||r.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:`no approval history yet`}):b.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] px-4 py-6 text-center text-[11px] font-mono text-[var(--color-fg-3)]`,children:`no results match your filter`}):(0,K.jsx)(q,{children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:b.map(e=>{let t=c.has(e.id),n=Rl(e.input),r=Fl(e.created_at,e.resolved_at);return(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`button`,{onClick:()=>x(e.id),className:`w-full text-left px-3 py-2 hover:bg-[var(--color-surface-2)]/60 transition-colors cursor-pointer flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] text-[10px] w-2.5 shrink-0 mt-1`,children:t?`▼`:`▶`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0 flex flex-col gap-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] whitespace-nowrap tabular-nums`,children:Q(e.resolved_at??e.created_at)}),(0,K.jsx)(sr,{variant:Ml[e.decision]??`gray`,children:e.decision}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-brand)] font-mono`,children:e.tool}),r&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] ml-auto`,children:[`Δ`,r]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-2)] truncate flex-1 min-w-0`,children:e.rule_message||e.rule_id||`—`}),n&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)] font-mono truncate flex-1 min-w-0 hidden md:block`,children:n})]})]})]}),t&&(0,K.jsxs)(`div`,{className:`px-3 pb-3 pt-1 space-y-2 bg-[var(--color-surface-0)]`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1 text-xs font-mono items-center`,children:[(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`rule`}),` `,e.rule_id?(0,K.jsx)(_l,{ruleId:e.rule_id,children:(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.rule_id})}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:`—`})]}),(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`created`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Q(e.created_at)})]}),e.resolved_at&&(0,K.jsxs)(`span`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] uppercase tracking-wider text-[10px]`,children:`resolved`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Q(e.resolved_at)})]}),e.rule_id&&(0,K.jsxs)(`button`,{type:`button`,className:`ss-pill ss-pill--danger ml-auto`,onClick:()=>d({ruleId:e.rule_id,ruleMessage:e.rule_message||e.rule_id,fireCount:h.get(e.rule_id)??1}),"aria-label":`Silence rule ${e.rule_id}`,children:[(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:[(0,K.jsx)(`path`,{d:`M11 5 6 9H2v6h4l5 4z`}),(0,K.jsx)(`line`,{x1:`23`,y1:`9`,x2:`17`,y2:`15`}),(0,K.jsx)(`line`,{x1:`17`,y1:`9`,x2:`23`,y2:`15`})]}),`Silence rule`]})]}),e.prompt&&(0,K.jsxs)(`div`,{className:`text-xs flex gap-2 items-start`,children:[(0,K.jsx)(`span`,{className:`overline pt-0.5 shrink-0`,children:`why`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:e.prompt})]}),(0,K.jsx)(Cc,{children:zl(e.input)})]})]},e.id)})})})]}),(0,K.jsx)(Wl,{target:u,onClose:()=>d(null),onConfirm:S}),f&&(0,K.jsx)(Ul,{ruleId:f.ruleId,ruleMessage:f.ruleMessage,onDismiss:()=>p(null),onUndo:()=>C(f.ruleId)})]})}function Kl(){let{data:e,refetch:t}=V(`/api/json/inspector-targets`),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null),c=(0,_.useRef)(null),l=(0,_.useRef)(1),u=(0,_.useRef)(new Map),d=(0,_.useRef)(new Map),f=(0,_.useCallback)(()=>{let e=c.current;if(c.current=null,e)try{e.close()}catch{}r(!1),a(!1),s(null)},[]),p=(0,_.useCallback)(e=>{c.current&&f(),a(!0),s(null);let t=new WebSocket(`/ws/inspector?target=${encodeURIComponent(e)}`);c.current=t,t.onopen=()=>{r(!0),a(!1),s(null)},t.onclose=()=>{c.current=null,r(!1),a(!1)},t.onerror=()=>{a(!1),s(`Connection failed — is the inspector running with the correct target ID?`)},t.onmessage=e=>{try{let t=JSON.parse(e.data);if(t.id!=null){let e=u.current.get(t.id);e&&(u.current.delete(t.id),e(t.result))}else if(t.method){let e=d.current.get(t.method);if(e)for(let n of e)n(t.params)}}catch{}}},[f]),m=(0,_.useCallback)((e,t)=>new Promise((n,r)=>{let i=c.current;if(!i||i.readyState!==WebSocket.OPEN){r(Error(`Not connected`));return}let a=l.current++;u.current.set(a,e=>n(e)),i.send(JSON.stringify({id:a,method:e,params:t})),setTimeout(()=>{u.current.has(a)&&(u.current.delete(a),r(Error(`Command timed out`)))},1e4)}),[]),h=(0,_.useCallback)((e,t)=>{let n=d.current.get(e);return n||(n=new Set,d.current.set(e,n)),n.add(t),()=>{d.current.get(e)?.delete(t)}},[]),g=(0,_.useRef)(!1);return(0,_.useEffect)(()=>{e?.active&&e?.target&&!n&&!i&&!g.current&&(g.current=!0,p(e.target.id))},[e?.active,e?.target?.id,n,i,p]),(0,_.useEffect)(()=>()=>{f()},[f]),{active:e?.active??!1,bunVersion:e?.version?.[`Bun-Version`]??null,preconfiguredTarget:e?.target??null,connected:n,connecting:i,error:o,connect:p,disconnect:f,sendCommand:m,onEvent:h,refetch:t}}var ql=18,Jl=5e-4;function Yl(e,t){return t===`(garbage collector)`||t===`(idle)`?`#450a0a`:e?e.startsWith(`node:`)||e.startsWith(`bun:`)?`#172554`:e.startsWith(`file:`)||e.startsWith(`/`)||e.includes(`.ts`)||e.includes(`.js`)?`#451a03`:`#1f2937`:`#1f2937`}function Xl(e,t){return t===`(garbage collector)`||t===`(idle)`?`#fca5a5`:e?e.startsWith(`node:`)||e.startsWith(`bun:`)?`#93c5fd`:e.startsWith(`file:`)||e.startsWith(`/`)||e.includes(`.ts`)||e.includes(`.js`)?`#fbbf24`:`#6b7280`:`#6b7280`}function Zl(e,t){let n=new Map;for(let t of e.nodes)n.set(t.id,t);let r=new Map;function i(e){let t=n.get(e);if(!t)return 0;let a=t.hitCount??0;for(let e of t.children??[])a+=i(e);return r.set(e,a),a}let a=e.nodes[0];if(!a)return[];i(a.id);let o=t??a.id,s=r.get(o)??0;if(s===0)return[];let c=[];function l(e,t,i){let a=n.get(e);if(!a)return;let o=r.get(e)??0,u=o/s;if(u<Jl)return;c.push({x:i,width:u,depth:t,node:a,subtreeHits:o});let d=i;for(let e of a.children??[]){let n=(r.get(e)??0)/s;l(e,t+1,d),d+=n}}return l(o,0,0),c}function Ql(e){return e<1e3?`${e}µs`:e<1e6?`${(e/1e3).toFixed(1)}ms`:`${(e/1e6).toFixed(2)}s`}function $l({profile:e}){let t=(0,_.useRef)(null),[n,r]=(0,_.useState)(800),[i,a]=(0,_.useState)(null),[o,s]=(0,_.useState)(null);(0,_.useEffect)(()=>{let e=t.current;if(!e)return;let n=new ResizeObserver(e=>{let t=e[0]?.contentRect.width;t&&r(t)});return n.observe(e),r(e.clientWidth||800),()=>n.disconnect()},[]);let c=Zl(e,i),l=(c.reduce((e,t)=>Math.max(e,t.depth),0)+1)*ql+4,u=e.endTime-e.startTime,d=(0,_.useCallback)(e=>{a(t=>t===e.node.id?null:e.node.id),s(null)},[]);return c.length===0?(0,K.jsx)(`p`,{className:`text-xs text-[#555] py-2`,children:`No samples — profile may be empty.`}):(0,K.jsxs)(`div`,{className:`relative select-none`,children:[i!==null&&(0,K.jsx)(`button`,{onClick:()=>a(null),className:`mb-2 text-xs text-amber-400 hover:underline`,children:`← Reset zoom`}),(0,K.jsx)(`div`,{ref:t,className:`overflow-x-hidden`,children:(0,K.jsx)(`svg`,{width:n,height:l,onMouseLeave:()=>s(null),children:c.map((e,t)=>{let r=e.x*n,a=Math.max(e.width*n,1),o=e.depth*ql+1,c=e.node.callFrame.functionName||`(anonymous)`,l=e.node.callFrame.url,f=i===e.node.id;return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(`rect`,{x:r,y:o,width:a,height:ql-1,fill:f?`#92400e`:Yl(l,c),stroke:`#080808`,strokeWidth:.5,style:{cursor:`pointer`},onClick:()=>d(e),onMouseMove:t=>s({clientX:t.clientX,clientY:t.clientY,rect:e,totalDuration:u})}),a>24&&(0,K.jsx)(`text`,{x:r+2,y:o+ql-5,fontSize:9,fill:Xl(l,c),style:{pointerEvents:`none`,userSelect:`none`},clipPath:`url(#fc-clip-${t})`,children:c}),a>24&&(0,K.jsx)(`clipPath`,{id:`fc-clip-${t}`,children:(0,K.jsx)(`rect`,{x:r,y:o,width:a,height:ql})})]},t)})})}),o&&(0,K.jsxs)(`div`,{className:`fixed z-50 bg-[#111] border border-[#2a2a2a] rounded-lg p-2.5 text-xs shadow-xl pointer-events-none`,style:{left:o.clientX+14,top:o.clientY-8,maxWidth:320},children:[(0,K.jsx)(`div`,{className:`font-mono text-amber-400 truncate font-medium`,children:o.rect.node.callFrame.functionName||`(anonymous)`}),o.rect.node.callFrame.url&&(0,K.jsxs)(`div`,{className:`text-[#666] truncate mt-0.5 text-[10px]`,children:[o.rect.node.callFrame.url,`:`,o.rect.node.callFrame.lineNumber]}),(0,K.jsxs)(`div`,{className:`mt-1.5 space-y-0.5 text-[#aaa]`,children:[(0,K.jsxs)(`div`,{children:[`Samples:`,` `,(0,K.jsx)(`span`,{className:`text-white tabular-nums`,children:o.rect.subtreeHits})]}),(0,K.jsxs)(`div`,{children:[`Time share:`,` `,(0,K.jsxs)(`span`,{className:`text-white tabular-nums`,children:[(o.rect.width*100).toFixed(1),`%`]})]}),u>0&&(0,K.jsxs)(`div`,{children:[`Est. duration:`,` `,(0,K.jsx)(`span`,{className:`text-white tabular-nums`,children:Ql(Math.round(o.rect.width*u))})]})]}),o.rect.node.deoptReason&&(0,K.jsxs)(`div`,{className:`text-red-400 mt-1.5 text-[10px]`,children:[`⚠ `,o.rect.node.deoptReason]}),(0,K.jsx)(`div`,{className:`text-[#555] mt-1.5 text-[10px]`,children:`Click to zoom · click again to reset`})]})]})}function eu(e){return e<1e6?`${(e/1e3).toFixed(0)}µs`:e<1e9?`${(e/1e6).toFixed(1)}ms`:`${(e/1e9).toFixed(2)}s`}function tu(e){return new Date(e*1e3).toLocaleString()}var nu={critical:`red`,high:`red`,medium:`amber`,low:`blue`},ru={critical:`border-l-red-500/70`,high:`border-l-red-500/50`,medium:`border-l-amber-400/60`,low:`border-l-sky-400/50`};function iu(){let{data:e}=V(`/api/json/profile`);if(!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading profile…`});let{diagnosis:t,sessions:n}=e;return!t||t.analyzed_evals===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center`,children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] font-mono`,children:[`no eval data yet — run`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg eval`}),` to start recording`]})}):(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsx)(`div`,{className:`grid grid-cols-2 lg:grid-cols-4 gap-2`,children:[{label:`evals analyzed`,value:String(t.analyzed_evals)},{label:`median (inside)`,value:eu(t.median_eval_ns)},{label:`p99 (inside)`,value:eu(t.p99_eval_ns)},{label:`bottleneck`,value:t.bottleneck??`—`}].map(e=>(0,K.jsx)(kc,{label:e.label,value:e.value,labelPlacement:`above`,valueClassName:`text-xl font-medium tabular-nums text-[var(--color-fg-0)]`},e.label))}),t.phases.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`phase breakdown`})}),(0,K.jsx)(Y,{children:(0,K.jsx)(`div`,{className:`space-y-2`,children:t.phases.filter(e=>e.median_ns>0).map(e=>{let n=e.name===t.bottleneck;return(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-xs`,children:[(0,K.jsx)(`span`,{className:`w-28 font-mono truncate ${n?`text-[var(--color-brand)] font-medium`:`text-[var(--color-fg-2)]`}`,title:n?`bottleneck`:void 0,children:e.name}),(0,K.jsx)(jc,{pct:Math.min(e.pct_of_total,100),tone:n?`amber`:`gray`,className:`h-1 flex-1`}),(0,K.jsx)(`span`,{className:`w-16 text-right text-[var(--color-fg-1)] tabular-nums font-mono`,children:eu(e.median_ns)}),(0,K.jsxs)(`span`,{className:`w-10 text-right text-[var(--color-fg-3)] tabular-nums font-mono`,children:[e.pct_of_total,`%`]}),(0,K.jsxs)(`span`,{className:`w-20 text-right text-[var(--color-fg-4)] tabular-nums font-mono text-[10px]`,children:[`p95 `,eu(e.p95_ns)]})]},e.name)})})})]}),t.recommendations.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`recommendations · `,t.recommendations.length]})}),(0,K.jsx)(Y,{className:`space-y-2`,children:t.recommendations.map((e,t)=>(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] bg-[var(--color-surface-0)] rounded-sm px-3 py-2.5 border-l-2 ${ru[e.severity]??`border-l-[var(--color-line-2)]`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1.5`,children:[(0,K.jsx)(sr,{variant:nu[e.severity]??`gray`,children:e.severity}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:e.type})]}),(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-1)] leading-relaxed`,children:e.message}),e.fix_command&&(0,K.jsxs)(`code`,{className:`text-[11px] text-[var(--color-brand)] font-mono mt-1.5 block`,children:[`$ `,e.fix_command]})]},t))})]}),t.anomalies.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`anomalies · `,t.anomalies.length]})}),(0,K.jsx)(Y,{children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:t.anomalies.map((e,t)=>(0,K.jsxs)(`div`,{className:`py-2 flex items-center gap-4 text-xs font-mono`,children:[(0,K.jsx)(`span`,{className:`w-24 text-[var(--color-brand)] uppercase tracking-wider text-[10px]`,children:e.type}),(0,K.jsxs)(`span`,{className:`w-10 tabular-nums text-[var(--color-fg-1)]`,children:[e.count,`×`]}),(0,K.jsxs)(`span`,{className:`w-20 tabular-nums text-[var(--color-fg-1)]`,children:[e.max_ms,`ms max`]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:e.likely_cause})]},t))})})]}),n.length>0&&(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`session history`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[n.length,` session`,n.length===1?``:`s`]})]}),(0,K.jsx)(Y,{className:`p-0`,children:(0,K.jsx)(`div`,{className:`divide-y divide-[var(--color-line-0)]`,children:[...n].reverse().map((e,t)=>(0,K.jsxs)(`div`,{className:`px-4 py-2.5 flex flex-wrap items-center gap-x-5 gap-y-1 text-xs ${e.is_current?`bg-amber-400/[0.04] border-l-2 border-l-amber-400/60`:``}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 w-48 shrink-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums font-mono`,children:tu(e.start_ts)}),e.is_current&&(0,K.jsx)(sr,{variant:`amber`,children:`current`})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-2)] tabular-nums font-mono w-20`,children:[e.evals,` eval`,e.evals===1?``:`s`]}),(0,K.jsxs)(`span`,{className:`text-emerald-300 tabular-nums font-mono`,children:[e.allowed,` allow`]}),e.blocked>0&&(0,K.jsxs)(`span`,{className:`text-red-300 tabular-nums font-mono`,children:[e.blocked,` block (`,e.block_rate_pct,`%)`]}),e.asked>0&&(0,K.jsxs)(`span`,{className:`text-sky-300 tabular-nums font-mono`,children:[e.asked,` ask`]}),e.forced>0&&(0,K.jsxs)(`span`,{className:`text-violet-300 tabular-nums font-mono`,children:[e.forced,` force`]}),e.avg_ns>0&&(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)] tabular-nums ml-auto font-mono`,children:[`avg `,eu(e.avg_ns)]}),e.top_rule&&(0,K.jsxs)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.top_rule)}`,className:`text-[var(--color-fg-4)] hover:text-[var(--color-brand)] font-mono truncate max-w-xs transition-colors w-full pl-48`,title:`most blocked rule: ${e.top_rule}`,children:[`top block: `,e.top_rule]})]},t))})})]})]})}var au={log:`text-[var(--color-fg-1)]`,info:`text-sky-300`,warn:`text-amber-300`,error:`text-red-300`,debug:`text-[var(--color-fg-3)]`};function ou(e){return e.value==null?e.description?e.description:`[${e.type}]`:String(e.value)}function su(){let e=Kl(),[t,n]=(0,_.useState)(!1),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)(null),[l,u]=(0,_.useState)(!1),d=(0,_.useRef)(null),f=(0,_.useRef)(0);(0,_.useEffect)(()=>{d.current?.scrollIntoView({behavior:`smooth`})},[a]),(0,_.useEffect)(()=>{if(e.connected)return e.sendCommand(`Runtime.enable`).catch(()=>{}),e.onEvent(`Runtime.consoleAPICalled`,e=>{let t=e;o(e=>{let n=[...e,{id:f.current++,type:t.type??`log`,args:t.args??[],timestamp:t.timestamp??Date.now()}];return n.length>500?n.slice(-500):n})})},[e.connected]);let p=(0,_.useCallback)(()=>{e.preconfiguredTarget&&e.connect(e.preconfiguredTarget.id)},[e]),m=(0,_.useCallback)(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),i(null)}catch(e){console.error(`Profiler.start failed:`,e)}},[e]),h=(0,_.useCallback)(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch(e){console.error(`Profiler.stop failed:`,e),n(!1)}},[e]),g=(0,_.useCallback)(async()=>{u(!0);try{let t=await e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0});c(JSON.parse(t.result.value))}catch{}finally{u(!1)}},[e]);function v(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/1024/1024).toFixed(1)}MB`}let y=e.connected?`connected${e.bunVersion?` · bun v${e.bunVersion}`:``}`:e.connecting?`connecting…`:e.active?`inspector active, connecting…`:`inspector not available`,b=e.connected?`bg-emerald-400`:e.connecting?`bg-amber-400 pulse-soft`:e.active?`bg-sky-400`:`bg-[var(--color-line-2)]`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full ${b}`}),y]}),e.connected?(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.disconnect,children:`disconnect`}):(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.preconfiguredTarget?p:e.refetch,disabled:e.connecting,children:e.preconfiguredTarget?`reconnect`:`refresh`})]})]}),e.error&&(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:e.error})})]}),e.connected&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu profiler`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300 flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-400 pulse-soft`}),`recording`]}),t?(0,K.jsx)(X,{variant:`danger`,size:`sm`,onClick:h,children:`stop & render`}):(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:m,children:`start recording`})]})]}),(0,K.jsx)(Y,{children:r?(0,K.jsx)(Nc,{profile:r,children:(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 overflow-x-hidden`,children:(0,K.jsx)($l,{profile:r})})}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:t?`recording… perform actions in ssg, then stop.`:`click start recording, perform actions, then stop.`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:g,disabled:l,children:l?`…`:`refresh`})]}),(0,K.jsx)(Y,{children:s?(0,K.jsx)(Pc,{memory:s,formatValue:v}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:`click refresh to fetch process.memoryUsage().`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`console`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:()=>o([]),children:`clear`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 h-56 overflow-y-auto font-mono text-[11px]`,children:[a.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`console output will appear here…`}):a.map(e=>(0,K.jsxs)(`div`,{className:`py-0.5 border-b border-[var(--color-line-0)] ${au[e.type]??`text-[var(--color-fg-1)]`}`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] mr-2 uppercase tracking-wider`,children:[`[`,e.type,`]`]}),e.args.map(ou).join(` `)]},e.id)),(0,K.jsx)(`div`,{ref:d})]})})]})]}),!e.connected&&!e.connecting&&(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-1)]/50 px-4 py-6 text-center`,children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:e.active?`waiting for inspector connection…`:`inspector auto-starts with ssg serve. profiler, memory, and console appear here once connected.`})})]})}function cu({active:e,onClick:t,children:n}){return(0,K.jsxs)(`button`,{onClick:t,className:`relative px-3 h-9 text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer ${e?`text-[var(--color-fg-0)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,children:[n,e&&(0,K.jsx)(`span`,{className:`absolute inset-x-2 -bottom-px h-px bg-[var(--color-brand)]`})]})}function lu(){let[e,t]=(0,_.useState)(`eval`);return(0,K.jsxs)(`div`,{className:`space-y-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center border-b border-[var(--color-line-0)] mb-5`,children:[(0,K.jsx)(cu,{active:e===`eval`,onClick:()=>t(`eval`),children:`eval profile`}),(0,K.jsx)(cu,{active:e===`inspector`,onClick:()=>t(`inspector`),children:`runtime inspector`})]}),e===`eval`?(0,K.jsx)(iu,{}):(0,K.jsx)(su,{})]})}var uu=`ssg:ui:mode:v1`,du=`ssg:ui:mode:seeded`,fu=`ssg:ui-mode-change`,pu=new Set([`professional`,`enterprise`,`agent-dev`]);function mu(){try{let e=localStorage.getItem(uu);if(e===`newcomer`||e===`pro`)return e}catch{}return null}function hu(e){try{localStorage.setItem(uu,e)}catch{}}async function gu(){if(mu()===null){try{if(localStorage.getItem(du))return;localStorage.setItem(du,`1`)}catch{return}try{let e=await fetch(`/api/json/wizard-state`);if(!e.ok){hu(`newcomer`);return}let t=await e.json(),n=pu.has(t.profile??``)?`pro`:`newcomer`;hu(n),window.dispatchEvent(new CustomEvent(fu,{detail:n}))}catch{hu(`newcomer`)}}}function _u(){let[e,t]=(0,_.useState)(()=>mu()??`newcomer`);return(0,_.useEffect)(()=>{gu().then(()=>{let n=mu();n&&n!==e&&t(n)});let n=e=>{let n=e.detail;(n===`newcomer`||n===`pro`)&&t(n)};return window.addEventListener(fu,n),()=>window.removeEventListener(fu,n)},[]),{mode:e,setMode:(0,_.useCallback)(e=>{t(e),hu(e),window.dispatchEvent(new CustomEvent(fu,{detail:e}))},[])}}var vu=[{id:`safe-writes`,title:`Protect your files from accidents`,plainDescription:`Asks before AI overwrites or erases anything important — so you stay in control of what changes.`,example:`If AI tries to overwrite a config file, you get to approve it first.`,hubRulesetId:`safe-writes`,scenario:`any`,emoji:`🛡️`,details:{protects:[`Asks first before editing project manifests & lockfiles — package.json, Cargo.toml, go.mod, and friends`,`Asks first before editing shell startup files — .bashrc, .zshrc, .profile`,`Asks first before editing git config or git hooks`,`Asks first before editing CI / build pipeline files`,`Asks first before editing AI-agent instruction files — CLAUDE.md, .cursorrules, AGENTS.md`],tryThis:`Ask your AI to add a dependency to package.json. Instead of saving silently, it pauses for your approval first.`}},{id:`no-destructive-fs`,title:`Stop AI from erasing files`,plainDescription:`Blocks the kind of filesystem operations that can permanently delete your work.`,example:`If AI tries to wipe a folder, SSG blocks it automatically.`,hubRulesetId:`no-destructive-fs`,scenario:`coding`,emoji:`🗑️`,details:{protects:[`Blocks recursive force-deletes that can wipe an entire directory tree in a single command`,`Blocks bulk deletes through find with delete or exec-remove predicates`,`Blocks disk-wipe, format & partition tools — dd, mkfs, shred, fdisk`,`Blocks Windows recursive deletes — Remove-Item with Recurse, rmdir /s, del /s`,`Blocks git clean with its force flags, which erases untracked and ignored files alike`],tryThis:`Ask your AI to recursively delete a throwaway folder. The attempt is blocked outright — it never reaches your shell.`}},{id:`secrets-guard`,title:`Keep secrets and credentials safe`,plainDescription:`Watches for AI trying to read or write your passwords, API keys, and private keys.`,example:`Reading your .env file, SSH keys, or .netrc triggers an approval request.`,hubRulesetId:`secrets-guard`,scenario:`any`,emoji:`🔑`,details:{protects:[`Blocks reading .env files`,`Blocks reading private keys, SSH keys, .netrc & .pgpass`,`Blocks reading cloud credential stores — AWS, GCP, Azure, kube, docker`,`Blocks dumping secret files through cat / head / tail / type`,`Blocks writing hardcoded API keys — AWS, Anthropic, OpenAI — into source`,`Blocks writing PEM private keys into source files`],tryThis:`Ask your AI to read your .env file. The read is blocked, so the contents never land in the chat transcript.`}},{id:`email-guardrails`,title:`Ask before AI sends emails`,plainDescription:`Makes sure AI never sends a message on your behalf without your explicit OK.`,example:`Any outbound email action is queued for your approval before it goes.`,hubRulesetId:`email-guardrails`,scenario:`knowledge-work`,emoji:`📧`,details:{protects:[`Asks first before local mail commands — mail, sendmail, mutt, msmtp`,`Asks first before curl is used to talk SMTP directly`,`Asks first before calls to transactional-email APIs — SendGrid, Mailgun, Postmark, Resend, SES, and more`],tryThis:`Ask your AI to send a quick test email. It pauses and asks you to confirm the recipient and body before anything goes out.`}},{id:`no-paid-apis`,title:`Block surprise charges from paid APIs`,plainDescription:`Blocks AI from calling APIs that can rack up unexpected bills — cloud storage, AI providers, payment services.`,example:`A call to OpenAI, AWS S3, or Stripe triggers a block until you allow it.`,hubRulesetId:`no-paid-apis`,scenario:`any`,emoji:`💳`,details:{protects:[`Asks first before calls to paid LLM APIs — OpenAI, Anthropic, Groq, Bedrock, and more`,`Asks first before payment APIs — Stripe, PayPal, Square, Adyen`,`Asks first before SMS / voice APIs — Twilio, Vonage, MessageBird`,`Asks first before cloud-storage writes — aws s3 cp/sync, gsutil, az storage`],tryThis:`Ask your AI to call the OpenAI API. It checks with you before sending — so a runaway loop cannot quietly rack up spend.`}},{id:`read-only-mode`,title:`Read-only mode (maximum safety)`,plainDescription:`AI can look but not touch — all write operations are blocked. Great when you just want to explore safely.`,example:`AI can read your codebase and answer questions but cannot change any files.`,hubRulesetId:`read-only`,scenario:`any`,emoji:`🔒`,details:{protects:[`Blocks every file write and edit`,`Blocks state-changing shell commands — file deletes & moves, package installs, sudo, docker, kubectl, terraform`,`Blocks shell redirection that writes to disk`,`Blocks git commands that change state — commit, push, reset, checkout`,`Blocks network requests that are not GET — no POST, PUT, PATCH, DELETE`],tryThis:`Ask your AI to edit any file. Every write is refused until you remove this pack — but reading code and answering questions still works.`}}];function yu(e){return e?vu.filter(t=>t.scenario===`any`||t.scenario===e):vu}function bu({pack:e,installed:t,state:n,expanded:r,onInstall:i,onUninstall:a,onToggleDetails:o}){let s=n!==`idle`;return(0,K.jsxs)(`div`,{className:`ss-list-row ss-list-row--pack`,style:{cursor:`default`,background:t?`linear-gradient(180deg, color-mix(in oklab, var(--color-hig-green) 8%, transparent) 0%, transparent 60%), var(--color-surface-1)`:`var(--color-surface-1)`,borderColor:t?`color-mix(in oklab, var(--color-hig-green) 28%, var(--color-line-1))`:`var(--color-line-1)`},children:[(0,K.jsxs)(`div`,{className:`ss-pack-main`,children:[(0,K.jsx)(`span`,{className:`ss-pack-emoji`,"aria-hidden":`true`,children:e.emoji}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`h3`,{className:`ss-pack-title`,children:e.title}),t&&(0,K.jsxs)(`span`,{className:`agent-badge agent-badge--detected`,title:`This pack is currently active.`,children:[(0,K.jsx)(`span`,{className:`agent-badge-dot`}),`Installed`]})]}),(0,K.jsx)(`p`,{className:`ss-pack-desc`,children:e.plainDescription}),(0,K.jsxs)(`p`,{className:`ss-pack-example`,children:[(0,K.jsx)(`span`,{className:`ss-pack-example__label`,children:`Example`}),e.example]}),(0,K.jsx)(`button`,{type:`button`,className:`ss-pack-detail-toggle`,"aria-expanded":r,onClick:()=>o(e.id),children:r?`Hide details`:t?`What this is doing →`:`What's inside →`})]}),(0,K.jsx)(`div`,{className:`ss-pack-action`,children:t?(0,K.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>a(e.id),className:`ss-btn ss-btn--secondary`,style:{height:30,padding:`0 12px`,fontSize:11},title:`Remove this pack from your machine.`,children:n===`uninstalling`?`Removing…`:`Remove`}):(0,K.jsx)(`button`,{type:`button`,disabled:s,onClick:()=>i(e.id),className:`ss-btn ss-btn--primary`,style:{height:30,padding:`0 14px`,fontSize:11},title:`Install this guardrail pack.`,children:n===`installing`?`Installing…`:`Install`})})]}),r&&(0,K.jsxs)(`div`,{className:`ss-pack-detail`,children:[(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:t?`Installed`:`What gets installed`}),(0,K.jsxs)(`p`,{className:`ss-pack-detail__text`,children:[(0,K.jsxs)(`code`,{children:[e.hubRulesetId,`.rules`]}),` — one plain-text rules file`,t?` now living in `:`, written to `,`your `,(0,K.jsx)(`code`,{children:`.sigmashake/rules/`}),` folder.`,` `,t?`It's active right away — no restart needed.`:`Installing adds just this one file; removing the pack deletes it.`]})]}),(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:`What it does`}),(0,K.jsx)(`ul`,{className:`ss-pack-detail__list`,children:e.details.protects.map(e=>(0,K.jsx)(`li`,{children:e},e))})]}),(0,K.jsxs)(`div`,{className:`ss-pack-detail__section`,children:[(0,K.jsx)(`span`,{className:`ss-pack-detail__label`,children:`See it working`}),(0,K.jsx)(`p`,{className:`ss-pack-detail__text`,children:e.details.tryThis}),(0,K.jsxs)(`p`,{className:`ss-pack-detail__hint`,children:[`Every block and approval prompt is logged on the`,` `,(0,K.jsx)(`a`,{href:`/audit`,children:`Activity`}),` page. To fire a rule on purpose without leaving the dashboard, open `,(0,K.jsx)(`a`,{href:`/try`,children:`Try It`}),`.`]})]})]})]})}function xu(){let e=new URLSearchParams(window.location.search).get(`starter`),t=yu(e),[n,r]=(0,_.useState)(new Set),[i,a]=(0,_.useState)({}),[o,s]=(0,_.useState)(new Set),[c,l]=(0,_.useState)(null);function u(e){s(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})}(0,_.useEffect)(()=>{let e=!1;return fetch(`/api/json/hub/installed`).then(e=>e.json()).then(t=>{e||r(new Set(t.installed))}).catch(()=>{}),()=>{e=!0}},[]);function d(e,t){l({msg:e,type:t}),setTimeout(()=>l(null),5e3)}async function f(){try{let e=await(await fetch(`/api/json/hub/installed`)).json();r(new Set(e.installed))}catch{}}async function p(e){let t=vu.find(t=>t.id===e);if(t){a(t=>({...t,[e]:`installing`}));try{let n=await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:t.hubRulesetId})}),i=await n.text(),a=n.headers.get(`Content-Type`)??``,o=null;if(a.includes(`application/json`))try{o=JSON.parse(i)}catch{}o?.ok?(r(e=>new Set([...e,t.hubRulesetId])),s(t=>new Set([...t,e])),d(o.already_installed?`${t.title} — already installed`:`${t.title} — installed`,`ok`)):d(o?o.error??`Could not install ${t.title}`:i.replace(/<[^>]+>/g,``).trim()||`Could not install ${t.title} (HTTP ${n.status})`,`error`)}catch(e){d(`Could not reach the dashboard server (${e instanceof Error?e.message:String(e)})`,`error`)}finally{a(t=>({...t,[e]:`idle`})),f()}}}async function m(e){let t=vu.find(t=>t.id===e);if(t&&window.confirm(`Remove “${t.title}”?\n\nThe rules in this pack stop applying. You can install it again any time.`)){a(t=>({...t,[e]:`uninstalling`}));try{let e=await fetch(`/api/hub/uninstall`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:t.hubRulesetId})}),n=await e.text(),i=e.headers.get(`Content-Type`)??``,a=null;if(i.includes(`application/json`))try{a=JSON.parse(n)}catch{}a?.ok||e.ok&&!a?(r(e=>{let n=new Set(e);return n.delete(t.hubRulesetId),n}),d(`${t.title} — removed`,`ok`)):d(a?a.error??`Could not remove ${t.title}`:n.replace(/<[^>]+>/g,``).trim()||`Could not remove ${t.title} (HTTP ${e.status})`,`error`)}catch(e){d(`Could not reach the dashboard server (${e instanceof Error?e.message:String(e)})`,`error`)}finally{a(t=>({...t,[e]:`idle`})),f()}}}let h={coding:`for coding with AI`,"knowledge-work":`for email and docs`},g=t.filter(e=>n.has(e.hubRulesetId)).length;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid var(--color-line-1)`,background:`var(--color-surface-1)`},children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:8},children:`Guardrails`}),(0,K.jsxs)(`h1`,{className:`text-[18px] font-semibold text-[var(--color-fg-0)] tracking-tight`,children:[`One-tap protection`,e&&h[e]?` ${h[e]}`:``]}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-1.5 leading-relaxed`,children:[`Each pack is a small set of rules that guard against a specific AI risk. Toggle them on and off — installing or removing only touches rule files in `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`.sigmashake/`}),`.`]}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-3`,children:[g,` of `,t.length,` active`]})]}),c&&(0,K.jsx)(`div`,{className:`rounded-xl px-4 py-2.5 text-[12px]`,style:{border:`1px solid ${c.type===`ok`?`color-mix(in oklab, var(--color-hig-green) 36%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 36%, transparent)`}`,background:c.type===`ok`?`color-mix(in oklab, var(--color-hig-green) 12%, var(--color-surface-1))`:`color-mix(in oklab, var(--color-hig-red) 12%, var(--color-surface-1))`,color:c.type===`ok`?`var(--color-hig-green)`:`var(--color-hig-red)`,backdropFilter:`saturate(180%) blur(10px)`},children:c.msg}),(0,K.jsx)(`div`,{className:`ss-list`,children:t.map(e=>(0,K.jsx)(bu,{pack:e,installed:n.has(e.hubRulesetId),state:i[e.id]??`idle`,expanded:o.has(e.id),onInstall:p,onUninstall:m,onToggleDetails:u},e.id))}),(0,K.jsx)(`div`,{className:`rounded-xl p-4`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:[`Want more control? The`,` `,(0,K.jsx)(`a`,{href:`/hub`,className:`text-[var(--color-brand)] hover:underline`,children:`advanced library`}),` `,`has the full set of community rulesets and lets you preview every rule before installing.`]})})]})}function Su(e){return e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}k`:String(e)}function Cu(e){let t=e;if(t.endsWith(`/.sigmashake/rules`)&&(t=t.slice(0,-18)),t.endsWith(`\\.sigmashake\\rules`)&&(t=t.slice(0,-18)),t.startsWith(`/home/`)){let e=t.slice(6),n=e.indexOf(`/`);return n>=0?`~/${e.slice(n+1)}`:`~`}if(t.startsWith(`C:\\Users\\`)){let e=t.slice(9),n=e.indexOf(`\\`);return n>=0?`~\\${e.slice(n+1)}`:`~`}if(t.length>40){let e=t.split(/[/\\]/);if(e.length>2)return`…/${e[e.length-1]}`}return t}var wu=[{value:`downloads`,label:`most downloaded`},{value:`newest`,label:`newest`},{value:`rules`,label:`most rules`}],Tu=[``,`critical`,`high`,`medium`,`low`],Eu=[``,`deny`,`ask`,`allow`,`log`];function Du(){return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-1)] p-4 space-y-3 shimmer`,children:[(0,K.jsx)(`div`,{className:`h-4 bg-[var(--color-surface-3)] rounded-sm w-2/3`}),(0,K.jsx)(`div`,{className:`h-3 bg-[var(--color-surface-2)] rounded-sm w-1/3`}),(0,K.jsxs)(`div`,{className:`flex gap-1.5`,children:[(0,K.jsx)(`div`,{className:`h-5 bg-[var(--color-surface-3)] rounded-sm w-14`}),(0,K.jsx)(`div`,{className:`h-5 bg-[var(--color-surface-3)] rounded-sm w-10`})]}),(0,K.jsx)(`div`,{className:`h-7 bg-[var(--color-surface-3)] rounded-sm`})]})}function Ou({tech:e}){return(0,K.jsx)(`span`,{className:`inline-flex items-center px-1.5 py-0.5 rounded-sm text-[10px] font-mono uppercase tracking-wider border ${{typescript:`bg-sky-500/8 text-sky-300 border-sky-500/25`,ts:`bg-sky-500/8 text-sky-300 border-sky-500/25`,javascript:`bg-amber-500/8 text-amber-300 border-amber-500/25`,js:`bg-amber-500/8 text-amber-300 border-amber-500/25`,python:`bg-emerald-500/8 text-emerald-300 border-emerald-500/25`,rust:`bg-orange-500/8 text-orange-300 border-orange-500/25`,go:`bg-cyan-500/8 text-cyan-300 border-cyan-500/25`,bash:`bg-violet-500/8 text-violet-300 border-violet-500/25`}[e.toLowerCase()]??`bg-[var(--color-surface-2)] text-[var(--color-fg-3)] border-[var(--color-line-1)]`}`,children:e})}function ku({install:e,onRemove:t,removing:n}){let r=Cu(e.path),i=e.in_sync?`bg-emerald-400`:`bg-amber-400 animate-pulse`;return(0,K.jsxs)(`div`,{className:`group/chip inline-flex items-center gap-1.5 max-w-full pl-1.5 pr-0.5 py-0.5 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)] text-[10px] font-mono text-[var(--color-fg-2)]`,title:e.in_sync?`In sync — files present in ${e.path}`:`Drift — ${e.drift_reason??`files missing or empty`} (${e.path})`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 ${i}`,"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`truncate`,title:e.path,children:r}),(0,K.jsx)(`button`,{type:`button`,onClick:r=>{r.preventDefault(),r.stopPropagation(),n||t(e.path)},disabled:n,title:`Remove from this location`,"aria-label":`Uninstall from ${e.path}`,className:`shrink-0 inline-flex items-center justify-center w-4 h-4 rounded-sm text-[var(--color-fg-4)] hover:text-red-300 hover:bg-red-500/10 transition-colors cursor-pointer disabled:opacity-40 disabled:cursor-not-allowed`,children:n?(0,K.jsx)(`svg`,{className:`animate-spin`,width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}):(0,K.jsxs)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]})}function Au({isInstalling:e,hasInstalls:t,onInstallDefault:n,onPickPath:r}){let[i,a]=(0,_.useState)(!1),o=(0,_.useRef)(null);return(0,_.useEffect)(()=>{if(!i)return;function e(e){o.current&&(o.current.contains(e.target)||a(!1))}return document.addEventListener(`mousedown`,e),()=>document.removeEventListener(`mousedown`,e)},[i]),(0,K.jsxs)(`div`,{ref:o,className:`relative flex w-full`,children:[(0,K.jsx)(`button`,{onClick:e=>{e.preventDefault(),e.stopPropagation(),n()},disabled:e,className:`flex-1 h-7 rounded-l-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer
11
11
  bg-[var(--color-brand)]/8 text-[var(--color-brand)] border border-[var(--color-brand)]/30 border-r-0
12
12
  hover:bg-[var(--color-brand)]/15 hover:border-[var(--color-brand)]/50
13
13
  disabled:opacity-40 disabled:cursor-not-allowed`,children:e?(0,K.jsxs)(`span`,{className:`flex items-center justify-center gap-1.5`,children:[(0,K.jsx)(`svg`,{className:`animate-spin`,width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}),`installing…`]}):t?`install elsewhere`:`install`}),(0,K.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a(e=>!e)},disabled:e,title:`Install to another folder`,"aria-label":`Install to a custom folder`,className:`shrink-0 w-7 h-7 rounded-r-sm flex items-center justify-center cursor-pointer
14
14
  bg-[var(--color-brand)]/8 text-[var(--color-brand)] border border-[var(--color-brand)]/30
15
15
  hover:bg-[var(--color-brand)]/15 hover:border-[var(--color-brand)]/50
16
- disabled:opacity-40 disabled:cursor-not-allowed`,children:(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`polyline`,{points:`6 9 12 15 18 9`})})}),i&&(0,K.jsxs)(`div`,{className:`absolute z-20 bottom-full right-0 mb-1 min-w-[180px] rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-2)] shadow-lg overflow-hidden`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a(!1),n()},className:`w-full text-left px-3 py-2 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:bg-[var(--color-surface-3)] cursor-pointer`,children:`default rules dir`}),(0,K.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a(!1),r()},className:`w-full text-left px-3 py-2 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:bg-[var(--color-surface-3)] cursor-pointer border-t border-[var(--color-line-1)]`,children:`pick folder…`})]})]})}function Ru({rs:e,installs:t,installingId:n,uninstallingKey:r,onInstall:i,onUninstall:a,onPickAndInstall:o,flashId:s}){let c=n===e.id,l=s===e.id,u=t.length,d=t.some(e=>!e.in_sync);return(0,K.jsxs)(`div`,{className:`group relative flex flex-col rounded-sm border bg-[var(--color-surface-1)] transition-colors overflow-hidden
16
+ disabled:opacity-40 disabled:cursor-not-allowed`,children:(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`polyline`,{points:`6 9 12 15 18 9`})})}),i&&(0,K.jsxs)(`div`,{className:`absolute z-20 bottom-full right-0 mb-1 min-w-[180px] rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-2)] shadow-lg overflow-hidden`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a(!1),n()},className:`w-full text-left px-3 py-2 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:bg-[var(--color-surface-3)] cursor-pointer`,children:`default rules dir`}),(0,K.jsx)(`button`,{type:`button`,onClick:e=>{e.preventDefault(),e.stopPropagation(),a(!1),r()},className:`w-full text-left px-3 py-2 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-1)] hover:bg-[var(--color-surface-3)] cursor-pointer border-t border-[var(--color-line-1)]`,children:`pick folder…`})]})]})}function ju({rs:e,installs:t,installingId:n,uninstallingKey:r,onInstall:i,onUninstall:a,onPickAndInstall:o,flashId:s}){let c=n===e.id,l=s===e.id,u=t.length,d=t.some(e=>!e.in_sync);return(0,K.jsxs)(`div`,{className:`group relative flex flex-col rounded-sm border bg-[var(--color-surface-1)] transition-colors overflow-hidden
17
17
  ${d?`border-amber-500/40 hover:border-amber-500/60`:u>0?`border-emerald-500/25 hover:border-emerald-500/40`:`border-[var(--color-line-1)] hover:border-[var(--color-line-2)]`}
18
18
  ${l?`ring-1 ring-emerald-500/40`:``}`,children:[u>0&&(0,K.jsxs)(`div`,{className:`absolute top-2 right-2 z-10 flex items-center gap-1 px-1.5 py-0.5 rounded-sm border text-[10px] font-mono uppercase tracking-wider
19
- ${d?`bg-amber-500/10 border-amber-500/30 text-amber-300`:`bg-emerald-500/10 border-emerald-500/30 text-emerald-300`}`,title:d?`At least one install has drifted from the recorded files`:`All installs are in sync with the database`,children:[d?(0,K.jsxs)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}):(0,K.jsx)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}),u===1?`installed`:`${u}× installed`]}),(0,K.jsxs)(`a`,{href:`/hub/${e.id}`,className:`block p-3 flex-1 min-h-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-2 mb-2`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1 pr-20`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium text-[var(--color-fg-0)] leading-snug`,children:e.title}),e.tested_versions&&e.tested_versions.length>0&&(0,K.jsx)(`span`,{title:`Certified ruleset`,className:`text-[var(--color-brand)] text-[11px]`,children:`★`})]}),(0,K.jsxs)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-0.5 font-mono`,children:[`@`,e.author]})]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] shrink-0 mt-0.5`,children:[`v`,e.version]})]}),e.technologies.length>0&&(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1 mb-3`,children:[e.technologies.slice(0,4).map(e=>(0,K.jsx)(Fu,{tech:e},e)),e.technologies.length>4&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] self-center`,children:[`+`,e.technologies.length-4]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),(0,K.jsx)(`polyline`,{points:`14 2 14 8 20 8`})]}),(0,K.jsx)(`span`,{className:`tabular-nums`,children:e.rule_count}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[10px] text-[var(--color-fg-4)]`,children:`rules`})]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`polyline`,{points:`8 17 12 21 16 17`}),(0,K.jsx)(`line`,{x1:`12`,y1:`12`,x2:`12`,y2:`21`}),(0,K.jsx)(`path`,{d:`M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29`})]}),(0,K.jsx)(`span`,{className:`tabular-nums`,children:ku(e.download_count)})]})]})]}),u>0&&(0,K.jsx)(`div`,{className:`px-3 pb-2 flex flex-wrap gap-1`,children:t.map(t=>(0,K.jsx)(Iu,{install:t,onRemove:t=>a(e.id,t),removing:r===`${e.id}::${t.path}`},t.path))}),(0,K.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:(0,K.jsx)(Lu,{isInstalling:c,hasInstalls:u>0,onInstallDefault:()=>i(e.id),onPickPath:()=>o(e.id)})})]})}function zu(){let{mode:e}=wu();return e===`newcomer`?(0,K.jsx)(Ou,{}):(0,K.jsx)(Bu,{})}function Bu(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(`downloads`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(`all`),[u,d]=(0,_.useState)([]),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(0),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)({}),[x,S]=(0,_.useState)(null),[C,w]=(0,_.useState)(null),[T,E]=(0,_.useState)(null),[D,O]=(0,_.useState)(null),ee=(0,_.useCallback)((t=0)=>{let r=new URLSearchParams({page:String(t)});return e&&r.set(`search`,e),n&&n!==`downloads`&&r.set(`sort`,n),i&&r.set(`decision`,i),o&&r.set(`severity`,o),r},[e,n,i,o]),k=(0,_.useCallback)(async()=>{try{let e=await fetch(`/api/json/hub/installed`);if(!e.ok)return;let t=await e.json(),n={};for(let e of t.installs??[])n[e.id]||(n[e.id]=[]),n[e.id].push(e);b(n)}catch{}},[]);(0,_.useEffect)(()=>{k()},[k]),(0,_.useEffect)(()=>{let e=!1;return v(!0),h(0),fetch(`/api/json/hub?${ee(0)}`).then(e=>e.json()).then(t=>{e||(d(t.data),p(t.has_more),h(0))}).catch(()=>{}).finally(()=>{e||v(!1)}),()=>{e=!0}},[ee]);async function A(){let e=m+1;v(!0);try{let t=await fetch(`/api/json/hub?${ee(e)}`);if(!t.ok)return;let n=await t.json();d(e=>[...e,...n.data]),p(n.has_more),h(e)}catch{}finally{v(!1)}}async function j(){let e=await fetch(`/api/json/hub?${ee(0)}`);if(!e.ok)return;let t=await e.json();d(t.data),p(t.has_more),h(0)}async function te(e,t){S(e);try{let n={id:e};t&&(n.path=t);let r=await(await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify(n)})).json();r.ok?(E(e),setTimeout(()=>E(null),2e3),O({msg:r.already_installed?`${r.title??e} — already installed${r.path?` at ${Au(r.path)}`:``}`:`installed ${r.title??e}${r.path?` → ${Au(r.path)}`:``}`,type:`ok`}),await Promise.all([k(),j()])):O({msg:r.error??`install failed`,type:`error`})}catch(e){O({msg:e instanceof Error?e.message:`network error`,type:`error`})}finally{S(null),setTimeout(()=>O(null),5e3)}}async function ne(e){await te(e)}async function re(e){let t=null;try{let e=await fetch(`/api/json/pick-dir`,{method:`POST`});if(e.ok){let n=await e.json();if(n.ok&&n.path)t=n.path;else if(n.reason===`user_cancelled`)return;else if(n.reason===`no_display`||n.reason===`no_picker_found`){let e=prompt(`Folder picker is unavailable on this host. Type the absolute path to install to:`);e&&e.trim()&&(t=e.trim())}else{O({msg:n.error??`could not open folder picker`,type:`error`}),setTimeout(()=>O(null),5e3);return}}}catch{let e=prompt(`Folder picker is unavailable. Type the absolute path to install to:`);e&&e.trim()&&(t=e.trim())}t&&await te(e,t)}async function M(e,t){w(`${e}::${t}`);try{let n=await(await fetch(`/api/hub/uninstall`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:e,path:t})})).json();n.ok?(O({msg:`removed ${e} from ${Au(t)}`,type:`ok`}),await Promise.all([k(),j()])):O({msg:n.error??`uninstall failed`,type:`error`})}catch(e){O({msg:e instanceof Error?e.message:`network error`,type:`error`})}finally{w(null),setTimeout(()=>O(null),5e3)}}let N=c===`installed`?u.filter(e=>(y[e.id]?.length??0)>0):u,ie=u.filter(e=>(y[e.id]?.length??0)>0).length,ae=`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-2)] text-[11px] font-mono rounded-sm px-2.5 h-8 focus:outline-none focus:border-[var(--color-brand)]/50 cursor-pointer`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`hub`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-1 font-mono`,children:`install community rule packs from hub.sigmashake.com`})]}),(0,K.jsxs)(`a`,{href:`/hub/connect`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] hover:text-[var(--color-brand)] transition-colors border border-[var(--color-line-1)] hover:border-[var(--color-brand)]/40 rounded-sm px-3 h-7`,children:[(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,K.jsx)(`path`,{d:`M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22`})}),`connect github`]})]}),D&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-3 py-2 text-[11px] font-mono border
19
+ ${d?`bg-amber-500/10 border-amber-500/30 text-amber-300`:`bg-emerald-500/10 border-emerald-500/30 text-emerald-300`}`,title:d?`At least one install has drifted from the recorded files`:`All installs are in sync with the database`,children:[d?(0,K.jsxs)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}):(0,K.jsx)(`svg`,{width:`9`,height:`9`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`3`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}),u===1?`installed`:`${u}× installed`]}),(0,K.jsxs)(`a`,{href:`/hub/${e.id}`,className:`block p-3 flex-1 min-h-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-2 mb-2`,children:[(0,K.jsxs)(`div`,{className:`min-w-0 flex-1 pr-20`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium text-[var(--color-fg-0)] leading-snug`,children:e.title}),e.tested_versions&&e.tested_versions.length>0&&(0,K.jsx)(`span`,{title:`Certified ruleset`,className:`text-[var(--color-brand)] text-[11px]`,children:`★`})]}),(0,K.jsxs)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-0.5 font-mono`,children:[`@`,e.author]})]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] shrink-0 mt-0.5`,children:[`v`,e.version]})]}),e.technologies.length>0&&(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1 mb-3`,children:[e.technologies.slice(0,4).map(e=>(0,K.jsx)(Ou,{tech:e},e)),e.technologies.length>4&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] self-center`,children:[`+`,e.technologies.length-4]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z`}),(0,K.jsx)(`polyline`,{points:`14 2 14 8 20 8`})]}),(0,K.jsx)(`span`,{className:`tabular-nums`,children:e.rule_count}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[10px] text-[var(--color-fg-4)]`,children:`rules`})]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsxs)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`polyline`,{points:`8 17 12 21 16 17`}),(0,K.jsx)(`line`,{x1:`12`,y1:`12`,x2:`12`,y2:`21`}),(0,K.jsx)(`path`,{d:`M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29`})]}),(0,K.jsx)(`span`,{className:`tabular-nums`,children:Su(e.download_count)})]})]})]}),u>0&&(0,K.jsx)(`div`,{className:`px-3 pb-2 flex flex-wrap gap-1`,children:t.map(t=>(0,K.jsx)(ku,{install:t,onRemove:t=>a(e.id,t),removing:r===`${e.id}::${t.path}`},t.path))}),(0,K.jsx)(`div`,{className:`px-3 pb-3 pt-0`,children:(0,K.jsx)(Au,{isInstalling:c,hasInstalls:u>0,onInstallDefault:()=>i(e.id),onPickPath:()=>o(e.id)})})]})}function Mu(){let{mode:e}=_u();return e===`newcomer`?(0,K.jsx)(xu,{}):(0,K.jsx)(Nu,{})}function Nu(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(`downloads`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(`all`),[u,d]=(0,_.useState)([]),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(0),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)({}),[x,S]=(0,_.useState)(null),[C,w]=(0,_.useState)(null),[T,E]=(0,_.useState)(null),[D,O]=(0,_.useState)(null),ee=(0,_.useCallback)((t=0)=>{let r=new URLSearchParams({page:String(t)});return e&&r.set(`search`,e),n&&n!==`downloads`&&r.set(`sort`,n),i&&r.set(`decision`,i),o&&r.set(`severity`,o),r},[e,n,i,o]),k=(0,_.useCallback)(async()=>{try{let e=await fetch(`/api/json/hub/installed`);if(!e.ok)return;let t=await e.json(),n={};for(let e of t.installs??[])n[e.id]||(n[e.id]=[]),n[e.id].push(e);b(n)}catch{}},[]);(0,_.useEffect)(()=>{k()},[k]),(0,_.useEffect)(()=>{let e=!1;return v(!0),h(0),fetch(`/api/json/hub?${ee(0)}`).then(e=>e.json()).then(t=>{e||(d(t.data),p(t.has_more),h(0))}).catch(()=>{}).finally(()=>{e||v(!1)}),()=>{e=!0}},[ee]);async function A(){let e=m+1;v(!0);try{let t=await fetch(`/api/json/hub?${ee(e)}`);if(!t.ok)return;let n=await t.json();d(e=>[...e,...n.data]),p(n.has_more),h(e)}catch{}finally{v(!1)}}async function j(){let e=await fetch(`/api/json/hub?${ee(0)}`);if(!e.ok)return;let t=await e.json();d(t.data),p(t.has_more),h(0)}async function te(e,t){S(e);try{let n={id:e};t&&(n.path=t);let r=await(await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify(n)})).json();r.ok?(E(e),setTimeout(()=>E(null),2e3),O({msg:r.already_installed?`${r.title??e} — already installed${r.path?` at ${Cu(r.path)}`:``}`:`installed ${r.title??e}${r.path?` → ${Cu(r.path)}`:``}`,type:`ok`}),await Promise.all([k(),j()])):O({msg:r.error??`install failed`,type:`error`})}catch(e){O({msg:e instanceof Error?e.message:`network error`,type:`error`})}finally{S(null),setTimeout(()=>O(null),5e3)}}async function ne(e){await te(e)}async function re(e){let t=null;try{let e=await fetch(`/api/json/pick-dir`,{method:`POST`});if(e.ok){let n=await e.json();if(n.ok&&n.path)t=n.path;else if(n.reason===`user_cancelled`)return;else if(n.reason===`no_display`||n.reason===`no_picker_found`){let e=prompt(`Folder picker is unavailable on this host. Type the absolute path to install to:`);e&&e.trim()&&(t=e.trim())}else{O({msg:n.error??`could not open folder picker`,type:`error`}),setTimeout(()=>O(null),5e3);return}}}catch{let e=prompt(`Folder picker is unavailable. Type the absolute path to install to:`);e&&e.trim()&&(t=e.trim())}t&&await te(e,t)}async function M(e,t){w(`${e}::${t}`);try{let n=await(await fetch(`/api/hub/uninstall`,{method:`POST`,headers:{"Content-Type":`application/json`,Accept:`application/json`,...B()},body:JSON.stringify({id:e,path:t})})).json();n.ok?(O({msg:`removed ${e} from ${Cu(t)}`,type:`ok`}),await Promise.all([k(),j()])):O({msg:n.error??`uninstall failed`,type:`error`})}catch(e){O({msg:e instanceof Error?e.message:`network error`,type:`error`})}finally{w(null),setTimeout(()=>O(null),5e3)}}let N=c===`installed`?u.filter(e=>(y[e.id]?.length??0)>0):u,ie=u.filter(e=>(y[e.id]?.length??0)>0).length,ae=`bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-2)] text-[11px] font-mono rounded-sm px-2.5 h-8 focus:outline-none focus:border-[var(--color-brand)]/50 cursor-pointer`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`overline text-[11px]`,children:`hub`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] mt-1 font-mono`,children:`install community rule packs from hub.sigmashake.com`})]}),(0,K.jsxs)(`a`,{href:`/hub/connect`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] hover:text-[var(--color-brand)] transition-colors border border-[var(--color-line-1)] hover:border-[var(--color-brand)]/40 rounded-sm px-3 h-7`,children:[(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,K.jsx)(`path`,{d:`M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37 0 0 0-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44 0 0 0 20 4.77 5.07 5.07 0 0 0 19.91 1S18.73.65 16 2.48a13.38 13.38 0 0 0-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07 0 0 0 5 4.77a5.44 5.44 0 0 0-1.5 3.78c0 5.42 3.3 6.61 6.44 7A3.37 3.37 0 0 0 9 18.13V22`})}),`connect github`]})]}),D&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm px-3 py-2 text-[11px] font-mono border
20
20
  ${D.type===`ok`?`bg-emerald-500/5 border-emerald-500/25 text-emerald-300`:`bg-red-500/5 border-red-500/25 text-red-300`}`,children:[(0,K.jsxs)(`span`,{children:[D.type===`ok`?`✓ `:`✗ `,D.msg]}),(0,K.jsx)(`button`,{onClick:()=>O(null),className:`ml-3 opacity-60 hover:opacity-100 cursor-pointer`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center bg-[var(--color-surface-1)] border border-[var(--color-line-1)] rounded-sm p-0.5 shrink-0`,children:[(0,K.jsx)(`button`,{onClick:()=>l(`all`),className:`px-3 h-6 rounded-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer
21
21
  ${c===`all`?`bg-[var(--color-surface-3)] text-[var(--color-fg-0)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,children:`all`}),(0,K.jsxs)(`button`,{onClick:()=>l(`installed`),className:`px-3 h-6 rounded-sm text-[11px] font-mono uppercase tracking-wider transition-colors cursor-pointer flex items-center gap-1.5
22
- ${c===`installed`?`bg-[var(--color-surface-3)] text-[var(--color-fg-0)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,children:[`installed`,ie>0&&(0,K.jsx)(`span`,{className:`text-[9px] bg-emerald-500/15 text-emerald-300 rounded-sm px-1 py-0.5 font-medium tabular-nums`,children:ie})]})]}),(0,K.jsxs)(`div`,{className:`relative flex-1 min-w-[160px]`,children:[(0,K.jsxs)(`svg`,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)]`,width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`input`,{type:`text`,placeholder:`search rulesets…`,value:e,onChange:e=>t(e.target.value),className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-xs rounded-sm pl-8 pr-3 h-8 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsx)(`select`,{value:n,onChange:e=>r(e.target.value),className:ae,children:ju.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,K.jsxs)(`select`,{value:i,onChange:e=>a(e.target.value),className:ae,children:[(0,K.jsx)(`option`,{value:``,children:`any decision`}),Nu.filter(Boolean).map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]}),(0,K.jsxs)(`select`,{value:o,onChange:e=>s(e.target.value),className:ae,children:[(0,K.jsx)(`option`,{value:``,children:`any severity`}),Mu.filter(Boolean).map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),g&&u.length===0?(0,K.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:Array.from({length:6}).map((e,t)=>(0,K.jsx)(Pu,{},t))}):N.length===0?(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] py-16 flex flex-col items-center justify-center text-center`,children:[(0,K.jsxs)(`svg`,{className:`text-[var(--color-fg-4)] mb-3`,width:`36`,height:`36`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`p`,{className:`text-xs font-mono text-[var(--color-fg-3)] uppercase tracking-wider`,children:c===`installed`?`no rulesets installed yet — browse and click install`:`no rulesets found${e?` matching "${e}"`:``}`})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:N.map(e=>(0,K.jsx)(Ru,{rs:e,installs:y[e.id]??[],installingId:x,uninstallingKey:C,onInstall:ne,onUninstall:M,onPickAndInstall:re,flashId:T},e.id))}),f&&c===`all`&&(0,K.jsx)(`div`,{className:`flex justify-center pt-2`,children:(0,K.jsx)(`button`,{onClick:A,disabled:g,className:`h-8 px-5 rounded-sm text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] border border-[var(--color-line-1)] hover:text-[var(--color-fg-0)] hover:border-[var(--color-line-2)] transition-colors cursor-pointer disabled:opacity-40`,children:g?`loading…`:`load more`})})]})]})}var Vu={deny:`red`,block:`red`,ask:`amber`,allow:`green`,log:`gray`,force:`blue`};function Hu({id:e}){let{data:t,error:n}=V(`/api/json/hub/${e}`),[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(!1);if(n)return(0,K.jsxs)(`div`,{className:`text-sm text-red-300 font-mono`,children:[(0,K.jsx)(`p`,{children:n}),(0,K.jsx)(`a`,{href:`/hub`,className:`text-[var(--color-brand)] hover:underline mt-3 block text-[11px] uppercase tracking-wider`,children:`← back to hub`})]});if(!t)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading ruleset…`});async function s(){o(!0);try{(await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({id:e})})).ok&&i(!0)}finally{o(!1)}}return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`← hub`}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-1.5 text-[var(--color-fg-0)]`,children:t.title}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-1 tabular-nums`,children:[`@`,t.author,` · v`,t.version,` · `,t.rule_count,` rule`,t.rule_count===1?``:`s`]})]}),(0,K.jsx)(X,{variant:r?`secondary`:`primary`,onClick:s,disabled:a||r,children:r?`✓ installed`:a?`installing…`:`install`})]}),t.technologies.length>0&&(0,K.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.technologies.map(e=>(0,K.jsx)(sr,{variant:`blue`,children:e},e))}),t.github_repo&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`source`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:t.github_repo})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`rules · `,t.rules.length]})}),(0,K.jsx)(Y,{className:`space-y-4`,children:t.rules.map((e,t)=>(0,K.jsxs)(`div`,{className:t>0?`border-t border-[var(--color-line-0)] pt-4`:void 0,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 flex-wrap`,children:[(0,K.jsx)(sr,{variant:Vu[e.decision]??`gray`,children:e.decision}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-brand)] font-mono`,children:e.name}),e.capability&&(0,K.jsx)(sr,{variant:`gray`,children:e.capability})]}),(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-1)] mb-2`,children:e.message}),(0,K.jsx)(Cc,{children:e.raw_text})]},e.id))})]})]})}function Uu(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(`idle`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(!1);async function u(){l(!0),a(``);try{let e=await fetch(`/api/hub/device-start`,{method:`POST`,headers:{Accept:`application/json`,...B()}}),n=await e.json();if(!e.ok){let t=n;t.error===`not_configured`?(r(`not_configured`),s(t.setup_steps??[]),a(t.message??`GitHub OAuth not configured.`)):(a(n.error??`HTTP ${e.status}`),r(`error`));return}t(n),r(`polling`)}catch(e){a(e instanceof Error?e.message:`Failed to start`),r(`error`)}finally{l(!1)}}return(0,_.useEffect)(()=>{if(n!==`polling`||!e)return;let t=setInterval(async()=>{try{let n=await(await fetch(`/api/hub/device-poll?flow=${e.flow_id}`,{headers:{Accept:`application/json`}})).json();n.status===`complete`?(clearInterval(t),r(`done`),a(`connected as @${n.session?.login??`GitHub`} — you can now publish rulesets`)):(n.status===`expired`||n.status===`error`)&&(clearInterval(t),r(`error`),a(n.error??`Authentication failed`))}catch{}},3e3);return()=>clearInterval(t)},[n,e]),(0,K.jsxs)(`div`,{className:`max-w-lg mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`a`,{href:`/hub`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors`,children:[(0,K.jsx)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,K.jsx)(`polyline`,{points:`15 18 9 12 15 6`})}),`back to hub`]}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-2 text-[var(--color-fg-0)]`,children:`Connect GitHub`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`authenticate with github to publish rulesets to the hub`})]}),n===`not_configured`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-amber-300 shrink-0 mt-0.5`,children:(0,K.jsxs)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12.01`,y2:`16`})]})}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-[var(--color-fg-0)]`,children:`GitHub OAuth not configured`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] mt-1 leading-relaxed`,children:i})]})]}),(0,K.jsxs)(`div`,{className:`border-t border-[var(--color-line-0)] pt-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-3`,children:`setup steps`}),(0,K.jsx)(`ol`,{className:`space-y-2`,children:o.map((e,t)=>(0,K.jsxs)(`li`,{className:`flex items-start gap-2.5 text-xs text-[var(--color-fg-1)]`,children:[(0,K.jsx)(`span`,{className:`shrink-0 w-5 h-5 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)] text-[var(--color-fg-3)] text-[10px] font-mono flex items-center justify-center tabular-nums`,children:t+1}),(0,K.jsx)(`span`,{className:`mt-0.5 leading-relaxed`,children:e.replace(/^\d+\.\s+/,``)})]},t))})]}),(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-3`,children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`quick start`}),(0,K.jsx)(`code`,{className:`text-[11px] text-[var(--color-brand)]/90 font-mono`,children:`export SSG_GITHUB_CLIENT_ID=<your-client-id>`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-1`,children:[`then restart:`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-fg-1)]`,children:`ssg serve`})]})]}),(0,K.jsx)(`a`,{href:`https://github.com/settings/applications/new`,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline`,children:`create github oauth app →`})]})}),n===`idle`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mb-4 leading-relaxed`,children:`This uses GitHub's device authorization flow — no redirect URIs needed. You'll be shown a code to enter at github.com.`}),(0,K.jsx)(X,{onClick:u,disabled:c,variant:`primary`,children:c?`starting…`:`connect with github`})]})}),e&&n===`polling`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`open this url in your browser`}),(0,K.jsx)(`a`,{href:e.verification_uri,target:`_blank`,rel:`noreferrer`,className:`text-sm text-[var(--color-brand)] hover:underline font-mono`,children:e.verification_uri})]}),(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] bg-[var(--color-surface-0)] rounded-sm py-5 text-center`,children:[(0,K.jsx)(`div`,{className:`overline mb-3`,children:`enter this code`}),(0,K.jsx)(`div`,{className:`text-4xl font-mono font-bold tracking-[0.3em] text-[var(--color-fg-0)]`,children:e.user_code})]}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] text-center flex items-center justify-center gap-2`,children:[(0,K.jsx)(`svg`,{className:`animate-spin`,width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}),`waiting for github authorization…`]})]})}),n===`done`&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-emerald-500/25 bg-emerald-500/5 p-4 text-sm text-emerald-200 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`svg`,{width:`15`,height:`15`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}),(0,K.jsx)(`span`,{className:`font-mono text-xs`,children:i})]}),(0,K.jsx)(`a`,{href:`/hub/publish`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline block mt-1`,children:`publish a ruleset →`})]}),n===`error`&&i&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/5 p-4`,children:[(0,K.jsx)(`p`,{className:`text-sm text-red-200 font-mono`,children:i}),(0,K.jsx)(`button`,{onClick:()=>{r(`idle`),a(``)},className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] mt-3 cursor-pointer uppercase tracking-wider`,children:`← try again`})]})]})}function Wu(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(null);async function o(t){if(t.preventDefault(),e.trim()){r(!0),a(null);try{a(await(await fetch(`/api/hub/publish`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({repo_url:e.trim()})})).json())}catch(e){a({ok:!1,error:e instanceof Error?e.message:`Unknown error`})}finally{r(!1)}}}return(0,K.jsxs)(`div`,{className:`max-w-md mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`← hub`}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-2 text-[var(--color-fg-0)]`,children:`Publish Ruleset`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`publish a github repository containing .rules files to the hub`})]}),(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`form`,{onSubmit:o,className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`github repository url`}),(0,K.jsx)(`input`,{type:`url`,placeholder:`https://github.com/owner/repo`,value:e,onChange:e=>t(e.target.value),required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsx)(X,{type:`submit`,variant:`primary`,disabled:n,children:n?`publishing…`:`publish to hub`})]})})}),i&&(0,K.jsx)(`div`,{className:`rounded-sm border px-3 py-2 text-xs font-mono ${i.ok?`border-emerald-500/25 bg-emerald-500/5 text-emerald-300`:`border-red-500/25 bg-red-500/5 text-red-300`}`,children:i.ok?(0,K.jsxs)(K.Fragment,{children:[`✓ published!`,` `,i.id&&(0,K.jsx)(`a`,{href:`/hub/${i.id}`,className:`text-[var(--color-brand)] hover:underline uppercase tracking-wider text-[11px] ml-2`,children:`view ruleset →`})]}):i.error??`publish failed`})]})}function Gu(e){return e===0?`—`:e<1e3?`${e}ns`:e<1e6?`${(e/1e3).toFixed(1)}µs`:`${(e/1e6).toFixed(1)}ms`}function Ku(e){let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${t%60}s`:`${Math.floor(n/60)}h ${n%60}m`}function qu(e){let t=e<1e10?e*1e3:e,n=new Date(t);return`${String(n.getHours()).padStart(2,`0`)}:${String(n.getMinutes()).padStart(2,`0`)}:${String(n.getSeconds()).padStart(2,`0`)}`}function Ju(e){let t=Math.round((Date.now()-e)/1e3);if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}var Yu={allow:`text-emerald-300`,block:`text-red-300`,force:`text-violet-300`,log:`text-amber-300`,ask:`text-sky-300`,shadow:`text-[var(--color-fg-3)]`},Xu={allow:`✓`,block:`✗`,force:`→`,log:`·`,ask:`?`,shadow:`~`};function Zu({label:e,ns:t,maxNs:n}){let r=n>0?Math.min(100,t/n*100):0;return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] w-8 text-right font-mono uppercase tracking-wider text-[10px]`,children:e}),(0,K.jsx)(jc,{pct:r,tone:t<1e5?`green`:t<1e6?`amber`:`red`,className:`h-1 flex-1`}),(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-1)] tabular-nums w-14 text-right`,children:Gu(t)})]})}function Qu({value:e,max:t,threshold:n,breached:r}){let i=t>0?Math.min(100,e/t*100):0,a=t>0?Math.min(100,n/t*100):0;return(0,K.jsx)(jc,{pct:i,tone:r?`red`:e/t>=.6?`amber`:`green`,markerPct:a,markerTitle:`limit: ${n}`,className:`h-1`})}function $u({limitsData:e,onSaved:t}){let[n,r]=(0,_.useState)(String(e.config.cpuLimitPct)),[i,a]=(0,_.useState)(String(e.config.memoryLimitMb)),[o,s]=(0,_.useState)(e.config.breachAction),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(null);async function f(){l(!0),d(null);try{let e=await fetch(`/api/json/limits`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({cpu_limit_pct:parseFloat(n),memory_limit_mb:parseFloat(i),breach_action:o})});e.ok?t():d((await e.json()).error??`save failed`)}catch{d(`network error`)}finally{l(!1)}}let p=`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-2 py-1.5 text-[var(--color-fg-1)] font-mono text-xs focus:outline-none focus:border-[var(--color-brand)]/50`;return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`cpu limit (%)`}),(0,K.jsx)(`input`,{type:`number`,min:1,max:100,value:n,onChange:e=>r(e.target.value),className:p})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`memory limit (mb)`}),(0,K.jsx)(`input`,{type:`number`,min:1,value:i,onChange:e=>a(e.target.value),className:p})]})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`on breach`}),(0,K.jsxs)(`select`,{value:o,onChange:e=>s(e.target.value),className:p,children:[(0,K.jsx)(`option`,{value:`warn`,children:`warn in ui only`}),(0,K.jsx)(`option`,{value:`log`,children:`warn + write to audit log`})]})]}),u&&(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:u}),(0,K.jsx)(X,{onClick:f,disabled:c,variant:`primary`,size:`sm`,children:c?`saving…`:`save limits`})]})}var ed={running:`green`,hibernating:`amber`,exhausted:`red`,stopped:`gray`,idle:`gray`};function td(e,t){let n=e-t;if(n<=0)return`any moment`;let r=Math.round(n/1e3);if(r<60)return`in ${r}s`;let i=Math.floor(r/60);return i<60?`in ${i}m ${r%60}s`:`in ${Math.floor(i/60)}h ${i%60}m`}function nd({supervisors:e}){let[t,n]=(0,_.useState)(Date.now());return(0,_.useEffect)(()=>{let e=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(e)},[]),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-2 overline`,children:[`supervisor health`,e.some(e=>e.state===`hibernating`||e.state===`exhausted`)&&(0,K.jsx)(sr,{variant:`amber`,children:`degraded`})]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono tabular-nums text-[var(--color-fg-4)]`,children:[e.length,` supervisor`,e.length===1?``:`s`]})]}),(0,K.jsx)(Y,{children:e.length===0?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no supervisors registered yet`}):(0,K.jsx)(`div`,{className:`overflow-x-auto`,children:(0,K.jsxs)(`table`,{className:`w-full text-xs font-mono`,children:[(0,K.jsx)(`thead`,{children:(0,K.jsxs)(`tr`,{className:`text-[10px] uppercase tracking-wider text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`name`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`kind`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`state`}),(0,K.jsx)(`th`,{className:`text-right font-normal pb-1.5`,children:`restarts`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5 pl-4`,children:`last restart`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5 pl-4`,children:`next retry`})]})}),(0,K.jsx)(`tbody`,{children:e.map(e=>(0,K.jsxs)(`tr`,{className:`border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`td`,{className:`py-1.5 text-[var(--color-fg-1)]`,children:e.name}),(0,K.jsx)(`td`,{className:`py-1.5 text-[var(--color-fg-3)]`,children:e.kind===`single`?`single`:`tree`}),(0,K.jsx)(`td`,{className:`py-1.5`,children:(0,K.jsx)(sr,{variant:ed[e.state],children:e.state})}),(0,K.jsx)(`td`,{className:`py-1.5 text-right tabular-nums text-[var(--color-fg-1)]`,children:e.restarts}),(0,K.jsx)(`td`,{className:`py-1.5 pl-4 tabular-nums text-[var(--color-fg-3)]`,children:e.lastRestartAt>0?Ju(e.lastRestartAt):`—`}),(0,K.jsx)(`td`,{className:`py-1.5 pl-4 tabular-nums text-[var(--color-fg-3)]`,children:e.nextRetryAt>0?(0,K.jsx)(`span`,{title:e.hibernateReason?`reason: ${e.hibernateReason}`:void 0,children:td(e.nextRetryAt,t)}):`—`})]},e.name))})]})})})]})}function rd(){let e=ke([`runtime-tick`,`activity-updated`,`limits-breach`,`supervisor-changed`]),t=De(),[n,r]=(0,_.useState)(Date.now()),[i,a]=(0,_.useState)(0),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(0),[u,d]=(0,_.useState)(!1),f=(0,_.useRef)(null);(0,_.useEffect)(()=>{let e=setInterval(()=>r(Date.now()),1e3);return()=>clearInterval(e)},[]);let{data:p}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:m,refetch:h}=V(`/api/json/limits`,[e[`limits-breach`]]),{data:g}=V(`/api/state/activity-tail?after=${i}&limit=50`,[e[`activity-updated`]]),{data:v}=V(`/api/json/supervisors`,[e[`supervisor-changed`],e[`runtime-tick`]]);(0,_.useEffect)(()=>{g&&g.rows.length>0&&(a(e=>Math.max(e,g.maxId)),s(e=>{let t=new Set(e.map(e=>e.id));return[...g.rows.filter(e=>!t.has(e.id)),...e].slice(0,100)}))},[g]),(0,_.useEffect)(()=>{let e=p!==null;f.current===!1&&e&&l(e=>e+1),f.current=e},[p]);let y=p?Ku(p.uptime_ms):null,b=p&&p.last_eval_at>0?Ju(p.last_eval_at):null,x=m?.breaches.cpu??!1,S=m?.breaches.memory??!1,C=p?x?`text-red-300`:(p.cpu_pct??0)>=60?`text-amber-300`:`text-emerald-300`:`text-[var(--color-fg-1)]`,w=S?`text-red-300`:`text-[var(--color-fg-1)]`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Daemon Monitor`}),(0,K.jsx)(`p`,{className:`text-[12px] font-mono text-[var(--color-fg-3)] mt-0.5`,children:`live metrics · audit tail · resource limits`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[c>0&&(0,K.jsxs)(sr,{variant:`amber`,children:[c,` restart`,c===1?``:`s`]}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-[var(--color-fg-3)]`,children:qu(n)})]})]}),(0,K.jsx)(id,{cpuPct:p?.cpu_pct??0,cpuLimit:m?.config.cpuLimitPct,memMb:p?.memory_rss_mb??0,memLimit:m?.config.memoryLimitMb,decisions:p?.decisions,latency:p?.latency,burstBuffer:t,evalsTotal:p?.evals_total??0}),m&&(x||S)&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/[0.06] border-l-2 border-l-red-500/70 px-3 py-2.5 flex items-start gap-2.5`,children:[(0,K.jsx)(`span`,{className:`text-red-300 shrink-0 mt-0.5`,children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0Z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]})}),(0,K.jsxs)(`div`,{className:`space-y-0.5 text-xs font-mono`,children:[x&&(0,K.jsxs)(`div`,{className:`text-red-200`,children:[`cpu limit exceeded: `,p?.cpu_pct??`?`,`% >`,` `,m.config.cpuLimitPct,`%`]}),S&&(0,K.jsxs)(`div`,{className:`text-red-200`,children:[`memory limit exceeded: `,p?.memory_rss_mb??`?`,`mb >`,` `,m.config.memoryLimitMb,`mb`]})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`daemon status`})}),(0,K.jsx)(Y,{children:p===null?(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-500 shrink-0`}),(0,K.jsx)(`span`,{className:`text-red-300 font-mono uppercase tracking-wider text-xs`,children:`down`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] text-xs font-mono`,children:`— socket not reachable`})]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-5 flex-wrap text-xs font-mono`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-emerald-400 pulse-soft shrink-0`}),(0,K.jsx)(`span`,{className:`text-emerald-300 uppercase tracking-wider`,children:`up`})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`pid`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:p.pid})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`uptime`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:y})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`mem`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:[p.memory_rss_mb,`MB`]})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`cpu`,` `,(0,K.jsxs)(`span`,{className:`${C} tabular-nums`,children:[p.cpu_pct,`%`]})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`last eval`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:b??`—`})]})]})})]}),(0,K.jsx)(nd,{supervisors:v?.supervisors??[]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-2 overline`,children:[`system resources`,m&&(x||S)&&(0,K.jsx)(sr,{variant:`red`,children:`limit exceeded`})]}),(0,K.jsx)(`button`,{onClick:()=>d(e=>!e),className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors cursor-pointer`,children:u?`hide limits`:`configure limits`})]}),(0,K.jsxs)(Y,{children:[p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data — daemon not running`}):(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(p.history.cpu_pct.length??0)>1&&(0,K.jsx)(pr,{data:p.history.cpu_pct,width:80,height:20,color:x?`#f87171`:`#34d399`,threshold:m?.config.cpuLimitPct,maxValue:100}),(0,K.jsxs)(`span`,{className:`font-mono font-medium w-12 text-right tabular-nums ${C}`,children:[p.cpu_pct,`%`]})]})]}),(0,K.jsx)(Qu,{value:p.cpu_pct,max:100,threshold:m?.config.cpuLimitPct??90,breached:x}),m&&(0,K.jsxs)(`div`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`limit: `,m.config.cpuLimitPct,`%`]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory rss`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(p.history.memory_rss_mb.length??0)>1&&(0,K.jsx)(pr,{data:p.history.memory_rss_mb,width:80,height:20,color:S?`#f87171`:`#38bdf8`,threshold:m?.config.memoryLimitMb}),(0,K.jsxs)(`span`,{className:`font-mono font-medium w-16 text-right tabular-nums ${w}`,children:[p.memory_rss_mb,`MB`]})]})]}),(0,K.jsx)(Qu,{value:p.memory_rss_mb,max:Math.max(p.memory_rss_mb*1.5,m?.config.memoryLimitMb??512),threshold:m?.config.memoryLimitMb??512,breached:S}),m&&(0,K.jsxs)(`div`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`limit: `,m.config.memoryLimitMb,`MB`]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`heap`}),(0,K.jsxs)(`span`,{className:`font-mono text-[var(--color-fg-1)] tabular-nums`,children:[p.heap_used_mb,`MB / `,p.heap_total_mb,`MB`]})]}),(0,K.jsx)(jc,{pct:p.heap_total_mb>0?Math.min(100,p.heap_used_mb/p.heap_total_mb*100):0,tone:`blue`,className:`h-1`})]})]}),u&&m&&(0,K.jsxs)(`div`,{className:`mt-5 pt-4 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-3 leading-relaxed`,children:[`thresholds trigger ui warnings. values are persisted to`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-fg-1)]`,children:`.sigmashake/config.toml`}),`.`]}),(0,K.jsx)($u,{limitsData:m,onSaved:()=>{h(),d(!1)}})]})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-2`,children:[(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`total evals`,value:p?.evals_total??`—`,valueClassName:`text-xl font-medium tabular-nums text-[var(--color-fg-0)]`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`allow`,value:p?.decisions.allow??`—`,valueClassName:`text-xl font-medium tabular-nums text-emerald-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`block`,value:p?.decisions.block??`—`,valueClassName:`text-xl font-medium tabular-nums text-red-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`force`,value:p?.decisions.force??`—`,valueClassName:`text-xl font-medium tabular-nums text-violet-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`log`,value:p?.decisions.log??`—`,valueClassName:`text-xl font-medium tabular-nums text-amber-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`ask`,value:p?.decisions.ask??`—`,valueClassName:`text-xl font-medium tabular-nums text-sky-300`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-4`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`eval latency`}),p&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[p.latency.samples,` samples`]})]}),(0,K.jsx)(Y,{children:p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data`}):(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Zu,{label:`p50`,ns:p.latency.p50_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Zu,{label:`p95`,ns:p.latency.p95_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Zu,{label:`p99`,ns:p.latency.p99_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Zu,{label:`max`,ns:p.latency.max_ns,maxNs:p.latency.max_ns})]})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`engine`})}),(0,K.jsx)(Y,{children:p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data`}):(0,K.jsx)(`div`,{className:`space-y-1.5 text-xs font-mono`,children:[[`native evals`,p.engine.native_evals],[`ts evals`,p.engine.ts_evals],[`native %`,`${p.engine.native_pct}%`],[`rule reloads`,p.rule_reloads],[`rate limit trips`,p.rate_limit_trips],[`loop guard blocks`,p.loop_guard_blocks],[`connection errors`,p.connection_errors]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex justify-between py-0.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:e}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:t})]},e))})})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`live event tail`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`newest first · auto-updating`})]}),(0,K.jsx)(Y,{children:o.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-4 py-6 text-center`,children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no events yet`})}):(0,K.jsx)(`div`,{className:`font-mono text-[11px] max-h-96 overflow-y-auto divide-y divide-[var(--color-line-0)]`,children:o.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] shrink-0 w-16 tabular-nums`,children:qu(e.timestamp)}),e.tool===`__daemon`?(0,K.jsxs)(`span`,{className:`text-sky-400`,children:[`daemon`,` `,(()=>{try{let t=JSON.parse(e.input??`{}`);return`${t.event??e.decision}${t.detail?` (${t.detail})`:``}`}catch{return e.decision}})()]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{className:`shrink-0 w-16 uppercase tracking-wider text-[10px] ${Yu[e.decision]??`text-[var(--color-fg-3)]`}`,children:[Xu[e.decision]??`·`,` `,e.decision]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] shrink-0 w-24 truncate`,children:e.tool}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] shrink-0 w-14 text-right tabular-nums`,children:Gu(e.duration_ns)}),e.rule_id&&(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] truncate transition-colors`,title:e.rule_id,children:e.rule_id})]})]},e.id))})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`ai agent debug endpoints`})}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-2.5`,children:`agents can query these endpoints directly for automated triage:`}),(0,K.jsx)(`div`,{className:`space-y-1 font-mono text-[11px]`,children:[[`/api/state/runtime`,`full metrics snapshot (cpu, memory, history, latency)`],[`/api/json/limits`,`resource limits config + breach state`],[`/api/state/activity-tail?after=0&limit=20`,`recent eval events`],[`/api/json/daemon-status`,`status, pid, log tail`],[`/healthz`,`process uptime`]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`GET`}),(0,K.jsx)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] transition-colors`,children:e}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`— `,t]})]},e))})]})]})]})}function id({cpuPct:e,cpuLimit:t,memMb:n,memLimit:r,decisions:i,latency:a,evalsTotal:o,burstBuffer:s}){let c=(0,_.useMemo)(()=>{if(s.length===0)return 0;let e=Date.now()-1e4;return s.filter(t=>t.ts_ms>=e).length/10},[s]);return(a?.p95_ns??0)/1e6,(a?.p50_ns??0)/1e6,(a?.p99_ns??0)/1e6,(0,K.jsxs)(`div`,{className:`grid-bleed rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,style:{contain:`layout paint`},children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-4 lg:min-h-[320px]`,children:[(0,K.jsxs)(`div`,{className:`lg:col-span-3 flex flex-col items-center justify-start gap-2 lg:max-h-[320px]`,children:[(0,K.jsx)(Gr,{mode:`ring`,value:e,max:100,warnAt:(t??90)/100*.7,critAt:(t??90)/100,display:`${e.toFixed(1)}%`,label:`cpu`,size:220,className:`max-h-[240px]`}),(0,K.jsx)(br,{value:e,width:260,height:56,windowMs:6e4,color:`#34d399`,fillColor:`rgba(52, 211, 153, 0.14)`,maxValue:100,className:`w-full`})]}),(0,K.jsxs)(`div`,{className:`lg:col-span-3 flex flex-col items-center justify-start gap-2 lg:max-h-[320px]`,children:[(0,K.jsx)(Gr,{mode:`ring`,value:n,max:r??1024,warnAt:.7,critAt:.9,display:`${n.toFixed(0)} MB`,label:`memory`,size:220,className:`max-h-[240px]`}),(0,K.jsx)(br,{value:n,width:260,height:56,windowMs:6e4,color:`#38bdf8`,fillColor:`rgba(56, 189, 248, 0.14)`,maxValue:r?r*1.1:void 0,className:`w-full`})]}),(0,K.jsx)(`div`,{className:`lg:col-span-6 lg:max-h-[320px]`,children:(0,K.jsx)(Qr,{latency:a,bursts:s,gaugeMaxMs:10,windowMs:3e4,trendWindowSec:60,gaugeSize:200})})]}),(0,K.jsxs)(`div`,{className:`mt-4 grid grid-cols-1 lg:grid-cols-2 gap-3`,children:[(0,K.jsx)(Or,{label:`Total Evals`,value:o,tone:`amber`,sub:`${c.toFixed(1)}/s`,burstRing:s}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] px-4 py-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`throughput · 60 s`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[c.toFixed(1),`/s`]})]}),(0,K.jsx)(br,{value:c,width:420,height:56,windowMs:6e4,className:`w-full`})]})]}),i?(0,K.jsx)(`div`,{className:`mt-4 pt-3 border-t border-[var(--color-line-0)]`,children:(0,K.jsx)(ti,{counters:{allow:i.allow,block:i.block,ask:i.ask,log:i.log,force:i.force,shadow:i.shadow}})}):null,(0,K.jsxs)(`div`,{className:`mt-4 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`live event stream · newest first`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:[s.length,` buffered · hover to pause`]})]}),(0,K.jsx)(wi,{variant:`decision`,bursts:s,windowSize:300,height:260})]})]})}var ad={ok:`green`,warn:`amber`,error:`red`,unknown:`gray`},od={ok:`OK`,warn:`Warn`,error:`Error`,unknown:`Idle`};function sd({title:e,status:t=`unknown`,statusLabel:n,className:r,children:i}){return(0,K.jsxs)(q,{className:G(`flex flex-col`,r),children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-2)]`,children:e}),(0,K.jsx)(sr,{variant:ad[t],children:n??od[t]})]}),(0,K.jsx)(Y,{className:`flex flex-col gap-2 text-[12px]`,children:i})]})}function cd({label:e,value:t,mono:n=!1,tone:r}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3 border-b border-[var(--color-line-0)] last:border-b-0 py-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] uppercase tracking-wider text-[10px] font-mono`,children:e}),(0,K.jsx)(`span`,{className:G(n?`font-mono`:`font-sans`,`tabular-nums text-right truncate`,r===`good`?`text-emerald-300`:r===`warn`?`text-amber-300`:r===`bad`?`text-red-300`:`text-[var(--color-fg-1)]`),children:t})]})}function ld(e){return e===0?`0 B`:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function ud(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/1024/1024).toFixed(1)}MB`}function dd(e){let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${t%60}s`:`${Math.floor(n/60)}h ${n%60}m`}function fd(e){return e?new Date(e*1e3).toLocaleString():`—`}function pd(e){if(!e||e===0)return`never`;let t=Math.round((Date.now()-e)/1e3);if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}function md({children:e,className:t}){return(0,K.jsx)(`div`,{className:`overline mb-2.5 ${t??``}`,children:e})}function hd({label:e,value:t,mono:n=!0,accent:r}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-4 py-1.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-3)] shrink-0 font-mono`,children:e}),(0,K.jsx)(`span`,{className:`text-xs text-right truncate max-w-[65%] ${n?`font-mono tabular-nums`:``} ${r??`text-[var(--color-fg-1)]`}`,children:t})]})}function gd({ok:e,label:t,badLabel:n}){return e?(0,K.jsx)(sr,{variant:`green`,children:t}):(0,K.jsx)(sr,{variant:`red`,children:n??t})}function _d({pct:e,total:t,max:n}){let r=e<60?`green`:e<85?`amber`:`red`,i=e>=85?`text-red-300`:e>=60?`text-amber-300`:`text-emerald-300`;return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs font-mono tabular-nums`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[t.toLocaleString(),` / `,n.toLocaleString(),` rows`]}),(0,K.jsxs)(`span`,{className:i,children:[e,`%`]})]}),(0,K.jsx)(jc,{pct:e,tone:r,className:`h-1.5`})]})}var vd=3e3,$={log:`text-[var(--color-fg-1)]`,info:`text-sky-300`,warn:`text-amber-300`,error:`text-red-300`,debug:`text-[var(--color-fg-3)]`};function yd(e){return e.value==null?e.description?e.description:`[${e.type}]`:String(e.value)}function bd(){let e=$l(),[t,n]=(0,_.useState)(!1),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)(null),[l,u]=(0,_.useState)(!1),[d,f]=(0,_.useState)(!1),p=(0,_.useRef)(null),m=(0,_.useRef)(0),h=(0,_.useRef)(!0);(0,_.useEffect)(()=>{if(h.current){h.current=!1;return}let e=p.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[a]),(0,_.useEffect)(()=>{if(e.connected)return e.sendCommand(`Runtime.enable`).catch(()=>{}),e.onEvent(`Runtime.consoleAPICalled`,e=>{let t=e;o(e=>{let n=[...e,{id:m.current++,type:t.type??`log`,args:t.args??[],timestamp:t.timestamp??Date.now()}];return n.length>500?n.slice(-500):n})})},[e.connected]),(0,_.useEffect)(()=>{e.preconfiguredTarget&&!e.connected&&!e.connecting&&e.connect(e.preconfiguredTarget.id)},[e]),(0,_.useEffect)(()=>{!e.connected||d||t||r||(f(!0),(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),setTimeout(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch{n(!1)}},vd)}catch{}})(),e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0}).then(e=>{c(JSON.parse(e.result.value))}).catch(()=>{}))},[e.connected,d,t,r]);let g=(0,_.useCallback)(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),i(null)}catch(e){console.error(`Profiler.start failed:`,e)}},[e]),v=(0,_.useCallback)(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch(e){console.error(`Profiler.stop failed:`,e),n(!1)}},[e]),y=(0,_.useCallback)(async()=>{u(!0);try{let t=await e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0});c(JSON.parse(t.result.value))}catch{}finally{u(!1)}},[e]),b=(0,_.useCallback)(()=>{e.preconfiguredTarget&&e.connect(e.preconfiguredTarget.id)},[e]);return e.active?e.connected?(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-emerald-400`}),`connected`,e.bunVersion?` · bun v${e.bunVersion}`:``]}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.disconnect,children:`disconnect`})]})]}),e.error&&(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:e.error})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu profiler`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300 flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-400 pulse-soft`}),`recording`]}),t?(0,K.jsx)(X,{variant:`danger`,size:`sm`,onClick:v,children:`stop & render`}):(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:g,children:`start recording`})]})]}),(0,K.jsx)(Y,{children:r?(0,K.jsx)(Nc,{profile:r,children:(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 overflow-x-hidden`,children:(0,K.jsx)(ou,{profile:r})})}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:t?`recording cpu profile (auto-captures ${vd/1e3}s)… perform actions in ssg to generate data.`:`click start recording, or wait for auto-capture on page load.`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:y,disabled:l,children:l?`…`:`refresh`})]}),(0,K.jsx)(Y,{children:s?(0,K.jsx)(Pc,{memory:s,formatValue:ud}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:d?`fetching memory metrics…`:`click refresh to fetch process.memoryUsage().`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`console`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:()=>o([]),children:`clear`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 h-40 overflow-y-auto font-mono text-[11px]`,children:[a.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`console output will appear here…`}):a.map(e=>(0,K.jsxs)(`div`,{className:`py-0.5 border-b border-[var(--color-line-0)] ${$[e.type]??`text-[var(--color-fg-1)]`}`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] mr-2 uppercase tracking-wider`,children:[`[`,e.type,`]`]}),e.args.map(yd).join(` `)]},e.id)),(0,K.jsx)(`div`,{ref:p})]})})]})]}):(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(sr,{variant:`amber`,children:e.connecting?`connecting…`:`available`}),!e.connecting&&(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:b,children:`connect`})]})]}),(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:e.connecting?`establishing websocket connection to bun inspector…`:`inspector is active but not connected. click connect to start profiling.`})})]}):(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsx)(sr,{variant:`outline`,children:`inactive`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[`the bun inspector is not active. restart`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg serve`}),` to enable it automatically.`]})})]})}function xd(){let[e,t]=(0,_.useState)(0),{data:n}=V(`/api/json/evald-log`,[e]),r=(0,_.useRef)(null),i=(0,_.useRef)(!0);(0,_.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),5e3);return()=>clearInterval(e)},[]),(0,_.useEffect)(()=>{if(i.current){i.current=!1;return}let e=r.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[n?.lines.length]);let a=n?.lines??[];return(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`daemon log`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] truncate max-w-[60%]`,children:[n?.path?n.path:`loading…`,` · last 200 lines · 5s refresh`]})]}),(0,K.jsxs)(Y,{children:[n?.error&&(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono mb-2`,children:n.error}),a.length===0&&!n?.error&&(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-4 py-6 text-center`,children:(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[`no log entries yet. start the daemon with`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg serve`}),` to generate log output.`]})}),a.length>0&&(0,K.jsxs)(`pre`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-3 text-[10px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-all max-h-80 overflow-y-auto font-mono leading-relaxed`,children:[a.join(`
23
- `),(0,K.jsx)(`div`,{ref:r})]})]})]})}function Sd(){let e=ke([`runtime-tick`,`rules-changed`]),{data:t,refetch:n}=V(`/api/json/observability`,[e[`runtime-tick`],e[`rules-changed`]]),[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(!1),[s,c]=(0,_.useState)(Date.now()),[l,u]=(0,_.useState)(`idle`),[d,f]=(0,_.useState)(``),[p,m]=(0,_.useState)(`idle`);(0,_.useEffect)(()=>{t&&c(Date.now())},[t]);let h=(0,_.useCallback)(async()=>{u(`loading`);try{let e=await(await fetch(`/api/rules/sync-to-db`,{method:`POST`,headers:B()})).json();if(e.ok){u(`done`);let t=(e.pruned_count??0)>0?` (${e.pruned_count} orphan(s) pruned)`:``;f((e.message??`synced ${e.synced} rules`)+t),n()}else u(`error`),f(e.error??`sync failed`)}catch(e){u(`error`),f(String(e))}},[n]),g=(0,_.useCallback)(async()=>{m(`loading`);try{await fetch(`/api/rules/force-reload`,{method:`POST`,headers:B()}),m(`done`),n(),setTimeout(()=>m(`idle`),3e3)}catch{m(`idle`)}},[n]),v=t?.db,y=t?.rules,b=t?.audit,x=t?.process,S=t?.flight_recorder,C=y?.drift_detected??!1;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Observability`}),(0,K.jsx)(`p`,{className:`text-[12px] font-mono text-[var(--color-fg-3)] mt-0.5`,children:`sqlite health · rule drift · runtime profiler · diagnostics`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:[`refreshed `,pd(s)]}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:n,children:`refresh`})]})]}),(0,K.jsx)(Cd,{db:v,audit:b,proc:x,flight:S,driftDetected:C}),(0,K.jsxs)(q,{className:C?`border-red-500/30 border-l-2 border-l-red-500/70`:`border-emerald-500/20 border-l-2 border-l-emerald-500/60`,children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`rule drift detector`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`— .rules files vs sqlite`}),(0,K.jsx)(`button`,{onClick:()=>o(e=>!e),"aria-expanded":a,"aria-label":`Explain these counts`,title:`Why do these numbers differ?`,className:`text-[10px] font-mono text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)] border border-[var(--color-line-1)] rounded-sm px-1.5 py-0.5 transition-colors cursor-pointer`,children:a?`× close`:`? why these numbers`})]}),y&&(C?(0,K.jsx)(sr,{variant:`red`,children:`⚠ drift detected`}):(0,K.jsx)(sr,{variant:`green`,children:`✓ in sync`}))]}),(0,K.jsxs)(Y,{children:[a&&(0,K.jsxs)(`div`,{className:`mb-4 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-3 py-2.5 space-y-2 text-[11px] font-mono leading-relaxed text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`div`,{className:`text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`code`,{children:`.rules files`}),` and `,(0,K.jsx)(`code`,{children:`db rules`}),` are`,` `,(0,K.jsx)(`span`,{className:`text-amber-300`,children:`not auto-synced`}),`. A mismatch is usually expected:`]}),(0,K.jsxs)(`ul`,{className:`space-y-1 pl-3 list-disc marker:text-[var(--color-fg-4)]`,children:[(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`one file can hold many rules`}),` `,`— compare `,(0,K.jsx)(`code`,{children:`db rules`}),` against`,` `,(0,K.jsx)(`code`,{children:`file_rule_count`}),`, not `,(0,K.jsx)(`code`,{children:`file_count`}),`.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in files`}),` `,`means unsynced edits — run`,` `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`}),` or click`,` `,(0,K.jsx)(`code`,{children:`↑ sync files → db`}),`.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in db`}),` `,`with `,(0,K.jsx)(`code`,{children:`source_file IS NULL`}),` is healthy — hub, fleet, or cloud-synced rules legitimately live only in the db.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in db`}),` `,`with `,(0,K.jsx)(`code`,{children:`source_file`}),` set means an orphan from a deleted file — `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`}),` `,`prunes it.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`db rules`}),` `,`includes disabled rows; `,(0,K.jsx)(`code`,{children:`db_enabled_count`}),` `,`excludes them.`]})]}),(0,K.jsxs)(`div`,{className:`pt-1.5 border-t border-[var(--color-line-0)]`,children:[`full reference:`,` `,(0,K.jsx)(`a`,{href:`https://docs.sigmashake.com/rule-storage`,target:`_blank`,rel:`noopener noreferrer`,className:`text-[var(--color-fg-2)] underline decoration-dotted underline-offset-2 hover:text-amber-300 transition-colors`,children:`docs.sigmashake.com/rule-storage ↗`})]})]}),y?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-4 gap-2`,children:[{label:`.rules files`,value:y.file_count,sub:`${y.file_rule_count} rules total`,tone:`neutral`},{label:`db rules`,value:y.db_rule_count,sub:`${y.db_enabled_count} enabled`,tone:`neutral`},{label:`only in files`,value:y.drift_details.only_in_files.length,tone:y.drift_details.only_in_files.length>0?`amber`:`gray`},{label:`only in db`,value:y.drift_details.only_in_db.length,tone:y.drift_details.only_in_db.length>0?`red`:`gray`}].map(({label:e,value:t,sub:n,tone:r})=>(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)]`,label:e,value:t,sub:n,tone:r,labelPlacement:`above`,subClassName:`text-[var(--color-fg-4)]`,valueClassName:`text-xl font-medium tabular-nums`},e))}),C&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`button`,{onClick:()=>i(e=>!e),className:`text-[10px] font-mono uppercase tracking-wider text-amber-300 hover:text-amber-200 flex items-center gap-1 transition-colors cursor-pointer`,children:[r?`▾`:`▸`,` view drift details`]}),r&&(0,K.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[y.drift_details.only_in_files.length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-[10px] font-mono uppercase tracking-wider text-amber-300/80 mb-1.5`,children:[`in .rules files but not in db — run`,` `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`})]}),(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-amber-400/20 rounded-sm p-2 space-y-0.5 max-h-40 overflow-y-auto`,children:y.drift_details.only_in_files.map(e=>(0,K.jsxs)(`div`,{className:`font-mono text-[11px] text-amber-200/80`,children:[`+ `,e]},e))})]}),y.drift_details.only_in_db.length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300/80 mb-1.5`,children:`in db but not in any .rules file — orphaned rules`}),(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-red-400/20 rounded-sm p-2 space-y-0.5 max-h-40 overflow-y-auto`,children:y.drift_details.only_in_db.map(e=>(0,K.jsxs)(`div`,{className:`font-mono text-[11px] text-red-200/80`,children:[`− `,e]},e))})]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:h,disabled:l===`loading`,children:l===`loading`?`syncing…`:`↑ sync files → db`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:g,disabled:p===`loading`,children:p===`loading`?`…`:p===`done`?`✓ reloaded`:`↻ force reload`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] ml-auto`,children:y.db_rule_count===0?`⚠ db empty — daemon falls back to file-based loading`:`db has ${y.db_rule_count} rules — indexed queries`})]}),l===`done`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm border border-emerald-500/25 bg-emerald-500/[0.06] px-3 py-2 text-xs font-mono text-emerald-200`,children:[(0,K.jsxs)(`span`,{children:[`✓ `,d]}),(0,K.jsx)(`button`,{onClick:()=>u(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-emerald-500/30 hover:bg-emerald-500/10 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`dismiss`})]}),l===`error`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm border border-red-500/25 bg-red-500/[0.06] px-3 py-2 text-xs font-mono text-red-200`,children:[(0,K.jsxs)(`span`,{children:[`✗ `,d]}),(0,K.jsx)(`button`,{onClick:()=>u(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-red-500/30 hover:bg-red-500/10 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`dismiss`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-[11px] font-mono text-[var(--color-fg-4)] pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`span`,{children:[`rules dir:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:y.rules_dir})]}),(0,K.jsxs)(`span`,{className:`ml-auto`,children:[`last reload:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:pd(y.last_reload_at)})]})]})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`sqlite database`}),v&&!v.error&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(gd,{ok:v.journal_mode===`wal`,label:`wal`,badLabel:`no wal`}),(0,K.jsx)(gd,{ok:v.synchronous===`NORMAL`,label:`normal`,badLabel:v.synchronous})]})]}),(0,K.jsx)(Y,{children:v?v.error?(0,K.jsx)(`div`,{className:`text-xs text-red-300 font-mono bg-red-500/[0.06] border border-red-500/25 rounded-sm p-2`,children:v.error}):(0,K.jsxs)(`div`,{children:[(0,K.jsx)(md,{children:`storage`}),(0,K.jsx)(hd,{label:`file path`,value:v.path}),(0,K.jsx)(hd,{label:`file size`,value:ld(v.file_size_bytes)}),(0,K.jsx)(hd,{label:`allocated`,value:`${ld(v.allocated_bytes)} (${v.page_count.toLocaleString()} pages × ${v.page_size}B)`}),(0,K.jsx)(md,{className:`mt-4`,children:`pragma configuration`}),(0,K.jsx)(hd,{label:`journal_mode`,value:v.journal_mode,accent:v.journal_mode===`wal`?`text-emerald-300`:`text-amber-300`}),(0,K.jsx)(hd,{label:`synchronous`,value:v.synchronous,accent:v.synchronous===`NORMAL`?`text-emerald-300`:`text-amber-300`}),(0,K.jsx)(hd,{label:`cache_size`,value:`${v.cache_size_kb.toLocaleString()} KB (${Math.round(v.cache_size_kb/1024)} MB)`}),(0,K.jsx)(hd,{label:`page_size`,value:`${v.page_size.toLocaleString()} B`}),v.wal_checkpoint&&(0,K.jsx)(hd,{label:`wal checkpoint`,value:`log ${v.wal_checkpoint.log}, checkpointed ${v.wal_checkpoint.checkpointed}, busy ${v.wal_checkpoint.busy}`}),(0,K.jsx)(md,{className:`mt-4`,children:`table row counts`}),v.tables.map(e=>(0,K.jsx)(hd,{label:e.name,value:e.row_count>=0?e.row_count.toLocaleString():`error`,accent:e.row_count<0?`text-red-300`:`text-[var(--color-fg-1)]`},e.name))]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`audit log capacity`})}),(0,K.jsx)(Y,{children:b?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsx)(_d,{pct:b.utilization_pct,total:b.total_rows,max:b.max_rows}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(hd,{label:`total rows`,value:b.total_rows.toLocaleString()}),(0,K.jsx)(hd,{label:`rotation limit`,value:b.max_rows.toLocaleString()}),(0,K.jsx)(hd,{label:`utilization`,value:`${b.utilization_pct}%`,accent:b.utilization_pct>=85?`text-red-300`:b.utilization_pct>=60?`text-amber-300`:`text-emerald-300`}),(0,K.jsx)(hd,{label:`oldest entry`,value:fd(b.oldest_timestamp)}),(0,K.jsx)(hd,{label:`newest entry`,value:fd(b.newest_timestamp)})]}),b.utilization_pct>=85&&(0,K.jsx)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/[0.06] px-3 py-2 text-[11px] font-mono text-red-200`,children:`⚠ audit log nearing rotation limit. oldest entries will be purged automatically.`})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`process & runtime`})}),(0,K.jsx)(Y,{children:x?(0,K.jsxs)(`div`,{children:[(0,K.jsx)(hd,{label:`pid`,value:x.pid}),(0,K.jsx)(hd,{label:`uptime`,value:dd(x.uptime_ms)}),(0,K.jsx)(hd,{label:`memory (rss)`,value:`${x.memory_rss_mb} MB`}),(0,K.jsx)(hd,{label:`bun version`,value:x.bun_version}),(0,K.jsx)(hd,{label:`node compat`,value:x.node_version}),(0,K.jsx)(hd,{label:`platform`,value:`${x.platform} / ${x.arch}`})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`flight recorder`})}),(0,K.jsx)(Y,{children:S?(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`log file`}),(0,K.jsx)(`div`,{className:`text-xs font-mono text-[var(--color-fg-1)] truncate`,children:`…${S.path.slice(-50)}`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`file size`}),(0,K.jsx)(`div`,{className:`text-xs font-mono tabular-nums ${S.file_size_bytes===0?`text-[var(--color-fg-4)]`:`text-[var(--color-fg-1)]`}`,children:ld(S.file_size_bytes)})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`approx. entries`}),(0,K.jsx)(`div`,{className:`text-xs font-mono tabular-nums ${S.approx_entries===0?`text-[var(--color-fg-4)]`:`text-[var(--color-fg-1)]`}`,children:S.approx_entries===0?`—`:S.approx_entries.toLocaleString()})]})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsx)(bd,{}),(0,K.jsx)(xd,{}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`observability api`})}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-2.5`,children:`machine-readable endpoints for automated monitoring and ai agent triage:`}),(0,K.jsx)(`div`,{className:`space-y-1 font-mono text-[11px]`,children:[[`/api/json/observability`,`sqlite health, rule drift, process info`],[`/api/state/runtime`,`eval latency, decision counters, memory`],[`/api/state/activity-tail?after=0&limit=20`,`recent eval events (live feed)`],[`/api/json/daemon-status`,`daemon pid, status, log tail`],[`/api/json/evald-log`,`last 200 lines of evald.log (daemon stderr)`],[`/healthz`,`process liveness`],[`/readyz`,`sqlite liveness`]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`GET`}),(0,K.jsx)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] transition-colors`,children:e}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] hidden sm:inline`,children:[`— `,t]})]},e))})]})]})]})}function Cd({db:e,audit:t,proc:n,flight:r,driftDetected:i}){let a=e?e.error?`error`:e.journal_mode===`wal`&&e.synchronous===`NORMAL`?`ok`:`warn`:`unknown`,o=t?t.utilization_pct>=85?`error`:t.utilization_pct>=60?`warn`:`ok`:`unknown`,s=n?n.memory_rss_mb>600?`warn`:`ok`:`unknown`;return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4`,children:[(0,K.jsxs)(sd,{title:`sqlite`,status:a,statusLabel:e?.journal_mode?.toUpperCase()??`idle`,children:[(0,K.jsx)(cd,{label:`size`,value:e?(0,K.jsx)(fr,{value:e.file_size_bytes,format:e=>ud(e)}):`—`,mono:!0}),(0,K.jsx)(cd,{label:`journal`,value:e?.journal_mode??`—`,mono:!0}),(0,K.jsx)(cd,{label:`sync`,value:e?.synchronous??`—`,mono:!0}),(0,K.jsx)(cd,{label:`tables`,value:e?.tables.length??0,tone:i?`warn`:`neutral`})]}),(0,K.jsxs)(sd,{title:`audit log`,status:o,statusLabel:t?`${t.utilization_pct}%`:`idle`,children:[(0,K.jsx)(cd,{label:`rows`,value:t?(0,K.jsx)(fr,{value:t.total_rows}):`—`}),(0,K.jsx)(cd,{label:`capacity`,value:t?`${(t.total_rows/Math.max(1,t.max_rows)*100).toFixed(1)}%`:`—`,tone:t&&t.utilization_pct>=85?`bad`:t&&t.utilization_pct>=60?`warn`:`good`}),(0,K.jsx)(cd,{label:`oldest`,value:fd(t?.oldest_timestamp??null),mono:!0}),(0,K.jsx)(cd,{label:`newest`,value:fd(t?.newest_timestamp??null),mono:!0})]}),(0,K.jsxs)(sd,{title:`process`,status:s,statusLabel:n?`pid ${n.pid}`:`idle`,children:[(0,K.jsx)(cd,{label:`uptime`,value:n?dd(n.uptime_ms):`—`,mono:!0}),(0,K.jsx)(cd,{label:`rss`,value:n?(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:n.memory_rss_mb,format:e=>e.toFixed(0)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1`,children:`MB`})]}):`—`}),(0,K.jsx)(cd,{label:`bun`,value:n?.bun_version??`—`,mono:!0}),(0,K.jsx)(cd,{label:`platform`,value:n?`${n.platform}/${n.arch}`:`—`,mono:!0})]}),(0,K.jsxs)(sd,{title:`flight recorder`,status:r&&r.file_size_bytes>0?`ok`:`unknown`,statusLabel:r?`${r.approx_entries.toLocaleString()} entries`:`idle`,children:[(0,K.jsx)(cd,{label:`size`,value:r?(0,K.jsx)(fr,{value:r.file_size_bytes,format:e=>ud(e)}):`—`,mono:!0}),(0,K.jsx)(cd,{label:`entries`,value:r?(0,K.jsx)(fr,{value:r.approx_entries}):`—`})]})]})}var wd=900,Td=180,Ed=320,Dd=800,Od=4;function kd({sessionKey:e}={}){let t=Ee(),n=Oe(),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)(`idle`),s=(0,_.useRef)([]),c=(0,_.useRef)(-1),l=(0,_.useRef)(0),u=(0,_.useRef)(null);if((0,_.useEffect)(()=>{if(!t||n===c.current||(c.current=n,t.decision!==`block`&&t.decision!==`force`)||e&&Ja(t)!==e)return;let u=Date.now(),d=s.current,f=d[0];if(f&&u-l.current<Dd){f.extra+=1,f.burst=t,f.seq=n,l.current=u;return}if(d.length>=Od&&d.shift(),d.push({seq:n,burst:t,extra:0}),l.current=u,a===`idle`&&!r){let e=d.shift()??null;e&&(i(e),o(`in`))}},[n]),(0,_.useEffect)(()=>{if(a===`idle`)return;let e=null;return a===`in`?e=setTimeout(()=>o(`visible`),Td):a===`visible`?e=setTimeout(()=>o(`out`),wd):a===`out`&&(e=setTimeout(()=>{let e=s.current.shift()??null;e?(i(e),o(`in`)):(i(null),o(`idle`))},Ed)),u.current=e,()=>{e&&clearTimeout(e)}},[a]),!r)return null;let{burst:d,extra:f}=r,p=Ya[d.decision]??`#ef4444`,m=ot(),h=a===`in`||a===`visible`?1:0,g=m||a===`in`||a===`visible`?0:-8,v=d.rule_id??`rule`,y=d.decision===`block`?`BLOCKED`:`FORCED`,b=f>0?`${d.tool} · +${f} more in this burst`:`${d.tool} · ${d.client}${d.agent_id?`:${d.agent_id}`:``}`;return(0,K.jsx)(`div`,{className:e?`pointer-events-none absolute top-2 left-1/2 z-30 select-none`:`pointer-events-none fixed top-20 left-1/2 z-40 select-none`,style:{transform:`translateX(-50%) translateY(${g}px) scale(1)`,opacity:h,transition:m?`opacity ${Td}ms ease-out`:`opacity ${Td}ms ease-out, transform ${Td}ms cubic-bezier(0.34, 1.56, 0.64, 1)`},"aria-live":`polite`,"aria-atomic":`true`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3 px-5 py-3 rounded-md border bg-black/95 shadow-2xl`,style:{borderColor:p},children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-full shrink-0`,style:{background:p,boxShadow:m?`none`:`0 0 16px ${p}`}}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-0.5 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`text-[11px] font-mono uppercase tracking-[0.18em]`,style:{color:p},children:[y,` BY SSG`]}),(0,K.jsx)(`div`,{className:`text-[14px] font-mono text-[var(--color-fg-1)] truncate max-w-[420px]`,children:v}),(0,K.jsx)(`div`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] truncate max-w-[420px]`,children:b})]})]})})}var Ad=(0,_.memo)(function(e){let{sessionKey:t,bursts:n,paused:r,selectedId:i,onSelect:a,burstSeq:o,isStale:s,isFadingOut:c,minHeight:l,pinned:u,minimized:d,isFullscreen:f,viewMode:p=`full`,thumbnail:m=!1,onPromote:h,activePanelCount:g=1,onTogglePin:v,onToggleMinimize:y,onToggleFullscreen:b,onClose:x,onFrameTime:S}=e,C=p===`broadcast`,w=!m&&(p===`stream`||p===`broadcast`||f)?`large`:`normal`,T=t.indexOf(`:`),E=T>=0?t.slice(0,T):t,D=T>=0?t.slice(T+1):``,O=(0,_.useRef)(null),[ee,k]=(0,_.useState)(!0),[A,j]=(0,_.useState)(null),te=()=>{let e=O.current;if(!e)return;let t=e.querySelector(`canvas`);t instanceof HTMLCanvasElement&&j(t.toDataURL(`image/png`))},ne=()=>{if(!A)return;let e=document.createElement(`a`),n=t.replace(/[^a-z0-9._-]+/gi,`-`);e.href=A,e.download=`ssg-graph-${n}-${Date.now()}.png`,document.body.appendChild(e),e.click(),e.remove()},re=()=>{!A||!navigator.clipboard?.write||fetch(A).then(e=>e.blob()).then(e=>{let t=new ClipboardItem({"image/png":e});return navigator.clipboard.write([t])}).catch(()=>{})},M=typeof navigator<`u`&&typeof navigator.clipboard?.write==`function`&&typeof ClipboardItem<`u`;(0,_.useEffect)(()=>{if(f){k(!0);return}let e=O.current;if(!e)return;let t=new IntersectionObserver(e=>{for(let t of e)k(t.isIntersecting)},{threshold:.01});return t.observe(e),()=>t.disconnect()},[f]);let N=n.length>0?n[n.length-1]:null,ie=N?Ya[N.decision]??`#6b7280`:`#6b7280`,ae=N?.decision??null,oe=N?.tool??null,P=r||!ee||d,F=(0,_.useMemo)(()=>n.length>24?n.slice(n.length-24):n,[n]);return(0,K.jsxs)(`div`,{ref:O,className:`relative flex flex-col shrink-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] overflow-hidden transition-opacity duration-1000${f?` flex-1 min-h-0`:``}`,style:{minHeight:d||f?void 0:l,opacity:c?0:1},children:[!C&&(0,K.jsxs)(`header`,{className:`group flex items-center justify-between px-3 py-1.5 border-b border-[var(--color-line-1)] bg-black/30 shrink-0 gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono min-w-0`,children:[u&&(0,K.jsx)(`span`,{className:`text-amber-300`,title:`Pinned`,children:`▲`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider`,children:E}),D&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate`,children:D})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono text-[var(--color-fg-4)]`,children:[oe&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 max-w-[180px]`,title:ae?`latest: ${oe} → ${ae}`:`latest: ${oe}`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:ie}}),(0,K.jsx)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:oe})]}),(0,K.jsxs)(`span`,{className:`hidden md:inline text-[var(--color-fg-4)]`,children:[n.length,`n`]}),s?(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-amber-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-amber-400`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`idle`})]}):(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`live`})]}),!m&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 ml-1`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:v,className:`px-1.5 py-0.5 rounded border text-[10px] uppercase tracking-wider transition-colors ${u?`border-amber-500/60 text-amber-300`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:text-amber-300 hover:border-amber-500/40`}`,title:u?`Unpin`:`Pin to top`,children:`pin`}),(0,K.jsx)(`button`,{type:`button`,onClick:y,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:d?`Expand`:`Minimize`,children:d?`+`:`–`}),(0,K.jsx)(`button`,{type:`button`,onClick:te,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:`Preview PNG snapshot of this panel`,children:`▣`}),(0,K.jsx)(`button`,{type:`button`,onClick:b,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:f?`Exit fullscreen`:`Fullscreen`,children:f?`×`:`⛶`}),x&&(0,K.jsx)(`button`,{type:`button`,onClick:x,"aria-label":`Close session ${t}`,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-rose-300 hover:border-rose-500/40 transition-colors`,title:`End this session on the graph`,children:`╳`})]})]})]}),!d&&!m&&!C&&(0,K.jsx)(Fs,{sessionKey:t,className:`rounded-none border-x-0 border-t-0 border-b border-[var(--color-line-1)] shrink-0`}),A&&(0,K.jsxs)(`div`,{className:`absolute inset-0 z-40 flex flex-col items-center justify-center gap-3 bg-black/80 backdrop-blur-sm p-4`,children:[(0,K.jsx)(`img`,{src:A,alt:`Panel snapshot`,className:`max-w-full max-h-[60%] rounded-sm border border-[var(--color-line-1)] object-contain`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[M&&(0,K.jsx)(`button`,{type:`button`,onClick:re,className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-2)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,children:`copy`}),(0,K.jsx)(`button`,{type:`button`,onClick:ne,className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-2)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,children:`download`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>j(null),className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-3)] hover:text-rose-300 hover:border-rose-500/40 transition-colors`,children:`close`})]})]}),!d&&(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 relative`,children:[(0,K.jsx)(kd,{sessionKey:t}),(0,K.jsx)(Os,{bursts:F,paused:P,selectedId:i,onSelect:a,burstSeq:o,compact:!0,activePanelCount:g,labelDensity:w,onFrameTime:S}),m&&(0,K.jsx)(`button`,{type:`button`,onClick:h,"aria-label":`Promote ${E} to spotlight`,title:`Spotlight ${E}${D?` · ${D}`:``}`,className:`absolute inset-0 cursor-pointer bg-transparent hover:bg-sky-400/5 transition-colors`})]})]})}),jd=200;function Md(e){let t=Date.now()-e;return t<2e3?`now`:t<6e4?`${Math.floor(t/1e3)}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:`${Math.floor(t/36e5)}h ago`}function Nd(e){let t=e/1e6;return t<1e3?`${Math.round(t)}ms`:t<6e4?`${(t/1e3).toFixed(1)}s`:`${Math.floor(t/6e4)}m${Math.floor(t%6e4/1e3)}s`}function Pd(e){let{bursts:t,selectedId:n,onSelect:r}=e,i=(0,_.useMemo)(()=>{let e=new Map;for(let n of t){if(di(n.tool))continue;let t=Ja(n),r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}let n=Array.from(e.entries());return n.sort((e,t)=>{let n=e[1][e[1].length-1]?.ts_ms??0;return(t[1][t[1].length-1]?.ts_ms??0)-n}),n},[t]);return t.length===0?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center text-center px-4`,children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`feed · idle`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[260px]`,children:[`Each entry is one tool call your AI agent made.`,(0,K.jsx)(`br`,{}),`Color = the ssg rule decision.`]})]}):(0,K.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto px-3 py-3 space-y-5`,children:i.map(([e,t])=>{let i=e.indexOf(`:`),a=i>=0?e.slice(0,i):e;i>=0&&e.slice(i+1);let o=t[t.length-1],s=o?Ya[o.decision]??`#6b7280`:`#6b7280`,c=t.slice(-jd).reverse();return(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 pb-1 border-b border-[var(--color-line-1)] text-[11px]`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:s}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] font-medium`,children:ui(a)}),(0,K.jsxs)(`span`,{className:`ml-auto text-[10px] text-[var(--color-fg-4)]`,children:[t.length,` `,t.length===1?`action`:`actions`]})]}),(0,K.jsxs)(`div`,{className:`relative pl-4`,children:[(0,K.jsx)(`div`,{className:`absolute left-[7px] top-0 bottom-0 w-px`,style:{background:`${s}33`}}),(0,K.jsx)(`div`,{className:`space-y-1.5`,children:c.map(e=>{let t=e.audit_id??`${e.ts_ms}:${e.tool}`,i=t===n,a=Ya[e.decision]??`#6b7280`,o=e.input_tokens??0,s=e.output_tokens??0,c=o>0||s>0;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`span`,{className:`absolute -left-[9px] top-1/2 -translate-y-1/2 w-[6px] h-[6px] rounded-full border border-[var(--color-surface-1)]`,style:{background:a}}),(0,K.jsxs)(`button`,{type:`button`,onClick:()=>r(i?null:t),className:`w-full text-left flex items-center gap-2 px-2.5 py-1.5 rounded-sm border text-[11.5px] transition-colors ${i?`border-sky-500/50 bg-sky-500/5 text-[var(--color-fg-1)]`:`border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-[var(--color-fg-2)] hover:bg-white/3 hover:border-[var(--color-line-2)]`}`,children:[(0,K.jsx)(`span`,{className:`flex-1 font-medium truncate text-[var(--color-fg-1)]`,title:e.tool,children:li(e.tool)}),(0,K.jsxs)(`span`,{className:`shrink-0 flex items-center gap-2 text-[9px] text-[var(--color-fg-4)]`,children:[c&&(0,K.jsxs)(`span`,{className:`font-mono`,title:`Input: ${o} tokens · Output: ${s} tokens`,children:[`↓`,Z(o),` `,`↑`,Z(s)]}),e.duration_ns>0&&(0,K.jsx)(`span`,{children:Nd(e.duration_ns)}),(0,K.jsx)(`span`,{className:`px-1.5 py-px rounded text-[9px] font-semibold tracking-wide`,style:{color:a,background:`${a}22`},children:e.decision===`allow`?`Allowed`:e.decision===`block`?`Blocked`:e.decision===`ask`?`Held`:e.decision===`force`?`Forced`:e.decision===`log`?`Logged`:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:Md(e.ts_ms)})]})]})]},t)})})]})]},e)})})}function Fd(e){let{playback:t,bursts:n,rangeStart:r,rangeEnd:i,loading:a,onPlayhead:o,onLive:s,onPause:c,onResume:l,on24h:u}=e,d=(0,_.useRef)(null),f=(0,_.useRef)(!1),p=Math.max(1,i-r),m=(t.playhead_ms-r)/p*100,h=Math.max(0,Math.min(100,m)),g=(0,_.useMemo)(()=>{let e=[];for(let t=0;t<200;t++)e.push({allow:0,block:0,ask:0,other:0});for(let t of n){let n=t.ts_ms;if(n<r||n>i)continue;let a=e[Math.floor((n-r)/p*199)];t.decision===`allow`?a.allow++:t.decision===`block`||t.decision===`force`?a.block++:t.decision===`ask`?a.ask++:a.other++}return e},[n,r,i,p]),v=(0,_.useCallback)(e=>{let t=d.current;if(!t)return;let n=t.getBoundingClientRect(),i=Math.max(0,Math.min(1,(e-n.left)/n.width));if(i>=.98){s();return}o(r+i*p)},[r,p,o,s]);(0,_.useEffect)(()=>{let e=e=>{f.current&&v(e.clientX)},t=()=>{f.current=!1};return window.addEventListener(`pointermove`,e),window.addEventListener(`pointerup`,t),()=>{window.removeEventListener(`pointermove`,e),window.removeEventListener(`pointerup`,t)}},[v]);let y=t.mode===`live`;return(0,K.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono uppercase tracking-wider`,children:[(0,K.jsx)(`button`,{onClick:()=>y?c():l(),className:`px-2.5 py-1 rounded-sm border transition-colors cursor-pointer ${y?`border-emerald-500/40 text-emerald-300 hover:bg-emerald-500/10`:`border-amber-500/40 text-amber-300 hover:bg-amber-500/10`}`,title:y?`Pause the live stream`:`Resume updates at this playhead`,children:y?`⏸ pause`:`▶ resume`}),(0,K.jsx)(`button`,{onClick:s,disabled:y,className:`px-2.5 py-1 rounded-sm border transition-colors cursor-pointer ${y?`border-[var(--color-line-1)] text-[var(--color-fg-4)] opacity-50`:`border-sky-500/40 text-sky-300 hover:bg-sky-500/10`}`,title:`Jump to live (now)`,children:`⏭ live`}),(0,K.jsx)(`button`,{onClick:u,className:`px-2.5 py-1 rounded-sm border border-violet-500/40 text-violet-300 hover:bg-violet-500/10 transition-colors cursor-pointer`,title:`Expand to last 24h — window covers now−24h through now. Backfills audit_log so the scrubber shows all recent evals.`,children:`◉ 24h`}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`mode`}),(0,K.jsx)(`span`,{className:y?`text-emerald-300`:t.mode===`paused`?`text-amber-300`:`text-violet-300`,children:t.mode}),a&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] animate-pulse`,children:`· backfilling`}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`· t=`,Id(t.playhead_ms)]})]}),(0,K.jsxs)(`div`,{ref:d,className:`relative h-10 w-full rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] cursor-pointer overflow-hidden select-none`,onPointerDown:e=>{f.current=!0,e.target.setPointerCapture?.(e.pointerId),v(e.clientX)},children:[(0,K.jsx)(`svg`,{viewBox:`0 0 200 40`,preserveAspectRatio:`none`,className:`absolute inset-0 w-full h-full`,"aria-hidden":!0,children:g.map((e,t)=>{let n=e.allow+e.block+e.ask+e.other;if(n===0)return null;let r=Math.min(32,n*3),i=e.block>0?Ya.block:e.ask>0?Ya.ask:Ya.allow;return(0,K.jsx)(`rect`,{x:t,y:40-r,width:.9,height:r,fill:i,opacity:.7},t)})}),(0,K.jsx)(`div`,{className:`absolute top-0 bottom-0 w-px bg-sky-300 pointer-events-none`,style:{left:`${h}%`},children:(0,K.jsx)(`div`,{className:`absolute -top-0.5 -translate-x-1/2 w-2 h-2 rotate-45 bg-sky-300`})}),y&&(0,K.jsx)(`div`,{className:`absolute top-0 right-0 bottom-0 w-[2px] bg-emerald-400 animate-pulse pointer-events-none`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-[10px] font-mono text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{children:Ld(r)}),(0,K.jsxs)(`span`,{className:`uppercase tracking-wider`,children:[Rd(t.window_ms),` window`]}),(0,K.jsx)(`span`,{children:Ld(i)})]})]})}function Id(e){let t=Date.now()-e;if(Math.abs(t)<1500)return`live`;let n=Math.round(t/1e3);if(n<60)return`−${n}s`;let r=Math.floor(n/60);return r<60?`−${r}m${n%60}s`:`−${Math.floor(r/60)}h${r%60}m`}function Ld(e){return new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function Rd(e){return e<6e4?`${Math.round(e/1e3)}s`:e<36e5?`${Math.round(e/6e4)}m`:`${Math.round(e/36e5)}h`}var zd=320,Bd=8,Vd=12;function Hd(e){let{burst:t,anchor:n,onClose:r}=e,i=(0,_.useRef)(null),[a,o]=(0,_.useState)({left:-9999,top:-9999});if((0,_.useEffect)(()=>{if(!t)return;let e=e=>{e.key===`Escape`&&r()},n=e=>{i.current&&!i.current.contains(e.target)&&r()};return document.addEventListener(`keydown`,e),document.addEventListener(`mousedown`,n),()=>{document.removeEventListener(`keydown`,e),document.removeEventListener(`mousedown`,n)}},[t,r]),(0,_.useLayoutEffect)(()=>{if(!t||!n||!i.current)return;let e=i.current.getBoundingClientRect(),r=window.innerWidth,a=window.innerHeight,s=e.height>0?e.height:280,c=n.x+Vd+zd>r?n.x-Vd-zd:n.x+Vd,l=n.y+Vd+s>a?n.y-Vd-s:n.y+Vd;c=Math.min(Math.max(Bd,c),r-zd-Bd),l=Math.min(Math.max(Bd,l),a-s-Bd),o({left:c,top:l})},[t,n]),(0,_.useEffect)(()=>{o({left:-9999,top:-9999})},[t]),!t||!n)return null;let s=Ya[t.decision]??`#6b7280`,c=t.duration_ns/1e6,l=Date.now()-t.ts_ms;return(0,K.jsxs)(`div`,{ref:i,className:`fixed z-50 flex flex-col gap-3 text-[12px] font-mono rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] shadow-2xl p-4`,style:{left:a.left,top:a.top,width:zd,maxHeight:`80vh`,overflowY:`auto`},children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-3)]`,children:`node · inspect`}),(0,K.jsx)(`button`,{onClick:r,className:`text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] cursor-pointer`,title:`Close inspector`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full`,style:{background:s},"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider`,style:{color:s},children:t.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:t.tool})]}),(0,K.jsxs)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-[11px]`,children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`rule`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-all`,children:t.rule_id??`—`}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`client`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.client}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`agent`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.agent_id?(0,K.jsx)(`span`,{className:`chip text-violet-300 border-violet-500/30`,children:t.agent_id}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`—`})}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`eval duration`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:c<1?`${(c*1e3).toFixed(0)}µs`:`${c.toFixed(2)}ms`}),t.complete_duration_ms!=null&&t.complete_duration_ms>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`tool duration`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.complete_duration_ms>=1e3?`${(t.complete_duration_ms/1e3).toFixed(2)}s`:`${t.complete_duration_ms.toFixed(0)}ms`})]}),t.message&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`reason`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-words`,children:t.message})]}),(t.input_tokens!=null||t.output_tokens!=null)&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`tokens`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:Gd(t.input_tokens,t.output_tokens)})]}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`age`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:Ud(l)}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`timestamp`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:new Date(t.ts_ms).toLocaleString()})]}),t.input_preview&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:`input`}),(0,K.jsx)(`pre`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-0)] rounded-sm p-2 text-[10px] text-[var(--color-fg-2)] whitespace-pre-wrap break-all max-h-48 overflow-y-auto`,children:t.input_preview})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[t.audit_id&&(0,K.jsx)(`a`,{href:`/audit?id=${encodeURIComponent(t.audit_id)}`,className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)] hover:text-[var(--color-fg-1)]`,title:`Open full audit record`,children:`audit ↗`}),t.rule_id&&(0,K.jsx)(`a`,{href:`/rules#${encodeURIComponent(t.rule_id)}`,className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)] hover:text-[var(--color-fg-1)]`,title:`Jump to rule`,children:`rule ↗`})]})]})}function Ud(e){if(e<1500)return`just now`;let t=Math.floor(e/1e3);if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m${t%60}s ago`:`${Math.floor(n/60)}h${n%60}m ago`}function Wd(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}K`:e<1e6?`${Math.round(e/1e3)}K`:`${(e/1e6).toFixed(1)}M`}function Gd(e,t){let n=[];return e!=null&&n.push(`${Wd(e)} in`),t!=null&&n.push(`${Wd(t)} out`),n.length>0?n.join(` · `):`—`}function Kd(e){let t=new Map;for(let n of e){let e=`${n.client}:${n.agent_id??`solo`}`,r=t.get(e);r?(r.count+=1,n.ts_ms>r.newest_ts_ms&&(r.newest_ts_ms=n.ts_ms)):t.set(e,{client:n.client,agent_id:n.agent_id??`solo`,count:1,newest_ts_ms:n.ts_ms})}return Array.from(t.values()).sort((e,t)=>t.newest_ts_ms===e.newest_ts_ms?t.count-e.count:t.newest_ts_ms-e.newest_ts_ms)}function qd(e){let{bursts:t,allBursts:n}=e,r=n??t,{toolCounts:i,decisionCounts:a,ruleCounts:o,unmatchedCount:s}=(0,_.useMemo)(()=>{let e=new Map,n=new Map,r=new Map,i=0;for(let a of t)if(e.set(a.tool,(e.get(a.tool)??0)+1),n.set(a.decision,(n.get(a.decision)??0)+1),a.rule_id){let e=r.get(a.rule_id);e?(e.count+=1,e.decisions.add(a.decision)):r.set(a.rule_id,{count:1,decisions:new Set([a.decision])})}else i+=1;return{toolCounts:Array.from(e.entries()).sort((e,t)=>t[1]-e[1]),decisionCounts:Array.from(n.entries()),ruleCounts:Array.from(r.entries()).map(([e,t])=>({id:e,count:t.count,decisions:t.decisions})).sort((e,t)=>t.count-e.count),unmatchedCount:i}},[t]),c=(0,_.useMemo)(()=>Kd(r),[r]),l=i[0]?.[1]??0,u=c[0]?.count??0,d=o[0]?.count??0,f=e=>{for(let t of[`block`,`ask`,`force`,`log`,`allow`,`shadow`])if(e.has(t))return Ya[t];return`#6b7280`};return(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 text-[11px] font-mono`,children:[(0,K.jsx)(`div`,{className:`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-0)] p-2 text-[10px] text-[var(--color-fg-3)] leading-relaxed`,children:`Each dot is one tool call by an AI agent. Color encodes the ssg rule decision; lines link calls from the same agent in time order.`}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`rules · `,o.length,` matched`,s>0&&(0,K.jsxs)(`span`,{className:`ml-2 text-[var(--color-fg-4)] normal-case tracking-normal`,children:[s,` unmatched`]})]}),o.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no rules matched in window`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:o.slice(0,6).map(e=>{let t=d>0?e.count/d*100:0,n=f(e.decisions);return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,title:`${e.id} — decisions: ${Array.from(e.decisions).join(`, `)}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:n},"aria-hidden":!0}),(0,K.jsx)(`a`,{href:`/rules#${encodeURIComponent(e.id)}`,className:`truncate text-[var(--color-fg-2)] hover:text-[var(--color-fg-1)]`,children:e.id}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full`,style:{background:n,width:`${t}%`,opacity:.6}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:e.count})]},e.id)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:`decisions`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1`,children:[`allow`,`block`,`ask`,`log`,`force`,`shadow`].map(e=>{let t=a.find(([t])=>t===e)?.[1]??0;return(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:Ya[e]},"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider`,children:e}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] tabular-nums`,children:t})]},e)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`agents · `,c.length,` active`,n&&n!==t&&(0,K.jsx)(`span`,{className:`ml-2 text-[var(--color-fg-4)] normal-case tracking-normal`,children:`roster: today`})]}),c.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no agents in window`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:c.slice(0,8).map(e=>{let t=u>0?e.count/u*100:0,n=`${e.client}:${e.agent_id}`,r=Date.now()-e.newest_ts_ms,i=r<5e3;return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,title:`${n} — last eval ${Math.max(0,Math.round(r/1e3))}s ago`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[i?(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft shrink-0`,"aria-hidden":!0}):(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 bg-[var(--color-fg-4)]/40`,"aria-hidden":!0}),(0,K.jsxs)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:[e.client,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`:`,e.agent_id]})]}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-violet-400/60`,style:{width:`${t}%`}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:e.count})]},n)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`tools · `,t.length,` in window`]}),i.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no tool activity`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:i.slice(0,8).map(([e,t])=>{let n=l>0?t/l*100:0;return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:e}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-sky-400/60`,style:{width:`${n}%`}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:t})]},e)})})]})]})}var Jd=[100,500,1e3,5e3,1e4,1e5];function Yd(e){return e>=1e5||e>=1e3?`${e/1e3|0}k`:String(e)}function Xd(e){let t=Math.floor(e/100),n=Math.floor(t/600),r=Math.floor(t%600/10),i=t%10;return`${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}.${i}`}function Zd(e){let t=Math.floor(e/100);return`${Math.floor(t/10)}.${t%10}s`}function Qd({className:e,onMilestone:t,onRecord:n}){let r=(0,_.useRef)(null),i=(0,_.useRef)(null),[a,o]=(0,_.useState)(0),[s,c]=(0,_.useState)(0),[l,u]=(0,_.useState)(0),[d,f]=(0,_.useState)(0),[p,m]=(0,_.useState)(0),[h,g]=(0,_.useState)(``),[v,y]=(0,_.useState)(!1),[b,x]=(0,_.useState)(!1),S=Ee(),C=Oe(),w=De(),T=(0,_.useRef)(null),E=(0,_.useRef)(0),D=(0,_.useRef)(0),O=(0,_.useRef)(0),ee=(0,_.useRef)(0),k=(0,_.useRef)(new Set),A=(0,_.useRef)(performance.now());(0,_.useEffect)(()=>{let e=performance.now();if(ot()){let t=setInterval(()=>{let t=performance.now();r.current&&(r.current.textContent=Xd(t-e)),i.current&&(i.current.textContent=Zd(t-A.current))},1e3);return()=>clearInterval(t)}let[t]=vr(()=>{let t=performance.now();r.current&&(r.current.textContent=Xd(t-e)),i.current&&(i.current.textContent=Zd(t-A.current))});return t},[]);let j=(0,_.useRef)(0);return(0,_.useEffect)(()=>{if(T.current===null){T.current=C,E.current=C;return}if(C<=E.current)return;let e=C-E.current;E.current=C,u(n=>{let r=n+e,i=Jd.find(e=>e>ee.current&&r>=e);return i&&(ee.current=i,g(Yd(i)),x(!0),t?.(),setTimeout(()=>{g(``),x(!1)},700)),r});let r=Date.now();if(r-j.current>=1e3){j.current=r;let e=w.filter(e=>r-e.ts_ms<=6e4);f(new Set(e.map(e=>`${e.client}:${e.agent_id??`solo`}`)).size)}S?.rule_id&&k.current.add(S.rule_id),m(k.current.size),S&&(S.decision===`block`?(D.current=0,o(0),A.current=performance.now()):(D.current+=e,D.current>O.current&&(O.current=D.current,c(O.current),y(!0),n?.(),setTimeout(()=>y(!1),450)),o(D.current)))},[C,S,w,t,n]),(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex flex-col gap-2 p-3 rounded-md`,`bg-[var(--color-bg-2,#0c0d12)]/95`,`border border-[var(--color-border-1,#1c1f26)]`,`shadow-lg shadow-black/40`,`min-w-[180px] font-mono text-[11px]`,`text-[var(--color-fg-2,#9aa1ad)]`,b&&`milestone-ring`,e),"aria-label":`Live engagement counters`,children:[(0,K.jsx)($d,{label:`uptime`,children:(0,K.jsx)(`span`,{ref:r,className:`tabular-nums text-[var(--color-fg-0,#e6e8ed)] text-[15px] tracking-tight`,children:`00:00.0`})}),(0,K.jsx)($d,{label:`evals`,children:(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(fr,{value:l,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`}),h&&(0,K.jsxs)(`span`,{className:`text-[10px] text-emerald-400 uppercase tracking-wide`,children:[`+`,h]})]})}),(0,K.jsx)($d,{label:`since block`,children:(0,K.jsx)(`span`,{ref:i,className:`tabular-nums text-emerald-300 text-[15px]`,children:`0.0s`})}),(0,K.jsx)($d,{label:`streak / best`,children:(0,K.jsxs)(`span`,{className:G(`tabular-nums text-[15px]`,v?`record-beat`:`text-[var(--color-fg-0,#e6e8ed)]`),children:[(0,K.jsx)(fr,{value:a,curve:`spring`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4,#5a6071)] mx-1`,children:`/`}),(0,K.jsx)(fr,{value:s})]})}),(0,K.jsx)($d,{label:`agents`,children:(0,K.jsx)(fr,{value:d,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`})}),(0,K.jsx)($d,{label:`rules`,children:(0,K.jsx)(fr,{value:p,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`})})]})}function $d({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[10px] text-[var(--color-fg-4,#5a6071)]`,children:e}),t]})}var ef=80,tf=600,nf=Object.freeze({stop:()=>{},count:0}),rf=new Set([`allow`,`block`,`ask`,`log`,`force`,`shadow`]);function af(e){if(!Lo()||e.length===0)return nf;let t=[],n=!1,r=0;for(let i=0;i<e.length;i++){let a=e[i];if(i>0){let t=e[i-1],n=Math.max(0,a.ts_ms-t.ts_ms),o=ef+Math.log2(1+n)*14;r+=Math.max(ef,Math.min(tf,o))}let o=rf.has(a.decision)?a.decision:null;if(!o)continue;let s=setTimeout(()=>{n||Uo(o)},r);t.push(s)}return{count:t.length,stop(){if(!n){n=!0;for(let e of t)clearTimeout(e);t.length=0}}}}function of(e){let{sessionKey:t,entries:n,loading:r,error:i,playingIndex:a}=e,o=(0,_.useRef)(null),s=(0,_.useRef)(new Map);(0,_.useEffect)(()=>{if(a<0)return;let e=s.current.get(a);e&&e.scrollIntoView({behavior:`smooth`,block:`nearest`})},[a]);let c=e=>t=>{t?s.current.set(e,t):s.current.delete(e)};return(0,K.jsxs)(`div`,{className:`flex flex-col h-full min-h-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] overflow-hidden`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between px-3 py-1.5 border-b border-[var(--color-line-1)] bg-black/30 shrink-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono`,children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-3)]`,children:`audit log`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] truncate`,title:t,children:t})]}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:r?`loading…`:i?`error`:`${n.length} event${n.length===1?``:`s`}`})]}),(0,K.jsxs)(`div`,{ref:o,className:`flex-1 min-h-0 overflow-y-auto divide-y divide-[var(--color-line-1)]/40`,children:[i&&(0,K.jsx)(`div`,{className:`px-3 py-4 text-[11px] font-mono text-rose-300`,children:i}),!i&&!r&&n.length===0&&(0,K.jsx)(`div`,{className:`px-3 py-4 text-[11px] font-mono text-[var(--color-fg-4)]`,children:`No audit entries for this session yet.`}),n.map((e,t)=>{let n=Ya[e.decision]??`#6b7280`,r=t===a,i=e.duration_ns==null?null:e.duration_ns/1e6;return(0,K.jsxs)(`div`,{ref:c(t),className:`relative px-3 py-2 transition-colors ${r?`bg-white/[0.04] ring-1 ring-inset ring-sky-400/40`:`hover:bg-white/[0.02]`}`,children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`absolute left-0 top-0 bottom-0 w-1`,style:{background:n}}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2 text-[11px] font-mono`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`uppercase tracking-wider shrink-0`,style:{color:n},children:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] truncate`,children:e.tool})]}),(0,K.jsx)(`span`,{className:`shrink-0 text-[10px] text-[var(--color-fg-4)] tabular-nums`,children:sf(e.ts_ms)})]}),(e.rule_id||i!=null)&&(0,K.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-2 text-[10px] font-mono text-[var(--color-fg-4)]`,children:[e.rule_id&&(0,K.jsxs)(`span`,{className:`truncate`,title:e.rule_id,children:[`rule · `,e.rule_id]}),i!=null&&(0,K.jsx)(`span`,{className:`tabular-nums shrink-0`,children:i<1?`${(i*1e3).toFixed(0)}µs`:`${i.toFixed(2)}ms`})]}),e.rule_message&&(0,K.jsx)(`div`,{className:`mt-1 text-[10px] font-mono text-[var(--color-fg-3)] break-words`,children:e.rule_message}),e.input_preview&&(0,K.jsx)(`pre`,{className:`mt-1 text-[10px] text-[var(--color-fg-3)] whitespace-pre-wrap break-all bg-black/30 rounded-sm px-2 py-1 max-h-24 overflow-y-auto`,children:e.input_preview})]},e.id)})]})]})}function sf(e){let t=new Date(e);return`${String(t.getHours()).padStart(2,`0`)}:${String(t.getMinutes()).padStart(2,`0`)}:${String(t.getSeconds()).padStart(2,`0`)}`}var cf=1200,lf=3e4,uf=3e3,df=6,ff=3,pf=`graph.panelState.v1`,mf=14400*1e3;function hf(e,t){let n=new Map;for(let t of e){let e=Ja(t),r=n.get(e);r?r.push(t):n.set(e,[t])}for(let[e,r]of n){let i=t.get(e);i&&i.length===r.length&&i[i.length-1]===r[r.length-1]&&n.set(e,i)}return n}function gf(){if(typeof window>`u`)return new Map;try{let e=window.localStorage.getItem(pf);if(!e)return new Map;let t=JSON.parse(e);return new Map(Object.entries(t))}catch{return new Map}}function _f(e){if(!(typeof window>`u`))try{let t={};for(let[n,r]of e)t[n]=r;window.localStorage.setItem(pf,JSON.stringify(t))}catch{}}function vf(){let e=uo(),t=Oe(),n=Ee(),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)(null),s=(0,_.useCallback)((e,t)=>{i(e),o(t??null)},[]),c=Us();(0,_.useEffect)(()=>{n&&(n.decision===`block`?c.play(`block`):n.decision===`force`&&c.play(`force`))},[t]);let l=(0,_.useCallback)(()=>c.play(`milestone`),[c]),u=(0,_.useCallback)(()=>c.play(`record`),[c]),[d,f]=(0,_.useState)(()=>{if(typeof window>`u`)return`full`;try{let e=window.localStorage.getItem(`graph.viewMode.v1`);if(e===`full`||e===`feed`||e===`stream`||e===`broadcast`)return e}catch{}return`full`});(0,_.useEffect)(()=>{if(!(typeof window>`u`))try{window.localStorage.setItem(`graph.viewMode.v1`,d)}catch{}},[d]),(0,_.useEffect)(()=>{let e=e=>e===`full`?`feed`:e===`feed`?`stream`:e===`stream`?`broadcast`:`full`,t=t=>{if(t.key===`Escape`&&d!==`full`){f(`full`);return}if(t.key===`b`||t.key===`B`){let n=t.target?.tagName;if(n===`INPUT`||n===`TEXTAREA`)return;f(e)}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[d]);let p=d===`broadcast`,m=d===`stream`,h=d===`feed`,g=m||p,v=p,y=m,[b,x]=(0,_.useState)(()=>{if(typeof window>`u`)return!1;try{return window.localStorage.getItem(`ssg.sfx.enabled`)===null}catch{return!1}}),S=(0,_.useCallback)(()=>{c.toggle(),x(!1)},[c]),[C,w]=(0,_.useState)(()=>typeof window<`u`&&window.matchMedia(`(max-width: 767px)`).matches);(0,_.useEffect)(()=>{let e=window.matchMedia(`(max-width: 767px)`),t=e=>w(e.matches);return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[]);let[T,E]=(0,_.useState)(!1),D=(0,_.useRef)(null),O=(0,_.useCallback)(async e=>{try{await fetch(`/api/json/graph/close-sessions`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`same-origin`,body:JSON.stringify(e.length>0?{session_keys:e}:{})})}catch{}E(!1),D.current&&clearTimeout(D.current)},[]),ee=(0,_.useCallback)(e=>{if(!T){E(!0),D.current&&clearTimeout(D.current),D.current=setTimeout(()=>E(!1),3e3);return}O(e)},[T,O]);(0,_.useEffect)(()=>()=>{D.current&&clearTimeout(D.current)},[]);let k=(0,_.useRef)(new Map),A=(0,_.useRef)(0),[j,te]=(0,_.useState)({fps:0,active:0,hitches:0}),ne=(0,_.useCallback)((e,t)=>{k.current.set(e,t),t>33&&(A.current+=1)},[]);(0,_.useEffect)(()=>{let e=setInterval(()=>{let e=k.current,t=A.current;if(A.current=0,e.size===0){te(e=>e.active===0?e:{fps:0,active:0,hitches:0});return}let n=0;for(let t of e.values())n+=t;let r=n/e.size,i=r>0?Math.max(1,Math.round(1e3/r)):0;te(n=>n.fps===i&&n.active===e.size&&n.hitches===t?n:{fps:i,active:e.size,hitches:t})},1e3);return()=>clearInterval(e)},[]);let{bursts:re,playback:M,oldest_known_ms:N,newest_known_ms:ie,loading_backfill:ae}=e.snapshot,oe=(0,_.useRef)(new Map),P=(0,_.useMemo)(()=>{let e=hf(re,oe.current);return oe.current=e,e},[re]),[F,I]=(0,_.useState)(()=>gf()),[L,R]=(0,_.useState)(null);(0,_.useEffect)(()=>{_f(F)},[F]),(0,_.useEffect)(()=>{let e=Date.now(),t=!1,n=new Map(F);for(let r of P.keys())n.has(r)||(n.set(r,{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:e}),t=!0);for(let[r,i]of n)P.has(r)||i.pinned||e-i.firstSeenAt<mf||(n.delete(r),t=!0);t&&I(n)},[P,F]);let se=(0,_.useRef)(new Map),ce=(0,_.useRef)(new Set),le=(0,_.useRef)(new Map),[,ue]=(0,_.useState)(0);(0,_.useEffect)(()=>{let e=performance.now(),t=se.current,n=ce.current,r=le.current,i=new Set;for(let[e,n]of P)i.add(e),r.set(e,n.slice()),t.delete(e);for(let a of n)if(!i.has(a)&&!t.has(a)){let n=r.get(a)??[],i=n[n.length-1]?.ts_ms??0;t.set(a,{bursts:n,diedAt:e,newestTs:i})}for(let[n,i]of t)e-i.diedAt>=cf&&(t.delete(n),r.delete(n));if(ce.current=i,t.size>0){let n=1/0;for(let e of t.values())n=Math.min(n,e.diedAt+cf);let r=Math.max(16,n-e+16),i=setTimeout(()=>ue(e=>e+1),r);return()=>clearTimeout(i)}},[P]);let de=(0,_.useCallback)(e=>{I(t=>{let n=new Map(t),r=n.get(e)??{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()};return n.set(e,{...r,pinned:!r.pinned,pinnedAt:r.pinned?0:Date.now()}),n})},[]),fe=(0,_.useCallback)(e=>{I(t=>{let n=new Map(t),r=n.get(e)??{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()};return n.set(e,{...r,minimized:!r.minimized}),n})},[]),pe=(0,_.useCallback)(e=>{R(t=>t===e?null:e)},[]);(0,_.useEffect)(()=>{if(!L)return;let e=e=>{e.key===`Escape`&&R(null)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[L]);let me=(0,_.useRef)(null),[he,ge]=(0,_.useState)(null);(0,_.useEffect)(()=>{if(!L){me.current?.stop(),me.current=null,ge(null);return}let e=!1;ge({sessionKey:L,entries:[],loading:!0,error:null});let t=`/api/json/graph/session-audit?session_key=${encodeURIComponent(L)}`;return fetch(t,{credentials:`same-origin`}).then(e=>e.ok?e.json():Promise.reject(Error(`HTTP ${e.status}`))).then(t=>{if(e)return;let n=Array.isArray(t.rows)?t.rows:[];ge({sessionKey:L,entries:n,loading:!1,error:null});let r=n.map(e=>({ts_ms:e.ts_ms,decision:e.decision,tool:e.tool}));me.current?.stop(),me.current=af(r)}).catch(t=>{e||ge({sessionKey:L,entries:[],loading:!1,error:t instanceof Error?t.message:`failed to load audit log`})}),()=>{e=!0,me.current?.stop(),me.current=null}},[L]);let z=(0,_.useMemo)(()=>{let e={pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()},t=[];for(let[n,r]of P){let i=r[r.length-1]?.ts_ms??0;t.push({key:n,bursts:r,newestTs:i,fadingOutAt:null,state:F.get(n)??e})}for(let[n,r]of se.current)P.has(n)||t.push({key:n,bursts:r.bursts,newestTs:r.newestTs,fadingOutAt:r.diedAt,state:F.get(n)??e});return t.sort((e,t)=>e.state.pinned===t.state.pinned?e.state.pinned&&t.state.pinned?e.state.pinnedAt-t.state.pinnedAt:e.state.firstSeenAt-t.state.firstSeenAt:e.state.pinned?-1:1),t},[P,F]),_e=(0,_.useMemo)(()=>{if(!r)return null;for(let e of re)if((e.audit_id??`${e.ts_ms}:${e.tool}`)===r||r.startsWith(`${e.ts_ms}:${e.tool}`))return e;return null},[re,r]),[ve,ye]=(0,_.useState)(null),be=(0,_.useRef)(null),xe=(0,_.useMemo)(()=>{if(z.length===0)return be.current=null,null;if(ve!=null&&z.some(e=>e.key===ve))return be.current=ve,ve;let e=z.filter(e=>e.state.pinned);if(e.length>0)return e.sort((e,t)=>t.state.pinnedAt-e.state.pinnedAt),be.current=e[0].key,e[0].key;let t=z[0];for(let e of z)e.newestTs>t.newestTs&&(t=e);let n=be.current;if(n!=null&&n!==t.key){let e=z.find(e=>e.key===n);if(e&&Date.now()-e.newestTs<uf)return n}return be.current=t.key,t.key},[z,ve]);(0,_.useEffect)(()=>{ve!=null&&(z.some(e=>e.key===ve)||ye(null))},[ve,z]),(0,_.useEffect)(()=>{ye(null)},[d]);let Se=(0,_.useMemo)(()=>{if(z.length===0)return{hero:null,grid:[],rail:[],overflow:[]};if(d===`full`||d===`feed`)return{hero:null,grid:z.slice(0,df),rail:z.slice(df),overflow:[]};let e=z.find(e=>e.key===xe)??z[z.length-1],t=z.filter(t=>t.key!==e.key);return d===`broadcast`?{hero:e,grid:[],rail:[],overflow:t}:{hero:e,grid:[],rail:t.slice(0,ff),overflow:t.slice(ff)}},[z,d,xe]),Ce=(0,_.useCallback)(e=>{ye(e)},[]),we=(0,_.useCallback)(()=>{ye(null)},[]),Te=(0,_.useMemo)(()=>{let e=new Map,t=new Map,n=new Map,r=new Map,i=new Map,a=new Map;for(let o of z){let s=o.key;e.set(s,()=>de(s)),t.set(s,()=>fe(s)),n.set(s,()=>pe(s)),r.set(s,()=>void O([s])),i.set(s,e=>ne(s,e)),a.set(s,()=>Ce(s))}return{onTogglePin:e,onToggleMinimize:t,onToggleFullscreen:n,onClose:r,onFrameTime:i,onPromote:a}},[z.map(e=>e.key).join(`,`),de,fe,pe,O,ne,Ce]);(0,_.useEffect)(()=>{let e=new Set(z.map(e=>e.key)),t=k.current;for(let n of Array.from(t.keys()))e.has(n)||t.delete(n)},[z]);let De=(0,_.useMemo)(()=>{let e=n?.counters,t=e?.total??0,r=(e?.block??0)+(e?.force??0),i=0;if(re.length>0){let e=0,t=re.slice(-100);for(let n of t)e+=n.duration_ns;i=e/t.length/1e6}return{evals:t,blocks:r,avgMs:i,agents:z.length}},[n,re,z.length]),B=Math.min(N,M.playhead_ms-M.window_ms),ke=Math.max(ie,M.playhead_ms),V=Se.grid.length,Ae=C||V<=1?1:V<=4?2:3,je=Math.max(1,Math.ceil(Math.max(1,V)/Ae)),Me=V<=1||C?360:180,Ne=L?z.find(e=>e.key===L):null,Pe=e=>e>=1e4?`${Math.round(e/1e3)}k`:e.toLocaleString();return(0,K.jsxs)(`div`,{className:`grid gap-3 md:h-[calc(100dvh-4.5rem)] md:min-h-[560px] ${g?`grid-rows-[auto_minmax(0,1fr)]`:`grid-rows-[auto_minmax(0,1fr)_auto]`} ${p?`bg-black`:``}`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between flex-wrap gap-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 flex-wrap`,children:[(0,K.jsx)(`h1`,{className:`text-sm font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`graph intelligence`}),!p&&(0,K.jsx)(`span`,{className:`chip text-sky-300 border-sky-500/30`,children:`real-time tool-use`}),M.mode===`live`?(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),`streaming`]}):(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-amber-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-amber-400`}),M.mode]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-x-3 gap-y-1 flex-wrap text-[11px] font-mono text-[var(--color-fg-3)] pl-3 border-l border-[var(--color-line-1)]`,children:[(0,K.jsxs)(`span`,{title:`Total evaluations since daemon start`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`↑`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Pe(De.evals)}),` `,(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`evals`})]}),(0,K.jsxs)(`span`,{title:`Block + force decisions — dangerous tool calls intercepted by SSG rules`,children:[(0,K.jsx)(`span`,{className:`text-rose-400`,children:`⛔`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Pe(De.blocks)}),` `,(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`blocks`})]}),(0,K.jsxs)(`span`,{className:`hidden md:inline`,title:`Mean eval latency over the last 100 bursts`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`⏱`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:De.avgMs<1?`${(De.avgMs*1e3).toFixed(0)}µs`:`${De.avgMs.toFixed(1)}ms`})]}),(0,K.jsxs)(`span`,{title:`Concurrent agent sessions in this window`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`⌥`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:De.agents}),` `,(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`agent`,De.agents===1?``:`s`]})]})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!p&&(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[re.length,`n · window `,Math.round(M.window_ms/1e3),`s`]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,title:`Average RAF interval across ${j.active} canvas${j.active===1?``:`es`}${j.hitches>0?` · ${j.hitches} hitch${j.hitches===1?``:`es`} (>33ms frames)`:``}`,children:[j.active===0?`—`:`${j.fps}fps${j.hitches>0?` (${j.hitches}h)`:``}`,` · `,j.active,`/`,z.length]}),(0,K.jsx)(`div`,{role:`group`,"aria-label":`Graph view mode`,className:`inline-flex items-stretch rounded border border-[var(--color-line-1)] overflow-hidden text-[10px] font-mono uppercase tracking-wider`,title:`View mode — B cycles, Esc returns to full`,children:[`full`,`feed`,`stream`,`broadcast`].map(e=>{let t=d===e,n=e===`broadcast`?`cast`:e,r=e===`full`?`Full dashboard — sidebar, timeline, all controls`:e===`feed`?`Feed mode — vertical timeline of tool calls for non-technical users`:e===`stream`?`Stream mode — spotlight layout for Twitch/YouTube viewers`:`Broadcast mode — pure canvas for OBS scenes (Esc to exit)`;return(0,K.jsx)(`button`,{type:`button`,onClick:()=>f(e),"aria-pressed":t,title:r,className:`px-2 py-0.5 transition-colors cursor-pointer ${t?e===`broadcast`?`bg-amber-500/15 text-amber-300`:e===`stream`?`bg-sky-500/15 text-sky-300`:e===`feed`?`bg-emerald-500/15 text-emerald-300`:`bg-[var(--color-fg-4)]/10 text-[var(--color-fg-1)]`:`text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)] hover:bg-white/5`}`,children:n},e)})}),(0,K.jsx)(`button`,{type:`button`,onClick:S,className:`chip cursor-pointer transition-colors ${b&&!c.enabled?`border-amber-500/60 text-amber-300 animate-pulse`:`hover:border-sky-500/50 hover:text-sky-300`}`,title:c.enabled?`Mute stream sounds`:`Enable stream sounds`,children:c.enabled?`SFX ON`:b?`🔊 enable cues`:`SFX OFF`}),!p&&z.length>0&&(0,K.jsx)(`div`,{"aria-live":`polite`,children:(0,K.jsx)(`button`,{type:`button`,"aria-label":`Clear all visible graph sessions`,onClick:()=>ee(z.filter(e=>!e.fadingOutAt).map(e=>e.key)),className:`chip cursor-pointer transition-colors ${T?`border-rose-500/60 text-rose-300`:`hover:border-rose-500/40 hover:text-rose-300`}`,title:`Close all active sessions on the graph — equivalent to /clear but reflects on the graph`,children:T?`confirm clear ${z.filter(e=>!e.fadingOutAt).length}`:`clear`})})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 ${v?``:y?`lg:grid-cols-[1fr_240px]`:`lg:grid-cols-[1fr_300px]`} gap-3 min-h-0 md:overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`flex flex-col gap-3 min-h-0 min-w-0`,children:h?(0,K.jsx)(`div`,{className:`flex-1 flex flex-col min-h-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] overflow-hidden`,children:(0,K.jsx)(Pd,{bursts:re,selectedId:r,onSelect:s})}):z.length===0?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-center px-4`,style:{minHeight:240},children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`graph · idle`}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[280px]`,children:`No active sessions in the current window. Each session will render as its own tree as bursts arrive.`})]}):(0,K.jsxs)(K.Fragment,{children:[Se.hero&&(L==null||L===Se.hero.key)&&(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 flex flex-col gap-2`,children:[ve!=null&&(0,K.jsx)(`button`,{type:`button`,onClick:we,className:`self-end chip text-amber-300 border-amber-500/40 hover:border-amber-400 cursor-pointer text-[10px]`,title:`Release manual spotlight — return to auto-follow`,children:`spotlight: locked · release ↺`}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,K.jsx)(Ad,{sessionKey:Se.hero.key,bursts:Se.hero.bursts,paused:M.mode!==`live`||Se.hero.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:Se.hero.fadingOutAt!=null||M.playhead_ms-Se.hero.newestTs>lf,isFadingOut:Se.hero.fadingOutAt!=null,minHeight:0,pinned:Se.hero.state.pinned,minimized:Se.hero.state.minimized,isFullscreen:!1,viewMode:d,activePanelCount:1,onTogglePin:Te.onTogglePin.get(Se.hero.key),onToggleMinimize:Te.onToggleMinimize.get(Se.hero.key),onToggleFullscreen:Te.onToggleFullscreen.get(Se.hero.key),onClose:Te.onClose.get(Se.hero.key),onFrameTime:Te.onFrameTime.get(Se.hero.key)},Se.hero.key)})]}),Se.grid.length>0&&(0,K.jsx)(`div`,{className:`flex-1 grid gap-3 min-h-0 min-w-0`,style:{gridTemplateColumns:`repeat(${Ae}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${je}, minmax(180px, 1fr))`},children:Se.grid.map(e=>{let n=e.fadingOutAt!=null||M.playhead_ms-e.newestTs>lf;return L!=null&&L!==e.key?null:(0,K.jsx)(Ad,{sessionKey:e.key,bursts:e.bursts,paused:M.mode!==`live`||e.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:n,isFadingOut:e.fadingOutAt!=null,minHeight:Me,pinned:e.state.pinned,minimized:e.state.minimized,isFullscreen:!1,viewMode:d,activePanelCount:Se.grid.length,onTogglePin:Te.onTogglePin.get(e.key),onToggleMinimize:Te.onToggleMinimize.get(e.key),onToggleFullscreen:Te.onToggleFullscreen.get(e.key),onClose:Te.onClose.get(e.key),onFrameTime:Te.onFrameTime.get(e.key)},e.key)})}),Se.rail.length>0&&(0,K.jsxs)(`div`,{className:`shrink-0 flex flex-col gap-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between text-[10px] font-mono text-[var(--color-fg-4)] uppercase tracking-wider`,children:[(0,K.jsxs)(`span`,{children:[d===`full`?`overflow rail`:`spotlight rail`,` · `,Se.rail.length,` session`,Se.rail.length===1?``:`s`]}),Se.overflow.length>0&&(0,K.jsxs)(`span`,{title:Se.overflow.map(e=>e.key).join(`
24
- `),children:[`+`,Se.overflow.length,` more`]})]}),(0,K.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(${Math.min(Se.rail.length,4)}, minmax(0, 1fr))`,gridAutoRows:`110px`},children:Se.rail.map(e=>{let n=e.fadingOutAt!=null||M.playhead_ms-e.newestTs>lf;return L!=null&&L!==e.key?null:(0,K.jsx)(Ad,{sessionKey:e.key,bursts:e.bursts,paused:M.mode!==`live`||e.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:n,isFadingOut:e.fadingOutAt!=null,minHeight:110,pinned:e.state.pinned,minimized:e.state.minimized,isFullscreen:!1,viewMode:d,thumbnail:!0,onPromote:Te.onPromote.get(e.key),activePanelCount:Se.rail.length+1,onTogglePin:Te.onTogglePin.get(e.key),onToggleMinimize:Te.onToggleMinimize.get(e.key),onToggleFullscreen:Te.onToggleFullscreen.get(e.key),onClose:Te.onClose.get(e.key),onFrameTime:Te.onFrameTime.get(e.key)},e.key)})})]}),d===`broadcast`&&Se.overflow.length>0&&(0,K.jsxs)(`div`,{className:`shrink-0 self-end pointer-events-none chip text-[var(--color-fg-3)] border-[var(--color-line-1)]`,children:[`+`,Se.overflow.length,` more session`,Se.overflow.length===1?``:`s`,` off-screen`]})]})}),!v&&(0,K.jsxs)(`aside`,{className:`flex flex-col gap-2 min-w-0 min-h-0 overflow-y-auto`,children:[(0,K.jsx)(Qd,{onMilestone:l,onRecord:u}),!y&&(0,K.jsx)(`section`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:(0,K.jsx)(qd,{bursts:re,allBursts:e.allBursts})}),(0,K.jsx)(Hd,{burst:_e,anchor:a,onClose:()=>{i(null),o(null)}})]})]}),!g&&(0,K.jsx)(`section`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:(0,K.jsx)(Fd,{playback:M,bursts:re,rangeStart:B,rangeEnd:ke,loading:ae,onPlayhead:t=>e.setPlayhead(t),onLive:()=>e.jumpToLive(),onPause:()=>e.setMode(`paused`),onResume:()=>e.setMode(`scrubbing`),on24h:()=>e.jumpTo24h()})}),p&&(0,K.jsxs)(`div`,{className:`pointer-events-none fixed bottom-3 right-4 flex flex-col items-end gap-1 z-30`,children:[(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-[0.18em] text-[var(--color-fg-3)]`,children:`sigmashake gov`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`broadcast mode · press B or Esc to exit`})]}),Ne&&(0,K.jsxs)(`div`,{className:`fixed inset-0 z-50 bg-black/90 backdrop-blur-sm flex p-6 gap-4`,children:[(0,K.jsx)(`div`,{className:`flex-1 flex flex-col min-w-0 min-h-0`,children:(0,K.jsx)(Ad,{sessionKey:Ne.key,bursts:Ne.bursts,paused:M.mode!==`live`||Ne.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:Ne.fadingOutAt!=null||M.playhead_ms-Ne.newestTs>lf,isFadingOut:!1,minHeight:0,pinned:Ne.state.pinned,minimized:!1,isFullscreen:!0,viewMode:d,onTogglePin:()=>de(Ne.key),onToggleMinimize:()=>fe(Ne.key),onToggleFullscreen:()=>pe(Ne.key)},`fs-${Ne.key}`)}),(0,K.jsx)(`aside`,{className:`hidden md:flex shrink-0 w-[380px] lg:w-[420px] flex-col min-h-0`,children:(0,K.jsx)(of,{sessionKey:Ne.key,entries:he?.sessionKey===Ne.key?he.entries:[],loading:he?.sessionKey===Ne.key?he.loading:!0,error:he?.sessionKey===Ne.key?he.error:null,playingIndex:-1})})]})]})}var yf=[{id:`rca`,label:`rca`,hint:`pre-computed root cause`},{id:`timeline`,label:`timeline`,hint:`recent frames across traces`},{id:`watch`,label:`watch`,hint:`subscribe to any ssg:// URI`},{id:`state`,label:`state`,hint:`daemon runtime snapshot`},{id:`metrics`,label:`metrics`,hint:`latency + counters`}];function bf(){let[e,t]=(0,_.useState)(`rca`);return(0,K.jsxs)(`div`,{className:`flex flex-col gap-4 min-h-[70vh]`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`h1`,{className:`text-sm font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`ai-native debugger`}),(0,K.jsx)(`span`,{className:`chip text-sky-300 border-sky-500/30`,children:`ssg:// unified resolver`}),(0,K.jsx)(xf,{})]}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`one surface · cli · mcp · dashboard`})]}),(0,K.jsx)(`nav`,{className:`flex items-center gap-1 border-b border-[var(--color-line-1)]`,children:yf.map(n=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(n.id),title:n.hint,className:`px-3 py-1.5 text-[11px] font-mono uppercase tracking-wider border-b-2 transition-colors `+(e===n.id?`border-[var(--color-brand)] text-[var(--color-fg-1)]`:`border-transparent text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)]`),children:n.label},n.id))}),(0,K.jsxs)(`section`,{className:`flex-1 min-h-0`,children:[e===`rca`&&(0,K.jsx)(Sf,{}),e===`timeline`&&(0,K.jsx)(Df,{}),e===`watch`&&(0,K.jsx)(Ff,{}),e===`state`&&(0,K.jsx)(If,{uri:`ssg://daemon/state`}),e===`metrics`&&(0,K.jsx)(If,{uri:`ssg://daemon/metrics`})]})]})}function xf(){let e=ke([`debug-frame`])[`debug-frame`]??0;return(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-emerald-300`,title:`${e} debug-frame bursts received`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),`live · `,e]})}function Sf(){let e=ke([`debug-frame`,`activity-updated`]),{data:t,loading:n,error:r,refetch:i}=V(`/api/json/debug?uri=ssg%3A%2F%2Frca%2Fcurrent`,[e[`debug-frame`],e[`activity-updated`]]),a=t?.data?.pack??null;return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 xl:grid-cols-[1fr_340px] gap-4`,children:[(0,K.jsxs)(`article`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-4 space-y-3`,children:[n&&!t&&(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`loading RCA pack…`}),r&&(0,K.jsxs)(`p`,{className:`text-sm text-rose-300`,children:[`rca fetch error: `,r]}),!n&&!a&&(0,K.jsxs)(`div`,{className:`text-sm text-[var(--color-fg-3)] space-y-2`,children:[(0,K.jsx)(`p`,{className:`font-mono`,children:`no current RCA pack`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`Packs are composed automatically when an eval errors, an ssqa finding arrives, or a daemon-level error fires. Nothing to diagnose yet — you're green.`})]}),a&&(0,K.jsx)(wf,{pack:a})]}),(0,K.jsxs)(`aside`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 text-[11px] font-mono text-[var(--color-fg-4)] space-y-2`,children:[(0,K.jsx)(`p`,{className:`uppercase tracking-wider text-[var(--color-fg-2)]`,children:`how claude sees this`}),(0,K.jsxs)(`pre`,{className:`text-[10px] whitespace-pre-wrap leading-snug`,children:[`ssg debug rca --current --json`,`
22
+ ${c===`installed`?`bg-[var(--color-surface-3)] text-[var(--color-fg-0)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,children:[`installed`,ie>0&&(0,K.jsx)(`span`,{className:`text-[9px] bg-emerald-500/15 text-emerald-300 rounded-sm px-1 py-0.5 font-medium tabular-nums`,children:ie})]})]}),(0,K.jsxs)(`div`,{className:`relative flex-1 min-w-[160px]`,children:[(0,K.jsxs)(`svg`,{className:`absolute left-2.5 top-1/2 -translate-y-1/2 text-[var(--color-fg-4)]`,width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`input`,{type:`text`,placeholder:`search rulesets…`,value:e,onChange:e=>t(e.target.value),className:`w-full bg-[var(--color-surface-1)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-xs rounded-sm pl-8 pr-3 h-8 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsx)(`select`,{value:n,onChange:e=>r(e.target.value),className:ae,children:wu.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,K.jsxs)(`select`,{value:i,onChange:e=>a(e.target.value),className:ae,children:[(0,K.jsx)(`option`,{value:``,children:`any decision`}),Eu.filter(Boolean).map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]}),(0,K.jsxs)(`select`,{value:o,onChange:e=>s(e.target.value),className:ae,children:[(0,K.jsx)(`option`,{value:``,children:`any severity`}),Tu.filter(Boolean).map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),g&&u.length===0?(0,K.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:Array.from({length:6}).map((e,t)=>(0,K.jsx)(Du,{},t))}):N.length===0?(0,K.jsxs)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] py-16 flex flex-col items-center justify-center text-center`,children:[(0,K.jsxs)(`svg`,{className:`text-[var(--color-fg-4)] mb-3`,width:`36`,height:`36`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`8`}),(0,K.jsx)(`line`,{x1:`21`,y1:`21`,x2:`16.65`,y2:`16.65`})]}),(0,K.jsx)(`p`,{className:`text-xs font-mono text-[var(--color-fg-3)] uppercase tracking-wider`,children:c===`installed`?`no rulesets installed yet — browse and click install`:`no rulesets found${e?` matching "${e}"`:``}`})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3`,children:N.map(e=>(0,K.jsx)(ju,{rs:e,installs:y[e.id]??[],installingId:x,uninstallingKey:C,onInstall:ne,onUninstall:M,onPickAndInstall:re,flashId:T},e.id))}),f&&c===`all`&&(0,K.jsx)(`div`,{className:`flex justify-center pt-2`,children:(0,K.jsx)(`button`,{onClick:A,disabled:g,className:`h-8 px-5 rounded-sm text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-2)] border border-[var(--color-line-1)] hover:text-[var(--color-fg-0)] hover:border-[var(--color-line-2)] transition-colors cursor-pointer disabled:opacity-40`,children:g?`loading…`:`load more`})})]})]})}var Pu={deny:`red`,block:`red`,ask:`amber`,allow:`green`,log:`gray`,force:`blue`};function Fu({id:e}){let{data:t,error:n}=V(`/api/json/hub/${e}`),[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(!1);if(n)return(0,K.jsxs)(`div`,{className:`text-sm text-red-300 font-mono`,children:[(0,K.jsx)(`p`,{children:n}),(0,K.jsx)(`a`,{href:`/hub`,className:`text-[var(--color-brand)] hover:underline mt-3 block text-[11px] uppercase tracking-wider`,children:`← back to hub`})]});if(!t)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading ruleset…`});async function s(){o(!0);try{(await fetch(`/api/hub/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({id:e})})).ok&&i(!0)}finally{o(!1)}}return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`← hub`}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-1.5 text-[var(--color-fg-0)]`,children:t.title}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-1 tabular-nums`,children:[`@`,t.author,` · v`,t.version,` · `,t.rule_count,` rule`,t.rule_count===1?``:`s`]})]}),(0,K.jsx)(X,{variant:r?`secondary`:`primary`,onClick:s,disabled:a||r,children:r?`✓ installed`:a?`installing…`:`install`})]}),t.technologies.length>0&&(0,K.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:t.technologies.map(e=>(0,K.jsx)(sr,{variant:`blue`,children:e},e))}),t.github_repo&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`source`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:t.github_repo})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsxs)(`span`,{className:`overline`,children:[`rules · `,t.rules.length]})}),(0,K.jsx)(Y,{className:`space-y-4`,children:t.rules.map((e,t)=>(0,K.jsxs)(`div`,{className:t>0?`border-t border-[var(--color-line-0)] pt-4`:void 0,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 flex-wrap`,children:[(0,K.jsx)(sr,{variant:Pu[e.decision]??`gray`,children:e.decision}),(0,K.jsx)(`code`,{className:`text-xs text-[var(--color-brand)] font-mono`,children:e.name}),e.capability&&(0,K.jsx)(sr,{variant:`gray`,children:e.capability})]}),(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-1)] mb-2`,children:e.message}),(0,K.jsx)(Cc,{children:e.raw_text})]},e.id))})]})]})}function Iu(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(`idle`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(!1);async function u(){l(!0),a(``);try{let e=await fetch(`/api/hub/device-start`,{method:`POST`,headers:{Accept:`application/json`,...B()}}),n=await e.json();if(!e.ok){let t=n;t.error===`not_configured`?(r(`not_configured`),s(t.setup_steps??[]),a(t.message??`GitHub OAuth not configured.`)):(a(n.error??`HTTP ${e.status}`),r(`error`));return}t(n),r(`polling`)}catch(e){a(e instanceof Error?e.message:`Failed to start`),r(`error`)}finally{l(!1)}}return(0,_.useEffect)(()=>{if(n!==`polling`||!e)return;let t=setInterval(async()=>{try{let n=await(await fetch(`/api/hub/device-poll?flow=${e.flow_id}`,{headers:{Accept:`application/json`}})).json();n.status===`complete`?(clearInterval(t),r(`done`),a(`connected as @${n.session?.login??`GitHub`} — you can now publish rulesets`)):(n.status===`expired`||n.status===`error`)&&(clearInterval(t),r(`error`),a(n.error??`Authentication failed`))}catch{}},3e3);return()=>clearInterval(t)},[n,e]),(0,K.jsxs)(`div`,{className:`max-w-lg mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`a`,{href:`/hub`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors`,children:[(0,K.jsx)(`svg`,{width:`10`,height:`10`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:(0,K.jsx)(`polyline`,{points:`15 18 9 12 15 6`})}),`back to hub`]}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-2 text-[var(--color-fg-0)]`,children:`Connect GitHub`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`authenticate with github to publish rulesets to the hub`})]}),n===`not_configured`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-amber-300 shrink-0 mt-0.5`,children:(0,K.jsxs)(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`10`}),(0,K.jsx)(`line`,{x1:`12`,y1:`8`,x2:`12`,y2:`12`}),(0,K.jsx)(`line`,{x1:`12`,y1:`16`,x2:`12.01`,y2:`16`})]})}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-sm font-medium text-[var(--color-fg-0)]`,children:`GitHub OAuth not configured`}),(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-2)] mt-1 leading-relaxed`,children:i})]})]}),(0,K.jsxs)(`div`,{className:`border-t border-[var(--color-line-0)] pt-4`,children:[(0,K.jsx)(`div`,{className:`overline mb-3`,children:`setup steps`}),(0,K.jsx)(`ol`,{className:`space-y-2`,children:o.map((e,t)=>(0,K.jsxs)(`li`,{className:`flex items-start gap-2.5 text-xs text-[var(--color-fg-1)]`,children:[(0,K.jsx)(`span`,{className:`shrink-0 w-5 h-5 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)] text-[var(--color-fg-3)] text-[10px] font-mono flex items-center justify-center tabular-nums`,children:t+1}),(0,K.jsx)(`span`,{className:`mt-0.5 leading-relaxed`,children:e.replace(/^\d+\.\s+/,``)})]},t))})]}),(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-3`,children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`quick start`}),(0,K.jsx)(`code`,{className:`text-[11px] text-[var(--color-brand)]/90 font-mono`,children:`export SSG_GITHUB_CLIENT_ID=<your-client-id>`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-1`,children:[`then restart:`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-fg-1)]`,children:`ssg serve`})]})]}),(0,K.jsx)(`a`,{href:`https://github.com/settings/applications/new`,target:`_blank`,rel:`noreferrer`,className:`inline-flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline`,children:`create github oauth app →`})]})}),n===`idle`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mb-4 leading-relaxed`,children:`This uses GitHub's device authorization flow — no redirect URIs needed. You'll be shown a code to enter at github.com.`}),(0,K.jsx)(X,{onClick:u,disabled:c,variant:`primary`,children:c?`starting…`:`connect with github`})]})}),e&&n===`polling`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`text-center`,children:[(0,K.jsx)(`div`,{className:`overline mb-2`,children:`open this url in your browser`}),(0,K.jsx)(`a`,{href:e.verification_uri,target:`_blank`,rel:`noreferrer`,className:`text-sm text-[var(--color-brand)] hover:underline font-mono`,children:e.verification_uri})]}),(0,K.jsxs)(`div`,{className:`border border-[var(--color-line-1)] bg-[var(--color-surface-0)] rounded-sm py-5 text-center`,children:[(0,K.jsx)(`div`,{className:`overline mb-3`,children:`enter this code`}),(0,K.jsx)(`div`,{className:`text-4xl font-mono font-bold tracking-[0.3em] text-[var(--color-fg-0)]`,children:e.user_code})]}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] text-center flex items-center justify-center gap-2`,children:[(0,K.jsx)(`svg`,{className:`animate-spin`,width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}),`waiting for github authorization…`]})]})}),n===`done`&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-emerald-500/25 bg-emerald-500/5 p-4 text-sm text-emerald-200 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`svg`,{width:`15`,height:`15`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`polyline`,{points:`20 6 9 17 4 12`})}),(0,K.jsx)(`span`,{className:`font-mono text-xs`,children:i})]}),(0,K.jsx)(`a`,{href:`/hub/publish`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-brand)] hover:underline block mt-1`,children:`publish a ruleset →`})]}),n===`error`&&i&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/5 p-4`,children:[(0,K.jsx)(`p`,{className:`text-sm text-red-200 font-mono`,children:i}),(0,K.jsx)(`button`,{onClick:()=>{r(`idle`),a(``)},className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] mt-3 cursor-pointer uppercase tracking-wider`,children:`← try again`})]})]})}function Lu(){let[e,t]=(0,_.useState)(``),[n,r]=(0,_.useState)(!1),[i,a]=(0,_.useState)(null);async function o(t){if(t.preventDefault(),e.trim()){r(!0),a(null);try{a(await(await fetch(`/api/hub/publish`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({repo_url:e.trim()})})).json())}catch(e){a({ok:!1,error:e instanceof Error?e.message:`Unknown error`})}finally{r(!1)}}}return(0,K.jsxs)(`div`,{className:`max-w-md mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`a`,{href:`/hub`,className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)]`,children:`← hub`}),(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight mt-2 text-[var(--color-fg-0)]`,children:`Publish Ruleset`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`publish a github repository containing .rules files to the hub`})]}),(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`form`,{onSubmit:o,className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`github repository url`}),(0,K.jsx)(`input`,{type:`url`,placeholder:`https://github.com/owner/repo`,value:e,onChange:e=>t(e.target.value),required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsx)(X,{type:`submit`,variant:`primary`,disabled:n,children:n?`publishing…`:`publish to hub`})]})})}),i&&(0,K.jsx)(`div`,{className:`rounded-sm border px-3 py-2 text-xs font-mono ${i.ok?`border-emerald-500/25 bg-emerald-500/5 text-emerald-300`:`border-red-500/25 bg-red-500/5 text-red-300`}`,children:i.ok?(0,K.jsxs)(K.Fragment,{children:[`✓ published!`,` `,i.id&&(0,K.jsx)(`a`,{href:`/hub/${i.id}`,className:`text-[var(--color-brand)] hover:underline uppercase tracking-wider text-[11px] ml-2`,children:`view ruleset →`})]}):i.error??`publish failed`})]})}function Ru(e){return e===0?`—`:e<1e3?`${e}ns`:e<1e6?`${(e/1e3).toFixed(1)}µs`:`${(e/1e6).toFixed(1)}ms`}function zu(e){let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${t%60}s`:`${Math.floor(n/60)}h ${n%60}m`}function Bu(e){let t=e<1e10?e*1e3:e,n=new Date(t);return`${String(n.getHours()).padStart(2,`0`)}:${String(n.getMinutes()).padStart(2,`0`)}:${String(n.getSeconds()).padStart(2,`0`)}`}function Vu(e){let t=Math.round((Date.now()-e)/1e3);if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}var Hu={allow:`text-emerald-300`,block:`text-red-300`,force:`text-violet-300`,log:`text-amber-300`,ask:`text-sky-300`,shadow:`text-[var(--color-fg-3)]`},Uu={allow:`✓`,block:`✗`,force:`→`,log:`·`,ask:`?`,shadow:`~`};function Wu({label:e,ns:t,maxNs:n}){let r=n>0?Math.min(100,t/n*100):0;return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] w-8 text-right font-mono uppercase tracking-wider text-[10px]`,children:e}),(0,K.jsx)(jc,{pct:r,tone:t<1e5?`green`:t<1e6?`amber`:`red`,className:`h-1 flex-1`}),(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-1)] tabular-nums w-14 text-right`,children:Ru(t)})]})}function Gu({value:e,max:t,threshold:n,breached:r}){let i=t>0?Math.min(100,e/t*100):0,a=t>0?Math.min(100,n/t*100):0;return(0,K.jsx)(jc,{pct:i,tone:r?`red`:e/t>=.6?`amber`:`green`,markerPct:a,markerTitle:`limit: ${n}`,className:`h-1`})}function Ku({limitsData:e,onSaved:t}){let[n,r]=(0,_.useState)(String(e.config.cpuLimitPct)),[i,a]=(0,_.useState)(String(e.config.memoryLimitMb)),[o,s]=(0,_.useState)(e.config.breachAction),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(null);async function f(){l(!0),d(null);try{let e=await fetch(`/api/json/limits`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({cpu_limit_pct:parseFloat(n),memory_limit_mb:parseFloat(i),breach_action:o})});e.ok?t():d((await e.json()).error??`save failed`)}catch{d(`network error`)}finally{l(!1)}}let p=`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm px-2 py-1.5 text-[var(--color-fg-1)] font-mono text-xs focus:outline-none focus:border-[var(--color-brand)]/50`;return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`cpu limit (%)`}),(0,K.jsx)(`input`,{type:`number`,min:1,max:100,value:n,onChange:e=>r(e.target.value),className:p})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`memory limit (mb)`}),(0,K.jsx)(`input`,{type:`number`,min:1,value:i,onChange:e=>a(e.target.value),className:p})]})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`overline block mb-1.5`,children:`on breach`}),(0,K.jsxs)(`select`,{value:o,onChange:e=>s(e.target.value),className:p,children:[(0,K.jsx)(`option`,{value:`warn`,children:`warn in ui only`}),(0,K.jsx)(`option`,{value:`log`,children:`warn + write to audit log`})]})]}),u&&(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:u}),(0,K.jsx)(X,{onClick:f,disabled:c,variant:`primary`,size:`sm`,children:c?`saving…`:`save limits`})]})}var qu={running:`green`,hibernating:`amber`,exhausted:`red`,stopped:`gray`,idle:`gray`};function Ju(e,t){let n=e-t;if(n<=0)return`any moment`;let r=Math.round(n/1e3);if(r<60)return`in ${r}s`;let i=Math.floor(r/60);return i<60?`in ${i}m ${r%60}s`:`in ${Math.floor(i/60)}h ${i%60}m`}function Yu({supervisors:e}){let[t,n]=(0,_.useState)(Date.now());return(0,_.useEffect)(()=>{let e=setInterval(()=>n(Date.now()),1e3);return()=>clearInterval(e)},[]),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-2 overline`,children:[`supervisor health`,e.some(e=>e.state===`hibernating`||e.state===`exhausted`)&&(0,K.jsx)(sr,{variant:`amber`,children:`degraded`})]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono tabular-nums text-[var(--color-fg-4)]`,children:[e.length,` supervisor`,e.length===1?``:`s`]})]}),(0,K.jsx)(Y,{children:e.length===0?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no supervisors registered yet`}):(0,K.jsx)(`div`,{className:`overflow-x-auto`,children:(0,K.jsxs)(`table`,{className:`w-full text-xs font-mono`,children:[(0,K.jsx)(`thead`,{children:(0,K.jsxs)(`tr`,{className:`text-[10px] uppercase tracking-wider text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`name`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`kind`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5`,children:`state`}),(0,K.jsx)(`th`,{className:`text-right font-normal pb-1.5`,children:`restarts`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5 pl-4`,children:`last restart`}),(0,K.jsx)(`th`,{className:`text-left font-normal pb-1.5 pl-4`,children:`next retry`})]})}),(0,K.jsx)(`tbody`,{children:e.map(e=>(0,K.jsxs)(`tr`,{className:`border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`td`,{className:`py-1.5 text-[var(--color-fg-1)]`,children:e.name}),(0,K.jsx)(`td`,{className:`py-1.5 text-[var(--color-fg-3)]`,children:e.kind===`single`?`single`:`tree`}),(0,K.jsx)(`td`,{className:`py-1.5`,children:(0,K.jsx)(sr,{variant:qu[e.state],children:e.state})}),(0,K.jsx)(`td`,{className:`py-1.5 text-right tabular-nums text-[var(--color-fg-1)]`,children:e.restarts}),(0,K.jsx)(`td`,{className:`py-1.5 pl-4 tabular-nums text-[var(--color-fg-3)]`,children:e.lastRestartAt>0?Vu(e.lastRestartAt):`—`}),(0,K.jsx)(`td`,{className:`py-1.5 pl-4 tabular-nums text-[var(--color-fg-3)]`,children:e.nextRetryAt>0?(0,K.jsx)(`span`,{title:e.hibernateReason?`reason: ${e.hibernateReason}`:void 0,children:Ju(e.nextRetryAt,t)}):`—`})]},e.name))})]})})})]})}function Xu(){let e=ke([`runtime-tick`,`activity-updated`,`limits-breach`,`supervisor-changed`]),t=De(),[n,r]=(0,_.useState)(Date.now()),[i,a]=(0,_.useState)(0),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(0),[u,d]=(0,_.useState)(!1),f=(0,_.useRef)(null);(0,_.useEffect)(()=>{let e=setInterval(()=>r(Date.now()),1e3);return()=>clearInterval(e)},[]);let{data:p}=V(`/api/state/runtime`,[e[`runtime-tick`]]),{data:m,refetch:h}=V(`/api/json/limits`,[e[`limits-breach`]]),{data:g}=V(`/api/state/activity-tail?after=${i}&limit=50`,[e[`activity-updated`]]),{data:v}=V(`/api/json/supervisors`,[e[`supervisor-changed`],e[`runtime-tick`]]);(0,_.useEffect)(()=>{g&&g.rows.length>0&&(a(e=>Math.max(e,g.maxId)),s(e=>{let t=new Set(e.map(e=>e.id));return[...g.rows.filter(e=>!t.has(e.id)),...e].slice(0,100)}))},[g]),(0,_.useEffect)(()=>{let e=p!==null;f.current===!1&&e&&l(e=>e+1),f.current=e},[p]);let y=p?zu(p.uptime_ms):null,b=p&&p.last_eval_at>0?Vu(p.last_eval_at):null,x=m?.breaches.cpu??!1,S=m?.breaches.memory??!1,C=p?x?`text-red-300`:(p.cpu_pct??0)>=60?`text-amber-300`:`text-emerald-300`:`text-[var(--color-fg-1)]`,w=S?`text-red-300`:`text-[var(--color-fg-1)]`;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Daemon Monitor`}),(0,K.jsx)(`p`,{className:`text-[12px] font-mono text-[var(--color-fg-3)] mt-0.5`,children:`live metrics · audit tail · resource limits`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[c>0&&(0,K.jsxs)(sr,{variant:`amber`,children:[c,` restart`,c===1?``:`s`]}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-[var(--color-fg-3)]`,children:Bu(n)})]})]}),(0,K.jsx)(Zu,{cpuPct:p?.cpu_pct??0,cpuLimit:m?.config.cpuLimitPct,memMb:p?.memory_rss_mb??0,memLimit:m?.config.memoryLimitMb,decisions:p?.decisions,latency:p?.latency,burstBuffer:t,evalsTotal:p?.evals_total??0}),m&&(x||S)&&(0,K.jsxs)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/[0.06] border-l-2 border-l-red-500/70 px-3 py-2.5 flex items-start gap-2.5`,children:[(0,K.jsx)(`span`,{className:`text-red-300 shrink-0 mt-0.5`,children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0Z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]})}),(0,K.jsxs)(`div`,{className:`space-y-0.5 text-xs font-mono`,children:[x&&(0,K.jsxs)(`div`,{className:`text-red-200`,children:[`cpu limit exceeded: `,p?.cpu_pct??`?`,`% >`,` `,m.config.cpuLimitPct,`%`]}),S&&(0,K.jsxs)(`div`,{className:`text-red-200`,children:[`memory limit exceeded: `,p?.memory_rss_mb??`?`,`mb >`,` `,m.config.memoryLimitMb,`mb`]})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`daemon status`})}),(0,K.jsx)(Y,{children:p===null?(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-sm`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-500 shrink-0`}),(0,K.jsx)(`span`,{className:`text-red-300 font-mono uppercase tracking-wider text-xs`,children:`down`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] text-xs font-mono`,children:`— socket not reachable`})]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-5 flex-wrap text-xs font-mono`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-emerald-400 pulse-soft shrink-0`}),(0,K.jsx)(`span`,{className:`text-emerald-300 uppercase tracking-wider`,children:`up`})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`pid`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:p.pid})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`uptime`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:y})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`mem`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:[p.memory_rss_mb,`MB`]})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`cpu`,` `,(0,K.jsxs)(`span`,{className:`${C} tabular-nums`,children:[p.cpu_pct,`%`]})]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`last eval`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:b??`—`})]})]})})]}),(0,K.jsx)(Yu,{supervisors:v?.supervisors??[]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-2 overline`,children:[`system resources`,m&&(x||S)&&(0,K.jsx)(sr,{variant:`red`,children:`limit exceeded`})]}),(0,K.jsx)(`button`,{onClick:()=>d(e=>!e),className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-brand)] transition-colors cursor-pointer`,children:u?`hide limits`:`configure limits`})]}),(0,K.jsxs)(Y,{children:[p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data — daemon not running`}):(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(p.history.cpu_pct.length??0)>1&&(0,K.jsx)(pr,{data:p.history.cpu_pct,width:80,height:20,color:x?`#f87171`:`#34d399`,threshold:m?.config.cpuLimitPct,maxValue:100}),(0,K.jsxs)(`span`,{className:`font-mono font-medium w-12 text-right tabular-nums ${C}`,children:[p.cpu_pct,`%`]})]})]}),(0,K.jsx)(Gu,{value:p.cpu_pct,max:100,threshold:m?.config.cpuLimitPct??90,breached:x}),m&&(0,K.jsxs)(`div`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`limit: `,m.config.cpuLimitPct,`%`]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory rss`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(p.history.memory_rss_mb.length??0)>1&&(0,K.jsx)(pr,{data:p.history.memory_rss_mb,width:80,height:20,color:S?`#f87171`:`#38bdf8`,threshold:m?.config.memoryLimitMb}),(0,K.jsxs)(`span`,{className:`font-mono font-medium w-16 text-right tabular-nums ${w}`,children:[p.memory_rss_mb,`MB`]})]})]}),(0,K.jsx)(Gu,{value:p.memory_rss_mb,max:Math.max(p.memory_rss_mb*1.5,m?.config.memoryLimitMb??512),threshold:m?.config.memoryLimitMb??512,breached:S}),m&&(0,K.jsxs)(`div`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`limit: `,m.config.memoryLimitMb,`MB`]})]}),(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`heap`}),(0,K.jsxs)(`span`,{className:`font-mono text-[var(--color-fg-1)] tabular-nums`,children:[p.heap_used_mb,`MB / `,p.heap_total_mb,`MB`]})]}),(0,K.jsx)(jc,{pct:p.heap_total_mb>0?Math.min(100,p.heap_used_mb/p.heap_total_mb*100):0,tone:`blue`,className:`h-1`})]})]}),u&&m&&(0,K.jsxs)(`div`,{className:`mt-5 pt-4 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-3 leading-relaxed`,children:[`thresholds trigger ui warnings. values are persisted to`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-fg-1)]`,children:`.sigmashake/config.toml`}),`.`]}),(0,K.jsx)(Ku,{limitsData:m,onSaved:()=>{h(),d(!1)}})]})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-2`,children:[(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`total evals`,value:p?.evals_total??`—`,valueClassName:`text-xl font-medium tabular-nums text-[var(--color-fg-0)]`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`allow`,value:p?.decisions.allow??`—`,valueClassName:`text-xl font-medium tabular-nums text-emerald-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`block`,value:p?.decisions.block??`—`,valueClassName:`text-xl font-medium tabular-nums text-red-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`force`,value:p?.decisions.force??`—`,valueClassName:`text-xl font-medium tabular-nums text-violet-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`log`,value:p?.decisions.log??`—`,valueClassName:`text-xl font-medium tabular-nums text-amber-300`}),(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)]`,labelPlacement:`above`,label:`ask`,value:p?.decisions.ask??`—`,valueClassName:`text-xl font-medium tabular-nums text-sky-300`})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-4`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`eval latency`}),p&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[p.latency.samples,` samples`]})]}),(0,K.jsx)(Y,{children:p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data`}):(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(Wu,{label:`p50`,ns:p.latency.p50_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Wu,{label:`p95`,ns:p.latency.p95_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Wu,{label:`p99`,ns:p.latency.p99_ns,maxNs:p.latency.max_ns}),(0,K.jsx)(Wu,{label:`max`,ns:p.latency.max_ns,maxNs:p.latency.max_ns})]})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`engine`})}),(0,K.jsx)(Y,{children:p===null?(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no data`}):(0,K.jsx)(`div`,{className:`space-y-1.5 text-xs font-mono`,children:[[`native evals`,p.engine.native_evals],[`ts evals`,p.engine.ts_evals],[`native %`,`${p.engine.native_pct}%`],[`rule reloads`,p.rule_reloads],[`rate limit trips`,p.rate_limit_trips],[`loop guard blocks`,p.loop_guard_blocks],[`connection errors`,p.connection_errors]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex justify-between py-0.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:e}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] tabular-nums`,children:t})]},e))})})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`live event tail`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`newest first · auto-updating`})]}),(0,K.jsx)(Y,{children:o.length===0?(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-4 py-6 text-center`,children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`no events yet`})}):(0,K.jsx)(`div`,{className:`font-mono text-[11px] max-h-96 overflow-y-auto divide-y divide-[var(--color-line-0)]`,children:o.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] shrink-0 w-16 tabular-nums`,children:Bu(e.timestamp)}),e.tool===`__daemon`?(0,K.jsxs)(`span`,{className:`text-sky-400`,children:[`daemon`,` `,(()=>{try{let t=JSON.parse(e.input??`{}`);return`${t.event??e.decision}${t.detail?` (${t.detail})`:``}`}catch{return e.decision}})()]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{className:`shrink-0 w-16 uppercase tracking-wider text-[10px] ${Hu[e.decision]??`text-[var(--color-fg-3)]`}`,children:[Uu[e.decision]??`·`,` `,e.decision]}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] shrink-0 w-24 truncate`,children:e.tool}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] shrink-0 w-14 text-right tabular-nums`,children:Ru(e.duration_ns)}),e.rule_id&&(0,K.jsx)(`a`,{href:`/rules?highlight=${encodeURIComponent(e.rule_id)}`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] truncate transition-colors`,title:e.rule_id,children:e.rule_id})]})]},e.id))})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`ai agent debug endpoints`})}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-2.5`,children:`agents can query these endpoints directly for automated triage:`}),(0,K.jsx)(`div`,{className:`space-y-1 font-mono text-[11px]`,children:[[`/api/state/runtime`,`full metrics snapshot (cpu, memory, history, latency)`],[`/api/json/limits`,`resource limits config + breach state`],[`/api/state/activity-tail?after=0&limit=20`,`recent eval events`],[`/api/json/daemon-status`,`status, pid, log tail`],[`/healthz`,`process uptime`]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`GET`}),(0,K.jsx)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] transition-colors`,children:e}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`— `,t]})]},e))})]})]})]})}function Zu({cpuPct:e,cpuLimit:t,memMb:n,memLimit:r,decisions:i,latency:a,evalsTotal:o,burstBuffer:s}){let c=(0,_.useMemo)(()=>{if(s.length===0)return 0;let e=Date.now()-1e4;return s.filter(t=>t.ts_ms>=e).length/10},[s]);return(a?.p95_ns??0)/1e6,(a?.p50_ns??0)/1e6,(a?.p99_ns??0)/1e6,(0,K.jsxs)(`div`,{className:`grid-bleed rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,style:{contain:`layout paint`},children:[(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-12 gap-4 lg:min-h-[320px]`,children:[(0,K.jsxs)(`div`,{className:`lg:col-span-3 flex flex-col items-center justify-start gap-2 lg:max-h-[320px]`,children:[(0,K.jsx)(Gr,{mode:`ring`,value:e,max:100,warnAt:(t??90)/100*.7,critAt:(t??90)/100,display:`${e.toFixed(1)}%`,label:`cpu`,size:220,className:`max-h-[240px]`}),(0,K.jsx)(br,{value:e,width:260,height:56,windowMs:6e4,color:`#34d399`,fillColor:`rgba(52, 211, 153, 0.14)`,maxValue:100,className:`w-full`})]}),(0,K.jsxs)(`div`,{className:`lg:col-span-3 flex flex-col items-center justify-start gap-2 lg:max-h-[320px]`,children:[(0,K.jsx)(Gr,{mode:`ring`,value:n,max:r??1024,warnAt:.7,critAt:.9,display:`${n.toFixed(0)} MB`,label:`memory`,size:220,className:`max-h-[240px]`}),(0,K.jsx)(br,{value:n,width:260,height:56,windowMs:6e4,color:`#38bdf8`,fillColor:`rgba(56, 189, 248, 0.14)`,maxValue:r?r*1.1:void 0,className:`w-full`})]}),(0,K.jsx)(`div`,{className:`lg:col-span-6 lg:max-h-[320px]`,children:(0,K.jsx)(Qr,{latency:a,bursts:s,gaugeMaxMs:10,windowMs:3e4,trendWindowSec:60,gaugeSize:200})})]}),(0,K.jsxs)(`div`,{className:`mt-4 grid grid-cols-1 lg:grid-cols-2 gap-3`,children:[(0,K.jsx)(Or,{label:`Total Evals`,value:o,tone:`amber`,sub:`${c.toFixed(1)}/s`,burstRing:s}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-sm border bg-[var(--color-surface-1)] border-[var(--color-line-1)] px-4 py-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`throughput · 60 s`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] tabular-nums`,children:[c.toFixed(1),`/s`]})]}),(0,K.jsx)(br,{value:c,width:420,height:56,windowMs:6e4,className:`w-full`})]})]}),i?(0,K.jsx)(`div`,{className:`mt-4 pt-3 border-t border-[var(--color-line-0)]`,children:(0,K.jsx)(ti,{counters:{allow:i.allow,block:i.block,ask:i.ask,log:i.log,force:i.force,shadow:i.shadow}})}):null,(0,K.jsxs)(`div`,{className:`mt-4 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`live event stream · newest first`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:[s.length,` buffered · hover to pause`]})]}),(0,K.jsx)(wi,{variant:`decision`,bursts:s,windowSize:300,height:260})]})]})}var Qu={ok:`green`,warn:`amber`,error:`red`,unknown:`gray`},$u={ok:`OK`,warn:`Warn`,error:`Error`,unknown:`Idle`};function ed({title:e,status:t=`unknown`,statusLabel:n,className:r,children:i}){return(0,K.jsxs)(q,{className:G(`flex flex-col`,r),children:[(0,K.jsxs)(J,{children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-2)]`,children:e}),(0,K.jsx)(sr,{variant:Qu[t],children:n??$u[t]})]}),(0,K.jsx)(Y,{className:`flex flex-col gap-2 text-[12px]`,children:i})]})}function td({label:e,value:t,mono:n=!1,tone:r}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3 border-b border-[var(--color-line-0)] last:border-b-0 py-1`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] uppercase tracking-wider text-[10px] font-mono`,children:e}),(0,K.jsx)(`span`,{className:G(n?`font-mono`:`font-sans`,`tabular-nums text-right truncate`,r===`good`?`text-emerald-300`:r===`warn`?`text-amber-300`:r===`bad`?`text-red-300`:`text-[var(--color-fg-1)]`),children:t})]})}function nd(e){return e===0?`0 B`:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:e<1024*1024*1024?`${(e/(1024*1024)).toFixed(2)} MB`:`${(e/(1024*1024*1024)).toFixed(2)} GB`}function rd(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/1024/1024).toFixed(1)}MB`}function id(e){let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);return n<60?`${n}m ${t%60}s`:`${Math.floor(n/60)}h ${n%60}m`}function ad(e){return e?new Date(e*1e3).toLocaleString():`—`}function od(e){if(!e||e===0)return`never`;let t=Math.round((Date.now()-e)/1e3);if(t<5)return`just now`;if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}function sd({children:e,className:t}){return(0,K.jsx)(`div`,{className:`overline mb-2.5 ${t??``}`,children:e})}function cd({label:e,value:t,mono:n=!0,accent:r}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-4 py-1.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-xs text-[var(--color-fg-3)] shrink-0 font-mono`,children:e}),(0,K.jsx)(`span`,{className:`text-xs text-right truncate max-w-[65%] ${n?`font-mono tabular-nums`:``} ${r??`text-[var(--color-fg-1)]`}`,children:t})]})}function ld({ok:e,label:t,badLabel:n}){return e?(0,K.jsx)(sr,{variant:`green`,children:t}):(0,K.jsx)(sr,{variant:`red`,children:n??t})}function ud({pct:e,total:t,max:n}){let r=e<60?`green`:e<85?`amber`:`red`,i=e>=85?`text-red-300`:e>=60?`text-amber-300`:`text-emerald-300`;return(0,K.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-xs font-mono tabular-nums`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[t.toLocaleString(),` / `,n.toLocaleString(),` rows`]}),(0,K.jsxs)(`span`,{className:i,children:[e,`%`]})]}),(0,K.jsx)(jc,{pct:e,tone:r,className:`h-1.5`})]})}var dd=3e3,fd={log:`text-[var(--color-fg-1)]`,info:`text-sky-300`,warn:`text-amber-300`,error:`text-red-300`,debug:`text-[var(--color-fg-3)]`};function pd(e){return e.value==null?e.description?e.description:`[${e.type}]`:String(e.value)}function md(){let e=Kl(),[t,n]=(0,_.useState)(!1),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)([]),[s,c]=(0,_.useState)(null),[l,u]=(0,_.useState)(!1),[d,f]=(0,_.useState)(!1),p=(0,_.useRef)(null),m=(0,_.useRef)(0),h=(0,_.useRef)(!0);(0,_.useEffect)(()=>{if(h.current){h.current=!1;return}let e=p.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[a]),(0,_.useEffect)(()=>{if(e.connected)return e.sendCommand(`Runtime.enable`).catch(()=>{}),e.onEvent(`Runtime.consoleAPICalled`,e=>{let t=e;o(e=>{let n=[...e,{id:m.current++,type:t.type??`log`,args:t.args??[],timestamp:t.timestamp??Date.now()}];return n.length>500?n.slice(-500):n})})},[e.connected]),(0,_.useEffect)(()=>{e.preconfiguredTarget&&!e.connected&&!e.connecting&&e.connect(e.preconfiguredTarget.id)},[e]),(0,_.useEffect)(()=>{!e.connected||d||t||r||(f(!0),(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),setTimeout(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch{n(!1)}},dd)}catch{}})(),e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0}).then(e=>{c(JSON.parse(e.result.value))}).catch(()=>{}))},[e.connected,d,t,r]);let g=(0,_.useCallback)(async()=>{try{await e.sendCommand(`Profiler.enable`),await e.sendCommand(`Profiler.start`),n(!0),i(null)}catch(e){console.error(`Profiler.start failed:`,e)}},[e]),v=(0,_.useCallback)(async()=>{try{let t=await e.sendCommand(`Profiler.stop`);n(!1),i(t.profile)}catch(e){console.error(`Profiler.stop failed:`,e),n(!1)}},[e]),y=(0,_.useCallback)(async()=>{u(!0);try{let t=await e.sendCommand(`Runtime.evaluate`,{expression:`JSON.stringify(process.memoryUsage())`,returnByValue:!0});c(JSON.parse(t.result.value))}catch{}finally{u(!1)}},[e]),b=(0,_.useCallback)(()=>{e.preconfiguredTarget&&e.connect(e.preconfiguredTarget.id)},[e]);return e.active?e.connected?(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-emerald-400`}),`connected`,e.bunVersion?` · bun v${e.bunVersion}`:``]}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:e.disconnect,children:`disconnect`})]})]}),e.error&&(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono`,children:e.error})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`cpu profiler`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[t&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300 flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`inline-block w-1.5 h-1.5 rounded-full bg-red-400 pulse-soft`}),`recording`]}),t?(0,K.jsx)(X,{variant:`danger`,size:`sm`,onClick:v,children:`stop & render`}):(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:g,children:`start recording`})]})]}),(0,K.jsx)(Y,{children:r?(0,K.jsx)(Nc,{profile:r,children:(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 overflow-x-hidden`,children:(0,K.jsx)($l,{profile:r})})}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:t?`recording cpu profile (auto-captures ${dd/1e3}s)… perform actions in ssg to generate data.`:`click start recording, or wait for auto-capture on page load.`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`memory`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:y,disabled:l,children:l?`…`:`refresh`})]}),(0,K.jsx)(Y,{children:s?(0,K.jsx)(Pc,{memory:s,formatValue:rd}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)]`,children:d?`fetching memory metrics…`:`click refresh to fetch process.memoryUsage().`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`console`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:()=>o([]),children:`clear`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-2 h-40 overflow-y-auto font-mono text-[11px]`,children:[a.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`console output will appear here…`}):a.map(e=>(0,K.jsxs)(`div`,{className:`py-0.5 border-b border-[var(--color-line-0)] ${fd[e.type]??`text-[var(--color-fg-1)]`}`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] mr-2 uppercase tracking-wider`,children:[`[`,e.type,`]`]}),e.args.map(pd).join(` `)]},e.id)),(0,K.jsx)(`div`,{ref:p})]})})]})]}):(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(sr,{variant:`amber`,children:e.connecting?`connecting…`:`available`}),!e.connecting&&(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:b,children:`connect`})]})]}),(0,K.jsx)(Y,{children:(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:e.connecting?`establishing websocket connection to bun inspector…`:`inspector is active but not connected. click connect to start profiling.`})})]}):(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`runtime inspector`}),(0,K.jsx)(sr,{variant:`outline`,children:`inactive`})]}),(0,K.jsx)(Y,{children:(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[`the bun inspector is not active. restart`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg serve`}),` to enable it automatically.`]})})]})}function hd(){let[e,t]=(0,_.useState)(0),{data:n}=V(`/api/json/evald-log`,[e]),r=(0,_.useRef)(null),i=(0,_.useRef)(!0);(0,_.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),5e3);return()=>clearInterval(e)},[]),(0,_.useEffect)(()=>{if(i.current){i.current=!1;return}let e=r.current;if(!e)return;let t=e.parentElement;t&&(t.scrollTop=t.scrollHeight)},[n?.lines.length]);let a=n?.lines??[];return(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`daemon log`}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] truncate max-w-[60%]`,children:[n?.path?n.path:`loading…`,` · last 200 lines · 5s refresh`]})]}),(0,K.jsxs)(Y,{children:[n?.error&&(0,K.jsx)(`p`,{className:`text-xs text-red-300 font-mono mb-2`,children:n.error}),a.length===0&&!n?.error&&(0,K.jsx)(`div`,{className:`rounded-sm border border-dashed border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-4 py-6 text-center`,children:(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[`no log entries yet. start the daemon with`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg serve`}),` to generate log output.`]})}),a.length>0&&(0,K.jsxs)(`pre`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] rounded-sm p-3 text-[10px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-all max-h-80 overflow-y-auto font-mono leading-relaxed`,children:[a.join(`
23
+ `),(0,K.jsx)(`div`,{ref:r})]})]})]})}function gd(){let e=ke([`runtime-tick`,`rules-changed`]),{data:t,refetch:n}=V(`/api/json/observability`,[e[`runtime-tick`],e[`rules-changed`]]),[r,i]=(0,_.useState)(!1),[a,o]=(0,_.useState)(!1),[s,c]=(0,_.useState)(Date.now()),[l,u]=(0,_.useState)(`idle`),[d,f]=(0,_.useState)(``),[p,m]=(0,_.useState)(`idle`);(0,_.useEffect)(()=>{t&&c(Date.now())},[t]);let h=(0,_.useCallback)(async()=>{u(`loading`);try{let e=await(await fetch(`/api/rules/sync-to-db`,{method:`POST`,headers:B()})).json();if(e.ok){u(`done`);let t=(e.pruned_count??0)>0?` (${e.pruned_count} orphan(s) pruned)`:``;f((e.message??`synced ${e.synced} rules`)+t),n()}else u(`error`),f(e.error??`sync failed`)}catch(e){u(`error`),f(String(e))}},[n]),g=(0,_.useCallback)(async()=>{m(`loading`);try{await fetch(`/api/rules/force-reload`,{method:`POST`,headers:B()}),m(`done`),n(),setTimeout(()=>m(`idle`),3e3)}catch{m(`idle`)}},[n]),v=t?.db,y=t?.rules,b=t?.audit,x=t?.process,S=t?.flight_recorder,C=y?.drift_detected??!1;return(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Observability`}),(0,K.jsx)(`p`,{className:`text-[12px] font-mono text-[var(--color-fg-3)] mt-0.5`,children:`sqlite health · rule drift · runtime profiler · diagnostics`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,children:[`refreshed `,od(s)]}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:n,children:`refresh`})]})]}),(0,K.jsx)(_d,{db:v,audit:b,proc:x,flight:S,driftDetected:C}),(0,K.jsxs)(q,{className:C?`border-red-500/30 border-l-2 border-l-red-500/70`:`border-emerald-500/20 border-l-2 border-l-emerald-500/60`,children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`rule drift detector`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`— .rules files vs sqlite`}),(0,K.jsx)(`button`,{onClick:()=>o(e=>!e),"aria-expanded":a,"aria-label":`Explain these counts`,title:`Why do these numbers differ?`,className:`text-[10px] font-mono text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)] border border-[var(--color-line-1)] rounded-sm px-1.5 py-0.5 transition-colors cursor-pointer`,children:a?`× close`:`? why these numbers`})]}),y&&(C?(0,K.jsx)(sr,{variant:`red`,children:`⚠ drift detected`}):(0,K.jsx)(sr,{variant:`green`,children:`✓ in sync`}))]}),(0,K.jsxs)(Y,{children:[a&&(0,K.jsxs)(`div`,{className:`mb-4 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)] px-3 py-2.5 space-y-2 text-[11px] font-mono leading-relaxed text-[var(--color-fg-3)]`,children:[(0,K.jsxs)(`div`,{className:`text-[var(--color-fg-2)]`,children:[(0,K.jsx)(`code`,{children:`.rules files`}),` and `,(0,K.jsx)(`code`,{children:`db rules`}),` are`,` `,(0,K.jsx)(`span`,{className:`text-amber-300`,children:`not auto-synced`}),`. A mismatch is usually expected:`]}),(0,K.jsxs)(`ul`,{className:`space-y-1 pl-3 list-disc marker:text-[var(--color-fg-4)]`,children:[(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`one file can hold many rules`}),` `,`— compare `,(0,K.jsx)(`code`,{children:`db rules`}),` against`,` `,(0,K.jsx)(`code`,{children:`file_rule_count`}),`, not `,(0,K.jsx)(`code`,{children:`file_count`}),`.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in files`}),` `,`means unsynced edits — run`,` `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`}),` or click`,` `,(0,K.jsx)(`code`,{children:`↑ sync files → db`}),`.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in db`}),` `,`with `,(0,K.jsx)(`code`,{children:`source_file IS NULL`}),` is healthy — hub, fleet, or cloud-synced rules legitimately live only in the db.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`only in db`}),` `,`with `,(0,K.jsx)(`code`,{children:`source_file`}),` set means an orphan from a deleted file — `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`}),` `,`prunes it.`]}),(0,K.jsxs)(`li`,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:`db rules`}),` `,`includes disabled rows; `,(0,K.jsx)(`code`,{children:`db_enabled_count`}),` `,`excludes them.`]})]}),(0,K.jsxs)(`div`,{className:`pt-1.5 border-t border-[var(--color-line-0)]`,children:[`full reference:`,` `,(0,K.jsx)(`a`,{href:`https://docs.sigmashake.com/rule-storage`,target:`_blank`,rel:`noopener noreferrer`,className:`text-[var(--color-fg-2)] underline decoration-dotted underline-offset-2 hover:text-amber-300 transition-colors`,children:`docs.sigmashake.com/rule-storage ↗`})]})]}),y?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsx)(`div`,{className:`grid grid-cols-2 sm:grid-cols-4 gap-2`,children:[{label:`.rules files`,value:y.file_count,sub:`${y.file_rule_count} rules total`,tone:`neutral`},{label:`db rules`,value:y.db_rule_count,sub:`${y.db_enabled_count} enabled`,tone:`neutral`},{label:`only in files`,value:y.drift_details.only_in_files.length,tone:y.drift_details.only_in_files.length>0?`amber`:`gray`},{label:`only in db`,value:y.drift_details.only_in_db.length,tone:y.drift_details.only_in_db.length>0?`red`:`gray`}].map(({label:e,value:t,sub:n,tone:r})=>(0,K.jsx)(Ac,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-0)]`,label:e,value:t,sub:n,tone:r,labelPlacement:`above`,subClassName:`text-[var(--color-fg-4)]`,valueClassName:`text-xl font-medium tabular-nums`},e))}),C&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`button`,{onClick:()=>i(e=>!e),className:`text-[10px] font-mono uppercase tracking-wider text-amber-300 hover:text-amber-200 flex items-center gap-1 transition-colors cursor-pointer`,children:[r?`▾`:`▸`,` view drift details`]}),r&&(0,K.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[y.drift_details.only_in_files.length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`text-[10px] font-mono uppercase tracking-wider text-amber-300/80 mb-1.5`,children:[`in .rules files but not in db — run`,` `,(0,K.jsx)(`code`,{className:`text-amber-300`,children:`ssg sync`})]}),(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-amber-400/20 rounded-sm p-2 space-y-0.5 max-h-40 overflow-y-auto`,children:y.drift_details.only_in_files.map(e=>(0,K.jsxs)(`div`,{className:`font-mono text-[11px] text-amber-200/80`,children:[`+ `,e]},e))})]}),y.drift_details.only_in_db.length>0&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-[10px] font-mono uppercase tracking-wider text-red-300/80 mb-1.5`,children:`in db but not in any .rules file — orphaned rules`}),(0,K.jsx)(`div`,{className:`bg-[var(--color-surface-0)] border border-red-400/20 rounded-sm p-2 space-y-0.5 max-h-40 overflow-y-auto`,children:y.drift_details.only_in_db.map(e=>(0,K.jsxs)(`div`,{className:`font-mono text-[11px] text-red-200/80`,children:[`− `,e]},e))})]})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pt-3 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(X,{variant:`primary`,size:`sm`,onClick:h,disabled:l===`loading`,children:l===`loading`?`syncing…`:`↑ sync files → db`}),(0,K.jsx)(X,{variant:`ghost`,size:`sm`,onClick:g,disabled:p===`loading`,children:p===`loading`?`…`:p===`done`?`✓ reloaded`:`↻ force reload`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] ml-auto`,children:y.db_rule_count===0?`⚠ db empty — daemon falls back to file-based loading`:`db has ${y.db_rule_count} rules — indexed queries`})]}),l===`done`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm border border-emerald-500/25 bg-emerald-500/[0.06] px-3 py-2 text-xs font-mono text-emerald-200`,children:[(0,K.jsxs)(`span`,{children:[`✓ `,d]}),(0,K.jsx)(`button`,{onClick:()=>u(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-emerald-500/30 hover:bg-emerald-500/10 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`dismiss`})]}),l===`error`&&(0,K.jsxs)(`div`,{className:`flex items-center justify-between rounded-sm border border-red-500/25 bg-red-500/[0.06] px-3 py-2 text-xs font-mono text-red-200`,children:[(0,K.jsxs)(`span`,{children:[`✗ `,d]}),(0,K.jsx)(`button`,{onClick:()=>u(`idle`),className:`ml-3 shrink-0 px-2 py-0.5 rounded-sm border border-red-500/30 hover:bg-red-500/10 transition-colors cursor-pointer uppercase tracking-wider text-[10px]`,children:`dismiss`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-4 text-[11px] font-mono text-[var(--color-fg-4)] pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsxs)(`span`,{children:[`rules dir:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:y.rules_dir})]}),(0,K.jsxs)(`span`,{className:`ml-auto`,children:[`last reload:`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)]`,children:od(y.last_reload_at)})]})]})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-2 gap-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsxs)(J,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`sqlite database`}),v&&!v.error&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(ld,{ok:v.journal_mode===`wal`,label:`wal`,badLabel:`no wal`}),(0,K.jsx)(ld,{ok:v.synchronous===`NORMAL`,label:`normal`,badLabel:v.synchronous})]})]}),(0,K.jsx)(Y,{children:v?v.error?(0,K.jsx)(`div`,{className:`text-xs text-red-300 font-mono bg-red-500/[0.06] border border-red-500/25 rounded-sm p-2`,children:v.error}):(0,K.jsxs)(`div`,{children:[(0,K.jsx)(sd,{children:`storage`}),(0,K.jsx)(cd,{label:`file path`,value:v.path}),(0,K.jsx)(cd,{label:`file size`,value:nd(v.file_size_bytes)}),(0,K.jsx)(cd,{label:`allocated`,value:`${nd(v.allocated_bytes)} (${v.page_count.toLocaleString()} pages × ${v.page_size}B)`}),(0,K.jsx)(sd,{className:`mt-4`,children:`pragma configuration`}),(0,K.jsx)(cd,{label:`journal_mode`,value:v.journal_mode,accent:v.journal_mode===`wal`?`text-emerald-300`:`text-amber-300`}),(0,K.jsx)(cd,{label:`synchronous`,value:v.synchronous,accent:v.synchronous===`NORMAL`?`text-emerald-300`:`text-amber-300`}),(0,K.jsx)(cd,{label:`cache_size`,value:`${v.cache_size_kb.toLocaleString()} KB (${Math.round(v.cache_size_kb/1024)} MB)`}),(0,K.jsx)(cd,{label:`page_size`,value:`${v.page_size.toLocaleString()} B`}),v.wal_checkpoint&&(0,K.jsx)(cd,{label:`wal checkpoint`,value:`log ${v.wal_checkpoint.log}, checkpointed ${v.wal_checkpoint.checkpointed}, busy ${v.wal_checkpoint.busy}`}),(0,K.jsx)(sd,{className:`mt-4`,children:`table row counts`}),v.tables.map(e=>(0,K.jsx)(cd,{label:e.name,value:e.row_count>=0?e.row_count.toLocaleString():`error`,accent:e.row_count<0?`text-red-300`:`text-[var(--color-fg-1)]`},e.name))]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsxs)(`div`,{className:`space-y-5`,children:[(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`audit log capacity`})}),(0,K.jsx)(Y,{children:b?(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsx)(ud,{pct:b.utilization_pct,total:b.total_rows,max:b.max_rows}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(cd,{label:`total rows`,value:b.total_rows.toLocaleString()}),(0,K.jsx)(cd,{label:`rotation limit`,value:b.max_rows.toLocaleString()}),(0,K.jsx)(cd,{label:`utilization`,value:`${b.utilization_pct}%`,accent:b.utilization_pct>=85?`text-red-300`:b.utilization_pct>=60?`text-amber-300`:`text-emerald-300`}),(0,K.jsx)(cd,{label:`oldest entry`,value:ad(b.oldest_timestamp)}),(0,K.jsx)(cd,{label:`newest entry`,value:ad(b.newest_timestamp)})]}),b.utilization_pct>=85&&(0,K.jsx)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/[0.06] px-3 py-2 text-[11px] font-mono text-red-200`,children:`⚠ audit log nearing rotation limit. oldest entries will be purged automatically.`})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`process & runtime`})}),(0,K.jsx)(Y,{children:x?(0,K.jsxs)(`div`,{children:[(0,K.jsx)(cd,{label:`pid`,value:x.pid}),(0,K.jsx)(cd,{label:`uptime`,value:id(x.uptime_ms)}),(0,K.jsx)(cd,{label:`memory (rss)`,value:`${x.memory_rss_mb} MB`}),(0,K.jsx)(cd,{label:`bun version`,value:x.bun_version}),(0,K.jsx)(cd,{label:`node compat`,value:x.node_version}),(0,K.jsx)(cd,{label:`platform`,value:`${x.platform} / ${x.arch}`})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]})]})]}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`flight recorder`})}),(0,K.jsx)(Y,{children:S?(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`log file`}),(0,K.jsx)(`div`,{className:`text-xs font-mono text-[var(--color-fg-1)] truncate`,children:`…${S.path.slice(-50)}`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`file size`}),(0,K.jsx)(`div`,{className:`text-xs font-mono tabular-nums ${S.file_size_bytes===0?`text-[var(--color-fg-4)]`:`text-[var(--color-fg-1)]`}`,children:nd(S.file_size_bytes)})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline mb-1.5`,children:`approx. entries`}),(0,K.jsx)(`div`,{className:`text-xs font-mono tabular-nums ${S.approx_entries===0?`text-[var(--color-fg-4)]`:`text-[var(--color-fg-1)]`}`,children:S.approx_entries===0?`—`:S.approx_entries.toLocaleString()})]})]}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`loading…`})})]}),(0,K.jsx)(md,{}),(0,K.jsx)(hd,{}),(0,K.jsxs)(q,{children:[(0,K.jsx)(J,{children:(0,K.jsx)(`span`,{className:`overline`,children:`observability api`})}),(0,K.jsxs)(Y,{children:[(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mb-2.5`,children:`machine-readable endpoints for automated monitoring and ai agent triage:`}),(0,K.jsx)(`div`,{className:`space-y-1 font-mono text-[11px]`,children:[[`/api/json/observability`,`sqlite health, rule drift, process info`],[`/api/state/runtime`,`eval latency, decision counters, memory`],[`/api/state/activity-tail?after=0&limit=20`,`recent eval events (live feed)`],[`/api/json/daemon-status`,`daemon pid, status, log tail`],[`/api/json/evald-log`,`last 200 lines of evald.log (daemon stderr)`],[`/healthz`,`process liveness`],[`/readyz`,`sqlite liveness`]].map(([e,t])=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`GET`}),(0,K.jsx)(`a`,{href:e,target:`_blank`,rel:`noreferrer`,className:`text-[var(--color-brand)]/80 hover:text-[var(--color-brand)] transition-colors`,children:e}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)] hidden sm:inline`,children:[`— `,t]})]},e))})]})]})]})}function _d({db:e,audit:t,proc:n,flight:r,driftDetected:i}){let a=e?e.error?`error`:e.journal_mode===`wal`&&e.synchronous===`NORMAL`?`ok`:`warn`:`unknown`,o=t?t.utilization_pct>=85?`error`:t.utilization_pct>=60?`warn`:`ok`:`unknown`,s=n?n.memory_rss_mb>600?`warn`:`ok`:`unknown`;return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-4 gap-4`,children:[(0,K.jsxs)(ed,{title:`sqlite`,status:a,statusLabel:e?.journal_mode?.toUpperCase()??`idle`,children:[(0,K.jsx)(td,{label:`size`,value:e?(0,K.jsx)(fr,{value:e.file_size_bytes,format:e=>rd(e)}):`—`,mono:!0}),(0,K.jsx)(td,{label:`journal`,value:e?.journal_mode??`—`,mono:!0}),(0,K.jsx)(td,{label:`sync`,value:e?.synchronous??`—`,mono:!0}),(0,K.jsx)(td,{label:`tables`,value:e?.tables.length??0,tone:i?`warn`:`neutral`})]}),(0,K.jsxs)(ed,{title:`audit log`,status:o,statusLabel:t?`${t.utilization_pct}%`:`idle`,children:[(0,K.jsx)(td,{label:`rows`,value:t?(0,K.jsx)(fr,{value:t.total_rows}):`—`}),(0,K.jsx)(td,{label:`capacity`,value:t?`${(t.total_rows/Math.max(1,t.max_rows)*100).toFixed(1)}%`:`—`,tone:t&&t.utilization_pct>=85?`bad`:t&&t.utilization_pct>=60?`warn`:`good`}),(0,K.jsx)(td,{label:`oldest`,value:ad(t?.oldest_timestamp??null),mono:!0}),(0,K.jsx)(td,{label:`newest`,value:ad(t?.newest_timestamp??null),mono:!0})]}),(0,K.jsxs)(ed,{title:`process`,status:s,statusLabel:n?`pid ${n.pid}`:`idle`,children:[(0,K.jsx)(td,{label:`uptime`,value:n?id(n.uptime_ms):`—`,mono:!0}),(0,K.jsx)(td,{label:`rss`,value:n?(0,K.jsxs)(`span`,{children:[(0,K.jsx)(fr,{value:n.memory_rss_mb,format:e=>e.toFixed(0)}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] ml-1`,children:`MB`})]}):`—`}),(0,K.jsx)(td,{label:`bun`,value:n?.bun_version??`—`,mono:!0}),(0,K.jsx)(td,{label:`platform`,value:n?`${n.platform}/${n.arch}`:`—`,mono:!0})]}),(0,K.jsxs)(ed,{title:`flight recorder`,status:r&&r.file_size_bytes>0?`ok`:`unknown`,statusLabel:r?`${r.approx_entries.toLocaleString()} entries`:`idle`,children:[(0,K.jsx)(td,{label:`size`,value:r?(0,K.jsx)(fr,{value:r.file_size_bytes,format:e=>rd(e)}):`—`,mono:!0}),(0,K.jsx)(td,{label:`entries`,value:r?(0,K.jsx)(fr,{value:r.approx_entries}):`—`})]})]})}var vd=900,$=180,yd=320,bd=800,xd=4;function Sd({sessionKey:e}={}){let t=Ee(),n=Oe(),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)(`idle`),s=(0,_.useRef)([]),c=(0,_.useRef)(-1),l=(0,_.useRef)(0),u=(0,_.useRef)(null);if((0,_.useEffect)(()=>{if(!t||n===c.current||(c.current=n,t.decision!==`block`&&t.decision!==`force`)||e&&Ja(t)!==e)return;let u=Date.now(),d=s.current,f=d[0];if(f&&u-l.current<bd){f.extra+=1,f.burst=t,f.seq=n,l.current=u;return}if(d.length>=xd&&d.shift(),d.push({seq:n,burst:t,extra:0}),l.current=u,a===`idle`&&!r){let e=d.shift()??null;e&&(i(e),o(`in`))}},[n]),(0,_.useEffect)(()=>{if(a===`idle`)return;let e=null;return a===`in`?e=setTimeout(()=>o(`visible`),$):a===`visible`?e=setTimeout(()=>o(`out`),vd):a===`out`&&(e=setTimeout(()=>{let e=s.current.shift()??null;e?(i(e),o(`in`)):(i(null),o(`idle`))},yd)),u.current=e,()=>{e&&clearTimeout(e)}},[a]),!r)return null;let{burst:d,extra:f}=r,p=Ya[d.decision]??`#ef4444`,m=ot(),h=a===`in`||a===`visible`?1:0,g=m||a===`in`||a===`visible`?0:-8,v=d.rule_id??`rule`,y=d.decision===`block`?`BLOCKED`:`FORCED`,b=f>0?`${d.tool} · +${f} more in this burst`:`${d.tool} · ${d.client}${d.agent_id?`:${d.agent_id}`:``}`;return(0,K.jsx)(`div`,{className:e?`pointer-events-none absolute top-2 left-1/2 z-30 select-none`:`pointer-events-none fixed top-20 left-1/2 z-40 select-none`,style:{transform:`translateX(-50%) translateY(${g}px) scale(1)`,opacity:h,transition:m?`opacity ${$}ms ease-out`:`opacity ${$}ms ease-out, transform ${$}ms cubic-bezier(0.34, 1.56, 0.64, 1)`},"aria-live":`polite`,"aria-atomic":`true`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3 px-5 py-3 rounded-md border bg-black/95 shadow-2xl`,style:{borderColor:p},children:[(0,K.jsx)(`div`,{className:`w-2.5 h-2.5 rounded-full shrink-0`,style:{background:p,boxShadow:m?`none`:`0 0 16px ${p}`}}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-0.5 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`text-[11px] font-mono uppercase tracking-[0.18em]`,style:{color:p},children:[y,` BY SSG`]}),(0,K.jsx)(`div`,{className:`text-[14px] font-mono text-[var(--color-fg-1)] truncate max-w-[420px]`,children:v}),(0,K.jsx)(`div`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] truncate max-w-[420px]`,children:b})]})]})})}var Cd=(0,_.memo)(function(e){let{sessionKey:t,bursts:n,paused:r,selectedId:i,onSelect:a,burstSeq:o,isStale:s,isFadingOut:c,minHeight:l,pinned:u,minimized:d,isFullscreen:f,viewMode:p=`full`,thumbnail:m=!1,onPromote:h,activePanelCount:g=1,onTogglePin:v,onToggleMinimize:y,onToggleFullscreen:b,onClose:x,onFrameTime:S}=e,C=p===`broadcast`,w=!m&&(p===`stream`||p===`broadcast`||f)?`large`:`normal`,T=t.indexOf(`:`),E=T>=0?t.slice(0,T):t,D=T>=0?t.slice(T+1):``,O=(0,_.useRef)(null),[ee,k]=(0,_.useState)(!0),[A,j]=(0,_.useState)(null),te=()=>{let e=O.current;if(!e)return;let t=e.querySelector(`canvas`);t instanceof HTMLCanvasElement&&j(t.toDataURL(`image/png`))},ne=()=>{if(!A)return;let e=document.createElement(`a`),n=t.replace(/[^a-z0-9._-]+/gi,`-`);e.href=A,e.download=`ssg-graph-${n}-${Date.now()}.png`,document.body.appendChild(e),e.click(),e.remove()},re=()=>{!A||!navigator.clipboard?.write||fetch(A).then(e=>e.blob()).then(e=>{let t=new ClipboardItem({"image/png":e});return navigator.clipboard.write([t])}).catch(()=>{})},M=typeof navigator<`u`&&typeof navigator.clipboard?.write==`function`&&typeof ClipboardItem<`u`;(0,_.useEffect)(()=>{if(f){k(!0);return}let e=O.current;if(!e)return;let t=new IntersectionObserver(e=>{for(let t of e)k(t.isIntersecting)},{threshold:.01});return t.observe(e),()=>t.disconnect()},[f]);let N=n.length>0?n[n.length-1]:null,ie=N?Ya[N.decision]??`#6b7280`:`#6b7280`,ae=N?.decision??null,oe=N?.tool??null,P=r||!ee||d,F=(0,_.useMemo)(()=>n.length>24?n.slice(n.length-24):n,[n]);return(0,K.jsxs)(`div`,{ref:O,className:`relative flex flex-col shrink-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] overflow-hidden transition-opacity duration-1000${f?` flex-1 min-h-0`:``}`,style:{minHeight:d||f?void 0:l,opacity:c?0:1},children:[!C&&(0,K.jsxs)(`header`,{className:`group flex items-center justify-between px-3 py-1.5 border-b border-[var(--color-line-1)] bg-black/30 shrink-0 gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono min-w-0`,children:[u&&(0,K.jsx)(`span`,{className:`text-amber-300`,title:`Pinned`,children:`▲`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider`,children:E}),D&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] truncate`,children:D})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono text-[var(--color-fg-4)]`,children:[oe&&(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 max-w-[180px]`,title:ae?`latest: ${oe} → ${ae}`:`latest: ${oe}`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:ie}}),(0,K.jsx)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:oe})]}),(0,K.jsxs)(`span`,{className:`hidden md:inline text-[var(--color-fg-4)]`,children:[n.length,`n`]}),s?(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-amber-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-amber-400`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`idle`})]}):(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`live`})]}),!m&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1 ml-1`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:v,className:`px-1.5 py-0.5 rounded border text-[10px] uppercase tracking-wider transition-colors ${u?`border-amber-500/60 text-amber-300`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:text-amber-300 hover:border-amber-500/40`}`,title:u?`Unpin`:`Pin to top`,children:`pin`}),(0,K.jsx)(`button`,{type:`button`,onClick:y,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:d?`Expand`:`Minimize`,children:d?`+`:`–`}),(0,K.jsx)(`button`,{type:`button`,onClick:te,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:`Preview PNG snapshot of this panel`,children:`▣`}),(0,K.jsx)(`button`,{type:`button`,onClick:b,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,title:f?`Exit fullscreen`:`Fullscreen`,children:f?`×`:`⛶`}),x&&(0,K.jsx)(`button`,{type:`button`,onClick:x,"aria-label":`Close session ${t}`,className:`px-1.5 py-0.5 rounded border border-[var(--color-line-1)] text-[10px] text-[var(--color-fg-3)] hover:text-rose-300 hover:border-rose-500/40 transition-colors`,title:`End this session on the graph`,children:`╳`})]})]})]}),!d&&!m&&!C&&(0,K.jsx)(Fs,{sessionKey:t,className:`rounded-none border-x-0 border-t-0 border-b border-[var(--color-line-1)] shrink-0`}),A&&(0,K.jsxs)(`div`,{className:`absolute inset-0 z-40 flex flex-col items-center justify-center gap-3 bg-black/80 backdrop-blur-sm p-4`,children:[(0,K.jsx)(`img`,{src:A,alt:`Panel snapshot`,className:`max-w-full max-h-[60%] rounded-sm border border-[var(--color-line-1)] object-contain`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[M&&(0,K.jsx)(`button`,{type:`button`,onClick:re,className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-2)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,children:`copy`}),(0,K.jsx)(`button`,{type:`button`,onClick:ne,className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-2)] hover:text-sky-300 hover:border-sky-500/40 transition-colors`,children:`download`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>j(null),className:`px-3 py-1.5 rounded border border-[var(--color-line-1)] text-[11px] font-mono text-[var(--color-fg-3)] hover:text-rose-300 hover:border-rose-500/40 transition-colors`,children:`close`})]})]}),!d&&(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 relative`,children:[(0,K.jsx)(Sd,{sessionKey:t}),(0,K.jsx)(Os,{bursts:F,paused:P,selectedId:i,onSelect:a,burstSeq:o,compact:!0,activePanelCount:g,labelDensity:w,onFrameTime:S}),m&&(0,K.jsx)(`button`,{type:`button`,onClick:h,"aria-label":`Promote ${E} to spotlight`,title:`Spotlight ${E}${D?` · ${D}`:``}`,className:`absolute inset-0 cursor-pointer bg-transparent hover:bg-sky-400/5 transition-colors`})]})]})}),wd=200;function Td(e){let t=Date.now()-e;return t<2e3?`now`:t<6e4?`${Math.floor(t/1e3)}s ago`:t<36e5?`${Math.floor(t/6e4)}m ago`:`${Math.floor(t/36e5)}h ago`}function Ed(e){let t=e/1e6;return t<1e3?`${Math.round(t)}ms`:t<6e4?`${(t/1e3).toFixed(1)}s`:`${Math.floor(t/6e4)}m${Math.floor(t%6e4/1e3)}s`}function Dd(e){let{bursts:t,selectedId:n,onSelect:r}=e,i=(0,_.useMemo)(()=>{let e=new Map;for(let n of t){if(di(n.tool))continue;let t=Ja(n),r=e.get(t);r||(r=[],e.set(t,r)),r.push(n)}let n=Array.from(e.entries());return n.sort((e,t)=>{let n=e[1][e[1].length-1]?.ts_ms??0;return(t[1][t[1].length-1]?.ts_ms??0)-n}),n},[t]);return t.length===0?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center text-center px-4`,children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`feed · idle`}),(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[260px]`,children:[`Each entry is one tool call your AI agent made.`,(0,K.jsx)(`br`,{}),`Color = the ssg rule decision.`]})]}):(0,K.jsx)(`div`,{className:`flex-1 min-h-0 overflow-y-auto px-3 py-3 space-y-5`,children:i.map(([e,t])=>{let i=e.indexOf(`:`),a=i>=0?e.slice(0,i):e;i>=0&&e.slice(i+1);let o=t[t.length-1],s=o?Ya[o.decision]??`#6b7280`:`#6b7280`,c=t.slice(-wd).reverse();return(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2 pb-1 border-b border-[var(--color-line-1)] text-[11px]`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:s}}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)] font-medium`,children:ui(a)}),(0,K.jsxs)(`span`,{className:`ml-auto text-[10px] text-[var(--color-fg-4)]`,children:[t.length,` `,t.length===1?`action`:`actions`]})]}),(0,K.jsxs)(`div`,{className:`relative pl-4`,children:[(0,K.jsx)(`div`,{className:`absolute left-[7px] top-0 bottom-0 w-px`,style:{background:`${s}33`}}),(0,K.jsx)(`div`,{className:`space-y-1.5`,children:c.map(e=>{let t=e.audit_id??`${e.ts_ms}:${e.tool}`,i=t===n,a=Ya[e.decision]??`#6b7280`,o=e.input_tokens??0,s=e.output_tokens??0,c=o>0||s>0;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsx)(`span`,{className:`absolute -left-[9px] top-1/2 -translate-y-1/2 w-[6px] h-[6px] rounded-full border border-[var(--color-surface-1)]`,style:{background:a}}),(0,K.jsxs)(`button`,{type:`button`,onClick:()=>r(i?null:t),className:`w-full text-left flex items-center gap-2 px-2.5 py-1.5 rounded-sm border text-[11.5px] transition-colors ${i?`border-sky-500/50 bg-sky-500/5 text-[var(--color-fg-1)]`:`border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-[var(--color-fg-2)] hover:bg-white/3 hover:border-[var(--color-line-2)]`}`,children:[(0,K.jsx)(`span`,{className:`flex-1 font-medium truncate text-[var(--color-fg-1)]`,title:e.tool,children:li(e.tool)}),(0,K.jsxs)(`span`,{className:`shrink-0 flex items-center gap-2 text-[9px] text-[var(--color-fg-4)]`,children:[c&&(0,K.jsxs)(`span`,{className:`font-mono`,title:`Input: ${o} tokens · Output: ${s} tokens`,children:[`↓`,Z(o),` `,`↑`,Z(s)]}),e.duration_ns>0&&(0,K.jsx)(`span`,{children:Ed(e.duration_ns)}),(0,K.jsx)(`span`,{className:`px-1.5 py-px rounded text-[9px] font-semibold tracking-wide`,style:{color:a,background:`${a}22`},children:e.decision===`allow`?`Allowed`:e.decision===`block`?`Blocked`:e.decision===`ask`?`Held`:e.decision===`force`?`Forced`:e.decision===`log`?`Logged`:e.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:Td(e.ts_ms)})]})]})]},t)})})]})]},e)})})}function Od(e){let{playback:t,bursts:n,rangeStart:r,rangeEnd:i,loading:a,onPlayhead:o,onLive:s,onPause:c,onResume:l,on24h:u}=e,d=(0,_.useRef)(null),f=(0,_.useRef)(!1),p=Math.max(1,i-r),m=(t.playhead_ms-r)/p*100,h=Math.max(0,Math.min(100,m)),g=(0,_.useMemo)(()=>{let e=[];for(let t=0;t<200;t++)e.push({allow:0,block:0,ask:0,other:0});for(let t of n){let n=t.ts_ms;if(n<r||n>i)continue;let a=e[Math.floor((n-r)/p*199)];t.decision===`allow`?a.allow++:t.decision===`block`||t.decision===`force`?a.block++:t.decision===`ask`?a.ask++:a.other++}return e},[n,r,i,p]),v=(0,_.useCallback)(e=>{let t=d.current;if(!t)return;let n=t.getBoundingClientRect(),i=Math.max(0,Math.min(1,(e-n.left)/n.width));if(i>=.98){s();return}o(r+i*p)},[r,p,o,s]);(0,_.useEffect)(()=>{let e=e=>{f.current&&v(e.clientX)},t=()=>{f.current=!1};return window.addEventListener(`pointermove`,e),window.addEventListener(`pointerup`,t),()=>{window.removeEventListener(`pointermove`,e),window.removeEventListener(`pointerup`,t)}},[v]);let y=t.mode===`live`;return(0,K.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-[11px] font-mono uppercase tracking-wider`,children:[(0,K.jsx)(`button`,{onClick:()=>y?c():l(),className:`px-2.5 py-1 rounded-sm border transition-colors cursor-pointer ${y?`border-emerald-500/40 text-emerald-300 hover:bg-emerald-500/10`:`border-amber-500/40 text-amber-300 hover:bg-amber-500/10`}`,title:y?`Pause the live stream`:`Resume updates at this playhead`,children:y?`⏸ pause`:`▶ resume`}),(0,K.jsx)(`button`,{onClick:s,disabled:y,className:`px-2.5 py-1 rounded-sm border transition-colors cursor-pointer ${y?`border-[var(--color-line-1)] text-[var(--color-fg-4)] opacity-50`:`border-sky-500/40 text-sky-300 hover:bg-sky-500/10`}`,title:`Jump to live (now)`,children:`⏭ live`}),(0,K.jsx)(`button`,{onClick:u,className:`px-2.5 py-1 rounded-sm border border-violet-500/40 text-violet-300 hover:bg-violet-500/10 transition-colors cursor-pointer`,title:`Expand to last 24h — window covers now−24h through now. Backfills audit_log so the scrubber shows all recent evals.`,children:`◉ 24h`}),(0,K.jsx)(`div`,{className:`flex-1`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`mode`}),(0,K.jsx)(`span`,{className:y?`text-emerald-300`:t.mode===`paused`?`text-amber-300`:`text-violet-300`,children:t.mode}),a&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] animate-pulse`,children:`· backfilling`}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`· t=`,kd(t.playhead_ms)]})]}),(0,K.jsxs)(`div`,{ref:d,className:`relative h-10 w-full rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] cursor-pointer overflow-hidden select-none`,onPointerDown:e=>{f.current=!0,e.target.setPointerCapture?.(e.pointerId),v(e.clientX)},children:[(0,K.jsx)(`svg`,{viewBox:`0 0 200 40`,preserveAspectRatio:`none`,className:`absolute inset-0 w-full h-full`,"aria-hidden":!0,children:g.map((e,t)=>{let n=e.allow+e.block+e.ask+e.other;if(n===0)return null;let r=Math.min(32,n*3),i=e.block>0?Ya.block:e.ask>0?Ya.ask:Ya.allow;return(0,K.jsx)(`rect`,{x:t,y:40-r,width:.9,height:r,fill:i,opacity:.7},t)})}),(0,K.jsx)(`div`,{className:`absolute top-0 bottom-0 w-px bg-sky-300 pointer-events-none`,style:{left:`${h}%`},children:(0,K.jsx)(`div`,{className:`absolute -top-0.5 -translate-x-1/2 w-2 h-2 rotate-45 bg-sky-300`})}),y&&(0,K.jsx)(`div`,{className:`absolute top-0 right-0 bottom-0 w-[2px] bg-emerald-400 animate-pulse pointer-events-none`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between text-[10px] font-mono text-[var(--color-fg-4)]`,children:[(0,K.jsx)(`span`,{children:Ad(r)}),(0,K.jsxs)(`span`,{className:`uppercase tracking-wider`,children:[jd(t.window_ms),` window`]}),(0,K.jsx)(`span`,{children:Ad(i)})]})]})}function kd(e){let t=Date.now()-e;if(Math.abs(t)<1500)return`live`;let n=Math.round(t/1e3);if(n<60)return`−${n}s`;let r=Math.floor(n/60);return r<60?`−${r}m${n%60}s`:`−${Math.floor(r/60)}h${r%60}m`}function Ad(e){return new Date(e).toLocaleTimeString([],{hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function jd(e){return e<6e4?`${Math.round(e/1e3)}s`:e<36e5?`${Math.round(e/6e4)}m`:`${Math.round(e/36e5)}h`}var Md=320,Nd=8,Pd=12;function Fd(e){let{burst:t,anchor:n,onClose:r}=e,i=(0,_.useRef)(null),[a,o]=(0,_.useState)({left:-9999,top:-9999});if((0,_.useEffect)(()=>{if(!t)return;let e=e=>{e.key===`Escape`&&r()},n=e=>{i.current&&!i.current.contains(e.target)&&r()};return document.addEventListener(`keydown`,e),document.addEventListener(`mousedown`,n),()=>{document.removeEventListener(`keydown`,e),document.removeEventListener(`mousedown`,n)}},[t,r]),(0,_.useLayoutEffect)(()=>{if(!t||!n||!i.current)return;let e=i.current.getBoundingClientRect(),r=window.innerWidth,a=window.innerHeight,s=e.height>0?e.height:280,c=n.x+Pd+Md>r?n.x-Pd-Md:n.x+Pd,l=n.y+Pd+s>a?n.y-Pd-s:n.y+Pd;c=Math.min(Math.max(Nd,c),r-Md-Nd),l=Math.min(Math.max(Nd,l),a-s-Nd),o({left:c,top:l})},[t,n]),(0,_.useEffect)(()=>{o({left:-9999,top:-9999})},[t]),!t||!n)return null;let s=Ya[t.decision]??`#6b7280`,c=t.duration_ns/1e6,l=Date.now()-t.ts_ms;return(0,K.jsxs)(`div`,{ref:i,className:`fixed z-50 flex flex-col gap-3 text-[12px] font-mono rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] shadow-2xl p-4`,style:{left:a.left,top:a.top,width:Md,maxHeight:`80vh`,overflowY:`auto`},children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`overline text-[var(--color-fg-3)]`,children:`node · inspect`}),(0,K.jsx)(`button`,{onClick:r,className:`text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] cursor-pointer`,title:`Close inspector`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full`,style:{background:s},"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`uppercase tracking-wider`,style:{color:s},children:t.decision}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:t.tool})]}),(0,K.jsxs)(`dl`,{className:`grid grid-cols-[auto_1fr] gap-x-3 gap-y-1 text-[11px]`,children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`rule`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-all`,children:t.rule_id??`—`}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`client`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.client}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`agent`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.agent_id?(0,K.jsx)(`span`,{className:`chip text-violet-300 border-violet-500/30`,children:t.agent_id}):(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`—`})}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`eval duration`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:c<1?`${(c*1e3).toFixed(0)}µs`:`${c.toFixed(2)}ms`}),t.complete_duration_ms!=null&&t.complete_duration_ms>0&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`tool duration`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:t.complete_duration_ms>=1e3?`${(t.complete_duration_ms/1e3).toFixed(2)}s`:`${t.complete_duration_ms.toFixed(0)}ms`})]}),t.message&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`reason`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-words`,children:t.message})]}),(t.input_tokens!=null||t.output_tokens!=null)&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`tokens`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:Rd(t.input_tokens,t.output_tokens)})]}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`age`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:Id(l)}),(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)]`,children:`timestamp`}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)]`,children:new Date(t.ts_ms).toLocaleString()})]}),t.input_preview&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:`input`}),(0,K.jsx)(`pre`,{className:`bg-[var(--color-surface-0)] border border-[var(--color-line-0)] rounded-sm p-2 text-[10px] text-[var(--color-fg-2)] whitespace-pre-wrap break-all max-h-48 overflow-y-auto`,children:t.input_preview})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1`,children:[t.audit_id&&(0,K.jsx)(`a`,{href:`/audit?id=${encodeURIComponent(t.audit_id)}`,className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)] hover:text-[var(--color-fg-1)]`,title:`Open full audit record`,children:`audit ↗`}),t.rule_id&&(0,K.jsx)(`a`,{href:`/rules#${encodeURIComponent(t.rule_id)}`,className:`chip text-[var(--color-fg-3)] border-[var(--color-line-1)] hover:text-[var(--color-fg-1)]`,title:`Jump to rule`,children:`rule ↗`})]})]})}function Id(e){if(e<1500)return`just now`;let t=Math.floor(e/1e3);if(t<60)return`${t}s ago`;let n=Math.floor(t/60);return n<60?`${n}m${t%60}s ago`:`${Math.floor(n/60)}h${n%60}m ago`}function Ld(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}K`:e<1e6?`${Math.round(e/1e3)}K`:`${(e/1e6).toFixed(1)}M`}function Rd(e,t){let n=[];return e!=null&&n.push(`${Ld(e)} in`),t!=null&&n.push(`${Ld(t)} out`),n.length>0?n.join(` · `):`—`}function zd(e){let t=new Map;for(let n of e){let e=`${n.client}:${n.agent_id??`solo`}`,r=t.get(e);r?(r.count+=1,n.ts_ms>r.newest_ts_ms&&(r.newest_ts_ms=n.ts_ms)):t.set(e,{client:n.client,agent_id:n.agent_id??`solo`,count:1,newest_ts_ms:n.ts_ms})}return Array.from(t.values()).sort((e,t)=>t.newest_ts_ms===e.newest_ts_ms?t.count-e.count:t.newest_ts_ms-e.newest_ts_ms)}function Bd(e){let{bursts:t,allBursts:n}=e,r=n??t,{toolCounts:i,decisionCounts:a,ruleCounts:o,unmatchedCount:s}=(0,_.useMemo)(()=>{let e=new Map,n=new Map,r=new Map,i=0;for(let a of t)if(e.set(a.tool,(e.get(a.tool)??0)+1),n.set(a.decision,(n.get(a.decision)??0)+1),a.rule_id){let e=r.get(a.rule_id);e?(e.count+=1,e.decisions.add(a.decision)):r.set(a.rule_id,{count:1,decisions:new Set([a.decision])})}else i+=1;return{toolCounts:Array.from(e.entries()).sort((e,t)=>t[1]-e[1]),decisionCounts:Array.from(n.entries()),ruleCounts:Array.from(r.entries()).map(([e,t])=>({id:e,count:t.count,decisions:t.decisions})).sort((e,t)=>t.count-e.count),unmatchedCount:i}},[t]),c=(0,_.useMemo)(()=>zd(r),[r]),l=i[0]?.[1]??0,u=c[0]?.count??0,d=o[0]?.count??0,f=e=>{for(let t of[`block`,`ask`,`force`,`log`,`allow`,`shadow`])if(e.has(t))return Ya[t];return`#6b7280`};return(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 text-[11px] font-mono`,children:[(0,K.jsx)(`div`,{className:`rounded-sm border border-[var(--color-line-0)] bg-[var(--color-surface-0)] p-2 text-[10px] text-[var(--color-fg-3)] leading-relaxed`,children:`Each dot is one tool call by an AI agent. Color encodes the ssg rule decision; lines link calls from the same agent in time order.`}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`rules · `,o.length,` matched`,s>0&&(0,K.jsxs)(`span`,{className:`ml-2 text-[var(--color-fg-4)] normal-case tracking-normal`,children:[s,` unmatched`]})]}),o.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no rules matched in window`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:o.slice(0,6).map(e=>{let t=d>0?e.count/d*100:0,n=f(e.decisions);return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,title:`${e.id} — decisions: ${Array.from(e.decisions).join(`, `)}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:n},"aria-hidden":!0}),(0,K.jsx)(`a`,{href:`/rules#${encodeURIComponent(e.id)}`,className:`truncate text-[var(--color-fg-2)] hover:text-[var(--color-fg-1)]`,children:e.id}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full`,style:{background:n,width:`${t}%`,opacity:.6}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:e.count})]},e.id)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:`decisions`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-x-3 gap-y-1`,children:[`allow`,`block`,`ask`,`log`,`force`,`shadow`].map(e=>{let t=a.find(([t])=>t===e)?.[1]??0;return(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:Ya[e]},"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-2)] uppercase tracking-wider`,children:e}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)] tabular-nums`,children:t})]},e)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`agents · `,c.length,` active`,n&&n!==t&&(0,K.jsx)(`span`,{className:`ml-2 text-[var(--color-fg-4)] normal-case tracking-normal`,children:`roster: today`})]}),c.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no agents in window`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:c.slice(0,8).map(e=>{let t=u>0?e.count/u*100:0,n=`${e.client}:${e.agent_id}`,r=Date.now()-e.newest_ts_ms,i=r<5e3;return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,title:`${n} — last eval ${Math.max(0,Math.round(r/1e3))}s ago`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[i?(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft shrink-0`,"aria-hidden":!0}):(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0 bg-[var(--color-fg-4)]/40`,"aria-hidden":!0}),(0,K.jsxs)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:[e.client,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-4)]`,children:[`:`,e.agent_id]})]}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-violet-400/60`,style:{width:`${t}%`}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:e.count})]},n)})})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`overline text-[var(--color-fg-3)] mb-1`,children:[`tools · `,t.length,` in window`]}),i.length===0?(0,K.jsx)(`p`,{className:`text-[var(--color-fg-4)]`,children:`no tool activity`}):(0,K.jsx)(`ul`,{className:`space-y-0.5`,children:i.slice(0,8).map(([e,t])=>{let n=l>0?t/l*100:0;return(0,K.jsxs)(`li`,{className:`grid grid-cols-[1fr_auto] items-center gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`truncate text-[var(--color-fg-2)]`,children:e}),(0,K.jsx)(`div`,{className:`flex-1 h-1 bg-[var(--color-surface-1)] rounded-sm overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-sky-400/60`,style:{width:`${n}%`}})})]}),(0,K.jsx)(`span`,{className:`tabular-nums text-[var(--color-fg-4)]`,children:t})]},e)})})]})]})}var Vd=[100,500,1e3,5e3,1e4,1e5];function Hd(e){return e>=1e5||e>=1e3?`${e/1e3|0}k`:String(e)}function Ud(e){let t=Math.floor(e/100),n=Math.floor(t/600),r=Math.floor(t%600/10),i=t%10;return`${String(n).padStart(2,`0`)}:${String(r).padStart(2,`0`)}.${i}`}function Wd(e){let t=Math.floor(e/100);return`${Math.floor(t/10)}.${t%10}s`}function Gd({className:e,onMilestone:t,onRecord:n}){let r=(0,_.useRef)(null),i=(0,_.useRef)(null),[a,o]=(0,_.useState)(0),[s,c]=(0,_.useState)(0),[l,u]=(0,_.useState)(0),[d,f]=(0,_.useState)(0),[p,m]=(0,_.useState)(0),[h,g]=(0,_.useState)(``),[v,y]=(0,_.useState)(!1),[b,x]=(0,_.useState)(!1),S=Ee(),C=Oe(),w=De(),T=(0,_.useRef)(null),E=(0,_.useRef)(0),D=(0,_.useRef)(0),O=(0,_.useRef)(0),ee=(0,_.useRef)(0),k=(0,_.useRef)(new Set),A=(0,_.useRef)(performance.now());(0,_.useEffect)(()=>{let e=performance.now();if(ot()){let t=setInterval(()=>{let t=performance.now();r.current&&(r.current.textContent=Ud(t-e)),i.current&&(i.current.textContent=Wd(t-A.current))},1e3);return()=>clearInterval(t)}let[t]=vr(()=>{let t=performance.now();r.current&&(r.current.textContent=Ud(t-e)),i.current&&(i.current.textContent=Wd(t-A.current))});return t},[]);let j=(0,_.useRef)(0);return(0,_.useEffect)(()=>{if(T.current===null){T.current=C,E.current=C;return}if(C<=E.current)return;let e=C-E.current;E.current=C,u(n=>{let r=n+e,i=Vd.find(e=>e>ee.current&&r>=e);return i&&(ee.current=i,g(Hd(i)),x(!0),t?.(),setTimeout(()=>{g(``),x(!1)},700)),r});let r=Date.now();if(r-j.current>=1e3){j.current=r;let e=w.filter(e=>r-e.ts_ms<=6e4);f(new Set(e.map(e=>`${e.client}:${e.agent_id??`solo`}`)).size)}S?.rule_id&&k.current.add(S.rule_id),m(k.current.size),S&&(S.decision===`block`?(D.current=0,o(0),A.current=performance.now()):(D.current+=e,D.current>O.current&&(O.current=D.current,c(O.current),y(!0),n?.(),setTimeout(()=>y(!1),450)),o(D.current)))},[C,S,w,t,n]),(0,K.jsxs)(`div`,{className:G(`pointer-events-none select-none`,`flex flex-col gap-2 p-3 rounded-md`,`bg-[var(--color-bg-2,#0c0d12)]/95`,`border border-[var(--color-border-1,#1c1f26)]`,`shadow-lg shadow-black/40`,`min-w-[180px] font-mono text-[11px]`,`text-[var(--color-fg-2,#9aa1ad)]`,b&&`milestone-ring`,e),"aria-label":`Live engagement counters`,children:[(0,K.jsx)(Kd,{label:`uptime`,children:(0,K.jsx)(`span`,{ref:r,className:`tabular-nums text-[var(--color-fg-0,#e6e8ed)] text-[15px] tracking-tight`,children:`00:00.0`})}),(0,K.jsx)(Kd,{label:`evals`,children:(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,K.jsx)(fr,{value:l,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`}),h&&(0,K.jsxs)(`span`,{className:`text-[10px] text-emerald-400 uppercase tracking-wide`,children:[`+`,h]})]})}),(0,K.jsx)(Kd,{label:`since block`,children:(0,K.jsx)(`span`,{ref:i,className:`tabular-nums text-emerald-300 text-[15px]`,children:`0.0s`})}),(0,K.jsx)(Kd,{label:`streak / best`,children:(0,K.jsxs)(`span`,{className:G(`tabular-nums text-[15px]`,v?`record-beat`:`text-[var(--color-fg-0,#e6e8ed)]`),children:[(0,K.jsx)(fr,{value:a,curve:`spring`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4,#5a6071)] mx-1`,children:`/`}),(0,K.jsx)(fr,{value:s})]})}),(0,K.jsx)(Kd,{label:`agents`,children:(0,K.jsx)(fr,{value:d,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`})}),(0,K.jsx)(Kd,{label:`rules`,children:(0,K.jsx)(fr,{value:p,className:`text-[var(--color-fg-0,#e6e8ed)] text-[15px]`})})]})}function Kd({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,K.jsx)(`span`,{className:`uppercase tracking-wider text-[10px] text-[var(--color-fg-4,#5a6071)]`,children:e}),t]})}var qd=80,Jd=600,Yd=Object.freeze({stop:()=>{},count:0}),Xd=new Set([`allow`,`block`,`ask`,`log`,`force`,`shadow`]);function Zd(e){if(!Lo()||e.length===0)return Yd;let t=[],n=!1,r=0;for(let i=0;i<e.length;i++){let a=e[i];if(i>0){let t=e[i-1],n=Math.max(0,a.ts_ms-t.ts_ms),o=qd+Math.log2(1+n)*14;r+=Math.max(qd,Math.min(Jd,o))}let o=Xd.has(a.decision)?a.decision:null;if(!o)continue;let s=setTimeout(()=>{n||Uo(o)},r);t.push(s)}return{count:t.length,stop(){if(!n){n=!0;for(let e of t)clearTimeout(e);t.length=0}}}}var Qd=1200,$d=3e4,ef=3e3,tf=6,nf=3,rf=`graph.panelState.v1`,af=14400*1e3;function of(e,t){let n=new Map;for(let t of e){let e=Ja(t),r=n.get(e);r?r.push(t):n.set(e,[t])}for(let[e,r]of n){let i=t.get(e);i&&i.length===r.length&&i[i.length-1]===r[r.length-1]&&n.set(e,i)}return n}function sf(){if(typeof window>`u`)return new Map;try{let e=window.localStorage.getItem(rf);if(!e)return new Map;let t=JSON.parse(e);return new Map(Object.entries(t))}catch{return new Map}}function cf(e){if(!(typeof window>`u`))try{let t={};for(let[n,r]of e)t[n]=r;window.localStorage.setItem(rf,JSON.stringify(t))}catch{}}function lf(){let e=uo(),t=Oe(),n=Ee(),[r,i]=(0,_.useState)(null),[a,o]=(0,_.useState)(null),s=(0,_.useCallback)((e,t)=>{i(e),o(t??null)},[]),c=Us();(0,_.useEffect)(()=>{n&&(n.decision===`block`?c.play(`block`):n.decision===`force`&&c.play(`force`))},[t]);let l=(0,_.useCallback)(()=>c.play(`milestone`),[c]),u=(0,_.useCallback)(()=>c.play(`record`),[c]),[d,f]=(0,_.useState)(()=>{if(typeof window>`u`)return`full`;try{let e=window.localStorage.getItem(`graph.viewMode.v1`);if(e===`full`||e===`feed`||e===`stream`||e===`broadcast`)return e}catch{}return`full`});(0,_.useEffect)(()=>{if(!(typeof window>`u`))try{window.localStorage.setItem(`graph.viewMode.v1`,d)}catch{}},[d]),(0,_.useEffect)(()=>{let e=e=>e===`full`?`feed`:e===`feed`?`stream`:e===`stream`?`broadcast`:`full`,t=t=>{if(t.key===`Escape`&&d!==`full`){f(`full`);return}if(t.key===`b`||t.key===`B`){let n=t.target?.tagName;if(n===`INPUT`||n===`TEXTAREA`)return;f(e)}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[d]);let p=d===`broadcast`,m=d===`stream`,h=d===`feed`,g=m||p,v=p,y=m,[b,x]=(0,_.useState)(()=>{if(typeof window>`u`)return!1;try{return window.localStorage.getItem(`ssg.sfx.enabled`)===null}catch{return!1}}),S=(0,_.useCallback)(()=>{c.toggle(),x(!1)},[c]),[C,w]=(0,_.useState)(()=>typeof window<`u`&&window.matchMedia(`(max-width: 767px)`).matches);(0,_.useEffect)(()=>{let e=window.matchMedia(`(max-width: 767px)`),t=e=>w(e.matches);return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)},[]);let[T,E]=(0,_.useState)(!1),D=(0,_.useRef)(null),O=(0,_.useCallback)(async e=>{try{await fetch(`/api/json/graph/close-sessions`,{method:`POST`,headers:{"Content-Type":`application/json`},credentials:`same-origin`,body:JSON.stringify(e.length>0?{session_keys:e}:{})})}catch{}E(!1),D.current&&clearTimeout(D.current)},[]),ee=(0,_.useCallback)(e=>{if(!T){E(!0),D.current&&clearTimeout(D.current),D.current=setTimeout(()=>E(!1),3e3);return}O(e)},[T,O]);(0,_.useEffect)(()=>()=>{D.current&&clearTimeout(D.current)},[]);let k=(0,_.useRef)(new Map),A=(0,_.useRef)(0),[j,te]=(0,_.useState)({fps:0,active:0,hitches:0}),ne=(0,_.useCallback)((e,t)=>{k.current.set(e,t),t>33&&(A.current+=1)},[]);(0,_.useEffect)(()=>{let e=setInterval(()=>{let e=k.current,t=A.current;if(A.current=0,e.size===0){te(e=>e.active===0?e:{fps:0,active:0,hitches:0});return}let n=0;for(let t of e.values())n+=t;let r=n/e.size,i=r>0?Math.max(1,Math.round(1e3/r)):0;te(n=>n.fps===i&&n.active===e.size&&n.hitches===t?n:{fps:i,active:e.size,hitches:t})},1e3);return()=>clearInterval(e)},[]);let{bursts:re,playback:M,oldest_known_ms:N,newest_known_ms:ie,loading_backfill:ae}=e.snapshot,oe=(0,_.useRef)(new Map),P=(0,_.useMemo)(()=>{let e=of(re,oe.current);return oe.current=e,e},[re]),[F,I]=(0,_.useState)(()=>sf()),[se,L]=(0,_.useState)(null);(0,_.useEffect)(()=>{cf(F)},[F]),(0,_.useEffect)(()=>{let e=Date.now(),t=!1,n=new Map(F);for(let r of P.keys())n.has(r)||(n.set(r,{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:e}),t=!0);for(let[r,i]of n)P.has(r)||i.pinned||e-i.firstSeenAt<af||(n.delete(r),t=!0);t&&I(n)},[P,F]);let ce=(0,_.useRef)(new Map),le=(0,_.useRef)(new Set),ue=(0,_.useRef)(new Map),[,de]=(0,_.useState)(0);(0,_.useEffect)(()=>{let e=performance.now(),t=ce.current,n=le.current,r=ue.current,i=new Set;for(let[e,n]of P)i.add(e),r.set(e,n.slice()),t.delete(e);for(let a of n)if(!i.has(a)&&!t.has(a)){let n=r.get(a)??[],i=n[n.length-1]?.ts_ms??0;t.set(a,{bursts:n,diedAt:e,newestTs:i})}for(let[n,i]of t)e-i.diedAt>=Qd&&(t.delete(n),r.delete(n));if(le.current=i,t.size>0){let n=1/0;for(let e of t.values())n=Math.min(n,e.diedAt+Qd);let r=Math.max(16,n-e+16),i=setTimeout(()=>de(e=>e+1),r);return()=>clearTimeout(i)}},[P]);let fe=(0,_.useCallback)(e=>{I(t=>{let n=new Map(t),r=n.get(e)??{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()};return n.set(e,{...r,pinned:!r.pinned,pinnedAt:r.pinned?0:Date.now()}),n})},[]),pe=(0,_.useCallback)(e=>{I(t=>{let n=new Map(t),r=n.get(e)??{pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()};return n.set(e,{...r,minimized:!r.minimized}),n})},[]),me=(0,_.useCallback)(e=>{L(t=>t===e?null:e)},[]);(0,_.useEffect)(()=>{if(!se)return;let e=e=>{e.key===`Escape`&&L(null)};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[se]);let he=(0,_.useRef)(null);(0,_.useEffect)(()=>{if(!se){he.current?.stop(),he.current=null;return}let e=!1,t=`/api/json/graph/session-audit?session_key=${encodeURIComponent(se)}`;return fetch(t,{credentials:`same-origin`}).then(e=>e.ok?e.json():Promise.reject(Error(`HTTP ${e.status}`))).then(t=>{if(e)return;let n=Array.isArray(t.rows)?t.rows:[];he.current?.stop(),he.current=Zd(n)}).catch(()=>{}),()=>{e=!0,he.current?.stop(),he.current=null}},[se]);let R=(0,_.useMemo)(()=>{let e={pinned:!1,pinnedAt:0,minimized:!1,firstSeenAt:Date.now()},t=[];for(let[n,r]of P){let i=r[r.length-1]?.ts_ms??0;t.push({key:n,bursts:r,newestTs:i,fadingOutAt:null,state:F.get(n)??e})}for(let[n,r]of ce.current)P.has(n)||t.push({key:n,bursts:r.bursts,newestTs:r.newestTs,fadingOutAt:r.diedAt,state:F.get(n)??e});return t.sort((e,t)=>e.state.pinned===t.state.pinned?e.state.pinned&&t.state.pinned?e.state.pinnedAt-t.state.pinnedAt:e.state.firstSeenAt-t.state.firstSeenAt:e.state.pinned?-1:1),t},[P,F]),ge=(0,_.useMemo)(()=>{if(!r)return null;for(let e of re)if((e.audit_id??`${e.ts_ms}:${e.tool}`)===r||r.startsWith(`${e.ts_ms}:${e.tool}`))return e;return null},[re,r]),[_e,ve]=(0,_.useState)(null),ye=(0,_.useRef)(null),be=(0,_.useMemo)(()=>{if(R.length===0)return ye.current=null,null;if(_e!=null&&R.some(e=>e.key===_e))return ye.current=_e,_e;let e=R.filter(e=>e.state.pinned);if(e.length>0)return e.sort((e,t)=>t.state.pinnedAt-e.state.pinnedAt),ye.current=e[0].key,e[0].key;let t=R[0];for(let e of R)e.newestTs>t.newestTs&&(t=e);let n=ye.current;if(n!=null&&n!==t.key){let e=R.find(e=>e.key===n);if(e&&Date.now()-e.newestTs<ef)return n}return ye.current=t.key,t.key},[R,_e]);(0,_.useEffect)(()=>{_e!=null&&(R.some(e=>e.key===_e)||ve(null))},[_e,R]),(0,_.useEffect)(()=>{ve(null)},[d]);let z=(0,_.useMemo)(()=>{if(R.length===0)return{hero:null,grid:[],rail:[],overflow:[]};if(d===`full`||d===`feed`)return{hero:null,grid:R.slice(0,tf),rail:R.slice(tf),overflow:[]};let e=R.find(e=>e.key===be)??R[R.length-1],t=R.filter(t=>t.key!==e.key);return d===`broadcast`?{hero:e,grid:[],rail:[],overflow:t}:{hero:e,grid:[],rail:t.slice(0,nf),overflow:t.slice(nf)}},[R,d,be]),xe=(0,_.useCallback)(e=>{ve(e)},[]),Se=(0,_.useCallback)(()=>{ve(null)},[]),Ce=(0,_.useMemo)(()=>{let e=new Map,t=new Map,n=new Map,r=new Map,i=new Map,a=new Map;for(let o of R){let s=o.key;e.set(s,()=>fe(s)),t.set(s,()=>pe(s)),n.set(s,()=>me(s)),r.set(s,()=>void O([s])),i.set(s,e=>ne(s,e)),a.set(s,()=>xe(s))}return{onTogglePin:e,onToggleMinimize:t,onToggleFullscreen:n,onClose:r,onFrameTime:i,onPromote:a}},[R.map(e=>e.key).join(`,`),fe,pe,me,O,ne,xe]);(0,_.useEffect)(()=>{let e=new Set(R.map(e=>e.key)),t=k.current;for(let n of Array.from(t.keys()))e.has(n)||t.delete(n)},[R]);let we=(0,_.useMemo)(()=>{let e=n?.counters,t=e?.total??0,r=(e?.block??0)+(e?.force??0),i=0;if(re.length>0){let e=0,t=re.slice(-100);for(let n of t)e+=n.duration_ns;i=e/t.length/1e6}return{evals:t,blocks:r,avgMs:i,agents:R.length}},[n,re,R.length]),Te=Math.min(N,M.playhead_ms-M.window_ms),De=Math.max(ie,M.playhead_ms),B=z.grid.length,ke=C||B<=1?1:B<=4?2:3,V=Math.max(1,Math.ceil(Math.max(1,B)/ke)),Ae=B<=1||C?360:180,je=se?R.find(e=>e.key===se):null,Me=e=>e>=1e4?`${Math.round(e/1e3)}k`:e.toLocaleString();return(0,K.jsxs)(`div`,{className:`grid gap-3 md:h-[calc(100dvh-4.5rem)] md:min-h-[560px] ${g?`grid-rows-[auto_minmax(0,1fr)]`:`grid-rows-[auto_minmax(0,1fr)_auto]`} ${p?`bg-black`:``}`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between flex-wrap gap-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 flex-wrap`,children:[(0,K.jsx)(`h1`,{className:`text-sm font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`graph intelligence`}),!p&&(0,K.jsx)(`span`,{className:`chip text-sky-300 border-sky-500/30`,children:`real-time tool-use`}),M.mode===`live`?(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),`streaming`]}):(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-amber-300`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-amber-400`}),M.mode]}),(0,K.jsxs)(`span`,{className:`flex items-center gap-x-3 gap-y-1 flex-wrap text-[11px] font-mono text-[var(--color-fg-3)] pl-3 border-l border-[var(--color-line-1)]`,children:[(0,K.jsxs)(`span`,{title:`Total evaluations since daemon start`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`↑`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Me(we.evals)}),` `,(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`evals`})]}),(0,K.jsxs)(`span`,{title:`Block + force decisions — dangerous tool calls intercepted by SSG rules`,children:[(0,K.jsx)(`span`,{className:`text-rose-400`,children:`⛔`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:Me(we.blocks)}),` `,(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`blocks`})]}),(0,K.jsxs)(`span`,{className:`hidden md:inline`,title:`Mean eval latency over the last 100 bursts`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`⏱`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:we.avgMs<1?`${(we.avgMs*1e3).toFixed(0)}µs`:`${we.avgMs.toFixed(1)}ms`})]}),(0,K.jsxs)(`span`,{title:`Concurrent agent sessions in this window`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`⌥`}),` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:we.agents}),` `,(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`agent`,we.agents===1?``:`s`]})]})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!p&&(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:[re.length,`n · window `,Math.round(M.window_ms/1e3),`s`]}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] tabular-nums`,title:`Average RAF interval across ${j.active} canvas${j.active===1?``:`es`}${j.hitches>0?` · ${j.hitches} hitch${j.hitches===1?``:`es`} (>33ms frames)`:``}`,children:[j.active===0?`—`:`${j.fps}fps${j.hitches>0?` (${j.hitches}h)`:``}`,` · `,j.active,`/`,R.length]}),(0,K.jsx)(`div`,{role:`group`,"aria-label":`Graph view mode`,className:`inline-flex items-stretch rounded border border-[var(--color-line-1)] overflow-hidden text-[10px] font-mono uppercase tracking-wider`,title:`View mode — B cycles, Esc returns to full`,children:[`full`,`feed`,`stream`,`broadcast`].map(e=>{let t=d===e,n=e===`broadcast`?`cast`:e,r=e===`full`?`Full dashboard — sidebar, timeline, all controls`:e===`feed`?`Feed mode — vertical timeline of tool calls for non-technical users`:e===`stream`?`Stream mode — spotlight layout for Twitch/YouTube viewers`:`Broadcast mode — pure canvas for OBS scenes (Esc to exit)`;return(0,K.jsx)(`button`,{type:`button`,onClick:()=>f(e),"aria-pressed":t,title:r,className:`px-2 py-0.5 transition-colors cursor-pointer ${t?e===`broadcast`?`bg-amber-500/15 text-amber-300`:e===`stream`?`bg-sky-500/15 text-sky-300`:e===`feed`?`bg-emerald-500/15 text-emerald-300`:`bg-[var(--color-fg-4)]/10 text-[var(--color-fg-1)]`:`text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)] hover:bg-white/5`}`,children:n},e)})}),(0,K.jsx)(`button`,{type:`button`,onClick:S,className:`chip cursor-pointer transition-colors ${b&&!c.enabled?`border-amber-500/60 text-amber-300 animate-pulse`:`hover:border-sky-500/50 hover:text-sky-300`}`,title:c.enabled?`Mute stream sounds`:`Enable stream sounds`,children:c.enabled?`SFX ON`:b?`🔊 enable cues`:`SFX OFF`}),!p&&R.length>0&&(0,K.jsx)(`div`,{"aria-live":`polite`,children:(0,K.jsx)(`button`,{type:`button`,"aria-label":`Clear all visible graph sessions`,onClick:()=>ee(R.filter(e=>!e.fadingOutAt).map(e=>e.key)),className:`chip cursor-pointer transition-colors ${T?`border-rose-500/60 text-rose-300`:`hover:border-rose-500/40 hover:text-rose-300`}`,title:`Close all active sessions on the graph — equivalent to /clear but reflects on the graph`,children:T?`confirm clear ${R.filter(e=>!e.fadingOutAt).length}`:`clear`})})]})]}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 ${v?``:y?`lg:grid-cols-[1fr_240px]`:`lg:grid-cols-[1fr_300px]`} gap-3 min-h-0 md:overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`flex flex-col gap-3 min-h-0 min-w-0`,children:h?(0,K.jsx)(`div`,{className:`flex-1 flex flex-col min-h-0 rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] overflow-hidden`,children:(0,K.jsx)(Dd,{bursts:re,selectedId:r,onSelect:s})}):R.length===0?(0,K.jsxs)(`div`,{className:`flex-1 flex flex-col items-center justify-center rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-center px-4`,style:{minHeight:240},children:[(0,K.jsx)(`p`,{className:`overline mb-2 text-[var(--color-fg-3)]`,children:`graph · idle`}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] max-w-[280px]`,children:`No active sessions in the current window. Each session will render as its own tree as bursts arrive.`})]}):(0,K.jsxs)(K.Fragment,{children:[z.hero&&(se==null||se===z.hero.key)&&(0,K.jsxs)(`div`,{className:`flex-1 min-h-0 flex flex-col gap-2`,children:[_e!=null&&(0,K.jsx)(`button`,{type:`button`,onClick:Se,className:`self-end chip text-amber-300 border-amber-500/40 hover:border-amber-400 cursor-pointer text-[10px]`,title:`Release manual spotlight — return to auto-follow`,children:`spotlight: locked · release ↺`}),(0,K.jsx)(`div`,{className:`flex-1 min-h-0`,children:(0,K.jsx)(Cd,{sessionKey:z.hero.key,bursts:z.hero.bursts,paused:M.mode!==`live`||z.hero.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:z.hero.fadingOutAt!=null||M.playhead_ms-z.hero.newestTs>$d,isFadingOut:z.hero.fadingOutAt!=null,minHeight:0,pinned:z.hero.state.pinned,minimized:z.hero.state.minimized,isFullscreen:!1,viewMode:d,activePanelCount:1,onTogglePin:Ce.onTogglePin.get(z.hero.key),onToggleMinimize:Ce.onToggleMinimize.get(z.hero.key),onToggleFullscreen:Ce.onToggleFullscreen.get(z.hero.key),onClose:Ce.onClose.get(z.hero.key),onFrameTime:Ce.onFrameTime.get(z.hero.key)},z.hero.key)})]}),z.grid.length>0&&(0,K.jsx)(`div`,{className:`flex-1 grid gap-3 min-h-0 min-w-0`,style:{gridTemplateColumns:`repeat(${ke}, minmax(0, 1fr))`,gridTemplateRows:`repeat(${V}, minmax(180px, 1fr))`},children:z.grid.map(e=>{let n=e.fadingOutAt!=null||M.playhead_ms-e.newestTs>$d;return se!=null&&se!==e.key?null:(0,K.jsx)(Cd,{sessionKey:e.key,bursts:e.bursts,paused:M.mode!==`live`||e.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:n,isFadingOut:e.fadingOutAt!=null,minHeight:Ae,pinned:e.state.pinned,minimized:e.state.minimized,isFullscreen:!1,viewMode:d,activePanelCount:z.grid.length,onTogglePin:Ce.onTogglePin.get(e.key),onToggleMinimize:Ce.onToggleMinimize.get(e.key),onToggleFullscreen:Ce.onToggleFullscreen.get(e.key),onClose:Ce.onClose.get(e.key),onFrameTime:Ce.onFrameTime.get(e.key)},e.key)})}),z.rail.length>0&&(0,K.jsxs)(`div`,{className:`shrink-0 flex flex-col gap-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between text-[10px] font-mono text-[var(--color-fg-4)] uppercase tracking-wider`,children:[(0,K.jsxs)(`span`,{children:[d===`full`?`overflow rail`:`spotlight rail`,` · `,z.rail.length,` session`,z.rail.length===1?``:`s`]}),z.overflow.length>0&&(0,K.jsxs)(`span`,{title:z.overflow.map(e=>e.key).join(`
24
+ `),children:[`+`,z.overflow.length,` more`]})]}),(0,K.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(${Math.min(z.rail.length,4)}, minmax(0, 1fr))`,gridAutoRows:`110px`},children:z.rail.map(e=>{let n=e.fadingOutAt!=null||M.playhead_ms-e.newestTs>$d;return se!=null&&se!==e.key?null:(0,K.jsx)(Cd,{sessionKey:e.key,bursts:e.bursts,paused:M.mode!==`live`||e.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:n,isFadingOut:e.fadingOutAt!=null,minHeight:110,pinned:e.state.pinned,minimized:e.state.minimized,isFullscreen:!1,viewMode:d,thumbnail:!0,onPromote:Ce.onPromote.get(e.key),activePanelCount:z.rail.length+1,onTogglePin:Ce.onTogglePin.get(e.key),onToggleMinimize:Ce.onToggleMinimize.get(e.key),onToggleFullscreen:Ce.onToggleFullscreen.get(e.key),onClose:Ce.onClose.get(e.key),onFrameTime:Ce.onFrameTime.get(e.key)},e.key)})})]}),d===`broadcast`&&z.overflow.length>0&&(0,K.jsxs)(`div`,{className:`shrink-0 self-end pointer-events-none chip text-[var(--color-fg-3)] border-[var(--color-line-1)]`,children:[`+`,z.overflow.length,` more session`,z.overflow.length===1?``:`s`,` off-screen`]})]})}),!v&&(0,K.jsxs)(`aside`,{className:`flex flex-col gap-2 min-w-0 min-h-0 overflow-y-auto`,children:[(0,K.jsx)(Gd,{onMilestone:l,onRecord:u}),!y&&(0,K.jsx)(`section`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:(0,K.jsx)(Bd,{bursts:re,allBursts:e.allBursts})}),(0,K.jsx)(Fd,{burst:ge,anchor:a,onClose:()=>{i(null),o(null)}})]})]}),!g&&(0,K.jsx)(`section`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:(0,K.jsx)(Od,{playback:M,bursts:re,rangeStart:Te,rangeEnd:De,loading:ae,onPlayhead:t=>e.setPlayhead(t),onLive:()=>e.jumpToLive(),onPause:()=>e.setMode(`paused`),onResume:()=>e.setMode(`scrubbing`),on24h:()=>e.jumpTo24h()})}),p&&(0,K.jsxs)(`div`,{className:`pointer-events-none fixed bottom-3 right-4 flex flex-col items-end gap-1 z-30`,children:[(0,K.jsx)(`span`,{className:`text-[11px] font-mono uppercase tracking-[0.18em] text-[var(--color-fg-3)]`,children:`sigmashake gov`}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`broadcast mode · press B or Esc to exit`})]}),je&&(0,K.jsxs)(`div`,{className:`fixed inset-0 z-50 bg-black/90 backdrop-blur-sm flex p-6 gap-4`,children:[(0,K.jsx)(`div`,{className:`flex-1 flex flex-col min-w-0 min-h-0`,children:(0,K.jsx)(Cd,{sessionKey:je.key,bursts:je.bursts,paused:M.mode!==`live`||je.fadingOutAt!=null,selectedId:r,onSelect:s,burstSeq:t,isStale:je.fadingOutAt!=null||M.playhead_ms-je.newestTs>$d,isFadingOut:!1,minHeight:0,pinned:je.state.pinned,minimized:!1,isFullscreen:!0,viewMode:d,onTogglePin:()=>fe(je.key),onToggleMinimize:()=>pe(je.key),onToggleFullscreen:()=>me(je.key)},`fs-${je.key}`)}),(0,K.jsx)(`aside`,{className:`hidden md:flex shrink-0 w-[380px] lg:w-[420px] flex-col min-h-0`,children:(0,K.jsx)(AuditLogPanel,{sessionKey:je.key,entries:auditLog?.sessionKey===je.key?auditLog.entries:[],loading:auditLog?.sessionKey===je.key?auditLog.loading:!0,error:auditLog?.sessionKey===je.key?auditLog.error:null})})]})]})}var uf=[{id:`rca`,label:`rca`,hint:`pre-computed root cause`},{id:`timeline`,label:`timeline`,hint:`recent frames across traces`},{id:`watch`,label:`watch`,hint:`subscribe to any ssg:// URI`},{id:`state`,label:`state`,hint:`daemon runtime snapshot`},{id:`metrics`,label:`metrics`,hint:`latency + counters`}];function df(){let[e,t]=(0,_.useState)(`rca`);return(0,K.jsxs)(`div`,{className:`flex flex-col gap-4 min-h-[70vh]`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`h1`,{className:`text-sm font-mono uppercase tracking-wider text-[var(--color-fg-1)]`,children:`ai-native debugger`}),(0,K.jsx)(`span`,{className:`chip text-sky-300 border-sky-500/30`,children:`ssg:// unified resolver`}),(0,K.jsx)(ff,{})]}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`one surface · cli · mcp · dashboard`})]}),(0,K.jsx)(`nav`,{className:`flex items-center gap-1 border-b border-[var(--color-line-1)]`,children:uf.map(n=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(n.id),title:n.hint,className:`px-3 py-1.5 text-[11px] font-mono uppercase tracking-wider border-b-2 transition-colors `+(e===n.id?`border-[var(--color-brand)] text-[var(--color-fg-1)]`:`border-transparent text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)]`),children:n.label},n.id))}),(0,K.jsxs)(`section`,{className:`flex-1 min-h-0`,children:[e===`rca`&&(0,K.jsx)(pf,{}),e===`timeline`&&(0,K.jsx)(vf,{}),e===`watch`&&(0,K.jsx)(Ef,{}),e===`state`&&(0,K.jsx)(Df,{uri:`ssg://daemon/state`}),e===`metrics`&&(0,K.jsx)(Df,{uri:`ssg://daemon/metrics`})]})]})}function ff(){let e=ke([`debug-frame`])[`debug-frame`]??0;return(0,K.jsxs)(`span`,{className:`flex items-center gap-1.5 text-[11px] font-mono uppercase tracking-wider text-emerald-300`,title:`${e} debug-frame bursts received`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-emerald-400 pulse-soft`}),`live · `,e]})}function pf(){let e=ke([`debug-frame`,`activity-updated`]),{data:t,loading:n,error:r,refetch:i}=V(`/api/json/debug?uri=ssg%3A%2F%2Frca%2Fcurrent`,[e[`debug-frame`],e[`activity-updated`]]),a=t?.data?.pack??null;return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 xl:grid-cols-[1fr_340px] gap-4`,children:[(0,K.jsxs)(`article`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-4 space-y-3`,children:[n&&!t&&(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`loading RCA pack…`}),r&&(0,K.jsxs)(`p`,{className:`text-sm text-rose-300`,children:[`rca fetch error: `,r]}),!n&&!a&&(0,K.jsxs)(`div`,{className:`text-sm text-[var(--color-fg-3)] space-y-2`,children:[(0,K.jsx)(`p`,{className:`font-mono`,children:`no current RCA pack`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`Packs are composed automatically when an eval errors, an ssqa finding arrives, or a daemon-level error fires. Nothing to diagnose yet — you're green.`})]}),a&&(0,K.jsx)(hf,{pack:a})]}),(0,K.jsxs)(`aside`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 text-[11px] font-mono text-[var(--color-fg-4)] space-y-2`,children:[(0,K.jsx)(`p`,{className:`uppercase tracking-wider text-[var(--color-fg-2)]`,children:`how claude sees this`}),(0,K.jsxs)(`pre`,{className:`text-[10px] whitespace-pre-wrap leading-snug`,children:[`ssg debug rca --current --json`,`
25
25
  `,`# or via MCP:`,`
26
- `,`ssg_debug_rca(`,`{`,`auto_current:true`,`}`,`)`]}),(0,K.jsx)(`button`,{type:`button`,onClick:i,className:`w-full mt-2 px-2 py-1 border border-[var(--color-line-1)] rounded-sm hover:bg-[var(--color-surface-2)]`,children:`refresh`}),t?.snapshot_hash&&(0,K.jsxs)(`p`,{className:`text-[10px] opacity-60`,children:[`hash `,t.snapshot_hash.slice(0,12),`…`]})]})]})}function Cf(e){return e===`critical`?`text-rose-400 border-rose-500/40`:e===`high`?`text-amber-300 border-amber-500/40`:e===`medium`?`text-sky-300 border-sky-500/40`:`text-[var(--color-fg-3)] border-[var(--color-line-1)]`}function wf({pack:e}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`header`,{className:`flex items-start justify-between gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`p`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-4)]`,children:[`rca pack · `,new Date(e.ts_ms).toLocaleTimeString()]}),(0,K.jsx)(`h2`,{className:`text-[15px] font-medium text-[var(--color-fg-1)] mt-1`,children:e.summary}),e.trace_id&&(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] mt-1`,children:[`trace_id · `,e.trace_id]})]}),(0,K.jsx)(`span`,{className:`chip uppercase text-[10px] tracking-wider `+Cf(e.severity),children:e.severity})]}),e.hypothesis&&e.hypothesis.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`hypothesis`}),(0,K.jsx)(`ol`,{className:`space-y-2`,children:e.hypothesis.map((e,t)=>(0,K.jsxs)(`li`,{className:`p-2 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`p`,{className:`text-[13px] text-[var(--color-fg-1)]`,children:e.cause}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`conf `,(e.confidence*100).toFixed(0),`%`]})]}),e.evidence.length>0&&(0,K.jsx)(`ul`,{className:`mt-1 pl-3 text-[11px] text-[var(--color-fg-3)] list-disc list-inside space-y-0.5`,children:e.evidence.map((e,t)=>(0,K.jsx)(`li`,{children:e},t))})]},t))})]}),e.suggested_next_actions&&e.suggested_next_actions.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`suggested next actions`}),(0,K.jsx)(`ul`,{className:`space-y-1 text-[13px] text-[var(--color-fg-2)]`,children:e.suggested_next_actions.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-[12px]`,children:[`→ `,e]},t))})]}),e.state_snapshot&&e.state_snapshot.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`expand`}),(0,K.jsx)(`ul`,{className:`space-y-1 text-[11px] font-mono`,children:e.state_snapshot.map(e=>(0,K.jsxs)(`li`,{className:`text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`code`,{className:`text-sky-300`,children:e.uri}),(0,K.jsxs)(`span`,{className:`opacity-50 ml-2`,children:[e.hash.slice(0,10),`…`]})]},e.uri))})]})]})}var Tf=[`hook-ingress`,`parse`,`match`,`ffi-call`,`decide`,`audit`,`respond`],Ef={"hook-ingress":`#6ea8ff`,parse:`#a78bfa`,match:`#60d394`,"ffi-call":`#f59e0b`,decide:`#f472b6`,audit:`#94a3b8`,respond:`#22d3ee`};function Df(){let{data:e,loading:t,error:n}=V(`/api/json/debug?uri=ssg%3A%2F%2Fframes%2Frecent%3Flimit%3D1024`,[ke([`debug-frame`])[`debug-frame`]]),r=e?.data?.frames??[],i=e?.data?.dropped??0,[a,o]=(0,_.useState)(null);return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 xl:grid-cols-[1fr_320px] gap-4`,children:[(0,K.jsxs)(`article`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:[`frames · `,r.length,i>0&&(0,K.jsxs)(`span`,{className:`ml-2 text-amber-300`,children:[`dropped · `,i]})]}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`ssg://frames/recent`})]}),n&&(0,K.jsxs)(`p`,{className:`text-sm text-rose-300`,children:[`timeline fetch error: `,n]}),t&&r.length===0?(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`loading…`}):r.length===0?(0,K.jsx)(Of,{}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Af,{frames:r,onSelect:o}),(0,K.jsx)(kf,{})]})]}),(0,K.jsxs)(`aside`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`p`,{className:`uppercase tracking-wider text-[var(--color-fg-2)]`,children:`frame inspector`}),a?(0,K.jsx)(jf,{frame:a}):(0,K.jsx)(`p`,{className:`opacity-60`,children:`click a bar to inspect`})]})]})}function Of(){return(0,K.jsxs)(`div`,{className:`text-[12px] text-[var(--color-fg-3)] space-y-1 py-4`,children:[(0,K.jsx)(`p`,{children:`no frames yet`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] font-mono`,children:`SSG_DEBUG_ENABLED=1 ssg daemon`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`then fire an eval — frames stream in live.`})]})}function kf(){return(0,K.jsx)(`div`,{className:`flex flex-wrap gap-3 text-[10px] font-mono text-[var(--color-fg-4)]`,children:Tf.map(e=>(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-sm`,style:{background:Ef[e]}}),e]},e))})}function Af({frames:e,onSelect:t}){let n=(0,_.useRef)(null),r=(0,_.useRef)([]),[i,a]=(0,_.useState)(-1),{rows:o,tMin:s,tMax:c}=(0,_.useMemo)(()=>{let t=new Map;for(let n of e){let e=t.get(n.trace_id)??[];e.push(n),t.set(n.trace_id,e)}let n=Array.from(t.entries()).map(([e,t])=>({trace_id:e,frames:t.slice().sort((e,t)=>Nf(e.ts_start_ns,t.ts_start_ns))}));n.sort((e,t)=>Nf(e.frames[0].ts_start_ns,t.frames[0].ts_start_ns));let r=null,i=null;for(let t of e){let e=BigInt(t.ts_start_ns),n=BigInt(t.ts_end_ns);(r===null||e<r)&&(r=e),(i===null||n>i)&&(i=n)}return{rows:n,tMin:r??0n,tMax:i??1n}},[e]);(0,_.useEffect)(()=>{let e=n.current;if(!e)return;let t=window.devicePixelRatio||1,a=e.clientWidth,l=Math.max(120,o.length*22+24);e.width=a*t,e.height=l*t,e.style.height=`${l}px`;let u=e.getContext(`2d`);if(!u)return;u.setTransform(t,0,0,t,0,0),u.clearRect(0,0,a,l),u.strokeStyle=`rgba(255,255,255,0.04)`,u.lineWidth=1;for(let e=1;e<4;e++){let t=e*a/4;u.beginPath(),u.moveTo(t,0),u.lineTo(t,l),u.stroke()}let d=c>s?Number(c-s):1,f=a-110-8;u.font=`10px ui-monospace, monospace`,u.textBaseline=`middle`;let p=[];if(o.forEach((e,t)=>{let n=8+t*22;u.fillStyle=`rgba(255,255,255,0.55)`,u.fillText(e.trace_id.slice(0,10),6,n+18/2);for(let t of e.frames){let e=Number(BigInt(t.ts_start_ns)-s),r=Number(BigInt(t.ts_end_ns)-s),i=110+e/d*f,a=Math.max(2,(r-e)/d*f);u.fillStyle=Ef[t.stage]??`#888`,u.globalAlpha=t.result===`error`?1:.82,u.fillRect(i,n,a,18),u.globalAlpha=1,t.result===`error`&&(u.strokeStyle=`#f43f5e`,u.lineWidth=1.5,u.strokeRect(i+.5,n+.5,a-1,17)),p.push({x:i,y:n,w:a,h:18,frame:t})}}),r.current=p,i>=0&&i<p.length){let e=p[i];u.strokeStyle=`#fff`,u.lineWidth=1.5,u.strokeRect(e.x+.5,e.y+.5,e.w-1,e.h-1)}},[o,s,c,i]);function l(e){let t=n.current;if(!t)return-1;let i=t.getBoundingClientRect(),a=e.clientX-i.left,o=e.clientY-i.top;for(let e=r.current.length-1;e>=0;e--){let t=r.current[e];if(a>=t.x&&a<=t.x+t.w&&o>=t.y&&o<=t.y+t.h)return e}return-1}return(0,K.jsx)(`canvas`,{ref:n,className:`w-full block cursor-crosshair`,onMouseMove:e=>a(l(e)),onMouseLeave:()=>a(-1),onClick:e=>{let n=l(e);t(n>=0?r.current[n].frame:null)}})}function jf({frame:e}){let t=Number(BigInt(e.ts_end_ns)-BigInt(e.ts_start_ns)),n=t>=1e6?`${(t/1e6).toFixed(2)}ms`:t>=1e3?`${(t/1e3).toFixed(1)}µs`:`${t}ns`;return(0,K.jsxs)(`dl`,{className:`space-y-1`,children:[(0,K.jsxs)(Mf,{k:`stage`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-sm mr-1 align-middle`,style:{background:Ef[e.stage]??`#888`}}),e.stage]}),(0,K.jsx)(Mf,{k:`tool`,children:e.tool}),(0,K.jsx)(Mf,{k:`result`,children:(0,K.jsx)(`span`,{className:e.result===`error`?`text-rose-300`:e.result===`skip`?`text-[var(--color-fg-4)]`:`text-emerald-300`,children:e.result})}),(0,K.jsx)(Mf,{k:`dur`,children:n}),e.rule_id&&(0,K.jsx)(Mf,{k:`rule`,children:e.rule_id}),e.error&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Mf,{k:`err.type`,children:(0,K.jsx)(`span`,{className:`text-rose-300`,children:e.error.type})}),(0,K.jsx)(Mf,{k:`err.msg`,children:(0,K.jsx)(`span`,{className:`text-rose-200`,children:e.error.message})})]}),e.input_preview&&(0,K.jsx)(Mf,{k:`input`,children:(0,K.jsx)(`code`,{className:`text-[10px] break-all`,children:e.input_preview})}),(0,K.jsx)(Mf,{k:`trace`,children:(0,K.jsx)(`code`,{className:`text-[10px]`,children:e.trace_id})}),(0,K.jsx)(Mf,{k:`frame`,children:(0,K.jsx)(`code`,{className:`text-[10px]`,children:e.frame_id})})]})}function Mf({k:e,children:t}){return(0,K.jsxs)(`div`,{className:`flex gap-2 text-[11px] leading-tight`,children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)] w-16 shrink-0 uppercase tracking-wider`,children:e}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-all min-w-0`,children:t})]})}function Nf(e,t){let n=BigInt(e),r=BigInt(t);return n<r?-1:n>r?1:0}var Pf=[`ssg://daemon/state`,`ssg://daemon/metrics`,`ssg://audit/recent?limit=10`,`ssg://frames/recent?limit=32`,`ssg://rules/list`,`ssg://rca/current`,`ssg://native/stats`];function Ff(){let[e,t]=(0,_.useState)(`ssg://daemon/state`),[n,r]=(0,_.useState)(`ssg://daemon/state`);return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Pf.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>{t(e),r(e)},className:`chip text-[10px] `+(n===e?`border-[var(--color-brand)] text-[var(--color-fg-1)]`:`text-[var(--color-fg-3)]`),children:e},e))}),(0,K.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:t=>{t.preventDefault(),r(e)},children:[(0,K.jsx)(`input`,{value:e,onChange:e=>t(e.target.value),placeholder:`ssg://source/path?k=v`,className:`flex-1 px-3 py-1.5 text-[12px] font-mono rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-[var(--color-fg-1)]`}),(0,K.jsx)(`button`,{type:`submit`,className:`px-3 py-1.5 text-[11px] font-mono uppercase tracking-wider border border-[var(--color-line-1)] rounded-sm hover:bg-[var(--color-surface-2)]`,children:`resolve`})]}),(0,K.jsx)(If,{uri:n})]})}function If({uri:e}){let t=ke([`debug-frame`,`activity-updated`,`counters-updated`]),{data:n,loading:r,error:i,refetch:a}=V(`/api/json/debug?uri=${encodeURIComponent(e)}`,[t[`debug-frame`],t[`activity-updated`],t[`counters-updated`],e]),o=n?JSON.stringify(n.data,null,2):``;return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:e}),n?.snapshot_hash&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`hash `,n.snapshot_hash.slice(0,10),`…`]}),n?.stale&&(0,K.jsxs)(`span`,{className:`chip text-amber-300 border-amber-500/40 text-[10px]`,children:[`stale `,n.age_ms?`${Math.round(n.age_ms/1e3)}s`:``]})]}),(0,K.jsx)(`button`,{type:`button`,onClick:a,className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`,children:`refresh`})]}),r&&!n&&(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`resolving…`}),i&&(0,K.jsx)(`p`,{className:`text-sm text-rose-300`,children:i}),o&&(0,K.jsx)(`pre`,{className:`text-[11px] leading-snug font-mono text-[var(--color-fg-2)] overflow-auto max-h-[60vh] whitespace-pre-wrap break-all`,children:o})]})}function Lf(e){let t=Date.now()-e,n=Math.floor(t/1e3);if(n<60)return`just now`;let r=Math.floor(n/60);if(r<60)return`${r}m ago`;let i=Math.floor(r/60);return i<24?`${i}h ago`:new Date(e).toLocaleDateString(void 0,{month:`short`,day:`numeric`})}var Rf={block:`var(--color-hig-red)`,ask:`var(--color-hig-orange)`,log:`var(--color-hig-blue)`,allow:`var(--color-hig-green)`,force:`var(--color-hig-purple)`};function zf(e){switch(e){case`block`:return`Blocked`;case`ask`:return`Held for review`;case`log`:return`Logged`;case`force`:return`Force-allowed`;default:return`Allowed`}}function Bf({type:e}){let t={fill:`none`,stroke:`currentColor`,strokeWidth:1.6,strokeLinecap:`round`,strokeLinejoin:`round`,viewBox:`0 0 24 24`};return e===`code`?(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M9 7l-5 5 5 5M15 7l5 5-5 5`}),(0,K.jsx)(`path`,{d:`M14 4l-4 16`,opacity:`0.55`})]}):e===`docs`?(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M5 4h9l5 5v11a1 1 0 01-1 1H5a1 1 0 01-1-1V5a1 1 0 011-1z`}),(0,K.jsx)(`path`,{d:`M14 4v5h5`}),(0,K.jsx)(`path`,{d:`M8 13h8M8 17h5`,opacity:`0.7`})]}):(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M3 12a9 9 0 109-9`}),(0,K.jsx)(`path`,{d:`M12 3v9l6 3`})]})}function Vf(){let{data:e}=V(`/api/json/counters`,[ke([`counters-updated`])[`counters-updated`]]),t=e?.evals_today??0,n=e?.blocked_today??0,r=e?.asked_today??0;return(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-6 gap-y-2`,children:[(0,K.jsx)(Hf,{value:t,label:`evaluated`,tone:`default`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(Hf,{value:n,label:`blocked`,tone:`red`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(Hf,{value:r,label:`held for you`,tone:`orange`}),(0,K.jsx)(`span`,{className:`text-[11px] ml-auto`,style:{color:`var(--color-fg-3)`},children:`Today`})]})}function Hf({value:e,label:t,tone:n}){return(0,K.jsxs)(`span`,{className:`inline-flex items-baseline gap-1.5`,children:[(0,K.jsx)(`span`,{className:`font-semibold tabular-nums`,style:{color:n===`red`?`var(--color-hig-red)`:n===`orange`?`var(--color-hig-orange)`:`var(--color-fg-0)`,fontSize:`20px`,lineHeight:1,letterSpacing:`-0.018em`},children:e.toLocaleString()}),(0,K.jsx)(`span`,{style:{color:`var(--color-fg-3)`,fontSize:`12px`,letterSpacing:`-0.005em`},children:t})]})}function Uf({href:e,title:t,desc:n,tone:r,type:i,cta:a}){let o=r===`orange`?`var(--color-hig-orange)`:r===`indigo`?`var(--color-hig-indigo)`:`var(--color-hig-blue)`;return(0,K.jsx)(`a`,{href:e,className:`group block rounded-2xl px-4 py-4 transition-all`,style:{border:`0.5px solid var(--color-line-1)`,background:`var(--color-surface-1)`,textDecoration:`none`,color:`inherit`,boxShadow:`var(--hig-shadow-1)`},children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center rounded-xl shrink-0`,style:{width:`40px`,height:`40px`,color:o,background:`color-mix(in oklab, ${o} 14%, transparent)`},children:(0,K.jsx)(Bf,{type:i})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-[14px] font-semibold leading-tight`,style:{color:`var(--color-fg-0)`,letterSpacing:`-0.005em`},children:t}),(0,K.jsx)(`div`,{className:`text-[12px] mt-1 leading-snug`,style:{color:`var(--color-fg-2)`},children:n}),(0,K.jsxs)(`div`,{className:`text-[11.5px] mt-2 font-medium inline-flex items-center gap-1 transition-all`,style:{color:o},children:[a,(0,K.jsx)(`span`,{"aria-hidden":`true`,className:`transition-transform group-hover:translate-x-0.5`,children:`→`})]})]})]})})}function Wf(){let{data:e}=V(`/api/state/activity?limit=5`,[ke([`activity-updated`])[`activity-updated`]]),[,t]=(0,_.useState)(0);return(0,_.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),6e4);return()=>clearInterval(e)},[]),!e||e.length===0?(0,K.jsxs)(`div`,{className:`py-6 text-center`,style:{color:`var(--color-fg-3)`},children:[(0,K.jsx)(`p`,{style:{fontSize:`12.5px`,color:`var(--color-fg-2)`},children:`Waiting for your first agent action.`}),(0,K.jsx)(`p`,{style:{fontSize:`11px`,color:`var(--color-fg-3)`,marginTop:`4px`},children:`Anything your AI tries — read, write, run — will appear here in real time.`})]}):(0,K.jsx)(`div`,{children:e.slice(0,5).map((e,t)=>(0,K.jsxs)(`div`,{className:`hig-feed-row`,children:[(0,K.jsx)(`span`,{className:`hig-feed-row-dot`,style:{background:Rf[e.decision]??`var(--color-fg-3)`,boxShadow:`0 0 0 3px ${e.decision===`block`?`color-mix(in oklab, var(--color-hig-red) 22%, transparent)`:e.decision===`ask`?`color-mix(in oklab, var(--color-hig-orange) 22%, transparent)`:`transparent`}`}}),(0,K.jsx)(`span`,{className:`hig-feed-row-decision`,style:{color:Rf[e.decision]??`var(--color-fg-2)`},children:zf(e.decision)}),(0,K.jsx)(`span`,{style:{color:`var(--color-fg-3)`},children:`·`}),(0,K.jsx)(`span`,{className:`hig-feed-row-tool`,title:e.tool,children:li(e.tool)}),(0,K.jsx)(`span`,{className:`hig-feed-row-time`,children:Lf(e.timestamp)})]},e.id??t))})}function Gf(){return(0,K.jsx)(`div`,{className:`relative`,children:(0,K.jsxs)(`div`,{className:`relative max-w-5xl mx-auto px-2 pt-6 pb-12 space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl px-6 py-5 relative overflow-hidden`,style:{border:`0.5px solid var(--color-line-1)`,background:`radial-gradient(120% 100% at 0% 0%, color-mix(in oklab, var(--color-accent) 14%, transparent) 0%, transparent 55%), var(--color-surface-1)`,boxShadow:`var(--hig-shadow-1)`},children:[(0,K.jsx)(`div`,{className:`hig-eyebrow mb-2`,children:`SigmaShake · Guardrails for AI`}),(0,K.jsx)(`h1`,{className:`font-semibold tracking-tight leading-tight`,style:{color:`var(--color-fg-0)`,fontSize:`26px`,letterSpacing:`-0.018em`},children:`The seatbelt for AI agents.`}),(0,K.jsx)(`p`,{className:`mt-1.5 leading-relaxed`,style:{color:`var(--color-fg-2)`,fontSize:`13.5px`,maxWidth:`52ch`},children:`Watch every move your AI makes. Approve what matters, block what doesn't — without babysitting every step.`}),(0,K.jsx)(`div`,{className:`mt-4 pt-3`,style:{borderTop:`0.5px solid var(--color-line-0)`},children:(0,K.jsx)(Vf,{})})]}),(0,K.jsx)(`section`,{children:(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-3`,children:[(0,K.jsx)(Uf,{href:`/guardrails?starter=coding`,tone:`orange`,type:`code`,title:`Code safely with AI`,desc:`Protect files, secrets, and git history from coding agents.`,cta:`Install pack`}),(0,K.jsx)(Uf,{href:`/guardrails?starter=knowledge-work`,tone:`indigo`,type:`docs`,title:`Guard sensitive content`,desc:`Watch outbound email, file shares, and document changes.`,cta:`Install pack`}),(0,K.jsx)(Uf,{href:`/audit`,tone:`blue`,type:`review`,title:`Review what your AI did`,desc:`Every action, decision, and reason — in one place.`,cta:`Open activity`})]})}),(0,K.jsxs)(`a`,{href:`/try`,className:`group flex items-center justify-between gap-3 rounded-xl px-4 py-3 transition-all`,style:{border:`0.5px solid var(--color-line-1)`,background:`linear-gradient(90deg, color-mix(in oklab, var(--color-accent) 8%, transparent) 0%, transparent 60%), var(--color-surface-1)`,textDecoration:`none`,color:`inherit`},children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center w-8 h-8 rounded-full shrink-0`,style:{background:`linear-gradient(180deg, var(--color-accent) 0%, var(--color-brand-hover) 100%)`,color:`var(--color-accent-on)`,boxShadow:`inset 0 0.5px 0 rgba(255,255,255,0.30), 0 2px 8px color-mix(in oklab, var(--color-accent) 30%, transparent)`},children:(0,K.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`polygon`,{points:`6 4 20 12 6 20`,fill:`currentColor`,stroke:`none`})})}),(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`div`,{className:`font-semibold text-[13.5px] leading-tight`,style:{color:`var(--color-fg-0)`,letterSpacing:`-0.005em`},children:`Try a scenario — see SigmaShake decide`}),(0,K.jsx)(`div`,{className:`text-[12px] mt-0.5`,style:{color:`var(--color-fg-3)`},children:`30-second dry-run · nothing actually runs.`})]})]}),(0,K.jsxs)(`span`,{className:`text-[12.5px] font-medium shrink-0 inline-flex items-center gap-1 transition-all`,style:{color:`var(--color-accent)`},children:[`Try it`,(0,K.jsx)(`span`,{"aria-hidden":`true`,className:`transition-transform group-hover:translate-x-0.5`,children:`→`})]})]}),(0,K.jsxs)(`section`,{children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between mb-2`,children:[(0,K.jsx)(`h2`,{className:`font-semibold tracking-tight`,style:{color:`var(--color-fg-0)`,fontSize:`15px`,letterSpacing:`-0.008em`},children:`Recent activity`}),(0,K.jsx)(`a`,{href:`/audit`,style:{fontSize:`12px`,color:`var(--color-hig-blue)`,fontWeight:500},children:`View all →`})]}),(0,K.jsx)(`div`,{style:{background:`var(--color-surface-1)`,border:`0.5px solid var(--color-line-1)`,borderRadius:`14px`,padding:`4px 16px`,boxShadow:`var(--hig-shadow-1)`},children:(0,K.jsx)(Wf,{})})]})]})})}var Kf=[{id:`files`,label:`Files & folders`,blurb:`Deleting or changing things on your hard drive`},{id:`secrets`,label:`Secrets & keys`,blurb:`Reading or overwriting credentials and private files`},{id:`network`,label:`Network calls`,blurb:`Reaching out to websites and external APIs`},{id:`install`,label:`Installing software`,blurb:`Pulling new code or packages from the internet`},{id:`communication`,label:`Sending messages`,blurb:`Outgoing emails, posts, or chat messages`}],qf=[{id:`erase-folder`,label:`AI tries to erase a folder`,plainEffect:`Permanently deletes every file inside the "output" folder. Recovery is hard.`,category:`files`,emoji:`🗑️`,toolCall:{tool:`Bash`,input:{command:`find ./output -type f -delete`}},displayByOs:{windows:`Remove-Item .\\output -Recurse -Force`,macos:`find ./output -type f -delete`,linux:`find ./output -type f -delete`}},{id:`write-env`,label:`AI tries to write your .env file`,plainEffect:`Overwrites the file that holds your API keys, passwords, and other secrets.`,category:`secrets`,emoji:`⚠️`,toolCall:{tool:`Write`,input:{file_path:`.env`,content:`API_KEY=test`}}},{id:`read-ssh-key`,label:`AI tries to read your private key`,plainEffect:`Opens the SSH key that proves you are you on remote servers. Copying it is identity theft.`,category:`secrets`,emoji:`🔑`,toolCall:{tool:`Read`,input:{file_path:`~/.ssh/id_rsa`}},displayByOs:{windows:`Read C:\\Users\\You\\.ssh\\id_rsa`,macos:`Read ~/.ssh/id_rsa`,linux:`Read ~/.ssh/id_rsa`}},{id:`install-package`,label:`AI tries to install a package`,plainEffect:`Downloads code from a public registry and adds it to your project. The code runs with your permissions.`,category:`install`,emoji:`📦`,toolCall:{tool:`Bash`,input:{command:`npm install some-package --save`}}},{id:`fetch-web`,label:`AI tries to fetch a URL`,plainEffect:`Makes a web request to an outside service. Could leak data or pull in instructions.`,category:`network`,emoji:`🌐`,toolCall:{tool:`WebFetch`,input:{url:`https://api.example.com/data`,prompt:``}}},{id:`send-email`,label:`AI tries to send an email`,plainEffect:`Sends an email from your machine without your review. Anyone could end up CC’d.`,category:`communication`,emoji:`📧`,toolCall:{tool:`Bash`,input:{command:`sendmail -t < message.txt`}},displayByOs:{windows:`Send-MailMessage -To you@example.com -Subject "..." -Body (Get-Content message.txt)`,macos:`sendmail -t < message.txt`,linux:`sendmail -t < message.txt`}}],Jf=`ssg.tryit.intro-dismissed.v1`,Yf=`ssg.tryit.os.v1`,Xf={allow:{label:`Allowed`,color:`text-emerald-300`,bg:`border-emerald-500/30 bg-emerald-500/5`,icon:`✓`,headline:`SSG would let this happen.`,next:`In real life, the AI would go ahead. If you would rather it didn’t, add a rule on the Rules page.`},block:{label:`Blocked`,color:`text-red-300`,bg:`border-red-500/30 bg-red-500/5`,icon:`✕`,headline:`SSG would stop this from running.`,next:`The AI never gets to perform the action. No files change, no commands run, no requests go out.`},ask:{label:`Ask first`,color:`text-amber-300`,bg:`border-amber-500/30 bg-amber-500/5`,icon:`?`,headline:`SSG would pause and ask you first.`,next:`You’d get a prompt on the Approvals page. Nothing happens until you click Allow or Deny.`},log:{label:`Logged`,color:`text-sky-300`,bg:`border-sky-500/30 bg-sky-500/5`,icon:`≡`,headline:`SSG would allow it but write it down.`,next:`The AI proceeds, and the action gets recorded in your Activity log for later review.`},force:{label:`Force-allow`,color:`text-violet-300`,bg:`border-violet-500/30 bg-violet-500/5`,icon:`→`,headline:`A high-priority rule explicitly allows this.`,next:`A “force” rule overrides anything that would have blocked or paused this action.`}};function Zf(){if(typeof window>`u`)return`linux`;try{let e=window.localStorage.getItem(Yf);if(e===`windows`||e===`macos`||e===`linux`)return e}catch{}let e=navigator.userAgent.toLowerCase();return e.includes(`win`)?`windows`:e.includes(`mac`)?`macos`:`linux`}function Qf(e){return e===`windows`?`Windows`:e===`macos`?`Mac`:`Linux`}function $f(e){return e===`windows`?`⊞`:e===`macos`?`🍎`:`🐧`}function ep(e,t){let n=e.displayByOs?.[t];if(n)return n;let r=e.toolCall;return r.input.command?r.input.command:r.input.file_path?r.input.file_path:r.input.url?r.input.url:JSON.stringify(r.input)}function tp({n:e,label:t}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center w-5 h-5 rounded-full bg-[var(--color-brand)]/15 text-[var(--color-brand)] text-[10px] font-semibold shrink-0`,children:e}),(0,K.jsx)(`span`,{className:`text-[11.5px] text-[var(--color-fg-2)] truncate`,children:t})]})}function np({os:e,setOs:t}){return(0,K.jsx)(`div`,{className:`inline-flex items-center gap-1 rounded-full border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-0.5`,children:[`windows`,`macos`,`linux`].map(n=>(0,K.jsxs)(`button`,{onClick:()=>t(n),className:`px-2.5 py-1 rounded-full text-[10.5px] font-medium cursor-pointer transition-colors ${n===e?`bg-[var(--color-brand)]/15 text-[var(--color-brand)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,title:`Show commands as they would look on ${Qf(n)}`,children:[$f(n),` `,Qf(n)]},n))})}function rp({os:e,setOs:t,onDismiss:n}){return(0,K.jsxs)(`div`,{className:`rounded-2xl border border-[var(--color-brand)]/25 bg-[var(--color-brand)]/[0.04] p-4 sm:p-5 space-y-3.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold text-[var(--color-fg-0)] leading-tight`,children:`What SSG does — and why this page is here`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-1 leading-relaxed max-w-[60ch]`,children:[`AI coding agents can run any command on your computer: delete files, read your secrets, send emails, install packages. SSG is the policy engine that decides which of those they’re actually allowed to do.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-0)] font-medium`,children:`This sandbox shows SSG’s decisions in real time`}),`, without anything actually running. Pick a scenario, click Run, see what your guardrails would do.`]})]}),(0,K.jsx)(`button`,{onClick:n,className:`shrink-0 text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] cursor-pointer text-[14px] leading-none p-1 -m-1`,"aria-label":`Dismiss intro`,title:`Hide this primer`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1.5 text-[11.5px]`,children:[(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`Nothing executes`]}),(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`No files modified`]}),(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`No network traffic`]})]}),(0,K.jsxs)(`div`,{className:`rounded-xl border border-[var(--color-line-1)]/60 bg-[var(--color-surface-1)]/40 p-3`,children:[(0,K.jsx)(`p`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] font-semibold mb-2`,children:`How it works`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-3`,children:[(0,K.jsx)(tp,{n:1,label:`Pick a scenario below`}),(0,K.jsx)(tp,{n:2,label:`Click Run`}),(0,K.jsx)(tp,{n:3,label:`See the decision SSG would make`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pt-1`,children:[(0,K.jsx)(`span`,{className:`text-[11.5px] text-[var(--color-fg-3)]`,children:`Showing commands as they look on`}),(0,K.jsx)(np,{os:e,setOs:t}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-4)]`,children:`(cosmetic — SSG’s decision is the same on every OS)`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 flex-wrap pt-1`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] italic max-w-[44ch] leading-snug`,children:`Every AI agent will need a policy layer. This is what one looks like.`}),(0,K.jsx)(`button`,{onClick:n,className:`text-[11.5px] font-medium text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] cursor-pointer underline-offset-2 hover:underline`,children:`Got it, hide this primer`})]})]})}function ip({scenario:e,selected:t,os:n,onClick:r}){return(0,K.jsxs)(`button`,{onClick:r,className:`flex flex-col gap-1.5 rounded-xl border px-3.5 py-3 text-left cursor-pointer transition-all ${t?`border-[var(--color-brand)]/60 bg-[var(--color-brand)]/8 shadow-[0_0_0_3px_color-mix(in_oklab,var(--color-brand)_15%,transparent)]`:`border-[var(--color-line-1)] bg-[var(--color-surface-1)] hover:border-[var(--color-line-2)] hover:bg-[var(--color-surface-2)]/40`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[18px] leading-none shrink-0`,children:e.emoji}),(0,K.jsx)(`span`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-snug flex-1 min-w-0`,children:e.label})]}),(0,K.jsx)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)] leading-snug`,children:e.plainEffect}),(0,K.jsx)(`p`,{className:`font-mono text-[10.5px] text-[var(--color-fg-4)] truncate`,children:ep(e,n)})]})}function ap(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(null),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(`Bash`),[f,p]=(0,_.useState)(`{"command": ""}`),[m,h]=(0,_.useState)(()=>{if(typeof window>`u`)return!1;try{return window.localStorage.getItem(Jf)===`1`}catch{return!1}}),[g,v]=(0,_.useState)(()=>Zf()),[y,b]=(0,_.useState)(!1);function x(e){v(e);try{window.localStorage.setItem(Yf,e)}catch{}}function S(){h(!0);try{window.localStorage.setItem(Jf,`1`)}catch{}}function C(){h(!1);try{window.localStorage.removeItem(Jf)}catch{}}let w=qf.find(t=>t.id===e),T=(0,_.useMemo)(()=>{let e=new Map;for(let t of qf){let n=e.get(t.category)??[];n.push(t),e.set(t.category,n)}return Kf.filter(t=>e.has(t.id)).map(t=>({...t,scenarios:e.get(t.id)}))},[]);(0,_.useEffect)(()=>{(n||o)&&window.scrollTo({top:(document.getElementById(`tryit-result`)?.offsetTop??0)-80,behavior:`smooth`})},[n,o]),(0,_.useEffect)(()=>{if(typeof window>`u`)return;let e=new URLSearchParams(window.location.search).get(`scenario`);e&&qf.some(t=>t.id===e)&&t(e)},[]),(0,_.useEffect)(()=>{if(typeof window>`u`)return;let t=new URL(window.location.href);e?t.searchParams.set(`scenario`,e):t.searchParams.delete(`scenario`),window.history.replaceState({},``,t.toString())},[e]);function E(){if(!e)return;let t=new URL(window.location.href);t.searchParams.set(`scenario`,e),navigator.clipboard.writeText(t.toString()).then(()=>{b(!0),setTimeout(()=>b(!1),2e3)}).catch(()=>{})}async function D(e){a(!0),s(null),r(null);try{let t=await(await fetch(`/api/json/eval-dry-run`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify(e)})).json();t.error?s(t.error):r(t)}catch{s(`Could not reach the governance engine. Is SSG running?`)}finally{a(!1)}}function O(){w&&D(w.toolCall)}function ee(){let e;try{e=JSON.parse(f)}catch{s(`Invalid JSON in input field.`);return}if(typeof e!=`object`||!e){s(`Input must be a JSON object.`);return}D({tool:u,input:e})}let k=n?Xf[n.decision]??Xf.allow:null;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto py-4 space-y-4`,children:[(0,K.jsxs)(`header`,{className:`flex items-baseline justify-between gap-4 flex-wrap`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[22px] font-semibold text-[var(--color-fg-0)] tracking-tight leading-tight`,children:`Try it`}),(0,K.jsxs)(`p`,{className:`text-[13px] text-[var(--color-fg-2)] mt-0.5`,children:[`Your AI can run any command. SSG decides what it’s actually allowed to do.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`Pick a scenario to see — nothing actually runs.`})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 shrink-0`,children:[m&&(0,K.jsx)(`button`,{onClick:C,className:`text-[11.5px] font-medium text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] cursor-pointer`,title:`Show the introduction again`,children:`What is Try It? →`}),(0,K.jsx)(`a`,{href:`/guardrails`,className:`text-[11.5px] font-medium text-[var(--color-brand)] hover:underline`,children:`Install more guardrails →`})]})]}),!m&&(0,K.jsx)(rp,{os:g,setOs:x,onDismiss:S}),m&&(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 px-1`,children:[(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`Commands shown as on`}),(0,K.jsx)(np,{os:g,setOs:x})]}),(0,K.jsx)(`div`,{className:`space-y-4`,children:T.map(n=>(0,K.jsxs)(`section`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-2 px-1`,children:[(0,K.jsx)(`h3`,{className:`text-[11px] uppercase tracking-wide text-[var(--color-fg-3)] font-semibold`,children:n.label}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:n.blurb})]}),(0,K.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-2`,children:n.scenarios.map(n=>(0,K.jsx)(ip,{scenario:n,selected:e===n.id,os:g,onClick:()=>{t(n.id),r(null),s(null)}},n.id))})]},n.id))}),w&&(0,K.jsxs)(`div`,{className:`rounded-xl border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-[22px] leading-none shrink-0`,children:w.emoji}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[13.5px] font-medium text-[var(--color-fg-0)]`,children:w.label}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mt-0.5 leading-relaxed`,children:w.plainEffect})]})]}),(0,K.jsxs)(`div`,{className:`rounded-lg border border-[var(--color-line-0)] bg-[var(--color-surface-0)] px-3 py-2`,children:[(0,K.jsxs)(`p`,{className:`text-[10px] uppercase tracking-wide text-[var(--color-fg-4)] font-semibold mb-1`,children:[`What the AI would run · `,Qf(g)]}),(0,K.jsx)(`code`,{className:`font-mono text-[12px] text-[var(--color-fg-1)] break-all`,children:ep(w,g)})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 flex-wrap`,children:[(0,K.jsxs)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)]`,children:[`Click Run to see what SSG would decide.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`The command does not actually execute.`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[(0,K.jsx)(`button`,{onClick:E,className:`inline-flex items-center gap-1 px-3 h-8 rounded-full text-[11.5px] font-medium cursor-pointer transition-colors
26
+ `,`ssg_debug_rca(`,`{`,`auto_current:true`,`}`,`)`]}),(0,K.jsx)(`button`,{type:`button`,onClick:i,className:`w-full mt-2 px-2 py-1 border border-[var(--color-line-1)] rounded-sm hover:bg-[var(--color-surface-2)]`,children:`refresh`}),t?.snapshot_hash&&(0,K.jsxs)(`p`,{className:`text-[10px] opacity-60`,children:[`hash `,t.snapshot_hash.slice(0,12),`…`]})]})]})}function mf(e){return e===`critical`?`text-rose-400 border-rose-500/40`:e===`high`?`text-amber-300 border-amber-500/40`:e===`medium`?`text-sky-300 border-sky-500/40`:`text-[var(--color-fg-3)] border-[var(--color-line-1)]`}function hf({pack:e}){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`header`,{className:`flex items-start justify-between gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`p`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-4)]`,children:[`rca pack · `,new Date(e.ts_ms).toLocaleTimeString()]}),(0,K.jsx)(`h2`,{className:`text-[15px] font-medium text-[var(--color-fg-1)] mt-1`,children:e.summary}),e.trace_id&&(0,K.jsxs)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)] mt-1`,children:[`trace_id · `,e.trace_id]})]}),(0,K.jsx)(`span`,{className:`chip uppercase text-[10px] tracking-wider `+mf(e.severity),children:e.severity})]}),e.hypothesis&&e.hypothesis.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`hypothesis`}),(0,K.jsx)(`ol`,{className:`space-y-2`,children:e.hypothesis.map((e,t)=>(0,K.jsxs)(`li`,{className:`p-2 rounded-sm bg-[var(--color-surface-2)] border border-[var(--color-line-1)]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,K.jsx)(`p`,{className:`text-[13px] text-[var(--color-fg-1)]`,children:e.cause}),(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`conf `,(e.confidence*100).toFixed(0),`%`]})]}),e.evidence.length>0&&(0,K.jsx)(`ul`,{className:`mt-1 pl-3 text-[11px] text-[var(--color-fg-3)] list-disc list-inside space-y-0.5`,children:e.evidence.map((e,t)=>(0,K.jsx)(`li`,{children:e},t))})]},t))})]}),e.suggested_next_actions&&e.suggested_next_actions.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`suggested next actions`}),(0,K.jsx)(`ul`,{className:`space-y-1 text-[13px] text-[var(--color-fg-2)]`,children:e.suggested_next_actions.map((e,t)=>(0,K.jsxs)(`li`,{className:`font-mono text-[12px]`,children:[`→ `,e]},t))})]}),e.state_snapshot&&e.state_snapshot.length>0&&(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`expand`}),(0,K.jsx)(`ul`,{className:`space-y-1 text-[11px] font-mono`,children:e.state_snapshot.map(e=>(0,K.jsxs)(`li`,{className:`text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`code`,{className:`text-sky-300`,children:e.uri}),(0,K.jsxs)(`span`,{className:`opacity-50 ml-2`,children:[e.hash.slice(0,10),`…`]})]},e.uri))})]})]})}var gf=[`hook-ingress`,`parse`,`match`,`ffi-call`,`decide`,`audit`,`respond`],_f={"hook-ingress":`#6ea8ff`,parse:`#a78bfa`,match:`#60d394`,"ffi-call":`#f59e0b`,decide:`#f472b6`,audit:`#94a3b8`,respond:`#22d3ee`};function vf(){let{data:e,loading:t,error:n}=V(`/api/json/debug?uri=ssg%3A%2F%2Fframes%2Frecent%3Flimit%3D1024`,[ke([`debug-frame`])[`debug-frame`]]),r=e?.data?.frames??[],i=e?.data?.dropped??0,[a,o]=(0,_.useState)(null);return(0,K.jsxs)(`div`,{className:`grid grid-cols-1 xl:grid-cols-[1fr_320px] gap-4`,children:[(0,K.jsxs)(`article`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:[`frames · `,r.length,i>0&&(0,K.jsxs)(`span`,{className:`ml-2 text-amber-300`,children:[`dropped · `,i]})]}),(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:`ssg://frames/recent`})]}),n&&(0,K.jsxs)(`p`,{className:`text-sm text-rose-300`,children:[`timeline fetch error: `,n]}),t&&r.length===0?(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`loading…`}):r.length===0?(0,K.jsx)(yf,{}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(xf,{frames:r,onSelect:o}),(0,K.jsx)(bf,{})]})]}),(0,K.jsxs)(`aside`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2 text-[11px] font-mono text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`p`,{className:`uppercase tracking-wider text-[var(--color-fg-2)]`,children:`frame inspector`}),a?(0,K.jsx)(Sf,{frame:a}):(0,K.jsx)(`p`,{className:`opacity-60`,children:`click a bar to inspect`})]})]})}function yf(){return(0,K.jsxs)(`div`,{className:`text-[12px] text-[var(--color-fg-3)] space-y-1 py-4`,children:[(0,K.jsx)(`p`,{children:`no frames yet`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] font-mono`,children:`SSG_DEBUG_ENABLED=1 ssg daemon`}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`then fire an eval — frames stream in live.`})]})}function bf(){return(0,K.jsx)(`div`,{className:`flex flex-wrap gap-3 text-[10px] font-mono text-[var(--color-fg-4)]`,children:gf.map(e=>(0,K.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-sm`,style:{background:_f[e]}}),e]},e))})}function xf({frames:e,onSelect:t}){let n=(0,_.useRef)(null),r=(0,_.useRef)([]),[i,a]=(0,_.useState)(-1),{rows:o,tMin:s,tMax:c}=(0,_.useMemo)(()=>{let t=new Map;for(let n of e){let e=t.get(n.trace_id)??[];e.push(n),t.set(n.trace_id,e)}let n=Array.from(t.entries()).map(([e,t])=>({trace_id:e,frames:t.slice().sort((e,t)=>wf(e.ts_start_ns,t.ts_start_ns))}));n.sort((e,t)=>wf(e.frames[0].ts_start_ns,t.frames[0].ts_start_ns));let r=null,i=null;for(let t of e){let e=BigInt(t.ts_start_ns),n=BigInt(t.ts_end_ns);(r===null||e<r)&&(r=e),(i===null||n>i)&&(i=n)}return{rows:n,tMin:r??0n,tMax:i??1n}},[e]);(0,_.useEffect)(()=>{let e=n.current;if(!e)return;let t=window.devicePixelRatio||1,a=e.clientWidth,l=Math.max(120,o.length*22+24);e.width=a*t,e.height=l*t,e.style.height=`${l}px`;let u=e.getContext(`2d`);if(!u)return;u.setTransform(t,0,0,t,0,0),u.clearRect(0,0,a,l),u.strokeStyle=`rgba(255,255,255,0.04)`,u.lineWidth=1;for(let e=1;e<4;e++){let t=e*a/4;u.beginPath(),u.moveTo(t,0),u.lineTo(t,l),u.stroke()}let d=c>s?Number(c-s):1,f=a-110-8;u.font=`10px ui-monospace, monospace`,u.textBaseline=`middle`;let p=[];if(o.forEach((e,t)=>{let n=8+t*22;u.fillStyle=`rgba(255,255,255,0.55)`,u.fillText(e.trace_id.slice(0,10),6,n+18/2);for(let t of e.frames){let e=Number(BigInt(t.ts_start_ns)-s),r=Number(BigInt(t.ts_end_ns)-s),i=110+e/d*f,a=Math.max(2,(r-e)/d*f);u.fillStyle=_f[t.stage]??`#888`,u.globalAlpha=t.result===`error`?1:.82,u.fillRect(i,n,a,18),u.globalAlpha=1,t.result===`error`&&(u.strokeStyle=`#f43f5e`,u.lineWidth=1.5,u.strokeRect(i+.5,n+.5,a-1,17)),p.push({x:i,y:n,w:a,h:18,frame:t})}}),r.current=p,i>=0&&i<p.length){let e=p[i];u.strokeStyle=`#fff`,u.lineWidth=1.5,u.strokeRect(e.x+.5,e.y+.5,e.w-1,e.h-1)}},[o,s,c,i]);function l(e){let t=n.current;if(!t)return-1;let i=t.getBoundingClientRect(),a=e.clientX-i.left,o=e.clientY-i.top;for(let e=r.current.length-1;e>=0;e--){let t=r.current[e];if(a>=t.x&&a<=t.x+t.w&&o>=t.y&&o<=t.y+t.h)return e}return-1}return(0,K.jsx)(`canvas`,{ref:n,className:`w-full block cursor-crosshair`,onMouseMove:e=>a(l(e)),onMouseLeave:()=>a(-1),onClick:e=>{let n=l(e);t(n>=0?r.current[n].frame:null)}})}function Sf({frame:e}){let t=Number(BigInt(e.ts_end_ns)-BigInt(e.ts_start_ns)),n=t>=1e6?`${(t/1e6).toFixed(2)}ms`:t>=1e3?`${(t/1e3).toFixed(1)}µs`:`${t}ns`;return(0,K.jsxs)(`dl`,{className:`space-y-1`,children:[(0,K.jsxs)(Cf,{k:`stage`,children:[(0,K.jsx)(`span`,{className:`inline-block w-2 h-2 rounded-sm mr-1 align-middle`,style:{background:_f[e.stage]??`#888`}}),e.stage]}),(0,K.jsx)(Cf,{k:`tool`,children:e.tool}),(0,K.jsx)(Cf,{k:`result`,children:(0,K.jsx)(`span`,{className:e.result===`error`?`text-rose-300`:e.result===`skip`?`text-[var(--color-fg-4)]`:`text-emerald-300`,children:e.result})}),(0,K.jsx)(Cf,{k:`dur`,children:n}),e.rule_id&&(0,K.jsx)(Cf,{k:`rule`,children:e.rule_id}),e.error&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Cf,{k:`err.type`,children:(0,K.jsx)(`span`,{className:`text-rose-300`,children:e.error.type})}),(0,K.jsx)(Cf,{k:`err.msg`,children:(0,K.jsx)(`span`,{className:`text-rose-200`,children:e.error.message})})]}),e.input_preview&&(0,K.jsx)(Cf,{k:`input`,children:(0,K.jsx)(`code`,{className:`text-[10px] break-all`,children:e.input_preview})}),(0,K.jsx)(Cf,{k:`trace`,children:(0,K.jsx)(`code`,{className:`text-[10px]`,children:e.trace_id})}),(0,K.jsx)(Cf,{k:`frame`,children:(0,K.jsx)(`code`,{className:`text-[10px]`,children:e.frame_id})})]})}function Cf({k:e,children:t}){return(0,K.jsxs)(`div`,{className:`flex gap-2 text-[11px] leading-tight`,children:[(0,K.jsx)(`dt`,{className:`text-[var(--color-fg-4)] w-16 shrink-0 uppercase tracking-wider`,children:e}),(0,K.jsx)(`dd`,{className:`text-[var(--color-fg-2)] break-all min-w-0`,children:t})]})}function wf(e,t){let n=BigInt(e),r=BigInt(t);return n<r?-1:n>r?1:0}var Tf=[`ssg://daemon/state`,`ssg://daemon/metrics`,`ssg://audit/recent?limit=10`,`ssg://frames/recent?limit=32`,`ssg://rules/list`,`ssg://rca/current`,`ssg://native/stats`];function Ef(){let[e,t]=(0,_.useState)(`ssg://daemon/state`),[n,r]=(0,_.useState)(`ssg://daemon/state`);return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Tf.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>{t(e),r(e)},className:`chip text-[10px] `+(n===e?`border-[var(--color-brand)] text-[var(--color-fg-1)]`:`text-[var(--color-fg-3)]`),children:e},e))}),(0,K.jsxs)(`form`,{className:`flex items-center gap-2`,onSubmit:t=>{t.preventDefault(),r(e)},children:[(0,K.jsx)(`input`,{value:e,onChange:e=>t(e.target.value),placeholder:`ssg://source/path?k=v`,className:`flex-1 px-3 py-1.5 text-[12px] font-mono rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-[var(--color-fg-1)]`}),(0,K.jsx)(`button`,{type:`submit`,className:`px-3 py-1.5 text-[11px] font-mono uppercase tracking-wider border border-[var(--color-line-1)] rounded-sm hover:bg-[var(--color-surface-2)]`,children:`resolve`})]}),(0,K.jsx)(Df,{uri:n})]})}function Df({uri:e}){let t=ke([`debug-frame`,`activity-updated`,`counters-updated`]),{data:n,loading:r,error:i,refetch:a}=V(`/api/json/debug?uri=${encodeURIComponent(e)}`,[t[`debug-frame`],t[`activity-updated`],t[`counters-updated`],e]),o=n?JSON.stringify(n.data,null,2):``;return(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:e}),n?.snapshot_hash&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-4)]`,children:[`hash `,n.snapshot_hash.slice(0,10),`…`]}),n?.stale&&(0,K.jsxs)(`span`,{className:`chip text-amber-300 border-amber-500/40 text-[10px]`,children:[`stale `,n.age_ms?`${Math.round(n.age_ms/1e3)}s`:``]})]}),(0,K.jsx)(`button`,{type:`button`,onClick:a,className:`text-[10px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`,children:`refresh`})]}),r&&!n&&(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-4)]`,children:`resolving…`}),i&&(0,K.jsx)(`p`,{className:`text-sm text-rose-300`,children:i}),o&&(0,K.jsx)(`pre`,{className:`text-[11px] leading-snug font-mono text-[var(--color-fg-2)] overflow-auto max-h-[60vh] whitespace-pre-wrap break-all`,children:o})]})}function Of(e){let t=Date.now()-e,n=Math.floor(t/1e3);if(n<60)return`just now`;let r=Math.floor(n/60);if(r<60)return`${r}m ago`;let i=Math.floor(r/60);return i<24?`${i}h ago`:new Date(e).toLocaleDateString(void 0,{month:`short`,day:`numeric`})}var kf={block:`var(--color-hig-red)`,ask:`var(--color-hig-orange)`,log:`var(--color-hig-blue)`,allow:`var(--color-hig-green)`,force:`var(--color-hig-purple)`};function Af(e){switch(e){case`block`:return`Blocked`;case`ask`:return`Held for review`;case`log`:return`Logged`;case`force`:return`Force-allowed`;default:return`Allowed`}}function jf({type:e}){let t={fill:`none`,stroke:`currentColor`,strokeWidth:1.6,strokeLinecap:`round`,strokeLinejoin:`round`,viewBox:`0 0 24 24`};return e===`code`?(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M9 7l-5 5 5 5M15 7l5 5-5 5`}),(0,K.jsx)(`path`,{d:`M14 4l-4 16`,opacity:`0.55`})]}):e===`docs`?(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M5 4h9l5 5v11a1 1 0 01-1 1H5a1 1 0 01-1-1V5a1 1 0 011-1z`}),(0,K.jsx)(`path`,{d:`M14 4v5h5`}),(0,K.jsx)(`path`,{d:`M8 13h8M8 17h5`,opacity:`0.7`})]}):(0,K.jsxs)(`svg`,{...t,width:`22`,height:`22`,children:[(0,K.jsx)(`path`,{d:`M3 12a9 9 0 109-9`}),(0,K.jsx)(`path`,{d:`M12 3v9l6 3`})]})}function Mf(){let{data:e}=V(`/api/json/counters`,[ke([`counters-updated`])[`counters-updated`]]),t=e?.evals_today??0,n=e?.blocked_today??0,r=e?.asked_today??0;return(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-6 gap-y-2`,children:[(0,K.jsx)(Nf,{value:t,label:`evaluated`,tone:`default`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(Nf,{value:n,label:`blocked`,tone:`red`}),(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`·`}),(0,K.jsx)(Nf,{value:r,label:`held for you`,tone:`orange`}),(0,K.jsx)(`span`,{className:`text-[11px] ml-auto`,style:{color:`var(--color-fg-3)`},children:`Today`})]})}function Nf({value:e,label:t,tone:n}){return(0,K.jsxs)(`span`,{className:`inline-flex items-baseline gap-1.5`,children:[(0,K.jsx)(`span`,{className:`font-semibold tabular-nums`,style:{color:n===`red`?`var(--color-hig-red)`:n===`orange`?`var(--color-hig-orange)`:`var(--color-fg-0)`,fontSize:`20px`,lineHeight:1,letterSpacing:`-0.018em`},children:e.toLocaleString()}),(0,K.jsx)(`span`,{style:{color:`var(--color-fg-3)`,fontSize:`12px`,letterSpacing:`-0.005em`},children:t})]})}function Pf({href:e,title:t,desc:n,tone:r,type:i,cta:a}){let o=r===`orange`?`var(--color-hig-orange)`:r===`indigo`?`var(--color-hig-indigo)`:`var(--color-hig-blue)`;return(0,K.jsx)(`a`,{href:e,className:`group block rounded-2xl px-4 py-4 transition-all`,style:{border:`0.5px solid var(--color-line-1)`,background:`var(--color-surface-1)`,textDecoration:`none`,color:`inherit`,boxShadow:`var(--hig-shadow-1)`},children:(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center rounded-xl shrink-0`,style:{width:`40px`,height:`40px`,color:o,background:`color-mix(in oklab, ${o} 14%, transparent)`},children:(0,K.jsx)(jf,{type:i})}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`div`,{className:`text-[14px] font-semibold leading-tight`,style:{color:`var(--color-fg-0)`,letterSpacing:`-0.005em`},children:t}),(0,K.jsx)(`div`,{className:`text-[12px] mt-1 leading-snug`,style:{color:`var(--color-fg-2)`},children:n}),(0,K.jsxs)(`div`,{className:`text-[11.5px] mt-2 font-medium inline-flex items-center gap-1 transition-all`,style:{color:o},children:[a,(0,K.jsx)(`span`,{"aria-hidden":`true`,className:`transition-transform group-hover:translate-x-0.5`,children:`→`})]})]})]})})}function Ff(){let{data:e}=V(`/api/state/activity?limit=5`,[ke([`activity-updated`])[`activity-updated`]]),[,t]=(0,_.useState)(0);return(0,_.useEffect)(()=>{let e=setInterval(()=>t(e=>e+1),6e4);return()=>clearInterval(e)},[]),!e||e.length===0?(0,K.jsxs)(`div`,{className:`py-6 text-center`,style:{color:`var(--color-fg-3)`},children:[(0,K.jsx)(`p`,{style:{fontSize:`12.5px`,color:`var(--color-fg-2)`},children:`Waiting for your first agent action.`}),(0,K.jsx)(`p`,{style:{fontSize:`11px`,color:`var(--color-fg-3)`,marginTop:`4px`},children:`Anything your AI tries — read, write, run — will appear here in real time.`})]}):(0,K.jsx)(`div`,{children:e.slice(0,5).map((e,t)=>(0,K.jsxs)(`div`,{className:`hig-feed-row`,children:[(0,K.jsx)(`span`,{className:`hig-feed-row-dot`,style:{background:kf[e.decision]??`var(--color-fg-3)`,boxShadow:`0 0 0 3px ${e.decision===`block`?`color-mix(in oklab, var(--color-hig-red) 22%, transparent)`:e.decision===`ask`?`color-mix(in oklab, var(--color-hig-orange) 22%, transparent)`:`transparent`}`}}),(0,K.jsx)(`span`,{className:`hig-feed-row-decision`,style:{color:kf[e.decision]??`var(--color-fg-2)`},children:Af(e.decision)}),(0,K.jsx)(`span`,{style:{color:`var(--color-fg-3)`},children:`·`}),(0,K.jsx)(`span`,{className:`hig-feed-row-tool`,title:e.tool,children:li(e.tool)}),(0,K.jsx)(`span`,{className:`hig-feed-row-time`,children:Of(e.timestamp)})]},e.id??t))})}function If(){return(0,K.jsx)(`div`,{className:`relative`,children:(0,K.jsxs)(`div`,{className:`relative max-w-5xl mx-auto px-2 pt-6 pb-12 space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl px-6 py-5 relative overflow-hidden`,style:{border:`0.5px solid var(--color-line-1)`,background:`radial-gradient(120% 100% at 0% 0%, color-mix(in oklab, var(--color-accent) 14%, transparent) 0%, transparent 55%), var(--color-surface-1)`,boxShadow:`var(--hig-shadow-1)`},children:[(0,K.jsx)(`div`,{className:`hig-eyebrow mb-2`,children:`SigmaShake · Guardrails for AI`}),(0,K.jsx)(`h1`,{className:`font-semibold tracking-tight leading-tight`,style:{color:`var(--color-fg-0)`,fontSize:`26px`,letterSpacing:`-0.018em`},children:`The seatbelt for AI agents.`}),(0,K.jsx)(`p`,{className:`mt-1.5 leading-relaxed`,style:{color:`var(--color-fg-2)`,fontSize:`13.5px`,maxWidth:`52ch`},children:`Watch every move your AI makes. Approve what matters, block what doesn't — without babysitting every step.`}),(0,K.jsx)(`div`,{className:`mt-4 pt-3`,style:{borderTop:`0.5px solid var(--color-line-0)`},children:(0,K.jsx)(Mf,{})})]}),(0,K.jsx)(`section`,{children:(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-3 gap-3`,children:[(0,K.jsx)(Pf,{href:`/guardrails?starter=coding`,tone:`orange`,type:`code`,title:`Code safely with AI`,desc:`Protect files, secrets, and git history from coding agents.`,cta:`Install pack`}),(0,K.jsx)(Pf,{href:`/guardrails?starter=knowledge-work`,tone:`indigo`,type:`docs`,title:`Guard sensitive content`,desc:`Watch outbound email, file shares, and document changes.`,cta:`Install pack`}),(0,K.jsx)(Pf,{href:`/audit`,tone:`blue`,type:`review`,title:`Review what your AI did`,desc:`Every action, decision, and reason — in one place.`,cta:`Open activity`})]})}),(0,K.jsxs)(`a`,{href:`/try`,className:`group flex items-center justify-between gap-3 rounded-xl px-4 py-3 transition-all`,style:{border:`0.5px solid var(--color-line-1)`,background:`linear-gradient(90deg, color-mix(in oklab, var(--color-accent) 8%, transparent) 0%, transparent 60%), var(--color-surface-1)`,textDecoration:`none`,color:`inherit`},children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3 min-w-0`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center w-8 h-8 rounded-full shrink-0`,style:{background:`linear-gradient(180deg, var(--color-accent) 0%, var(--color-brand-hover) 100%)`,color:`var(--color-accent-on)`,boxShadow:`inset 0 0.5px 0 rgba(255,255,255,0.30), 0 2px 8px color-mix(in oklab, var(--color-accent) 30%, transparent)`},children:(0,K.jsx)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`polygon`,{points:`6 4 20 12 6 20`,fill:`currentColor`,stroke:`none`})})}),(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`div`,{className:`font-semibold text-[13.5px] leading-tight`,style:{color:`var(--color-fg-0)`,letterSpacing:`-0.005em`},children:`Try a scenario — see SigmaShake decide`}),(0,K.jsx)(`div`,{className:`text-[12px] mt-0.5`,style:{color:`var(--color-fg-3)`},children:`30-second dry-run · nothing actually runs.`})]})]}),(0,K.jsxs)(`span`,{className:`text-[12.5px] font-medium shrink-0 inline-flex items-center gap-1 transition-all`,style:{color:`var(--color-accent)`},children:[`Try it`,(0,K.jsx)(`span`,{"aria-hidden":`true`,className:`transition-transform group-hover:translate-x-0.5`,children:`→`})]})]}),(0,K.jsxs)(`section`,{children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between mb-2`,children:[(0,K.jsx)(`h2`,{className:`font-semibold tracking-tight`,style:{color:`var(--color-fg-0)`,fontSize:`15px`,letterSpacing:`-0.008em`},children:`Recent activity`}),(0,K.jsx)(`a`,{href:`/audit`,style:{fontSize:`12px`,color:`var(--color-hig-blue)`,fontWeight:500},children:`View all →`})]}),(0,K.jsx)(`div`,{style:{background:`var(--color-surface-1)`,border:`0.5px solid var(--color-line-1)`,borderRadius:`14px`,padding:`4px 16px`,boxShadow:`var(--hig-shadow-1)`},children:(0,K.jsx)(Ff,{})})]})]})})}var Lf=[{id:`files`,label:`Files & folders`,blurb:`Deleting or changing things on your hard drive`},{id:`secrets`,label:`Secrets & keys`,blurb:`Reading or overwriting credentials and private files`},{id:`network`,label:`Network calls`,blurb:`Reaching out to websites and external APIs`},{id:`install`,label:`Installing software`,blurb:`Pulling new code or packages from the internet`},{id:`communication`,label:`Sending messages`,blurb:`Outgoing emails, posts, or chat messages`}],Rf=[{id:`erase-folder`,label:`AI tries to erase a folder`,plainEffect:`Permanently deletes every file inside the "output" folder. Recovery is hard.`,category:`files`,emoji:`🗑️`,toolCall:{tool:`Bash`,input:{command:`find ./output -type f -delete`}},displayByOs:{windows:`Remove-Item .\\output -Recurse -Force`,macos:`find ./output -type f -delete`,linux:`find ./output -type f -delete`}},{id:`write-env`,label:`AI tries to write your .env file`,plainEffect:`Overwrites the file that holds your API keys, passwords, and other secrets.`,category:`secrets`,emoji:`⚠️`,toolCall:{tool:`Write`,input:{file_path:`.env`,content:`API_KEY=test`}}},{id:`read-ssh-key`,label:`AI tries to read your private key`,plainEffect:`Opens the SSH key that proves you are you on remote servers. Copying it is identity theft.`,category:`secrets`,emoji:`🔑`,toolCall:{tool:`Read`,input:{file_path:`~/.ssh/id_rsa`}},displayByOs:{windows:`Read C:\\Users\\You\\.ssh\\id_rsa`,macos:`Read ~/.ssh/id_rsa`,linux:`Read ~/.ssh/id_rsa`}},{id:`install-package`,label:`AI tries to install a package`,plainEffect:`Downloads code from a public registry and adds it to your project. The code runs with your permissions.`,category:`install`,emoji:`📦`,toolCall:{tool:`Bash`,input:{command:`npm install some-package --save`}}},{id:`fetch-web`,label:`AI tries to fetch a URL`,plainEffect:`Makes a web request to an outside service. Could leak data or pull in instructions.`,category:`network`,emoji:`🌐`,toolCall:{tool:`WebFetch`,input:{url:`https://api.example.com/data`,prompt:``}}},{id:`send-email`,label:`AI tries to send an email`,plainEffect:`Sends an email from your machine without your review. Anyone could end up CC’d.`,category:`communication`,emoji:`📧`,toolCall:{tool:`Bash`,input:{command:`sendmail -t < message.txt`}},displayByOs:{windows:`Send-MailMessage -To you@example.com -Subject "..." -Body (Get-Content message.txt)`,macos:`sendmail -t < message.txt`,linux:`sendmail -t < message.txt`}}],zf=`ssg.tryit.intro-dismissed.v1`,Bf=`ssg.tryit.os.v1`,Vf={allow:{label:`Allowed`,color:`text-emerald-300`,bg:`border-emerald-500/30 bg-emerald-500/5`,icon:`✓`,headline:`SSG would let this happen.`,next:`In real life, the AI would go ahead. If you would rather it didn’t, add a rule on the Rules page.`},block:{label:`Blocked`,color:`text-red-300`,bg:`border-red-500/30 bg-red-500/5`,icon:`✕`,headline:`SSG would stop this from running.`,next:`The AI never gets to perform the action. No files change, no commands run, no requests go out.`},ask:{label:`Ask first`,color:`text-amber-300`,bg:`border-amber-500/30 bg-amber-500/5`,icon:`?`,headline:`SSG would pause and ask you first.`,next:`You’d get a prompt on the Approvals page. Nothing happens until you click Allow or Deny.`},log:{label:`Logged`,color:`text-sky-300`,bg:`border-sky-500/30 bg-sky-500/5`,icon:`≡`,headline:`SSG would allow it but write it down.`,next:`The AI proceeds, and the action gets recorded in your Activity log for later review.`},force:{label:`Force-allow`,color:`text-violet-300`,bg:`border-violet-500/30 bg-violet-500/5`,icon:`→`,headline:`A high-priority rule explicitly allows this.`,next:`A “force” rule overrides anything that would have blocked or paused this action.`}};function Hf(){if(typeof window>`u`)return`linux`;try{let e=window.localStorage.getItem(Bf);if(e===`windows`||e===`macos`||e===`linux`)return e}catch{}let e=navigator.userAgent.toLowerCase();return e.includes(`win`)?`windows`:e.includes(`mac`)?`macos`:`linux`}function Uf(e){return e===`windows`?`Windows`:e===`macos`?`Mac`:`Linux`}function Wf(e){return e===`windows`?`⊞`:e===`macos`?`🍎`:`🐧`}function Gf(e,t){let n=e.displayByOs?.[t];if(n)return n;let r=e.toolCall;return r.input.command?r.input.command:r.input.file_path?r.input.file_path:r.input.url?r.input.url:JSON.stringify(r.input)}function Kf({n:e,label:t}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center w-5 h-5 rounded-full bg-[var(--color-brand)]/15 text-[var(--color-brand)] text-[10px] font-semibold shrink-0`,children:e}),(0,K.jsx)(`span`,{className:`text-[11.5px] text-[var(--color-fg-2)] truncate`,children:t})]})}function qf({os:e,setOs:t}){return(0,K.jsx)(`div`,{className:`inline-flex items-center gap-1 rounded-full border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-0.5`,children:[`windows`,`macos`,`linux`].map(n=>(0,K.jsxs)(`button`,{onClick:()=>t(n),className:`px-2.5 py-1 rounded-full text-[10.5px] font-medium cursor-pointer transition-colors ${n===e?`bg-[var(--color-brand)]/15 text-[var(--color-brand)]`:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)]`}`,title:`Show commands as they would look on ${Uf(n)}`,children:[Wf(n),` `,Uf(n)]},n))})}function Jf({os:e,setOs:t,onDismiss:n}){return(0,K.jsxs)(`div`,{className:`rounded-2xl border border-[var(--color-brand)]/25 bg-[var(--color-brand)]/[0.04] p-4 sm:p-5 space-y-3.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold text-[var(--color-fg-0)] leading-tight`,children:`What SSG does — and why this page is here`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-1 leading-relaxed max-w-[60ch]`,children:[`AI coding agents can run any command on your computer: delete files, read your secrets, send emails, install packages. SSG is the policy engine that decides which of those they’re actually allowed to do.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-0)] font-medium`,children:`This sandbox shows SSG’s decisions in real time`}),`, without anything actually running. Pick a scenario, click Run, see what your guardrails would do.`]})]}),(0,K.jsx)(`button`,{onClick:n,className:`shrink-0 text-[var(--color-fg-4)] hover:text-[var(--color-fg-1)] cursor-pointer text-[14px] leading-none p-1 -m-1`,"aria-label":`Dismiss intro`,title:`Hide this primer`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1.5 text-[11.5px]`,children:[(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`Nothing executes`]}),(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`No files modified`]}),(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 text-emerald-300`,children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full bg-emerald-400`}),`No network traffic`]})]}),(0,K.jsxs)(`div`,{className:`rounded-xl border border-[var(--color-line-1)]/60 bg-[var(--color-surface-1)]/40 p-3`,children:[(0,K.jsx)(`p`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] font-semibold mb-2`,children:`How it works`}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 sm:grid-cols-3 gap-3`,children:[(0,K.jsx)(Kf,{n:1,label:`Pick a scenario below`}),(0,K.jsx)(Kf,{n:2,label:`Click Run`}),(0,K.jsx)(Kf,{n:3,label:`See the decision SSG would make`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pt-1`,children:[(0,K.jsx)(`span`,{className:`text-[11.5px] text-[var(--color-fg-3)]`,children:`Showing commands as they look on`}),(0,K.jsx)(qf,{os:e,setOs:t}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-4)]`,children:`(cosmetic — SSG’s decision is the same on every OS)`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 flex-wrap pt-1`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] italic max-w-[44ch] leading-snug`,children:`Every AI agent will need a policy layer. This is what one looks like.`}),(0,K.jsx)(`button`,{onClick:n,className:`text-[11.5px] font-medium text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] cursor-pointer underline-offset-2 hover:underline`,children:`Got it, hide this primer`})]})]})}function Yf({scenario:e,selected:t,os:n,onClick:r}){return(0,K.jsxs)(`button`,{onClick:r,className:`flex flex-col gap-1.5 rounded-xl border px-3.5 py-3 text-left cursor-pointer transition-all ${t?`border-[var(--color-brand)]/60 bg-[var(--color-brand)]/8 shadow-[0_0_0_3px_color-mix(in_oklab,var(--color-brand)_15%,transparent)]`:`border-[var(--color-line-1)] bg-[var(--color-surface-1)] hover:border-[var(--color-line-2)] hover:bg-[var(--color-surface-2)]/40`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[18px] leading-none shrink-0`,children:e.emoji}),(0,K.jsx)(`span`,{className:`text-[13px] font-medium text-[var(--color-fg-0)] leading-snug flex-1 min-w-0`,children:e.label})]}),(0,K.jsx)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)] leading-snug`,children:e.plainEffect}),(0,K.jsx)(`p`,{className:`font-mono text-[10.5px] text-[var(--color-fg-4)] truncate`,children:Gf(e,n)})]})}function Xf(){let[e,t]=(0,_.useState)(null),[n,r]=(0,_.useState)(null),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(`Bash`),[f,p]=(0,_.useState)(`{"command": ""}`),[m,h]=(0,_.useState)(()=>{if(typeof window>`u`)return!1;try{return window.localStorage.getItem(zf)===`1`}catch{return!1}}),[g,v]=(0,_.useState)(()=>Hf()),[y,b]=(0,_.useState)(!1);function x(e){v(e);try{window.localStorage.setItem(Bf,e)}catch{}}function S(){h(!0);try{window.localStorage.setItem(zf,`1`)}catch{}}function C(){h(!1);try{window.localStorage.removeItem(zf)}catch{}}let w=Rf.find(t=>t.id===e),T=(0,_.useMemo)(()=>{let e=new Map;for(let t of Rf){let n=e.get(t.category)??[];n.push(t),e.set(t.category,n)}return Lf.filter(t=>e.has(t.id)).map(t=>({...t,scenarios:e.get(t.id)}))},[]);(0,_.useEffect)(()=>{(n||o)&&window.scrollTo({top:(document.getElementById(`tryit-result`)?.offsetTop??0)-80,behavior:`smooth`})},[n,o]),(0,_.useEffect)(()=>{if(typeof window>`u`)return;let e=new URLSearchParams(window.location.search).get(`scenario`);e&&Rf.some(t=>t.id===e)&&t(e)},[]),(0,_.useEffect)(()=>{if(typeof window>`u`)return;let t=new URL(window.location.href);e?t.searchParams.set(`scenario`,e):t.searchParams.delete(`scenario`),window.history.replaceState({},``,t.toString())},[e]);function E(){if(!e)return;let t=new URL(window.location.href);t.searchParams.set(`scenario`,e),navigator.clipboard.writeText(t.toString()).then(()=>{b(!0),setTimeout(()=>b(!1),2e3)}).catch(()=>{})}async function D(e){a(!0),s(null),r(null);try{let t=await(await fetch(`/api/json/eval-dry-run`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify(e)})).json();t.error?s(t.error):r(t)}catch{s(`Could not reach the governance engine. Is SSG running?`)}finally{a(!1)}}function O(){w&&D(w.toolCall)}function ee(){let e;try{e=JSON.parse(f)}catch{s(`Invalid JSON in input field.`);return}if(typeof e!=`object`||!e){s(`Input must be a JSON object.`);return}D({tool:u,input:e})}let k=n?Vf[n.decision]??Vf.allow:null;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto py-4 space-y-4`,children:[(0,K.jsxs)(`header`,{className:`flex items-baseline justify-between gap-4 flex-wrap`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[22px] font-semibold text-[var(--color-fg-0)] tracking-tight leading-tight`,children:`Try it`}),(0,K.jsxs)(`p`,{className:`text-[13px] text-[var(--color-fg-2)] mt-0.5`,children:[`Your AI can run any command. SSG decides what it’s actually allowed to do.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`Pick a scenario to see — nothing actually runs.`})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3 shrink-0`,children:[m&&(0,K.jsx)(`button`,{onClick:C,className:`text-[11.5px] font-medium text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] cursor-pointer`,title:`Show the introduction again`,children:`What is Try It? →`}),(0,K.jsx)(`a`,{href:`/guardrails`,className:`text-[11.5px] font-medium text-[var(--color-brand)] hover:underline`,children:`Install more guardrails →`})]})]}),!m&&(0,K.jsx)(Jf,{os:g,setOs:x,onDismiss:S}),m&&(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 px-1`,children:[(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:`Commands shown as on`}),(0,K.jsx)(qf,{os:g,setOs:x})]}),(0,K.jsx)(`div`,{className:`space-y-4`,children:T.map(n=>(0,K.jsxs)(`section`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-2 px-1`,children:[(0,K.jsx)(`h3`,{className:`text-[11px] uppercase tracking-wide text-[var(--color-fg-3)] font-semibold`,children:n.label}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)]`,children:n.blurb})]}),(0,K.jsx)(`div`,{className:`grid grid-cols-1 sm:grid-cols-2 gap-2`,children:n.scenarios.map(n=>(0,K.jsx)(Yf,{scenario:n,selected:e===n.id,os:g,onClick:()=>{t(n.id),r(null),s(null)}},n.id))})]},n.id))}),w&&(0,K.jsxs)(`div`,{className:`rounded-xl border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`span`,{className:`text-[22px] leading-none shrink-0`,children:w.emoji}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[13.5px] font-medium text-[var(--color-fg-0)]`,children:w.label}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mt-0.5 leading-relaxed`,children:w.plainEffect})]})]}),(0,K.jsxs)(`div`,{className:`rounded-lg border border-[var(--color-line-0)] bg-[var(--color-surface-0)] px-3 py-2`,children:[(0,K.jsxs)(`p`,{className:`text-[10px] uppercase tracking-wide text-[var(--color-fg-4)] font-semibold mb-1`,children:[`What the AI would run · `,Uf(g)]}),(0,K.jsx)(`code`,{className:`font-mono text-[12px] text-[var(--color-fg-1)] break-all`,children:Gf(w,g)})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-3 flex-wrap`,children:[(0,K.jsxs)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)]`,children:[`Click Run to see what SSG would decide.`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-4)]`,children:`The command does not actually execute.`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 shrink-0`,children:[(0,K.jsx)(`button`,{onClick:E,className:`inline-flex items-center gap-1 px-3 h-8 rounded-full text-[11.5px] font-medium cursor-pointer transition-colors
27
27
  border border-[var(--color-line-1)] bg-[var(--color-surface-1)] text-[var(--color-fg-2)]
28
28
  hover:bg-[var(--color-surface-2)]/40 hover:text-[var(--color-fg-0)]`,title:`Copy a deep-link to this exact scenario`,children:y?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M20 6L9 17l-5-5`})}),`Link copied`]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M10 13a5 5 0 0 0 7.07 0l3-3a5 5 0 0 0-7.07-7.07l-1.5 1.5M14 11a5 5 0 0 0-7.07 0l-3 3a5 5 0 0 0 7.07 7.07l1.5-1.5`})}),`Copy share link`]})}),(0,K.jsx)(`button`,{onClick:O,disabled:i,className:`inline-flex items-center gap-1.5 px-4 h-8 rounded-full text-[12px] font-medium cursor-pointer transition-colors
29
29
  bg-[var(--color-brand)] text-white hover:opacity-90
30
30
  disabled:opacity-40 disabled:cursor-not-allowed`,children:i?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`svg`,{className:`animate-spin`,width:`12`,height:`12`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,children:(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`})}),`Running`]}):(0,K.jsxs)(K.Fragment,{children:[`Run simulation`,(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M5 12h14M13 5l7 7-7 7`})})]})})]})]})]}),n&&k&&(0,K.jsxs)(`div`,{id:`tryit-result`,className:`rounded-xl border p-4 ${k.bg} space-y-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`span`,{className:`flex items-center justify-center w-9 h-9 rounded-full text-lg font-bold border ${k.bg} ${k.color}`,children:k.icon}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[15px] font-semibold ${k.color}`,children:k.label}),(0,K.jsx)(`p`,{className:`text-[12.5px] mt-0.5 ${k.color} opacity-90`,children:k.headline})]})]}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-1)] leading-relaxed`,children:k.next}),(0,K.jsxs)(`div`,{className:`rounded-lg bg-[var(--color-surface-0)]/60 border border-[var(--color-line-0)] px-3 py-2 space-y-1`,children:[(0,K.jsx)(`p`,{className:`text-[10px] uppercase tracking-wide text-[var(--color-fg-4)] font-semibold`,children:`Why this decision`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-1)] leading-relaxed`,children:n.reason??`No specific rule matched this action — SSG defaults to allowing things that aren’t covered by a rule.`}),(0,K.jsxs)(`p`,{className:`text-[10.5px] text-[var(--color-fg-3)] mt-1.5`,children:[n.rules_evaluated,` rule`,n.rules_evaluated===1?``:`s`,` checked`,n.rule_id&&(0,K.jsxs)(K.Fragment,{children:[` `,`· matched`,` `,(0,K.jsx)(`a`,{href:`/rules?focus=${encodeURIComponent(n.rule_id)}`,className:`font-mono text-[var(--color-brand)] hover:underline`,children:n.rule_id})]})]})]}),w&&(0,K.jsxs)(`div`,{className:`rounded-lg border border-[var(--color-line-0)] bg-[var(--color-surface-0)]/60 px-3 py-2.5 flex items-start gap-2.5`,children:[(0,K.jsx)(`span`,{className:`text-[15px] leading-none mt-0.5 shrink-0`,children:n.decision===`block`?`🛡️`:n.decision===`allow`?`⚠️`:n.decision===`ask`?`⏸️`:`ℹ️`}),(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-4)] font-semibold`,children:n.decision===`block`?`What you just avoided`:n.decision===`allow`?`What this would actually do`:n.decision===`ask`?`What you’d be asked to confirm`:`What gets recorded`}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-1)] leading-relaxed mt-0.5`,children:w.plainEffect})]})]}),n.decision===`allow`&&(0,K.jsxs)(`a`,{href:`/guardrails`,className:`inline-flex items-center gap-1.5 px-3.5 h-8 rounded-full text-[12px] font-medium
31
31
  bg-[var(--color-brand)] text-white hover:opacity-90 transition-colors`,children:[`Add a rule to block this`,(0,K.jsx)(`svg`,{width:`11`,height:`11`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M5 12h14M13 5l7 7-7 7`})})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-x-4 gap-y-1.5 text-[11.5px] pt-1`,children:[n.decision===`block`&&(0,K.jsx)(`a`,{href:`/rules`,className:`font-medium text-[var(--color-brand)] hover:underline`,children:`See the rule that did this →`}),n.decision===`ask`&&(0,K.jsx)(`a`,{href:`/approvals`,className:`font-medium text-[var(--color-brand)] hover:underline`,children:`See where the prompt appears →`}),(0,K.jsx)(`a`,{href:`/audit`,className:`font-medium text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] hover:underline`,children:`See real decisions in your Activity log →`}),(0,K.jsx)(`a`,{href:`https://sigmashake.com`,target:`_blank`,rel:`noreferrer`,className:`font-medium text-[var(--color-fg-2)] hover:text-[var(--color-fg-0)] hover:underline`,children:`Tell a teammate about SSG ↗`})]})]}),o&&(0,K.jsx)(`div`,{className:`rounded-xl border border-red-500/30 bg-red-500/5 px-4 py-3 text-[12px] text-red-300`,children:o}),(0,K.jsxs)(`div`,{className:`pt-2`,children:[(0,K.jsx)(`button`,{onClick:()=>l(e=>!e),className:`text-[11px] text-[var(--color-fg-4)] hover:text-[var(--color-fg-2)] transition-colors cursor-pointer`,children:c?`▲ Hide custom input`:`▼ Advanced: write your own scenario`}),c&&(0,K.jsxs)(`div`,{className:`mt-3 rounded-xl border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3 space-y-2`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] leading-relaxed`,children:`Pick a tool the AI would call, and the input it would pass. Same idea as the scenarios above — still a simulation, still nothing actually runs.`}),(0,K.jsxs)(`div`,{className:`flex items-end gap-2 flex-wrap`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,K.jsx)(`label`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:`Tool`}),(0,K.jsx)(`select`,{value:u,onChange:e=>d(e.target.value),className:`bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-md px-2 h-8 focus:outline-none`,children:[`Bash`,`Read`,`Write`,`Edit`,`WebFetch`,`WebSearch`,`Agent`,`Glob`,`Grep`].map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))})]}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-[200px] flex flex-col gap-1`,children:[(0,K.jsx)(`label`,{className:`text-[10px] font-mono text-[var(--color-fg-3)]`,children:`Input JSON`}),(0,K.jsx)(`input`,{type:`text`,value:f,onChange:e=>p(e.target.value),className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-[11px] font-mono rounded-md px-2 h-8 focus:outline-none focus:border-[var(--color-brand)]/50`})]}),(0,K.jsx)(`button`,{onClick:ee,disabled:i,className:`px-3 h-8 rounded-full text-[11px] font-medium cursor-pointer transition-colors
32
32
  bg-[var(--color-fg-1)] text-[var(--color-bg)] hover:opacity-90
33
- disabled:opacity-40 disabled:cursor-not-allowed`,children:`Run`})]})]})]})]})}function op(e,t){let n=new Set([...Object.keys(e),...Object.keys(t)]);for(let r of n)if(e[r]!==t[r])return!1;return!0}function sp(e,t){let n=new Set([...Object.keys(e),...Object.keys(t)]);for(let r of n){let n=e[r],i=t[r];if(!n||!i||n.enabled!==i.enabled||n.toolGroups.length!==i.toolGroups.length||n.toolGroups.some((e,t)=>e!==i.toolGroups[t]))return!1}return!0}function cp(e,t){let[n,r]=(0,_.useState)(null),[i,a]=(0,_.useState)(null),[o,s]=(0,_.useState)(!0),[c,l]=(0,_.useState)(null),[u,d]=(0,_.useState)(`project`),[f,p]=(0,_.useState)({}),[m,h]=(0,_.useState)({}),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(null),[x,S]=(0,_.useState)(0),C=(0,_.useRef)(null);(0,_.useEffect)(()=>{let n=`${e}:${u}:${x}`,i=C.current!==n;C.current=n;let o=!1,c=setTimeout(()=>{i&&(s(!0),l(null));let n=new URLSearchParams({agent:e,projectDir:t,scope:u});fetch(`/api/json/adapters/toggles?${n.toString()}`).then(async e=>{if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()}).then(t=>{if(o)return;r(t.catalog);let n=t.resolved[e]??{hooks:{},mcp:{}};a(n),i&&(p({...n.hooks}),h(Object.fromEntries(Object.entries(n.mcp).map(([e,t])=>[e,{...t,toolGroups:[...t.toolGroups]}]))),s(!1))}).catch(e=>{o||i&&(l(e instanceof Error?e.message:String(e)),s(!1))})},i?0:250);return()=>{o=!0,clearTimeout(c)}},[e,t,u,x]);let w=(0,_.useCallback)(()=>S(e=>e+1),[]);return{catalog:n,loading:o,fetchError:c,scope:u,setScope:d,hooks:f,mcp:m,setHook:(0,_.useCallback)((e,t)=>{p(n=>({...n,[e]:t}))},[]),setMcpEnabled:(0,_.useCallback)((e,t)=>{h(n=>({...n,[e]:{...n[e]??{enabled:!0,toolGroups:[`core`]},enabled:t}}))},[]),setMcpToolGroups:(0,_.useCallback)((e,t)=>{h(n=>({...n,[e]:{...n[e]??{enabled:!0,toolGroups:[`core`]},toolGroups:t}}))},[]),hasChanges:i!==null&&(!op(f,i.hooks)||!sp(m,i.mcp)),saving:g,saveError:y,refetch:w,save:(0,_.useCallback)(async()=>{v(!0),b(null);try{let n=await(await fetch(`/api/json/adapters/toggles`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({agent:e,scope:u,projectDir:t,changes:{hooks:f,mcp:m}})})).json();if(!n.ok)b(n.error??`Save failed`);else{let e=n.resolved??{hooks:f,mcp:m};a(e),p({...e.hooks}),h(Object.fromEntries(Object.entries(e.mcp).map(([e,t])=>[e,{...t,toolGroups:[...t.toolGroups]}])))}}catch(e){b(e instanceof Error?e.message:String(e))}finally{v(!1)}},[e,u,t,f,m]),saveAndInstall:(0,_.useCallback)(async(t,n)=>{v(!0),b(null);try{let r=await(await fetch(`/api/json/adapters/toggles`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({agent:e,scope:u,projectDir:t,changes:{hooks:f,mcp:m}})})).json();if(!r.ok){b(r.error??`Save failed`),n?.(!1);return}a(r.resolved??{hooks:f,mcp:m});let i=await(await fetch(`/api/json/adapters/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e,projectDir:t})})).json();i.ok?n?.(!0):(b(i.error??`Install failed`),n?.(!1))}catch(e){b(e instanceof Error?e.message:String(e)),n?.(!1)}finally{v(!1)}},[e,u,t,f,m])}}function lp({groups:e,selected:t,onChange:n,disabled:r}){let i=(0,_.useRef)(null);function a(e){if(t.includes(e)){let r=t.filter(t=>t!==e);if(r.length>0)n(r);else{i.current&&(i.current.textContent=``,requestAnimationFrame(()=>{i.current&&(i.current.textContent=`At least one tool group must remain enabled.`)}));let t=document.getElementById(`chip-${e}`);t&&(t.classList.remove(`chip--shake-deny`),t.offsetWidth,t.classList.add(`chip--shake-deny`),t.addEventListener(`animationend`,()=>t.classList.remove(`chip--shake-deny`),{once:!0}))}}else n([...t,e])}return(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1.5 mt-1.5`,children:[e.map(e=>{let n=t.includes(e.id);return(0,K.jsx)(`button`,{id:`chip-${e.id}`,type:`button`,disabled:r,"aria-pressed":n,onClick:()=>a(e.id),className:`chip${n?` chip--active`:``}`,children:e.label},e.id)}),(0,K.jsx)(`span`,{ref:i,className:`sr-only`,"aria-live":`polite`,"aria-atomic":`true`})]})}function up(){return(0,K.jsx)(`div`,{className:`flex flex-col gap-0.5 mb-4`,children:[0,1,2,3].map(e=>(0,K.jsx)(`div`,{className:`shimmer agent-toggles-skeleton-row`},e))})}function dp({agentId:e,projectDir:t,onApplied:n}){let{catalog:r,loading:i,fetchError:a,scope:o,setScope:s,hooks:c,mcp:l,setHook:u,setMcpEnabled:d,setMcpToolGroups:f,hasChanges:p,saving:m,saveError:h,saveAndInstall:g,refetch:_}=cp(e,t);if(i)return(0,K.jsx)(up,{});if(a)return(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 py-1`,children:[(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-hig-red)] font-sans`,children:a}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--ghost`,onClick:()=>_(),children:`Retry`})]});if(!r)return null;let v=r.hookApplicability[e]??[],y=r.mcpApplicability[e]??[],b=v.length>0,x=y.length>0;if(!b&&!x)return(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-sans py-1`,children:`No configurable hooks or MCP servers for this agent yet.`});let S=r.hooks.filter(e=>v.includes(e.id)),C=r.mcp.filter(e=>y.includes(e.id)),w=p?S.filter(e=>(c[e.id]??!0)!==!0).length+C.filter(e=>{let t=l[e.id]??{enabled:!0,toolGroups:[`core`]};return!t.enabled||t.toolGroups.join()!==`core`}).length:0;return(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`Scope`}),(0,K.jsx)(`div`,{className:`ss-segment`,role:`tablist`,"aria-label":`Toggle scope`,children:[`project`,`global`].map(e=>(0,K.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":o===e,className:`ss-segment-item`,onClick:()=>s(e),children:e===`project`?`This project`:`Global`},e))}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-1.5`,children:o===`project`?`Saves to .sigmashake/agent-toggles.json in this project.`:`Saves to ~/.sigmashake/agent-toggles.json (applies to all projects).`})]}),b&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`Claude Code lifecycle hooks`}),(0,K.jsx)(`div`,{className:`ss-list`,style:{margin:0},children:S.map(e=>{let t=c[e.id]??!0;return(0,K.jsxs)(`div`,{className:`ss-list-row`,style:{gap:12,cursor:`pointer`},onClick:()=>u(e.id,!t),children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`span`,{className:`block text-[12.5px] font-medium text-[var(--color-fg-1)] mb-0.5`,children:e.label}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] m-0`,children:e.description})]}),(0,K.jsx)(fl,{checked:t,onChange:t=>u(e.id,t),disabled:m,label:e.label,size:`sm`})]},e.id)})})]}),x&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`MCP servers`}),(0,K.jsx)(`div`,{className:`ss-list`,style:{margin:0},children:C.map(e=>{let t=l[e.id]??{enabled:!0,toolGroups:[`core`]},n=!t.enabled;return(0,K.jsxs)(`div`,{style:{padding:`10px 14px`,borderBottom:`1px solid var(--color-line-0)`},children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,K.jsx)(`span`,{className:`block text-[12.5px] font-medium text-[var(--color-fg-1)] mb-0.5`,children:e.label})}),(0,K.jsx)(fl,{checked:t.enabled,onChange:t=>d(e.id,t),disabled:m,label:e.label,size:`sm`,tone:n?`danger`:`brand`})]}),n&&(0,K.jsxs)(`p`,{className:`ss-list-row-warning`,children:[`Disconnecting will remove `,e.id,` from this agent. Hooks remain unchanged.`]}),t.enabled&&(0,K.jsxs)(`div`,{className:`mt-2`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mb-0.5`,children:`Tool groups`}),(0,K.jsx)(lp,{groups:e.toolGroups,selected:t.toolGroups,onChange:t=>f(e.id,t),disabled:m})]})]},e.id)})})]}),p&&w>0&&(0,K.jsxs)(`p`,{className:`agent-toggles-pending`,children:[w,` change`,w===1?``:`s`,` pending — click Apply to save.`]}),h&&(0,K.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-hig-red)] font-sans m-0`,children:h}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--ghost`,onClick:()=>void g(t,e=>n?.(e)),children:`Retry`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsxs)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,disabled:m||!p||!t.trim(),onClick:()=>void g(t,e=>n?.(e)),title:t.trim()?p?`Save toggle choices and re-run ssg init to update config files.`:`No changes to apply.`:`Pick a project directory above before applying.`,style:{height:34,padding:`0 16px`,fontSize:12.5,display:`inline-flex`,alignItems:`center`,gap:6},children:[m&&(0,K.jsx)(`span`,{className:`ss-spinner`,"aria-hidden":`true`}),m?`Applying…`:`Apply`]}),!p&&!m&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:`no changes`})]})]})}var fp=`http://www.w3.org/2000/svg`;function pp({markup:e,size:t=22}){let n=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=n.current;if(!t)return;for(;t.firstChild;)t.removeChild(t.firstChild);let r=`<svg xmlns="${fp}">${e}</svg>`,i=new DOMParser().parseFromString(r,`image/svg+xml`).documentElement;for(let e of Array.from(i.childNodes))t.appendChild(t.ownerDocument.importNode(e,!0))},[e]),(0,K.jsx)(`svg`,{ref:n,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.7`,strokeLinecap:`round`,strokeLinejoin:`round`,width:t,height:t,"aria-hidden":`true`})}function mp({a:e,size:t=40}){return(0,K.jsx)(`div`,{className:`agent-card-icon shrink-0`,style:{width:t,height:t,color:e.accent,background:`color-mix(in oklab, ${e.accent} 16%, var(--color-surface-2))`,borderColor:`color-mix(in oklab, ${e.accent} 38%, var(--color-line-1))`},children:(0,K.jsx)(pp,{markup:e.glyph,size:Math.round(t*.55)})})}function hp({a:e}){return e.active?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 16%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 38%, transparent)`},children:`Active`}):e.detected?(0,K.jsxs)(`span`,{className:`agent-badge agent-badge--detected`,children:[(0,K.jsx)(`span`,{className:`agent-badge-dot`}),`Detected`]}):e.recommended?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 12%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 30%, transparent)`},children:`Recommended`}):null}function gp(){return(0,K.jsx)(`svg`,{className:`ss-list-row-chevron`,viewBox:`0 0 16 16`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:(0,K.jsx)(`path`,{d:`M5 3l5 5-5 5`})})}function _p({text:e}){let[t,n]=(0,_.useState)(!1);return(0,K.jsx)(`button`,{type:`button`,onClick:()=>{navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1500)},className:`ss-btn ss-btn--secondary`,style:{height:32,padding:`0 12px`,fontSize:12},"aria-label":t?`Copied`:`Copy`,children:t?`Copied ✓`:`Copy`})}function vp(e,t){return t&&e.startsWith(t)?`~`+e.slice(t.length):e}function yp({agentId:e,projectDir:t}){let[n,r]=(0,_.useState)(!1);return(0,K.jsxs)(`div`,{style:{border:`1px solid var(--color-line-1)`,borderRadius:10,overflow:`hidden`,marginBottom:16},children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,width:`100%`,padding:`10px 14px`,background:`var(--color-surface-2)`,border:`none`,cursor:`pointer`,textAlign:`left`,gap:8},children:[(0,K.jsx)(`span`,{style:{fontSize:12.5,fontWeight:500,color:`var(--color-fg-1)`},children:`Configure hooks & MCP`}),(0,K.jsx)(`svg`,{viewBox:`0 0 16 16`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`,style:{color:`var(--color-fg-3)`,transform:n?`rotate(90deg)`:`rotate(0deg)`,transition:`transform 0.15s`,flexShrink:0},"aria-hidden":`true`,children:(0,K.jsx)(`path`,{d:`M5 3l5 5-5 5`})})]}),(0,K.jsx)(`div`,{className:`agent-toggles-body`,"data-open":n?`true`:`false`,style:{borderTop:n?`1px solid var(--color-line-1)`:`none`},children:(0,K.jsx)(`div`,{style:{padding:`14px 14px 16px`},children:(0,K.jsx)(dp,{agentId:e,projectDir:t})})})]})}function bp({agent:e,ctx:t,onClose:n,onInstalled:r}){let[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(!1),[f,p]=(0,_.useState)(null),[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(!1),[x,S]=(0,_.useState)(null),C=`ssg init --client=${e.id}`;async function w(){b(!0),S(null);try{let e=await(await fetch(`/api/json/pick-dir`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()}})).json();e.ok?a(e.path):e.reason===`user_cancelled`||(e.reason===`no_display`?S(`No graphical session — type the path manually instead.`):e.reason===`no_picker_found`?S("Folder picker not available. Install `zenity` (Linux), or type the path manually."):S(e.error||`Folder picker failed.`))}catch(e){S(e instanceof Error?e.message:String(e))}finally{b(!1)}}(0,_.useEffect)(()=>{let e=!1;return fetch(`/api/json/adapters/recent`).then(e=>e.json()).then(t=>{e||(s(t.recents??[]),!i&&t.recents&&t.recents.length>0&&a(t.recents[0].path))}).catch(()=>{}),()=>{e=!0}},[]);async function T(){if(i.trim()){l(!0),h(null),v(!1);try{let t=await(await fetch(`/api/json/adapters/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e.id,projectDir:i})})).json();h(t),t.ok&&(r(),fetch(`/api/json/adapters/recent`).then(e=>e.json()).then(e=>s(e.recents??[])).catch(()=>{}))}catch(t){h({ok:!1,exitCode:-1,adapter:e.id,projectDir:i,stdout:``,stderr:``,error:t instanceof Error?t.message:String(t)})}finally{l(!1)}}}async function E(e){d(!0),p(null);try{let t=await(await fetch(`/api/json/adapters/active`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e})})).json();t.ok?r():p(t.error??`Failed to pin adapter.`)}catch(e){p(e instanceof Error?e.message:String(e))}finally{d(!1)}}let D=c||!i.trim(),O=c?`Connecting…`:i.trim()?`Connect this project`:`Pick a project directory`,ee=u?`Saving…`:e.pinned?`Pinned ✓`:`Set as my agent`,k=u||e.pinned;return(0,K.jsxs)(Ll,{open:!0,onClose:n,title:e.displayName,subtitle:e.vendor,size:`md`,footer:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--secondary`,disabled:D,onClick:()=>void T(),title:"Run `ssg init --client` in the chosen project directory.",children:O}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,disabled:k,onClick:()=>void E(e.id),style:{"--tone":e.accent},title:e.pinned?`Already pinned as your default agent.`:`Pin ${e.displayName} as the default — overrides auto-detection across SSG.`,children:ee})]}),children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-4 mb-4`,children:[(0,K.jsx)(mp,{a:e,size:56}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap mb-1.5`,children:[(0,K.jsx)(hp,{a:e}),e.pinned&&(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 14%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 36%, transparent)`},title:`You pinned this agent as your default.`,children:`Pinned`}),e.healthy&&!e.active&&(0,K.jsx)(`span`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`healthy`})]}),(0,K.jsx)(`p`,{className:`text-[13px] text-[var(--color-fg-1)] leading-relaxed`,children:e.tagline}),e.pinned&&(0,K.jsx)(`button`,{type:`button`,disabled:u,onClick:()=>void E(null),className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] mt-2 cursor-pointer hover:underline`,children:u?`unpinning…`:`unpin & return to auto-detect`}),f&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-hig-red)] mt-2`,children:f})]})]}),(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:`Install target`}),(0,K.jsxs)(`div`,{className:`ss-list mb-4`,children:[(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},onClick:e=>e.preventDefault(),children:(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[12.5px] font-medium text-[var(--color-fg-1)]`,children:`Project directory`}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-0.5 truncate`,children:i.trim()?vp(i,t.home):`Type a path or pick from below.`})]})}),(0,K.jsxs)(`div`,{style:{padding:`10px 14px`,borderTop:`1px solid var(--color-line-0)`},children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{value:i,onChange:e=>a(e.target.value),spellCheck:!1,placeholder:`Click Browse… or paste a path`,className:`flex-1 h-9 px-3 rounded-md text-[12px] font-mono`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-1)`,outline:`none`}}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>void w(),disabled:y,className:`ss-btn ss-btn--secondary`,style:{height:36,padding:`0 14px`,fontSize:12},title:`Open the system folder picker.`,children:y?`Opening…`:`Browse…`})]}),x&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono mt-2`,style:{color:`var(--color-hig-red)`},children:x}),o.length>0&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`Recent`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:o.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>a(e.path),className:`text-[11px] font-mono px-2 py-1 rounded-md cursor-pointer`,style:{background:i===e.path?`color-mix(in oklab, var(--color-brand) 14%, var(--color-surface-2))`:`var(--color-surface-2)`,border:`1px solid ${i===e.path?`color-mix(in oklab, var(--color-brand) 38%, var(--color-line-1))`:`var(--color-line-1)`}`,color:i===e.path?`var(--color-brand)`:`var(--color-fg-1)`},title:e.path,children:vp(e.path,t.home)},e.path))})]})]})]}),(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:`Or run from terminal`}),(0,K.jsxs)(`div`,{className:`ss-list mb-4 p-3 flex items-center gap-2`,style:{padding:`12px 14px`},children:[(0,K.jsxs)(`code`,{className:`flex-1 text-[12px] font-mono text-[var(--color-brand)] overflow-x-auto whitespace-nowrap`,children:[`$ `,C]}),(0,K.jsx)(_p,{text:C})]}),(0,K.jsx)(yp,{agentId:e.id,projectDir:i}),m&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:m.ok?`Setup complete`:`Setup failed`}),(0,K.jsx)(xp,{result:m}),(m.stdout||m.stderr||m.error)&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`button`,{type:`button`,className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] cursor-pointer`,onClick:()=>v(e=>!e),children:g?`▾ Hide full log`:`▸ Show full log`}),g&&(0,K.jsx)(`pre`,{className:`text-[11px] font-mono rounded-md p-3 mt-2 max-h-48 overflow-auto whitespace-pre-wrap break-all`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-2)`},children:m.error?`${m.error}${m.detail?`
33
+ disabled:opacity-40 disabled:cursor-not-allowed`,children:`Run`})]})]})]})]})}function Zf(e,t){let n=new Set([...Object.keys(e),...Object.keys(t)]);for(let r of n)if(e[r]!==t[r])return!1;return!0}function Qf(e,t){let n=new Set([...Object.keys(e),...Object.keys(t)]);for(let r of n){let n=e[r],i=t[r];if(!n||!i||n.enabled!==i.enabled||n.toolGroups.length!==i.toolGroups.length||n.toolGroups.some((e,t)=>e!==i.toolGroups[t]))return!1}return!0}function $f(e,t){let[n,r]=(0,_.useState)(null),[i,a]=(0,_.useState)(null),[o,s]=(0,_.useState)(!0),[c,l]=(0,_.useState)(null),[u,d]=(0,_.useState)(`project`),[f,p]=(0,_.useState)({}),[m,h]=(0,_.useState)({}),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(null),[x,S]=(0,_.useState)(0),C=(0,_.useRef)(null);(0,_.useEffect)(()=>{let n=`${e}:${u}:${x}`,i=C.current!==n;C.current=n;let o=!1,c=setTimeout(()=>{i&&(s(!0),l(null));let n=new URLSearchParams({agent:e,projectDir:t,scope:u});fetch(`/api/json/adapters/toggles?${n.toString()}`).then(async e=>{if(!e.ok)throw Error(`HTTP ${e.status}`);return e.json()}).then(t=>{if(o)return;r(t.catalog);let n=t.resolved[e]??{hooks:{},mcp:{}};a(n),i&&(p({...n.hooks}),h(Object.fromEntries(Object.entries(n.mcp).map(([e,t])=>[e,{...t,toolGroups:[...t.toolGroups]}]))),s(!1))}).catch(e=>{o||i&&(l(e instanceof Error?e.message:String(e)),s(!1))})},i?0:250);return()=>{o=!0,clearTimeout(c)}},[e,t,u,x]);let w=(0,_.useCallback)(()=>S(e=>e+1),[]);return{catalog:n,loading:o,fetchError:c,scope:u,setScope:d,hooks:f,mcp:m,setHook:(0,_.useCallback)((e,t)=>{p(n=>({...n,[e]:t}))},[]),setMcpEnabled:(0,_.useCallback)((e,t)=>{h(n=>({...n,[e]:{...n[e]??{enabled:!0,toolGroups:[`core`]},enabled:t}}))},[]),setMcpToolGroups:(0,_.useCallback)((e,t)=>{h(n=>({...n,[e]:{...n[e]??{enabled:!0,toolGroups:[`core`]},toolGroups:t}}))},[]),hasChanges:i!==null&&(!Zf(f,i.hooks)||!Qf(m,i.mcp)),saving:g,saveError:y,refetch:w,save:(0,_.useCallback)(async()=>{v(!0),b(null);try{let n=await(await fetch(`/api/json/adapters/toggles`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({agent:e,scope:u,projectDir:t,changes:{hooks:f,mcp:m}})})).json();if(!n.ok)b(n.error??`Save failed`);else{let e=n.resolved??{hooks:f,mcp:m};a(e),p({...e.hooks}),h(Object.fromEntries(Object.entries(e.mcp).map(([e,t])=>[e,{...t,toolGroups:[...t.toolGroups]}])))}}catch(e){b(e instanceof Error?e.message:String(e))}finally{v(!1)}},[e,u,t,f,m]),saveAndInstall:(0,_.useCallback)(async(t,n)=>{v(!0),b(null);try{let r=await(await fetch(`/api/json/adapters/toggles`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({agent:e,scope:u,projectDir:t,changes:{hooks:f,mcp:m}})})).json();if(!r.ok){b(r.error??`Save failed`),n?.(!1);return}a(r.resolved??{hooks:f,mcp:m});let i=await(await fetch(`/api/json/adapters/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e,projectDir:t})})).json();i.ok?n?.(!0):(b(i.error??`Install failed`),n?.(!1))}catch(e){b(e instanceof Error?e.message:String(e)),n?.(!1)}finally{v(!1)}},[e,u,t,f,m])}}function ep({groups:e,selected:t,onChange:n,disabled:r}){let i=(0,_.useRef)(null);function a(e){if(t.includes(e)){let r=t.filter(t=>t!==e);if(r.length>0)n(r);else{i.current&&(i.current.textContent=``,requestAnimationFrame(()=>{i.current&&(i.current.textContent=`At least one tool group must remain enabled.`)}));let t=document.getElementById(`chip-${e}`);t&&(t.classList.remove(`chip--shake-deny`),t.offsetWidth,t.classList.add(`chip--shake-deny`),t.addEventListener(`animationend`,()=>t.classList.remove(`chip--shake-deny`),{once:!0}))}}else n([...t,e])}return(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-1.5 mt-1.5`,children:[e.map(e=>{let n=t.includes(e.id);return(0,K.jsx)(`button`,{id:`chip-${e.id}`,type:`button`,disabled:r,"aria-pressed":n,onClick:()=>a(e.id),className:`chip${n?` chip--active`:``}`,children:e.label},e.id)}),(0,K.jsx)(`span`,{ref:i,className:`sr-only`,"aria-live":`polite`,"aria-atomic":`true`})]})}function tp(){return(0,K.jsx)(`div`,{className:`flex flex-col gap-0.5 mb-4`,children:[0,1,2,3].map(e=>(0,K.jsx)(`div`,{className:`shimmer agent-toggles-skeleton-row`},e))})}function np({agentId:e,projectDir:t,onApplied:n}){let{catalog:r,loading:i,fetchError:a,scope:o,setScope:s,hooks:c,mcp:l,setHook:u,setMcpEnabled:d,setMcpToolGroups:f,hasChanges:p,saving:m,saveError:h,saveAndInstall:g,refetch:_}=$f(e,t);if(i)return(0,K.jsx)(tp,{});if(a)return(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 py-1`,children:[(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-hig-red)] font-sans`,children:a}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--ghost`,onClick:()=>_(),children:`Retry`})]});if(!r)return null;let v=r.hookApplicability[e]??[],y=r.mcpApplicability[e]??[],b=v.length>0,x=y.length>0;if(!b&&!x)return(0,K.jsx)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-sans py-1`,children:`No configurable hooks or MCP servers for this agent yet.`});let S=r.hooks.filter(e=>v.includes(e.id)),C=r.mcp.filter(e=>y.includes(e.id)),w=p?S.filter(e=>(c[e.id]??!0)!==!0).length+C.filter(e=>{let t=l[e.id]??{enabled:!0,toolGroups:[`core`]};return!t.enabled||t.toolGroups.join()!==`core`}).length:0;return(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`Scope`}),(0,K.jsx)(`div`,{className:`ss-segment`,role:`tablist`,"aria-label":`Toggle scope`,children:[`project`,`global`].map(e=>(0,K.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":o===e,className:`ss-segment-item`,onClick:()=>s(e),children:e===`project`?`This project`:`Global`},e))}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mt-1.5`,children:o===`project`?`Saves to .sigmashake/agent-toggles.json in this project.`:`Saves to ~/.sigmashake/agent-toggles.json (applies to all projects).`})]}),b&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`Claude Code lifecycle hooks`}),(0,K.jsx)(`div`,{className:`ss-list`,style:{margin:0},children:S.map(e=>{let t=c[e.id]??!0;return(0,K.jsxs)(`div`,{className:`ss-list-row`,style:{gap:12,cursor:`pointer`},onClick:()=>u(e.id,!t),children:[(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`span`,{className:`block text-[12.5px] font-medium text-[var(--color-fg-1)] mb-0.5`,children:e.label}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] m-0`,children:e.description})]}),(0,K.jsx)(fl,{checked:t,onChange:t=>u(e.id,t),disabled:m,label:e.label,size:`sm`})]},e.id)})})]}),x&&(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-widest text-[var(--color-fg-3)] mb-2`,children:`MCP servers`}),(0,K.jsx)(`div`,{className:`ss-list`,style:{margin:0},children:C.map(e=>{let t=l[e.id]??{enabled:!0,toolGroups:[`core`]},n=!t.enabled;return(0,K.jsxs)(`div`,{style:{padding:`10px 14px`,borderBottom:`1px solid var(--color-line-0)`},children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,K.jsx)(`div`,{className:`flex-1 min-w-0`,children:(0,K.jsx)(`span`,{className:`block text-[12.5px] font-medium text-[var(--color-fg-1)] mb-0.5`,children:e.label})}),(0,K.jsx)(fl,{checked:t.enabled,onChange:t=>d(e.id,t),disabled:m,label:e.label,size:`sm`,tone:n?`danger`:`brand`})]}),n&&(0,K.jsxs)(`p`,{className:`ss-list-row-warning`,children:[`Disconnecting will remove `,e.id,` from this agent. Hooks remain unchanged.`]}),t.enabled&&(0,K.jsxs)(`div`,{className:`mt-2`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-3)] mb-0.5`,children:`Tool groups`}),(0,K.jsx)(ep,{groups:e.toolGroups,selected:t.toolGroups,onChange:t=>f(e.id,t),disabled:m})]})]},e.id)})})]}),p&&w>0&&(0,K.jsxs)(`p`,{className:`agent-toggles-pending`,children:[w,` change`,w===1?``:`s`,` pending — click Apply to save.`]}),h&&(0,K.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-hig-red)] font-sans m-0`,children:h}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--ghost`,onClick:()=>void g(t,e=>n?.(e)),children:`Retry`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsxs)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,disabled:m||!p||!t.trim(),onClick:()=>void g(t,e=>n?.(e)),title:t.trim()?p?`Save toggle choices and re-run ssg init to update config files.`:`No changes to apply.`:`Pick a project directory above before applying.`,style:{height:34,padding:`0 16px`,fontSize:12.5,display:`inline-flex`,alignItems:`center`,gap:6},children:[m&&(0,K.jsx)(`span`,{className:`ss-spinner`,"aria-hidden":`true`}),m?`Applying…`:`Apply`]}),!p&&!m&&(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:`no changes`})]})]})}var rp=`http://www.w3.org/2000/svg`;function ip({markup:e,size:t=22}){let n=(0,_.useRef)(null);return(0,_.useEffect)(()=>{let t=n.current;if(!t)return;for(;t.firstChild;)t.removeChild(t.firstChild);let r=`<svg xmlns="${rp}">${e}</svg>`,i=new DOMParser().parseFromString(r,`image/svg+xml`).documentElement;for(let e of Array.from(i.childNodes))t.appendChild(t.ownerDocument.importNode(e,!0))},[e]),(0,K.jsx)(`svg`,{ref:n,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.7`,strokeLinecap:`round`,strokeLinejoin:`round`,width:t,height:t,"aria-hidden":`true`})}function ap({a:e,size:t=40}){return(0,K.jsx)(`div`,{className:`agent-card-icon shrink-0`,style:{width:t,height:t,color:e.accent,background:`color-mix(in oklab, ${e.accent} 16%, var(--color-surface-2))`,borderColor:`color-mix(in oklab, ${e.accent} 38%, var(--color-line-1))`},children:(0,K.jsx)(ip,{markup:e.glyph,size:Math.round(t*.55)})})}function op({a:e}){return e.active?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 16%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 38%, transparent)`},children:`Active`}):e.detected?(0,K.jsxs)(`span`,{className:`agent-badge agent-badge--detected`,children:[(0,K.jsx)(`span`,{className:`agent-badge-dot`}),`Detected`]}):e.recommended?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 12%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 30%, transparent)`},children:`Recommended`}):null}function sp(){return(0,K.jsx)(`svg`,{className:`ss-list-row-chevron`,viewBox:`0 0 16 16`,width:`14`,height:`14`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`,"aria-hidden":`true`,children:(0,K.jsx)(`path`,{d:`M5 3l5 5-5 5`})})}function cp({text:e}){let[t,n]=(0,_.useState)(!1);return(0,K.jsx)(`button`,{type:`button`,onClick:()=>{navigator.clipboard.writeText(e),n(!0),setTimeout(()=>n(!1),1500)},className:`ss-btn ss-btn--secondary`,style:{height:32,padding:`0 12px`,fontSize:12},"aria-label":t?`Copied`:`Copy`,children:t?`Copied ✓`:`Copy`})}function lp(e,t){return t&&e.startsWith(t)?`~`+e.slice(t.length):e}function up({agentId:e,projectDir:t}){let[n,r]=(0,_.useState)(!1);return(0,K.jsxs)(`div`,{style:{border:`1px solid var(--color-line-1)`,borderRadius:10,overflow:`hidden`,marginBottom:16},children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>r(e=>!e),style:{display:`flex`,alignItems:`center`,justifyContent:`space-between`,width:`100%`,padding:`10px 14px`,background:`var(--color-surface-2)`,border:`none`,cursor:`pointer`,textAlign:`left`,gap:8},children:[(0,K.jsx)(`span`,{style:{fontSize:12.5,fontWeight:500,color:`var(--color-fg-1)`},children:`Configure hooks & MCP`}),(0,K.jsx)(`svg`,{viewBox:`0 0 16 16`,width:`13`,height:`13`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,strokeLinejoin:`round`,style:{color:`var(--color-fg-3)`,transform:n?`rotate(90deg)`:`rotate(0deg)`,transition:`transform 0.15s`,flexShrink:0},"aria-hidden":`true`,children:(0,K.jsx)(`path`,{d:`M5 3l5 5-5 5`})})]}),(0,K.jsx)(`div`,{className:`agent-toggles-body`,"data-open":n?`true`:`false`,style:{borderTop:n?`1px solid var(--color-line-1)`:`none`},children:(0,K.jsx)(`div`,{style:{padding:`14px 14px 16px`},children:(0,K.jsx)(np,{agentId:e,projectDir:t})})})]})}function dp({agent:e,ctx:t,onClose:n,onInstalled:r}){let[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)([]),[c,l]=(0,_.useState)(!1),[u,d]=(0,_.useState)(!1),[f,p]=(0,_.useState)(null),[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(!1),[y,b]=(0,_.useState)(!1),[x,S]=(0,_.useState)(null),C=`ssg init --client=${e.id}`;async function w(){b(!0),S(null);try{let e=await(await fetch(`/api/json/pick-dir`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()}})).json();e.ok?a(e.path):e.reason===`user_cancelled`||(e.reason===`no_display`?S(`No graphical session — type the path manually instead.`):e.reason===`no_picker_found`?S("Folder picker not available. Install `zenity` (Linux), or type the path manually."):S(e.error||`Folder picker failed.`))}catch(e){S(e instanceof Error?e.message:String(e))}finally{b(!1)}}(0,_.useEffect)(()=>{let e=!1;return fetch(`/api/json/adapters/recent`).then(e=>e.json()).then(t=>{e||(s(t.recents??[]),!i&&t.recents&&t.recents.length>0&&a(t.recents[0].path))}).catch(()=>{}),()=>{e=!0}},[]);async function T(){if(i.trim()){l(!0),h(null),v(!1);try{let t=await(await fetch(`/api/json/adapters/install`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e.id,projectDir:i})})).json();h(t),t.ok&&(r(),fetch(`/api/json/adapters/recent`).then(e=>e.json()).then(e=>s(e.recents??[])).catch(()=>{}))}catch(t){h({ok:!1,exitCode:-1,adapter:e.id,projectDir:i,stdout:``,stderr:``,error:t instanceof Error?t.message:String(t)})}finally{l(!1)}}}async function E(e){d(!0),p(null);try{let t=await(await fetch(`/api/json/adapters/active`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:e})})).json();t.ok?r():p(t.error??`Failed to pin adapter.`)}catch(e){p(e instanceof Error?e.message:String(e))}finally{d(!1)}}let D=c||!i.trim(),O=c?`Connecting…`:i.trim()?`Connect this project`:`Pick a project directory`,ee=u?`Saving…`:e.pinned?`Pinned ✓`:`Set as my agent`,k=u||e.pinned;return(0,K.jsxs)(jl,{open:!0,onClose:n,title:e.displayName,subtitle:e.vendor,size:`md`,footer:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--secondary`,disabled:D,onClick:()=>void T(),title:"Run `ssg init --client` in the chosen project directory.",children:O}),(0,K.jsx)(`button`,{type:`button`,className:`ss-btn ss-btn--primary`,disabled:k,onClick:()=>void E(e.id),style:{"--tone":e.accent},title:e.pinned?`Already pinned as your default agent.`:`Pin ${e.displayName} as the default — overrides auto-detection across SSG.`,children:ee})]}),children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-4 mb-4`,children:[(0,K.jsx)(ap,{a:e,size:56}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap mb-1.5`,children:[(0,K.jsx)(op,{a:e}),e.pinned&&(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 14%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 36%, transparent)`},title:`You pinned this agent as your default.`,children:`Pinned`}),e.healthy&&!e.active&&(0,K.jsx)(`span`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`healthy`})]}),(0,K.jsx)(`p`,{className:`text-[13px] text-[var(--color-fg-1)] leading-relaxed`,children:e.tagline}),e.pinned&&(0,K.jsx)(`button`,{type:`button`,disabled:u,onClick:()=>void E(null),className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] mt-2 cursor-pointer hover:underline`,children:u?`unpinning…`:`unpin & return to auto-detect`}),f&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-hig-red)] mt-2`,children:f})]})]}),(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:`Install target`}),(0,K.jsxs)(`div`,{className:`ss-list mb-4`,children:[(0,K.jsx)(`div`,{className:`ss-list-row`,style:{cursor:`default`},onClick:e=>e.preventDefault(),children:(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsx)(`p`,{className:`text-[12.5px] font-medium text-[var(--color-fg-1)]`,children:`Project directory`}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-3)] mt-0.5 truncate`,children:i.trim()?lp(i,t.home):`Type a path or pick from below.`})]})}),(0,K.jsxs)(`div`,{style:{padding:`10px 14px`,borderTop:`1px solid var(--color-line-0)`},children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{value:i,onChange:e=>a(e.target.value),spellCheck:!1,placeholder:`Click Browse… or paste a path`,className:`flex-1 h-9 px-3 rounded-md text-[12px] font-mono`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-1)`,outline:`none`}}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>void w(),disabled:y,className:`ss-btn ss-btn--secondary`,style:{height:36,padding:`0 14px`,fontSize:12},title:`Open the system folder picker.`,children:y?`Opening…`:`Browse…`})]}),x&&(0,K.jsx)(`p`,{className:`text-[11px] font-mono mt-2`,style:{color:`var(--color-hig-red)`},children:x}),o.length>0&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:`Recent`}),(0,K.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:o.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>a(e.path),className:`text-[11px] font-mono px-2 py-1 rounded-md cursor-pointer`,style:{background:i===e.path?`color-mix(in oklab, var(--color-brand) 14%, var(--color-surface-2))`:`var(--color-surface-2)`,border:`1px solid ${i===e.path?`color-mix(in oklab, var(--color-brand) 38%, var(--color-line-1))`:`var(--color-line-1)`}`,color:i===e.path?`var(--color-brand)`:`var(--color-fg-1)`},title:e.path,children:lp(e.path,t.home)},e.path))})]})]})]}),(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:`Or run from terminal`}),(0,K.jsxs)(`div`,{className:`ss-list mb-4 p-3 flex items-center gap-2`,style:{padding:`12px 14px`},children:[(0,K.jsxs)(`code`,{className:`flex-1 text-[12px] font-mono text-[var(--color-brand)] overflow-x-auto whitespace-nowrap`,children:[`$ `,C]}),(0,K.jsx)(cp,{text:C})]}),(0,K.jsx)(up,{agentId:e.id,projectDir:i}),m&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,children:m.ok?`Setup complete`:`Setup failed`}),(0,K.jsx)(fp,{result:m}),(m.stdout||m.stderr||m.error)&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`button`,{type:`button`,className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] cursor-pointer`,onClick:()=>v(e=>!e),children:g?`▾ Hide full log`:`▸ Show full log`}),g&&(0,K.jsx)(`pre`,{className:`text-[11px] font-mono rounded-md p-3 mt-2 max-h-48 overflow-auto whitespace-pre-wrap break-all`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-2)`},children:m.error?`${m.error}${m.detail?`
34
34
  `+m.detail:``}`:[m.stdout,m.stderr].filter(Boolean).join(`
35
- `)||`Exit code: ${m.exitCode}`})]})]})]})}function xp({result:e}){return(0,K.jsx)(`ul`,{className:`ss-install-checklist`,children:(e.steps&&e.steps.length>0?e.steps:[{label:e.ok?`Setup complete`:`Setup failed`,status:e.ok?`ok`:`error`,detail:e.error??void 0}]).map((e,t)=>(0,K.jsxs)(`li`,{className:`ss-install-step ss-install-step--${e.status}`,children:[(0,K.jsx)(`span`,{className:`ss-install-step__icon`,"aria-hidden":`true`,children:e.status===`ok`?`✓`:e.status===`error`?`✗`:`–`}),(0,K.jsxs)(`div`,{className:`ss-install-step__body`,children:[(0,K.jsx)(`span`,{className:`ss-install-step__label`,children:e.label}),e.detail&&(0,K.jsx)(`span`,{className:`ss-install-step__detail`,children:e.detail})]})]},t))})}function Sp({a:e,onOpen:t}){return(0,K.jsxs)(`button`,{type:`button`,className:`ss-list-row`,onClick:t,"aria-label":`Open ${e.displayName} details`,children:[(0,K.jsx)(mp,{a:e,size:34}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[13.5px] font-semibold text-[var(--color-fg-0)] truncate`,children:e.displayName}),(0,K.jsx)(hp,{a:e}),e.pinned&&!e.active&&(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 12%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 30%, transparent)`},children:`Pinned`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-0.5`,children:e.vendor})]}),(0,K.jsx)(gp,{})]})}function Cp(){let{data:e,refetch:t}=V(`/api/json/adapters`),[n,r]=(0,_.useState)(`all`),[i,a]=(0,_.useState)(null),o=(0,_.useMemo)(()=>e?n===`detected`?e.adapters.filter(e=>e.detected):n===`available`?e.adapters.filter(e=>!e.detected):e.adapters:[],[e,n]);if(!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading adapters…`});let s=e.adapters.find(e=>e.active),c=e.adapters.filter(e=>e.detected).length,l=i?e.adapters.find(e=>e.id===i):null;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl p-5 relative overflow-hidden`,style:{border:`1px solid var(--color-line-1)`,background:s?`linear-gradient(180deg, color-mix(in oklab, ${s.accent} 14%, transparent) 0%, transparent 70%), var(--color-surface-1)`:`var(--color-surface-1)`,boxShadow:s?`0 0 0 1px color-mix(in oklab, ${s.accent} 30%, transparent), 0 18px 40px color-mix(in oklab, ${s.accent} 14%, transparent)`:void 0},children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:12},children:`Connected agent`}),s?(0,K.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,K.jsx)(mp,{a:s,size:56}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`h2`,{className:`text-[18px] font-semibold text-[var(--color-fg-0)] tracking-tight`,children:s.displayName}),(0,K.jsx)(hp,{a:s}),s.pinned?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:s.accent,background:`color-mix(in oklab, ${s.accent} 14%, transparent)`,borderColor:`color-mix(in oklab, ${s.accent} 36%, transparent)`},title:`You pinned this agent as your default — auto-detection is overridden.`,children:`Pinned`}):(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:`var(--color-fg-3)`,background:`var(--color-surface-2)`,borderColor:`var(--color-line-1)`},title:`SSG auto-detected this agent from process env and filesystem markers.`,children:`Auto-detected`})]}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-0.5`,children:s.vendor}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-2 leading-relaxed`,children:s.pinned?`Pinned as your default agent — SSG will treat every tool call as ${s.displayName} regardless of auto-detection.`:s.id===`generic`?`No specific AI client detected — falling back to the generic adapter. Pick the agent you actually use and hit "Set as my agent" to override.`:s.healthy?`Auto-detected from process environment. If this isn't the agent you actually use, tap any other row and hit "Set as my agent" to pin it.`:`Forced via SSG_CLIENT — adapter is in use but its config dir is missing or incomplete.`}),s.pinned&&(0,K.jsx)(`button`,{type:`button`,onClick:()=>{fetch(`/api/json/adapters/active`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:null})}).then(()=>t())},className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] mt-3 cursor-pointer hover:underline`,children:`↺ reset to auto-detect`})]})]}):(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-2)]`,children:`No active adapter resolved.`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:0},children:[`All supported agents · `,e.adapters.length]}),(0,K.jsx)(`div`,{className:`ss-segment`,role:`tablist`,"aria-label":`Filter`,children:[`all`,`detected`,`available`].map(e=>(0,K.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":n===e,className:`ss-segment-item`,onClick:()=>r(e),children:e===`all`?`All`:e===`detected`?`Detected${c>0?` · ${c}`:``}`:`Available`},e))})]}),o.length>0?(0,K.jsx)(`div`,{className:`ss-list`,children:o.map(e=>(0,K.jsx)(Sp,{a:e,onOpen:()=>a(e.id)},e.id))}):(0,K.jsx)(`div`,{className:`rounded-2xl p-8 text-center`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] font-mono`,children:`no agents match this filter`})}),(0,K.jsx)(`div`,{className:`rounded-xl p-4`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:[`SSG picks the active adapter at runtime — either from`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`SSG_CLIENT`}),` `,`or by auto-detecting your tool. Tap any agent to wire it into a project from the dashboard, or copy the`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg init`}),` command and run it yourself.`]})}),(0,K.jsx)(wp,{ctx:e.context,adapters:e.adapters}),(0,K.jsx)(Ep,{}),l&&(0,K.jsx)(bp,{agent:l,ctx:e.context,onClose:()=>a(null),onInstalled:()=>t()})]})}function wp({ctx:e,adapters:t}){let{data:n}=V(`/api/json/adapters/recent`),r=t.find(e=>e.active)??null,i=t.filter(e=>e.detected);return(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid var(--color-line-1)`,background:`var(--color-surface-1)`},children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold tracking-tight text-[var(--color-fg-0)]`,children:`How SigmaShake is connected`}),(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:`Overview`})]}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] leading-relaxed mb-4`,children:`Each AI agent on your machine has its own config file. SigmaShake adds a small hook to those files so it sees every tool call before it runs.`}),(0,K.jsxs)(`ul`,{className:`space-y-2`,children:[(0,K.jsx)(Tp,{label:`Daemon`,status:`on`,detail:`Running — watching tool calls in real time.`}),(0,K.jsx)(Tp,{label:`Active AI agent`,status:r?`on`:`off`,detail:r?`${r.displayName} (${r.vendor})`:`Nothing detected yet — install an adapter below.`}),(0,K.jsx)(Tp,{label:`Wired-in agents`,status:i.length>0?`on`:`off`,detail:i.length>0?i.map(e=>e.displayName).join(`, `):`No agents wired in yet.`})]}),n?.recents&&n.recents.length>0&&(0,K.jsxs)(`div`,{className:`mt-5`,children:[(0,K.jsxs)(`p`,{className:`text-[11px] uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:[`Projects connected (`,n.recents.length,`)`]}),(0,K.jsx)(`ul`,{className:`space-y-1.5`,children:n.recents.map(t=>(0,K.jsxs)(`li`,{className:`flex items-center gap-3 rounded-lg px-3 py-2 text-[12px]`,style:{background:`var(--color-surface-2)`,border:`0.5px solid var(--color-line-1)`},children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:`var(--color-hig-green)`}}),(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-1)] truncate flex-1 min-w-0`,children:vp(t.path,e.home)}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)] shrink-0`,children:new Date(t.lastUsed).toLocaleDateString(void 0,{month:`short`,day:`numeric`})})]},t.path))})]})]})}function Tp({label:e,status:t,detail:n}){return(0,K.jsxs)(`li`,{className:`flex items-center gap-3 rounded-lg px-3 py-2`,style:{background:`var(--color-surface-2)`,border:`0.5px solid var(--color-line-1)`},children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:t===`on`?`var(--color-hig-green)`:`var(--color-fg-4)`,boxShadow:t===`on`?`0 0 0 3px color-mix(in oklab, var(--color-hig-green) 22%, transparent)`:void 0}}),(0,K.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--color-fg-0)] w-32 shrink-0`,children:e}),(0,K.jsx)(`span`,{className:`text-[12px] text-[var(--color-fg-2)] flex-1 min-w-0 truncate`,children:n})]})}function Ep(){let[e,t]=(0,_.useState)(!1),[n,r]=(0,_.useState)(!0),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null);async function c(){a(!0),s(null);try{s(await(await fetch(`/api/json/uninstall-everything`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({keepData:n})})).json())}catch(e){s({ok:!1,error:`Could not reach SigmaShake`,detail:e instanceof Error?e.message:String(e)})}finally{a(!1)}}return(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid color-mix(in oklab, var(--color-hig-red) 28%, var(--color-line-1))`,background:`linear-gradient(180deg, color-mix(in oklab, var(--color-hig-red) 6%, transparent) 0%, transparent 100%), var(--color-surface-1)`},children:[(0,K.jsx)(`div`,{className:`flex items-baseline justify-between gap-3 flex-wrap`,children:(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold tracking-tight text-[var(--color-fg-0)]`,children:`Uninstall SigmaShake`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] leading-relaxed mt-1`,children:[`Removes the SigmaShake hook from every AI-agent config file on this machine and stops the daemon.`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`The`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg`}),` binary itself stays installed — remove it with your package manager.`]})]})]})}),!e&&!o&&(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(!0),className:`mt-4 text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors`,style:{color:`var(--color-hig-red)`,border:`1px solid color-mix(in oklab, var(--color-hig-red) 40%, transparent)`,background:`color-mix(in oklab, var(--color-hig-red) 8%, transparent)`},children:`Uninstall SigmaShake everywhere…`}),e&&!o&&(0,K.jsxs)(`div`,{className:`mt-4 space-y-3`,children:[(0,K.jsxs)(`label`,{className:`flex items-start gap-2 text-[12px] text-[var(--color-fg-1)] cursor-pointer`,children:[(0,K.jsx)(`input`,{type:`checkbox`,checked:n,onChange:e=>r(e.target.checked),className:`mt-0.5`}),(0,K.jsxs)(`span`,{children:[`Keep my activity history and license`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`(~/.sigmashake/). Uncheck to wipe everything.`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>void c(),disabled:i,className:`text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors disabled:opacity-50 disabled:cursor-not-allowed`,style:{color:`white`,background:`var(--color-hig-red)`},children:i?`Uninstalling…`:`Yes — uninstall everywhere`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(!1),disabled:i,className:`text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors`,style:{color:`var(--color-fg-1)`,background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`},children:`Cancel`})]})]}),o&&(0,K.jsxs)(`div`,{className:`mt-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`rounded-lg px-4 py-3`,style:{border:`1px solid ${o.ok?`color-mix(in oklab, var(--color-hig-green) 38%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 38%, transparent)`}`,background:o.ok?`color-mix(in oklab, var(--color-hig-green) 6%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 6%, transparent)`},children:[(0,K.jsx)(`p`,{className:`text-[13px] font-semibold`,style:{color:o.ok?`var(--color-hig-green)`:`var(--color-hig-red)`},children:o.ok?`SigmaShake has been removed from this machine`:`Uninstall failed`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mt-1 leading-relaxed`,children:o.ok?(0,K.jsxs)(K.Fragment,{children:[`Hooks were stripped from every AI-agent config file. The daemon has stopped.`,o.packageManagerHint&&(0,K.jsxs)(K.Fragment,{children:[` `,`To also remove the`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg`}),` `,`binary, run:`,(0,K.jsx)(`code`,{className:`block mt-2 px-2 py-1.5 rounded bg-[var(--color-surface-2)] text-[var(--color-brand)] text-[11.5px] font-mono`,children:o.packageManagerHint})]})]}):(0,K.jsxs)(K.Fragment,{children:[o.error??`Unknown error.`,` `,o.detail&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:o.detail})]})})]}),(o.stdout||o.stderr)&&(0,K.jsxs)(`details`,{children:[(0,K.jsx)(`summary`,{className:`text-[11px] text-[var(--color-fg-3)] cursor-pointer hover:text-[var(--color-fg-1)]`,children:`Show full log`}),(0,K.jsx)(`pre`,{className:`text-[11px] font-mono rounded-md p-3 mt-2 max-h-48 overflow-auto whitespace-pre-wrap break-all`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-2)`},children:[o.stdout,o.stderr].filter(Boolean).join(`
36
- `)})]}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>{s(null),t(!1)},className:`text-[11.5px] text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer`,children:`↺ Close`})]})]})}function Dp(){return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`Notifications`}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:`Things that need your attention — rule drift, audit log capacity, daemon health, noisy rules. We update this list whenever something changes.`})]}),(0,K.jsx)(Js,{showEmptyState:!0,hideHeader:!0})]})}function Op({status:e,className:t=``}){return(0,K.jsx)(`span`,{className:`status-dot ${e===`ok`?`bg-[var(--color-decision-allow)]`:e===`warn`?`bg-[var(--color-decision-ask)]`:e===`fail`?`bg-[var(--color-decision-block)]`:`bg-[var(--color-fg-3)]`} ${t}`})}function kp({status:e}){let t=e===`ok`?`text-[var(--color-decision-allow)]`:e===`warn`?`text-[var(--color-decision-ask)]`:e===`fail`?`text-[var(--color-decision-block)]`:`text-[var(--color-fg-3)]`,n=e===`ok`?`OK`:e===`warn`?`Warn`:e===`fail`?`Fail`:`Skipped`;return(0,K.jsx)(`span`,{className:`text-[10.5px] font-medium uppercase tracking-wide ${t}`,children:n})}function Ap(e){return e===void 0?``:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function jp(e){if(!e)return``;let t=Math.floor((Date.now()-e)/1e3);return t<60?`${t}s ago`:t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}function Mp(e,t){return t&&e.startsWith(t+`/`)?`~/`+e.slice(t.length+1):e===t?`~`:e}function Np({file:e,home:t,wired:n}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1 border-b border-[var(--color-line-0)] last:border-0 text-[11.5px]`,children:[(0,K.jsx)(Op,{status:e.exists?n===void 0||n?`ok`:`warn`:`skip`}),(0,K.jsx)(`code`,{className:`flex-1 truncate text-[var(--color-fg-1)]`,title:e.path,children:Mp(e.path,t)}),e.exists?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:Ap(e.size)}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)] min-w-[60px] text-right`,children:jp(e.modified_at)}),n===!1&&(0,K.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-wide text-[var(--color-decision-ask)]`,title:`File exists but does not appear to contain SSG wiring`,children:`no ssg`}),n===!0&&(0,K.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-wide text-[var(--color-decision-allow)]`,title:`File contains SSG hook / MCP entries`,children:`wired`})]}):(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:`missing`})]})}function Pp({title:e,status:t,children:n,hint:r}){return(0,K.jsxs)(`section`,{className:`hig-card hig-card-padded`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsxs)(`h2`,{className:`text-[13px] font-semibold text-[var(--color-fg-0)] flex items-center gap-2`,children:[t!==void 0&&(0,K.jsx)(Op,{status:t}),e]}),r&&(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:r})]}),(0,K.jsx)(`div`,{children:n})]})}function Fp({k:e,v:t,mono:n=!1}){return(0,K.jsxs)(`div`,{className:`flex items-baseline gap-3 py-1 text-[11.5px] border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] min-w-[110px]`,children:e}),(0,K.jsx)(`span`,{className:`flex-1 text-[var(--color-fg-1)] ${n?`font-mono text-[11px]`:``}`,children:t})]})}var Ip={"claude-code":`Claude Code`,cursor:`Cursor`,codex:`Codex CLI`,pi:`Pi Agent`,gemini:`Gemini CLI`,antigravity:`Antigravity`,copilot:`GitHub Copilot`};function Lp({adapter:e,home:t}){let n=Ip[e.id]??e.id,r=e.artifacts.filter(e=>e.exists&&e.ssg_wired).length,i=e.artifacts.filter(e=>e.exists).length;return(0,K.jsxs)(`div`,{className:`rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Op,{status:e.status}),(0,K.jsx)(`span`,{className:`text-[12.5px] font-semibold text-[var(--color-fg-0)]`,children:n}),e.active&&(0,K.jsx)(`span`,{className:`text-[9.5px] font-semibold uppercase tracking-wider px-1.5 py-0.5 rounded-sm text-[var(--color-hig-blue)] bg-[color-mix(in_oklab,var(--color-hig-blue)_14%,transparent)]`,title:`This is the adapter ssg is currently using at runtime`,children:`Active`})]}),(0,K.jsxs)(`span`,{className:`text-[10px] text-[var(--color-fg-3)]`,children:[r,`/`,e.artifacts.length,` wired`]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2 mb-2 text-[10.5px]`,children:[(0,K.jsx)(`span`,{className:e.detected?`text-[var(--color-decision-allow)]`:`text-[var(--color-fg-3)]`,children:e.detected?`● detected`:`○ not detected`}),(0,K.jsx)(`span`,{className:e.healthy?`text-[var(--color-decision-allow)]`:`text-[var(--color-fg-3)]`,children:e.healthy?`● binary healthy`:`○ binary missing`}),i===0&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`○ no config files on disk`})]}),e.artifacts.length>0&&(0,K.jsx)(`div`,{className:`border-t border-[var(--color-line-0)] pt-1`,children:e.artifacts.map(e=>(0,K.jsx)(Np,{file:e,home:t,wired:e.exists?e.ssg_wired:void 0},e.path))}),e.status===`warn`&&i===0&&(0,K.jsxs)(`div`,{className:`mt-2 text-[10.5px] text-[var(--color-fg-3)]`,children:[`Wire it up with:`,` `,(0,K.jsxs)(`code`,{className:`font-mono text-[var(--color-fg-1)]`,children:[`ssg init --client=`,e.id]})]})]})}function Rp(){let{data:e,loading:t,error:n,refetch:r}=V(`/api/json/setup-status`);if(t&&!e)return(0,K.jsx)(`div`,{className:`py-12 text-center text-[var(--color-fg-3)] text-[12px]`,children:`Reading setup status…`});if(n||!e)return(0,K.jsxs)(`div`,{className:`hig-card hig-card-padded text-[12px]`,children:[(0,K.jsxs)(`p`,{className:`text-[var(--color-decision-block)] mb-2`,children:[`Could not load /api/json/setup-status: `,n??`no response`]}),(0,K.jsx)(`button`,{onClick:r,className:`hig-button hig-button-small`,children:`Retry`})]});let{summary:i,license:a,daemon:o,dashboard:s,native:c,db:l,mcp:u,rules:d,init_files:f,adapters:p,hub:m,checks:h,home:g,cwd:_}=e;return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-end justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`Setup Status`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:[`What `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg init`}),` wrote and whether every piece is wired up — license, hooks, MCP, native engine, daemon, rules, and hub packages.`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:[`ssg v`,e.version]}),(0,K.jsx)(`button`,{onClick:r,className:`hig-button hig-button-small`,children:`Refresh`})]})]}),(0,K.jsxs)(`section`,{className:`hig-card hig-card-padded flex items-center gap-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Op,{status:i.overall,className:`!w-3 !h-3`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-[11px] uppercase tracking-wide text-[var(--color-fg-3)]`,children:`Overall`}),(0,K.jsx)(`div`,{className:`text-[14px] font-semibold text-[var(--color-fg-0)]`,children:i.overall===`ok`?`Healthy`:i.overall===`warn`?`Needs attention`:i.overall===`fail`?`Broken`:`Skipped`})]})]}),(0,K.jsxs)(`div`,{className:`flex gap-4 text-[12px]`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-allow)]`,children:[`● `,i.ok,` ok`]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-ask)]`,children:[`● `,i.warn,` warn`]}),i.fail>0&&(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-block)]`,children:[`● `,i.fail,` fail`]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`○ `,i.skip,` skipped`]})]}),(0,K.jsxs)(`div`,{className:`ml-auto text-right`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)]`,children:`Working dir`}),(0,K.jsx)(`code`,{className:`text-[11px] text-[var(--color-fg-1)]`,title:_,children:Mp(_,g)})]})]}),(0,K.jsx)(Pp,{title:`Checks`,hint:`${h.length} probes`,children:(0,K.jsx)(`div`,{children:h.map(e=>(0,K.jsxs)(`div`,{className:`flex items-start gap-3 py-1.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(Op,{status:e.status,className:`mt-1`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--color-fg-0)]`,children:e.name}),(0,K.jsx)(kp,{status:e.status})]}),(0,K.jsx)(`div`,{className:`text-[11px] text-[var(--color-fg-2)] mt-0.5 break-words`,children:e.detail}),e.fix&&(0,K.jsxs)(`div`,{className:`text-[11px] text-[var(--color-hig-blue)] font-mono mt-0.5`,children:[`→ `,e.fix]})]})]},e.name))})}),(0,K.jsxs)(Pp,{title:`License & authentication`,status:a.status===`healthy`||a.status===`healthy_free`?`ok`:`warn`,children:[(0,K.jsx)(Fp,{k:`Tier`,v:a.tier_label}),(0,K.jsx)(Fp,{k:`Status`,v:a.status}),(0,K.jsx)(Fp,{k:`Account`,v:a.email??`—`}),(0,K.jsx)(Fp,{k:`Auth method`,v:a.auth_method??`—`}),(0,K.jsx)(Fp,{k:`Evals today`,v:a.eval_daily_limit===null?`${a.evals_today.toLocaleString()} (unlimited)`:`${a.evals_today.toLocaleString()} / ${a.eval_daily_limit.toLocaleString()}`}),(0,K.jsxs)(`div`,{className:`mt-2 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] mb-1`,children:`Credential files`}),(0,K.jsx)(Np,{file:a.license_file,home:g}),(0,K.jsx)(Np,{file:a.hosts_file,home:g})]})]}),(0,K.jsxs)(Pp,{title:`Runtime processes`,status:o.alive&&s.alive?`ok`:`warn`,children:[(0,K.jsx)(Fp,{k:`Daemon (evald)`,v:o.alive?`running — PID ${o.pid}`:o.pid?`stale — PID ${o.pid} in pidfile but process gone`:`not running`}),(0,K.jsx)(Fp,{k:`Daemon socket`,v:o.socket_exists?`present`:`missing`,mono:!0}),(0,K.jsx)(Fp,{k:`Dashboard (serve)`,v:s.alive?`running — PID ${s.pid}`:`not running`}),(0,K.jsx)(Fp,{k:`Native engine`,v:c.available?`loaded — sub-ms eval available`:`unavailable — TypeScript fallback`})]}),(0,K.jsxs)(Pp,{title:`Database & MCP`,status:l.status,children:[(0,K.jsx)(Fp,{k:`Rules in DB`,v:l.rules.toLocaleString()}),(0,K.jsx)(Fp,{k:`Audit log rows`,v:l.audit_rows.toLocaleString()}),(0,K.jsx)(Fp,{k:`DB path`,v:Mp(l.path,g),mono:!0}),(0,K.jsxs)(`div`,{className:`mt-2 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] mb-1`,children:`MCP server`}),(0,K.jsx)(Fp,{k:`Status`,v:u.status===`active`?`active — ${u.recent_5min.toLocaleString()} calls in last 5 min`:u.status===`configured`?`configured — ${u.total.toLocaleString()} historical calls, none recent`:`no MCP traffic recorded yet`}),(0,K.jsx)(Fp,{k:`All-time calls`,v:u.total.toLocaleString()})]})]}),(0,K.jsxs)(Pp,{title:`Rules directories`,status:d.local_count>0?`ok`:`warn`,children:[(0,K.jsx)(Fp,{k:`Local`,v:`${d.local_count} .rules file${d.local_count===1?``:`s`}`}),(0,K.jsx)(Fp,{k:`Local path`,v:Mp(d.local_dir,g),mono:!0}),(0,K.jsx)(Fp,{k:`Global`,v:`${d.global_count} .rules file${d.global_count===1?``:`s`}`}),(0,K.jsx)(Fp,{k:`Global path`,v:Mp(d.global_dir,g),mono:!0})]}),(0,K.jsx)(Pp,{title:`Project init files`,hint:`${f.filter(e=>e.exists).length}/${f.length} present`,children:(0,K.jsx)(`div`,{children:f.map(e=>(0,K.jsx)(Np,{file:e,home:g},e.path))})}),(0,K.jsx)(Pp,{title:`Adapters, hooks & MCP files`,hint:e.active_adapter?`Active: ${Ip[e.active_adapter]??e.active_adapter}`:`No active adapter`,children:(0,K.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-1 lg:grid-cols-2`,children:p.map(e=>(0,K.jsx)(Lp,{adapter:e,home:g},e.id))})}),(0,K.jsxs)(Pp,{title:`Hub-installed rulesets`,status:m.installs.length===0?`skip`:m.drift===0?`ok`:`warn`,hint:m.installs.length===0?`none installed`:`${m.in_sync} in sync${m.drift>0?`, ${m.drift} drift`:``}`,children:[(0,K.jsx)(Np,{file:m.pins_file,home:g}),m.installs.length===0?(0,K.jsxs)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)] mt-2`,children:[`Install rulesets from the Hub tab. Each install is recorded per project path in `,(0,K.jsx)(`code`,{className:`font-mono`,children:`hub-pins.json`}),`.`]}):(0,K.jsx)(`div`,{className:`mt-2 space-y-2`,children:m.installs.map((e,t)=>(0,K.jsxs)(`div`,{className:`rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-2 text-[11.5px]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(Op,{status:e.in_sync?`ok`:`warn`}),(0,K.jsx)(`span`,{className:`font-semibold text-[var(--color-fg-0)]`,children:e.id}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:e.version}),(0,K.jsx)(`span`,{className:`ml-auto text-[10.5px] text-[var(--color-fg-3)]`,children:jp(e.installed_at)})]}),(0,K.jsx)(`code`,{className:`block truncate text-[11px] text-[var(--color-fg-2)]`,title:e.path,children:Mp(e.path,g)}),e.files.length>0&&(0,K.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-1`,children:e.files.map(e=>(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-2)] bg-[var(--color-surface-2)] border border-[var(--color-line-0)] rounded-sm px-1.5 py-0.5`,children:e},e))}),!e.in_sync&&e.drift_reason&&(0,K.jsxs)(`div`,{className:`mt-1 text-[10.5px] text-[var(--color-decision-ask)]`,children:[`Drift: `,e.drift_reason]})]},`${e.id}-${e.path}-${t}`))})]})]})}var zp=[{value:`issue`,label:`Bug / Issue`,hint:`Something is broken`},{value:`feature_request`,label:`Feature Request`,hint:`Suggest an improvement`},{value:`question`,label:`Question`,hint:`How does X work?`},{value:`incident`,label:`Incident`,hint:`Urgent outage or data concern`}],Bp=[{value:`p4`,label:`P4 — Low`},{value:`p3`,label:`P3 — Normal`},{value:`p2`,label:`P2 — High (4h SLA)`},{value:`p1`,label:`P1 — Critical (1h SLA)`}],Vp=5,Hp=8*1024*1024;function Up(){let[e,t]=(0,_.useState)(`issue`),[n,r]=(0,_.useState)(`p3`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([]),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(null),[y,b]=(0,_.useState)(!1),[x,S]=(0,_.useState)(``),C=(0,_.useRef)(null);(0,_.useEffect)(()=>{fetch(`/api/json/profile`,{headers:B()}).then(e=>e.ok?e.json():null).then(e=>{e?.email&&l(e.email)}).catch(()=>{})},[]),(0,_.useEffect)(()=>{!y||g||fetch(`/api/support/diagnostics?route=${encodeURIComponent(window.location.pathname)}`).then(e=>e.ok?e.json():null).then(e=>v(e)).catch(()=>{})},[y,g]),(0,_.useEffect)(()=>{let e=new URL(window.location.href),n=e.searchParams.get(`error`),r=e.searchParams.get(`from`);if(n||r){t(`issue`);let e=r?`Page: ${r}\n\n`:``,i=n?`Error: ${n}\n\n`:``;s(t=>t||`${e}${i}`)}},[]);function w(e){e.preventDefault(),E(Array.from(e.dataTransfer.files))}function T(e){E(Array.from(e.target.files??[])),C.current&&(C.current.value=``)}function E(e){S(``);let t=e.filter(e=>e.type.startsWith(`image/`));t.length<e.length&&S(`Only image files are accepted.`);let n=Vp-u.length,r=t.slice(0,n);r.length<t.length&&S(`Maximum ${Vp} images. Some were dropped.`);let i=r.filter(e=>e.size>Hp);if(i.length>0){S(`"${i[0].name}" exceeds 8 MiB.`);return}let a=r.map(e=>({file:e,preview:URL.createObjectURL(e)}));d(e=>[...e,...a])}function D(e){d(t=>(URL.revokeObjectURL(t[e].preview),t.filter((t,n)=>n!==e)))}async function O(t){t.preventDefault(),p(!0),h(null);let r=new FormData;r.append(`category`,e),r.append(`severity`,n),r.append(`subject`,i.trim()),r.append(`description`,o.trim()),r.append(`contact_email`,c.trim()),r.append(`route`,window.location.pathname);for(let{file:e}of u)r.append(`images`,e,e.name);try{let e=await(await fetch(`/api/support/feedback`,{method:`POST`,headers:B(),body:r})).json();h(e),e.ok&&(a(``),s(``),d([]))}catch(e){h({ok:!1,error:e instanceof Error?e.message:`Network error`})}finally{p(!1)}}return(0,K.jsxs)(`div`,{className:`max-w-2xl mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Support & Feedback`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`report a bug, request a feature, or ask a question`})]}),m?.ok?(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`space-y-3 py-2`,children:[(0,K.jsxs)(`p`,{className:`text-sm text-emerald-400 font-mono`,children:[`✓ `,m.message??`Ticket created.`]}),m.ticket_id&&(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-mono`,children:[`Ticket ID: `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:m.ticket_id})]}),(0,K.jsx)(`button`,{className:`text-[12px] text-[var(--color-brand)] hover:underline font-mono`,onClick:()=>h(null),children:`Submit another`})]})})}):(0,K.jsxs)(`form`,{onSubmit:O,className:`space-y-4`,children:[(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`label`,{className:`block overline mb-2`,children:`type`}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:zp.map(n=>(0,K.jsxs)(`button`,{type:`button`,onClick:()=>t(n.value),className:`text-left px-3 py-2 rounded-sm border text-xs font-mono transition-colors ${e===n.value?`border-[var(--color-brand)]/50 bg-[var(--color-brand)]/10 text-[var(--color-fg-0)]`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:border-[var(--color-line-0)]`}`,children:[(0,K.jsx)(`span`,{className:`block font-medium text-[var(--color-fg-1)]`,children:n.label}),(0,K.jsx)(`span`,{className:`block text-[11px] mt-0.5`,children:n.hint})]},n.value))})]})}),e===`incident`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`label`,{className:`block overline mb-2`,children:`severity`}),(0,K.jsx)(`div`,{className:`flex gap-2 flex-wrap`,children:Bp.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>r(e.value),className:`px-3 py-1.5 rounded-sm border text-xs font-mono transition-colors ${n===e.value?`border-[var(--color-brand)]/50 bg-[var(--color-brand)]/10 text-[var(--color-fg-0)]`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:border-[var(--color-line-0)]`}`,children:e.label},e.value))})]})}),(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`subject`}),(0,K.jsx)(`input`,{type:`text`,value:i,onChange:e=>a(e.target.value),placeholder:`Short summary (required)`,maxLength:200,required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`description`}),(0,K.jsx)(`textarea`,{value:o,onChange:e=>s(e.target.value),placeholder:`Describe the issue in detail (10–10000 characters)`,minLength:10,maxLength:1e4,required:!0,rows:6,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono resize-y`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`contact email`}),(0,K.jsx)(`input`,{type:`email`,value:c,onChange:e=>l(e.target.value),placeholder:`your@email.com`,required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]})]})})}),(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsxs)(`label`,{className:`block overline mb-2`,children:[`screenshots / attachments`,` `,(0,K.jsxs)(`span`,{className:`normal-case text-[var(--color-fg-4)] font-mono font-normal`,children:[`(optional, up to `,Vp,` images)`]})]}),u.length<Vp&&(0,K.jsxs)(`div`,{onDragOver:e=>e.preventDefault(),onDrop:w,onClick:()=>C.current?.click(),className:`border border-dashed border-[var(--color-line-1)] rounded-sm p-6 text-center cursor-pointer hover:border-[var(--color-brand)]/50 transition-colors`,children:[(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-mono`,children:[`drag & drop images, or`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-brand)]`,children:`click to browse`})]}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] mt-1 font-mono`,children:`PNG · JPEG · WebP · GIF · HEIC — max 8 MiB each`})]}),(0,K.jsx)(`input`,{ref:C,type:`file`,accept:`image/*`,multiple:!0,className:`hidden`,onChange:T}),x&&(0,K.jsx)(`p`,{className:`text-xs text-red-400 font-mono mt-2`,children:x}),u.length>0&&(0,K.jsx)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:u.map((e,t)=>(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsx)(`img`,{src:e.preview,alt:e.file.name,className:`h-20 w-20 object-cover rounded-sm border border-[var(--color-line-1)]`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>D(t),className:`absolute -top-1.5 -right-1.5 w-5 h-5 rounded-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:text-red-400 text-[10px] font-mono flex items-center justify-center`,title:`Remove`,children:`✕`}),(0,K.jsx)(`p`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] mt-0.5 max-w-[80px] truncate`,children:e.file.name})]},t))})]})}),(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] overflow-hidden`,children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>b(e=>!e),className:`w-full flex items-center justify-between px-3 py-2 text-xs font-mono text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] bg-[var(--color-surface-0)] transition-colors`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`diagnostics that will be attached`}),(0,K.jsx)(`span`,{children:y?`▲`:`▼`})]}),y&&(0,K.jsx)(`div`,{className:`px-3 py-2 bg-[var(--color-surface-0)] border-t border-[var(--color-line-1)] max-h-64 overflow-auto`,children:g?(0,K.jsx)(`pre`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] whitespace-pre-wrap break-all`,children:JSON.stringify(g,null,2)}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`Loading…`})})]}),m&&!m.ok&&(0,K.jsx)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/5 px-3 py-2 text-xs text-red-300 font-mono`,children:m.error??`Submission failed. Please try again.`}),(0,K.jsx)(X,{type:`submit`,variant:`primary`,disabled:f,children:f?`submitting…`:`submit feedback`})]})]})}var Wp=`ssg-dashboard-tabs`,Gp=2e3,Kp=6e3;function qp(){return`tab-${Date.now()}-${Math.random().toString(36).slice(2,7)}`}function Jp(){let[e,t]=(0,_.useState)(0),[n,r]=(0,_.useState)(!0),i=(0,_.useRef)(qp()),a=(0,_.useRef)(new Map);return(0,_.useEffect)(()=>{if(typeof BroadcastChannel>`u`)return;let e=new BroadcastChannel(Wp);function n(){let e=Date.now();for(let[t,n]of a.current.entries())e-n>Kp&&a.current.delete(t);let n=a.current.size;t(n),r([...a.current.keys(),i.current].sort()[0]===i.current)}function o(e){let t=e.data;!t||t.id===i.current||(t.type===`leave`?a.current.delete(t.id):a.current.set(t.id,Date.now()),n())}e.addEventListener(`message`,o),e.postMessage({type:`join`,id:i.current});let s=setInterval(()=>{e.postMessage({type:`heartbeat`,id:i.current}),n()},Gp),c=()=>{e.postMessage({type:`leave`,id:i.current})};return window.addEventListener(`beforeunload`,c),()=>{clearInterval(s),e.postMessage({type:`leave`,id:i.current}),e.removeEventListener(`message`,o),e.close(),window.removeEventListener(`beforeunload`,c)}},[]),{otherTabCount:e,isLeader:n}}var Yp=b;function Xp(){(0,_.useEffect)(()=>Ce([]),[]);let e=(0,_.useSyncExternalStore)(he,ge),[,t]=(0,_.useState)(0);(0,_.useEffect)(()=>{if(e.connected||e.lastErrorAt===null)return;let n=setInterval(()=>t(e=>e+1),1e3);return()=>clearInterval(n)},[e.connected,e.lastErrorAt]);let n=Zp(e),r=n===`reconnecting`&&e.lastErrorAt!==null?Math.max(0,Math.ceil((e.lastErrorAt+e.reconnectDelayMs-Date.now())/1e3)):null,i=Math.round(Yp/1e3);if(n===`connected`)return(0,K.jsxs)(`div`,{className:`chip`,title:`Telemetry Live — SSE connected`,"data-testid":`sse-status-chip`,"data-state":`connected`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-[var(--color-decision-allow)]`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`Live`})]});let a=n===`reconnecting`,o=a?{color:`var(--color-hig-orange)`,background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`}:{color:`var(--color-hig-red)`,background:`color-mix(in oklab, var(--color-hig-red) 14%, transparent)`},s=a?`bg-[var(--color-hig-orange)]`:`bg-[var(--color-hig-red)]`,c=a?r===null?`Reconnecting`:`Reconnect ${r}s`:`Offline`,l=`Live paused · ${i}s poll`;return(0,K.jsxs)(`div`,{className:`chip`,style:o,title:a?`Live stream down — reconnect in ${r??`…`}s (attempt ${e.reconnectAttempts}). Dashboard is polling every ${i}s until SSE recovers.`:`Live stream disconnected. Dashboard is polling every ${i}s — data still updates, just at a coarser cadence.`,"data-testid":`sse-status-chip`,"data-state":n,role:`status`,"aria-live":`polite`,children:[(0,K.jsx)(`span`,{className:`status-dot ${s} pulse-soft`}),(0,K.jsx)(`span`,{className:`hidden md:inline`,children:l}),(0,K.jsx)(`span`,{className:`md:hidden`,children:c})]})}function Zp(e){return e.connected?`connected`:e.reconnectAttempts>0||e.lastErrorAt!==null?`reconnecting`:`disconnected`}var Qp=`ssg:ui:font-scale:v1`,$p=[{label:`S`,value:.9},{label:`M`,value:1},{label:`L`,value:1.15},{label:`XL`,value:1.3}],em=1;function tm(e){if(typeof e!=`number`||!Number.isFinite(e))return em;let t=$p.find(t=>Math.abs(t.value-e)<.001);return t?t.value:em}function nm(){if(typeof localStorage>`u`)return em;try{let e=localStorage.getItem(Qp);return e===null?em:tm(parseFloat(e))}catch{return em}}function rm(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(Qp,String(e))}catch{}}function im(e){typeof document>`u`||(document.documentElement.style.setProperty(`--ssg-font-scale`,String(e)),document.documentElement.style.fontSize=`${16*e}px`)}function am(){let[e,t]=(0,_.useState)(()=>{let e=nm();return im(e),e});return(0,_.useEffect)(()=>{im(e)},[e]),{scale:e,setScale:(0,_.useCallback)(e=>{t(e),rm(e),im(e)},[])}}function om(){let{scale:e,setScale:t}=am();return(0,K.jsx)(`div`,{role:`radiogroup`,"aria-label":`Font size`,className:`hig-segmented`,style:{height:`24px`},children:$p.map(n=>{let r=Math.abs(n.value-e)<.001;return(0,K.jsx)(`button`,{role:`radio`,"aria-checked":r,"aria-selected":r,onClick:()=>t(n.value),title:`Font size: ${n.label} (${Math.round(n.value*100)}%)`,className:r?`selected`:``,style:{height:`20px`,padding:`0 8px`,fontSize:`11px`},children:n.label},n.label)})})}var sm=`ssg:ui:theme:v1`,cm=[{label:`System (Auto)`,value:`default`},{label:`Apple Light`,value:`apple-light`},{label:`Apple Dark`,value:`apple-dark`},{label:`Light (Legacy)`,value:`light`},{label:`Dracula`,value:`dracula`},{label:`Gruvbox Dark`,value:`gruvbox-dark`},{label:`Gruvbox Light`,value:`gruvbox-light`},{label:`Tokyo Night`,value:`tokyo-night`},{label:`Catppuccin Mocha`,value:`catppuccin-mocha`},{label:`Nord`,value:`nord`},{label:`One Dark Pro`,value:`one-dark-pro`}],lm=new Set([`light`,`gruvbox-light`,`apple-light`]),um=new Set([`apple-dark`,`dracula`,`gruvbox-dark`,`tokyo-night`,`catppuccin-mocha`,`nord`,`one-dark-pro`]),dm=`default`;function fm(e){return typeof e==`string`&&cm.some(t=>t.value===e)}function pm(){if(typeof localStorage>`u`)return dm;try{let e=localStorage.getItem(sm);return fm(e)?e:dm}catch{return dm}}function mm(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(sm,e)}catch{}}function hm(e){typeof document>`u`||(e===dm?(document.documentElement.removeAttribute(`data-theme`),document.documentElement.style.colorScheme=`light dark`):(document.documentElement.setAttribute(`data-theme`,e),document.documentElement.style.colorScheme=lm.has(e)?`light`:um.has(e)?`dark`:`light dark`))}function gm(){let[e,t]=(0,_.useState)(()=>{let e=pm();return hm(e),e});return(0,_.useEffect)(()=>{hm(e)},[e]),{theme:e,setTheme:(0,_.useCallback)(e=>{t(e),mm(e),hm(e)},[])}}function _m(){let{theme:e,setTheme:t}=gm();return(0,K.jsx)(`select`,{value:e,onChange:e=>t(e.target.value),"aria-label":`Color theme`,title:`Color theme`,className:`hig-input cursor-pointer`,style:{height:`24px`,paddingRight:`22px`,minWidth:`90px`},children:cm.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))})}function vm(){let{mode:e,setMode:t}=wu(),n=e===`newcomer`;return(0,K.jsxs)(`div`,{role:`radiogroup`,"aria-label":`UI mode`,className:`hig-segmented`,style:{height:`24px`},title:n?`Switch to advanced view`:`Switch to simple view`,children:[(0,K.jsx)(`button`,{role:`radio`,"aria-checked":n,"aria-selected":n,onClick:()=>t(`newcomer`),className:n?`selected`:``,style:{height:`20px`,padding:`0 10px`,fontSize:`11.5px`},children:`Simple`}),(0,K.jsx)(`button`,{role:`radio`,"aria-checked":!n,"aria-selected":!n,onClick:()=>t(`pro`),className:n?``:`selected`,style:{height:`20px`,padding:`0 10px`,fontSize:`11.5px`},children:`Advanced`})]})}function ym(){let[e,t]=(0,_.useState)(()=>Lo()),[n,r]=(0,_.useState)(()=>zo()),[i,a]=(0,_.useState)(!1);return(0,_.useEffect)(()=>{Ro(e)},[e]),(0,_.useEffect)(()=>{Bo(n)},[n]),(0,K.jsxs)(`div`,{className:`relative flex items-center`,children:[(0,K.jsxs)(`button`,{onClick:()=>t(e=>!e),onContextMenu:e=>{e.preventDefault(),a(e=>!e)},className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors`,style:e?{color:`var(--color-decision-allow)`}:void 0,title:e?`Decision chimes on · click to mute · right-click for volume`:`Decision chimes off · click to enable`,children:[(0,K.jsx)(`span`,{className:`status-dot ${e?`bg-[var(--color-decision-allow)]`:`bg-[var(--color-fg-4)]`}`}),(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`Audio `,e?`on`:`off`]})]}),i&&(0,K.jsxs)(`div`,{className:`absolute right-0 top-full mt-1 z-50 flex items-center gap-2 px-3 py-2 hig-card hig-card-padded shadow-[var(--hig-shadow-2)]`,onMouseLeave:()=>a(!1),children:[(0,K.jsx)(`span`,{className:`overline`,children:`Volume`}),(0,K.jsx)(`input`,{type:`range`,min:0,max:1,step:.02,value:n,onChange:e=>r(parseFloat(e.target.value)),className:`w-24`,style:{accentColor:`var(--color-accent)`}}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-[var(--color-fg-2)] w-8 text-right`,children:Math.round(n*100)})]})]})}var bm={dashboard:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`3`,y:`3`,width:`7`,height:`9`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`14`,y:`3`,width:`7`,height:`5`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`14`,y:`12`,width:`7`,height:`9`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`3`,y:`16`,width:`7`,height:`5`,rx:`1.5`})]}),graph:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`6`,cy:`18`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`18`,cy:`6`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`18`,cy:`18`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`12`,cy:`11`,r:`2.4`}),(0,K.jsx)(`path`,{d:`M7.5 16.5l3-4M13.5 11.5l3-3.5M13.5 12l3 4.5`})]}),rules:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 5h11M9 12h11M9 19h11`}),(0,K.jsx)(`path`,{d:`M4 5l1 1 2-2M4 12l1 1 2-2M4 19l1 1 2-2`})]}),hub:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,K.jsx)(`path`,{d:`M3 12h18`}),(0,K.jsx)(`path`,{d:`M12 3a14 14 0 010 18M12 3a14 14 0 000 18`})]}),audit:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`6.5`}),(0,K.jsx)(`path`,{d:`M21 21l-5-5`})]}),approvals:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M5 7h14v12a2 2 0 01-2 2H7a2 2 0 01-2-2z`}),(0,K.jsx)(`path`,{d:`M9 3v4M15 3v4`}),(0,K.jsx)(`path`,{d:`M9 13l2 2 4-4`})]}),profile:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`8`,r:`4`}),(0,K.jsx)(`path`,{d:`M4 21c0-4.4 3.6-8 8-8s8 3.6 8 8`})]}),monitor:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M3 12h3l3-7 4 14 3-7h5`})}),observability:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M4 20h16M7 16V8M11 16V4M15 16v-6M19 16v-3`})}),debug:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`7`,y:`7`,width:`10`,height:`12`,rx:`5`}),(0,K.jsx)(`path`,{d:`M12 7V4M9 4l3 3 3-3`}),(0,K.jsx)(`path`,{d:`M5 11l2-1M5 18l2-1M19 11l-2-1M19 18l-2-1`})]}),home:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M3 11l9-7 9 7v9a2 2 0 01-2 2h-3v-7H10v7H5a2 2 0 01-2-2z`})}),guardrails:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M12 3l8 3.7v6.3c0 5-3.5 9.6-8 11-4.5-1.4-8-6-8-11V6.7L12 3z`}),(0,K.jsx)(`path`,{d:`M9 12l2 2 4-4`})]}),tryit:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 3v6L4.5 18a2 2 0 001.7 3h11.6a2 2 0 001.7-3L15 9V3`}),(0,K.jsx)(`path`,{d:`M8 3h8`})]}),agents:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`8`,cy:`9`,r:`3`}),(0,K.jsx)(`circle`,{cx:`16`,cy:`9`,r:`3`}),(0,K.jsx)(`path`,{d:`M3 19c.7-2.5 2.6-4 5-4`}),(0,K.jsx)(`path`,{d:`M21 19c-.7-2.5-2.6-4-5-4`}),(0,K.jsx)(`path`,{d:`M9 17.5c.8-1 1.8-1.5 3-1.5s2.2.5 3 1.5`})]}),notifications:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M18 16v-5a6 6 0 1 0-12 0v5l-2 2h16z`}),(0,K.jsx)(`path`,{d:`M10 20a2 2 0 0 0 4 0`})]}),setup:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 12l2 2 4-4`}),(0,K.jsx)(`path`,{d:`M12 3l8 3.7v6.3c0 5-3.5 9.6-8 11-4.5-1.4-8-6-8-11V6.7L12 3z`})]}),support:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),(0,K.jsx)(`path`,{d:`M12 2.5v6M12 15.5v6M2.5 12h6M15.5 12h6`})]}),workspace:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`3`,y:`4`,width:`18`,height:`14`,rx:`2`}),(0,K.jsx)(`path`,{d:`M3 9h18M8 14h2M14 14h2`}),(0,K.jsx)(`path`,{d:`M9 20h6`})]})},xm=[{title:`Overview`,items:[{path:`/`,label:`Dashboard`,icon:`dashboard`},{path:`/notifications`,label:`Notifications`,icon:`notifications`},{path:`/agents`,label:`Agents`,icon:`agents`},{path:`/graph`,label:`Graph`,icon:`graph`}]},{title:`Rules`,items:[{path:`/rules`,label:`Rules`,icon:`rules`},{path:`/hub`,label:`Hub`,icon:`hub`},{path:`/approvals`,label:`Approvals`,icon:`approvals`}]},{title:`Activity`,items:[{path:`/audit`,label:`Audit`,icon:`audit`},{path:`/monitor`,label:`Monitor`,icon:`monitor`},{path:`/observability`,label:`Observability`,icon:`observability`}]},{title:`Tools`,items:[{path:`/workspace`,label:`Workspace`,icon:`workspace`},{path:`/setup`,label:`Setup`,icon:`setup`},{path:`/debug`,label:`Debug`,icon:`debug`},{path:`/profile`,label:`Profile`,icon:`profile`},{path:`/support`,label:`Support`,icon:`support`}]}],Sm=[{title:`Get Started`,items:[{path:`/`,label:`Home`,icon:`home`},{path:`/agents`,label:`Agents`,icon:`agents`},{path:`/guardrails`,label:`Guardrails`,icon:`guardrails`},{path:`/try`,label:`Try It`,icon:`tryit`}]},{title:`Activity`,items:[{path:`/notifications`,label:`Notifications`,icon:`notifications`},{path:`/audit`,label:`Activity`,icon:`audit`},{path:`/approvals`,label:`Approvals`,icon:`approvals`}]},{title:`You`,items:[{path:`/setup`,label:`Setup`,icon:`setup`},{path:`/profile`,label:`Profile`,icon:`profile`},{path:`/support`,label:`Support`,icon:`support`}]}];function Cm(e){return e===`newcomer`?Sm:xm}function wm(e){let t=Math.max(0,e-Date.now()),n=Math.floor(t/1e3);if(n<60)return`${n}s`;let r=Math.floor(n/60);return r<60?`${r}m ${n%60}s`:`${Math.floor(r/60)}h ${r%60}m`}function Tm(){let{data:e}=V(`/api/json/daemon-status`,[ke([`counters-updated`])[`counters-updated`]]),[t,n]=(0,_.useState)(!1),[,r]=(0,_.useState)(0);(0,_.useEffect)(()=>{if(e?.status!==`degraded`||!e.hibernation)return;let t=setInterval(()=>r(e=>e+1),1e3);return()=>clearInterval(t)},[e?.status,e?.hibernation]);let i=e?.status??`starting`,a=i===`running`?`bg-[var(--color-decision-allow)]`:i===`starting`||i===`degraded`?`bg-[var(--color-decision-ask)]`:`bg-[var(--color-decision-block)]`,o=i===`starting`||i===`degraded`?`pulse-soft`:``,s=i===`degraded`&&e?.hibernation?wm(e.hibernation.nextRetryAt):null,c=i===`running`?`Daemon`:i===`starting`?`Booting`:i===`degraded`?`Retry ${s??`…`}`:i===`error`?`Error`:`Offline`;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsxs)(`button`,{onClick:()=>n(e=>!e),className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors`,title:i===`running`?`Daemon running`:i===`starting`?`Daemon starting…`:i===`degraded`?`Daemon hibernating — retry in ${s??`…`}`:i===`error`?`Daemon error`:`Daemon stopped`,children:[(0,K.jsx)(`span`,{className:`status-dot ${a} ${o}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:c})]}),t&&(0,K.jsxs)(`div`,{className:`absolute right-0 top-7 z-50 w-72 hig-card hig-card-padded text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`Eval Daemon`}),(0,K.jsx)(`button`,{onClick:()=>n(!1),className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] cursor-pointer`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`space-y-1 text-[var(--color-fg-2)]`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-[11px]`,children:[`status:`,` `,(0,K.jsx)(`span`,{className:i===`running`?`text-[var(--color-decision-allow)]`:i===`starting`||i===`degraded`?`text-[var(--color-decision-ask)]`:`text-[var(--color-decision-block)]`,children:i})]}),e?.pid&&(0,K.jsxs)(`div`,{className:`font-mono text-[11px]`,children:[`pid: `,e.pid]}),i===`degraded`&&e?.hibernation&&(0,K.jsxs)(`div`,{className:`mt-2 rounded-lg p-2 text-[11px] space-y-0.5`,style:{background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`,color:`color-mix(in oklab, var(--color-hig-orange) 90%, var(--color-fg-0))`},children:[(0,K.jsxs)(`div`,{children:[`next retry: `,(0,K.jsx)(`span`,{className:`font-medium`,children:s})]}),(0,K.jsxs)(`div`,{children:[`episode attempt: `,e.hibernation.attempt,e.hibernation.reason?` (${e.hibernation.reason})`:``]}),(0,K.jsx)(`div`,{className:`opacity-70`,children:`Slow-tier supervisor is retrying at long backoff — no manual restart required.`})]})]}),e?.logTail&&e.logTail.length>0&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:`Recent log`}),(0,K.jsx)(`pre`,{className:`bg-[var(--color-surface-2)] border border-[var(--color-line-0)] rounded-md p-2 text-[10px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-all max-h-32 overflow-y-auto`,children:e.logTail.join(`
37
- `)})]})]})]})}function Em(){let{data:e}=V(`/api/state/activity-degraded`);if(!e?.degraded)return null;let t=e.since?new Date(e.since).toLocaleTimeString():`recently`;return(0,K.jsxs)(`div`,{role:`status`,className:`hig-banner hig-banner-warning`,title:e.reason??`audit-worker degraded`,children:[(0,K.jsx)(`span`,{children:`⚠`}),(0,K.jsxs)(`span`,{children:[`Audit pipeline degraded since `,t,` — entries may be missing. Run`,` `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg daemon --status`}),` to inspect.`]})]})}function Dm(){let{data:e}=V(`/api/json/license`,[ke([`counters-updated`])[`counters-updated`]]);return!e||e.tier!==`unlicensed`||e.status===`needs_reauth`||e.status===`needs_login`||e.eval_daily_limit===null||e.evals_today<e.eval_daily_limit?null:(0,K.jsxs)(`div`,{role:`alert`,className:`hig-banner hig-banner-error`,title:`Free tier daily eval limit reached — rules are being bypassed until quota resets`,children:[(0,K.jsx)(`span`,{children:`●`}),(0,K.jsxs)(`span`,{children:[`Quota exhausted — `,e.evals_today.toLocaleString(),`/`,e.eval_daily_limit.toLocaleString(),` evals used today. BLOCK and ASK rules are being bypassed (fail-open) until daily reset.`,` `,(0,K.jsx)(`a`,{href:e.upgrade_url,target:`_blank`,rel:`noopener noreferrer`,className:`underline font-medium`,children:`Upgrade to Pro →`})]})]})}function Om(){let{data:e}=V(`/api/json/license`,[ke([`counters-updated`])[`counters-updated`]]);if(!e||e.status!==`needs_reauth`)return null;let t=e.detail??`License JWT invalid or expired`;return(0,K.jsxs)(`div`,{role:`alert`,className:`hig-banner hig-banner-warning`,title:`Re-authentication required — paid-tier features are paused until you re-login`,children:[(0,K.jsx)(`span`,{children:`⚠`}),(0,K.jsxs)(`span`,{children:[`Re-authentication required — `,t,`. Run`,` `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg auth login`}),` in your terminal to restore your tier.`]})]})}function km(){let{data:e,refetch:t}=V(`/api/json/ask-mode`),[n,r]=(0,_.useState)(!1),i=e?.mode??`tty`;async function a(e){if(!(n||e===i)){r(!0);try{await fetch(`/api/json/ask-mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})}),t()}finally{r(!1)}}}let o=i===`tty`;return(0,K.jsxs)(`button`,{onClick:()=>a(o?`dashboard`:`tty`),disabled:n,className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors disabled:opacity-50`,title:o?`ASK decisions prompt in the native IDE/TTY. Click to route to dashboard.`:`ASK decisions queue on /approvals. Click to route to native prompt.`,children:[(0,K.jsx)(`span`,{className:`status-dot ${o?`bg-[var(--color-hig-blue)]`:`bg-[var(--color-hig-purple)]`}`}),(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`Ask · `,o?`Native`:`Dashboard`]})]})}function Am(e){let t=new Date(e);return`${t.getHours().toString().padStart(2,`0`)}:${t.getMinutes().toString().padStart(2,`0`)}`}var jm={on:`audit`,audit:`off`,off:`on`};function Mm(){let{data:e,refetch:t}=V(`/api/json/mode`,[ke([`mode-changed`])[`mode-changed`]]),[n,r]=(0,_.useState)(!1),i=e?.mode??`on`;async function a(e,i){if(!n){r(!0);try{let n={mode:e};typeof i==`number`&&i>0&&(n.forMs=i),await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify(n)}),t()}finally{r(!1)}}}let o=i===`on`?`bg-[var(--color-hig-green)]`:i===`audit`?`bg-[var(--color-hig-orange)]`:`bg-[var(--color-hig-red)]`,s=e?.rearmAt!==void 0&&i!==`on`?` · until ${Am(e.rearmAt)}`:``,c=`SSG · ${i.toUpperCase()}${s}`;return(0,K.jsxs)(`button`,{onClick:e=>{e.shiftKey?a(i===`off`?`audit`:`on`):a(jm[i])},disabled:n,className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors disabled:opacity-50`,title:i===`on`?`SSG ON — rules enforce normally. Click to cycle: On → Audit → Off.`:i===`audit`?`SSG AUDIT — rules log only, nothing blocked or prompted. Click for Off; Shift+Click to resume On.`:`SSG OFF — kill switch engaged, evaluator returns allow. Click to resume On; Shift+Click for Audit.`,children:[(0,K.jsx)(`span`,{className:`status-dot ${o}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:c})]})}function Nm(){let{data:e,refetch:t}=V(`/api/json/mode`,[ke([`mode-changed`])[`mode-changed`]]),n=e?.mode??`on`;if(n===`on`)return null;let r=e?.rearmAt===void 0?``:` Auto-restores at ${Am(e.rearmAt)}.`,i=n===`off`?`SSG is OFF — kill switch engaged.`:`SSG is in AUDIT mode — log-only.`,a=n===`off`?`Every tool call is being allowed without evaluation.${r}`:`Rules still match for the audit log, but nothing is being blocked or prompted.${r}`,o=n===`off`?`hig-banner hig-banner-error`:`hig-banner hig-banner-warning`;async function s(){await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:`on`})}),t()}return(0,K.jsxs)(`div`,{className:o,children:[(0,K.jsxs)(`svg`,{className:`shrink-0`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),(0,K.jsxs)(`span`,{className:`flex-1`,children:[(0,K.jsx)(`span`,{className:`font-semibold`,children:i}),` `,a]}),(0,K.jsx)(`button`,{onClick:s,className:`hig-button hig-button-small`,title:`Re-enable normal rule enforcement`,children:`Resume`})]})}function Pm({onRefresh:e}){return(0,K.jsx)(`button`,{onClick:e,className:`hig-button`,title:`Reset page — clears stale graph state without dropping SSE`,"aria-label":`Refresh page`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-3-6.7`}),(0,K.jsx)(`polyline`,{points:`21 3 21 9 15 9`})]})})}function Fm(){return(0,K.jsx)(`button`,{onClick:()=>{try{window.location.reload()}catch{}},className:`hig-button`,title:`Reload dashboard — fetches fresh assets (use after a desktop upgrade)`,"aria-label":`Reload dashboard`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M3 12a9 9 0 1 1 3 6.7`}),(0,K.jsx)(`polyline`,{points:`3 21 3 15 9 15`}),(0,K.jsx)(`path`,{d:`M3 3v6h6`})]})})}function Im(){let{data:e}=V(`/api/json/mcp-status`,[ke([`activity-updated`])[`activity-updated`]]),t=e?.status??`inactive`;if(t===`inactive`)return null;let n=t===`active`?`bg-[var(--color-hig-blue)]`:`bg-[var(--color-fg-3)]`,r=t===`active`?`MCP active`:`MCP idle`;return(0,K.jsxs)(`div`,{className:`chip`,title:t===`active`?`MCP server: ${e?.recentCount??0} evals in last 5 min`:`MCP server: ${e?.totalCount??0} total evals`,children:[(0,K.jsx)(`span`,{className:`status-dot ${n}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:r})]})}function Lm(){let{data:e}=V(`/api/json/adapters`);if(!e)return null;let t=e.adapters.find(e=>e.active);if(!t)return null;let n=t.id===`generic`;return(0,K.jsxs)(`a`,{href:`/agents`,className:`chip ss-agent-chip cursor-pointer transition-all`,title:n?`No specific AI client detected — SSG is running in generic adapter mode. Click to wire one up.`:`Connected agent: ${t.displayName} (${t.vendor}). Click to manage.`,style:{"--agent-accent":t.accent},"data-generic":n?`true`:`false`,children:[(0,K.jsx)(`span`,{className:`status-dot`,style:{background:t.accent,boxShadow:`0 0 6px color-mix(in oklab, ${t.accent} 60%, transparent)`}}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:t.displayName})]})}function Rm(e,t){if(e===`/`)return t===`newcomer`?(0,K.jsx)(Gf,{}):(0,K.jsx)(ic,{});if(e===`/classic`)return(0,K.jsx)(dl,{});if(e===`/graph`)return(0,K.jsx)(vf,{});if(e===`/debug`)return(0,K.jsx)(bf,{});if(e===`/rules`)return(0,K.jsx)(El,{});if(e===`/audit`)return(0,K.jsx)(Il,{});if(e===`/approvals`)return(0,K.jsx)(Ql,{});if(e===`/profile`)return(0,K.jsx)(gu,{});if(e===`/agents`)return(0,K.jsx)(Cp,{});if(e===`/notifications`)return(0,K.jsx)(Dp,{});if(e===`/setup`)return(0,K.jsx)(Rp,{});if(e===`/try`)return(0,K.jsx)(ap,{});if(e===`/guardrails`)return(0,K.jsx)(Ou,{});if(e===`/hub/connect`)return(0,K.jsx)(Uu,{});if(e===`/hub/publish`)return(0,K.jsx)(Wu,{});if(e.startsWith(`/hub/`)){let t=e.slice(5);if(t)return(0,K.jsx)(Hu,{id:t})}return e===`/hub`?(0,K.jsx)(zu,{}):e===`/monitor`?(0,K.jsx)(rd,{}):e===`/observability`?(0,K.jsx)(Sd,{}):e===`/support`?(0,K.jsx)(Up,{}):(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-24 text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`p`,{className:`overline mb-2`,children:`Error · 404`}),(0,K.jsx)(`p`,{className:`text-sm`,children:`Page not found`}),(0,K.jsx)(`a`,{href:`/`,className:`mt-4 text-[12px] text-[var(--color-hig-blue)] hover:underline`,children:`← Back to dashboard`})]})}function zm(e,t){return e===`/`?t===`newcomer`?`Home`:`Dashboard`:e===`/classic`?`Classic Dashboard`:e===`/graph`?`Graph`:e===`/debug`?`Debug`:e===`/rules`?`Rules`:e===`/audit`?t===`newcomer`?`Activity`:`Audit`:e===`/approvals`?`Approvals`:e===`/profile`?`Profile`:e===`/agents`?`Agents`:e===`/notifications`?`Notifications`:e===`/setup`?`Setup Status`:e===`/try`?`Try It`:e===`/guardrails`?`Guardrails`:e===`/hub/connect`?`Connect Hub`:e===`/hub/publish`?`Publish to Hub`:e.startsWith(`/hub/`)||e===`/hub`?`Hub`:e===`/monitor`?`Monitor`:e===`/observability`?`Observability`:e===`/support`?`Support & Feedback`:`SigmaShake`}function Bm(e){history.pushState(null,``,e),window.dispatchEvent(new PopStateEvent(`popstate`))}function Vm({count:e}){let[t,n]=(0,_.useState)(!1);return t||e===0?null:(0,K.jsxs)(`div`,{className:`hig-banner hig-banner-warning`,children:[(0,K.jsxs)(`svg`,{className:`shrink-0`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),(0,K.jsxs)(`span`,{className:`flex-1`,children:[(0,K.jsxs)(`span`,{className:`font-semibold`,children:[e,` other `,e===1?`tab`:`tabs`,` open.`]}),` `,`Each tab holds a live SSE connection. Browsers limit connections per origin — too many tabs will prevent this page from loading.`,` `,(0,K.jsx)(`span`,{className:`opacity-70`,children:`Close other tabs to restore full live-update functionality.`})]}),(0,K.jsx)(`button`,{onClick:()=>n(!0),className:`opacity-60 hover:opacity-100 transition-opacity shrink-0 cursor-pointer`,title:`Dismiss`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]})}function Hm({pathname:e,navSections:t,open:n,onClose:r}){let i=t=>t===`/`?e===`/`:e.startsWith(t);return(0,K.jsxs)(`aside`,{className:`hig-sidebar ${n?`open`:``}`,"aria-label":`Primary`,children:[(0,K.jsxs)(`div`,{className:`hig-sidebar-header`,children:[(0,K.jsx)(`span`,{className:`hig-app-icon`,"aria-hidden":`true`,children:`SS`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`hig-app-name`,children:`SigmaShake`}),(0,K.jsx)(`div`,{className:`hig-app-meta`,children:`Governance`})]})]}),(0,K.jsx)(`nav`,{className:`hig-sidebar-nav`,children:t.map(e=>(0,K.jsxs)(`div`,{className:`hig-sidebar-section`,children:[(0,K.jsx)(`div`,{className:`hig-sidebar-section-title`,children:e.title}),e.items.map(e=>(0,K.jsxs)(`a`,{href:e.path,onClick:r,className:`hig-sidebar-item`,"data-active":i(e.path)?`true`:`false`,children:[(0,K.jsx)(`span`,{className:`hig-sidebar-icon`,"aria-hidden":`true`,children:bm[e.icon]}),(0,K.jsx)(`span`,{children:e.label})]},e.path))]},e.title))})]})}function Um(){let[e,t]=(0,_.useState)(window.location.pathname),[n,r]=(0,_.useState)(0),[i,a]=(0,_.useState)(!1),{otherTabCount:o}=Jp(),{mode:s,setMode:c}=wu(),l=Cm(s),u=zm(e,s),[d,f]=(0,_.useState)(0),p=(0,_.useMemo)(()=>({navigate:e=>Bm(e),async setSsgMode(e){await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})})},async setAskMode(e){await fetch(`/api/json/ask-mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})})},setUiMode:e=>c(e),refresh:()=>r(e=>e+1),hardReload:()=>{try{window.location.reload()}catch{}}}),[c]);return(0,_.useEffect)(()=>{let e=e=>{let t=e.detail;if(!t?.selector)return;let n=null;try{n=document.querySelector(t.selector)}catch{return}if(!n)return;n.classList.remove(`voice-nav-pulse`),n.offsetWidth,n.classList.add(`voice-nav-pulse`);let r=window.setTimeout(()=>{n?.classList.remove(`voice-nav-pulse`)},1100);return()=>window.clearTimeout(r)},t=()=>f(e=>e+1);return window.addEventListener(`ssg:voice-target`,e),window.addEventListener(`ssg:voice-page-morph`,t),()=>{window.removeEventListener(`ssg:voice-target`,e),window.removeEventListener(`ssg:voice-page-morph`,t)}},[]),(0,_.useEffect)(()=>{let e=()=>t(window.location.pathname);return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[]),(0,_.useEffect)(()=>{a(!1)},[e]),(0,_.useEffect)(()=>{let e=e=>{let t=e.target.closest(`a`);if(!t)return;let n=t.getAttribute(`href`);!n||n.startsWith(`http`)||n.startsWith(`//`)||n===`/workspace`||n.startsWith(`/workspace/`)||(e.preventDefault(),Bm(n))};return document.addEventListener(`click`,e),()=>document.removeEventListener(`click`,e)},[]),(0,K.jsxs)(`div`,{className:`hig-app`,children:[(0,K.jsx)(Hm,{pathname:e,navSections:l,open:i,onClose:()=>a(!1)}),(0,K.jsxs)(`div`,{className:`hig-window`,children:[(0,K.jsxs)(`header`,{className:`hig-toolbar`,children:[(0,K.jsx)(`button`,{"aria-label":`Toggle sidebar`,className:`md:hidden hig-button hig-button-small`,onClick:()=>a(e=>!e),children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 18 18`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,children:[(0,K.jsx)(`line`,{x1:`2`,y1:`5`,x2:`16`,y2:`5`}),(0,K.jsx)(`line`,{x1:`2`,y1:`9`,x2:`16`,y2:`9`}),(0,K.jsx)(`line`,{x1:`2`,y1:`13`,x2:`16`,y2:`13`})]})}),(0,K.jsx)(`h1`,{className:`hig-toolbar-title`,children:u}),(0,K.jsx)(`div`,{className:`hig-toolbar-spacer`}),(0,K.jsxs)(`div`,{className:`hig-toolbar-controls hidden md:flex`,children:[o>0&&(0,K.jsxs)(`span`,{className:`chip`,style:{color:`var(--color-hig-orange)`,background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`},title:`${o} other tab${o===1?``:`s`} open — may cause connection issues`,children:[o+1,` tabs`]}),(0,K.jsx)(Xp,{}),(0,K.jsx)(Mm,{}),(0,K.jsx)(km,{}),(0,K.jsx)(Lm,{}),(0,K.jsx)(Im,{}),(0,K.jsx)(Tm,{}),(0,K.jsx)(Pm,{onRefresh:()=>r(e=>e+1)}),(0,K.jsx)(Fm,{}),(0,K.jsx)(vm,{}),(0,K.jsx)(_m,{}),(0,K.jsx)(om,{}),(0,K.jsx)(ym,{})]})]}),(0,K.jsx)(Nm,{}),(0,K.jsx)(Vm,{count:o}),(0,K.jsx)(Om,{}),(0,K.jsx)(Dm,{}),(0,K.jsx)(Em,{}),(0,K.jsx)(`main`,{className:`hig-content px-6 py-6`,children:Rm(e,s)},n),d>0&&(0,K.jsx)(`div`,{className:`voice-page-flash`,"aria-hidden":`true`},d)]}),(0,K.jsx)(fc,{actions:p})]})}var Wm=document.getElementById(`app-root`);if(!Wm)throw Error(`Missing #app-root`);g.createRoot(Wm).render((0,K.jsx)(_.StrictMode,{children:(0,K.jsx)(Um,{})}));
35
+ `)||`Exit code: ${m.exitCode}`})]})]})]})}function fp({result:e}){return(0,K.jsx)(`ul`,{className:`ss-install-checklist`,children:(e.steps&&e.steps.length>0?e.steps:[{label:e.ok?`Setup complete`:`Setup failed`,status:e.ok?`ok`:`error`,detail:e.error??void 0}]).map((e,t)=>(0,K.jsxs)(`li`,{className:`ss-install-step ss-install-step--${e.status}`,children:[(0,K.jsx)(`span`,{className:`ss-install-step__icon`,"aria-hidden":`true`,children:e.status===`ok`?`✓`:e.status===`error`?`✗`:`–`}),(0,K.jsxs)(`div`,{className:`ss-install-step__body`,children:[(0,K.jsx)(`span`,{className:`ss-install-step__label`,children:e.label}),e.detail&&(0,K.jsx)(`span`,{className:`ss-install-step__detail`,children:e.detail})]})]},t))})}function pp({a:e,onOpen:t}){return(0,K.jsxs)(`button`,{type:`button`,className:`ss-list-row`,onClick:t,"aria-label":`Open ${e.displayName} details`,children:[(0,K.jsx)(ap,{a:e,size:34}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`text-[13.5px] font-semibold text-[var(--color-fg-0)] truncate`,children:e.displayName}),(0,K.jsx)(op,{a:e}),e.pinned&&!e.active&&(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:e.accent,background:`color-mix(in oklab, ${e.accent} 12%, transparent)`,borderColor:`color-mix(in oklab, ${e.accent} 30%, transparent)`},children:`Pinned`})]}),(0,K.jsx)(`p`,{className:`text-[10.5px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-0.5`,children:e.vendor})]}),(0,K.jsx)(sp,{})]})}function mp(){let{data:e,refetch:t}=V(`/api/json/adapters`),[n,r]=(0,_.useState)(`all`),[i,a]=(0,_.useState)(null),o=(0,_.useMemo)(()=>e?n===`detected`?e.adapters.filter(e=>e.detected):n===`available`?e.adapters.filter(e=>!e.detected):e.adapters:[],[e,n]);if(!e)return(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)]`,children:`loading adapters…`});let s=e.adapters.find(e=>e.active),c=e.adapters.filter(e=>e.detected).length,l=i?e.adapters.find(e=>e.id===i):null;return(0,K.jsxs)(`div`,{className:`max-w-3xl mx-auto space-y-6`,children:[(0,K.jsxs)(`section`,{className:`rounded-2xl p-5 relative overflow-hidden`,style:{border:`1px solid var(--color-line-1)`,background:s?`linear-gradient(180deg, color-mix(in oklab, ${s.accent} 14%, transparent) 0%, transparent 70%), var(--color-surface-1)`:`var(--color-surface-1)`,boxShadow:s?`0 0 0 1px color-mix(in oklab, ${s.accent} 30%, transparent), 0 18px 40px color-mix(in oklab, ${s.accent} 14%, transparent)`:void 0},children:[(0,K.jsx)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:12},children:`Connected agent`}),s?(0,K.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,K.jsx)(ap,{a:s,size:56}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`h2`,{className:`text-[18px] font-semibold text-[var(--color-fg-0)] tracking-tight`,children:s.displayName}),(0,K.jsx)(op,{a:s}),s.pinned?(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:s.accent,background:`color-mix(in oklab, ${s.accent} 14%, transparent)`,borderColor:`color-mix(in oklab, ${s.accent} 36%, transparent)`},title:`You pinned this agent as your default — auto-detection is overridden.`,children:`Pinned`}):(0,K.jsx)(`span`,{className:`agent-badge`,style:{color:`var(--color-fg-3)`,background:`var(--color-surface-2)`,borderColor:`var(--color-line-1)`},title:`SSG auto-detected this agent from process env and filesystem markers.`,children:`Auto-detected`})]}),(0,K.jsx)(`p`,{className:`text-[11px] font-mono uppercase tracking-wider text-[var(--color-fg-3)] mt-0.5`,children:s.vendor}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] mt-2 leading-relaxed`,children:s.pinned?`Pinned as your default agent — SSG will treat every tool call as ${s.displayName} regardless of auto-detection.`:s.id===`generic`?`No specific AI client detected — falling back to the generic adapter. Pick the agent you actually use and hit "Set as my agent" to override.`:s.healthy?`Auto-detected from process environment. If this isn't the agent you actually use, tap any other row and hit "Set as my agent" to pin it.`:`Forced via SSG_CLIENT — adapter is in use but its config dir is missing or incomplete.`}),s.pinned&&(0,K.jsx)(`button`,{type:`button`,onClick:()=>{fetch(`/api/json/adapters/active`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({adapter:null})}).then(()=>t())},className:`text-[11px] font-mono text-[var(--color-fg-3)] hover:text-[var(--color-brand)] mt-3 cursor-pointer hover:underline`,children:`↺ reset to auto-detect`})]})]}):(0,K.jsx)(`p`,{className:`text-sm text-[var(--color-fg-2)]`,children:`No active adapter resolved.`})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsxs)(`p`,{className:`ss-list-section-title`,style:{padding:0,marginBottom:0},children:[`All supported agents · `,e.adapters.length]}),(0,K.jsx)(`div`,{className:`ss-segment`,role:`tablist`,"aria-label":`Filter`,children:[`all`,`detected`,`available`].map(e=>(0,K.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":n===e,className:`ss-segment-item`,onClick:()=>r(e),children:e===`all`?`All`:e===`detected`?`Detected${c>0?` · ${c}`:``}`:`Available`},e))})]}),o.length>0?(0,K.jsx)(`div`,{className:`ss-list`,children:o.map(e=>(0,K.jsx)(pp,{a:e,onOpen:()=>a(e.id)},e.id))}):(0,K.jsx)(`div`,{className:`rounded-2xl p-8 text-center`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] font-mono`,children:`no agents match this filter`})}),(0,K.jsx)(`div`,{className:`rounded-xl p-4`,style:{border:`1px dashed var(--color-line-1)`,background:`color-mix(in oklab, var(--color-surface-1) 50%, transparent)`},children:(0,K.jsxs)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] leading-relaxed`,children:[`SSG picks the active adapter at runtime — either from`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`SSG_CLIENT`}),` `,`or by auto-detecting your tool. Tap any agent to wire it into a project from the dashboard, or copy the`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg init`}),` command and run it yourself.`]})}),(0,K.jsx)(hp,{ctx:e.context,adapters:e.adapters}),(0,K.jsx)(_p,{}),l&&(0,K.jsx)(dp,{agent:l,ctx:e.context,onClose:()=>a(null),onInstalled:()=>t()})]})}function hp({ctx:e,adapters:t}){let{data:n}=V(`/api/json/adapters/recent`),r=t.find(e=>e.active)??null,i=t.filter(e=>e.detected);return(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid var(--color-line-1)`,background:`var(--color-surface-1)`},children:[(0,K.jsxs)(`div`,{className:`flex items-baseline justify-between mb-3`,children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold tracking-tight text-[var(--color-fg-0)]`,children:`How SigmaShake is connected`}),(0,K.jsx)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:`Overview`})]}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] leading-relaxed mb-4`,children:`Each AI agent on your machine has its own config file. SigmaShake adds a small hook to those files so it sees every tool call before it runs.`}),(0,K.jsxs)(`ul`,{className:`space-y-2`,children:[(0,K.jsx)(gp,{label:`Daemon`,status:`on`,detail:`Running — watching tool calls in real time.`}),(0,K.jsx)(gp,{label:`Active AI agent`,status:r?`on`:`off`,detail:r?`${r.displayName} (${r.vendor})`:`Nothing detected yet — install an adapter below.`}),(0,K.jsx)(gp,{label:`Wired-in agents`,status:i.length>0?`on`:`off`,detail:i.length>0?i.map(e=>e.displayName).join(`, `):`No agents wired in yet.`})]}),n?.recents&&n.recents.length>0&&(0,K.jsxs)(`div`,{className:`mt-5`,children:[(0,K.jsxs)(`p`,{className:`text-[11px] uppercase tracking-wider text-[var(--color-fg-3)] mb-2`,children:[`Projects connected (`,n.recents.length,`)`]}),(0,K.jsx)(`ul`,{className:`space-y-1.5`,children:n.recents.map(t=>(0,K.jsxs)(`li`,{className:`flex items-center gap-3 rounded-lg px-3 py-2 text-[12px]`,style:{background:`var(--color-surface-2)`,border:`0.5px solid var(--color-line-1)`},children:[(0,K.jsx)(`span`,{className:`w-1.5 h-1.5 rounded-full shrink-0`,style:{background:`var(--color-hig-green)`}}),(0,K.jsx)(`span`,{className:`font-mono text-[var(--color-fg-1)] truncate flex-1 min-w-0`,children:lp(t.path,e.home)}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)] shrink-0`,children:new Date(t.lastUsed).toLocaleDateString(void 0,{month:`short`,day:`numeric`})})]},t.path))})]})]})}function gp({label:e,status:t,detail:n}){return(0,K.jsxs)(`li`,{className:`flex items-center gap-3 rounded-lg px-3 py-2`,style:{background:`var(--color-surface-2)`,border:`0.5px solid var(--color-line-1)`},children:[(0,K.jsx)(`span`,{className:`w-2 h-2 rounded-full shrink-0`,style:{background:t===`on`?`var(--color-hig-green)`:`var(--color-fg-4)`,boxShadow:t===`on`?`0 0 0 3px color-mix(in oklab, var(--color-hig-green) 22%, transparent)`:void 0}}),(0,K.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--color-fg-0)] w-32 shrink-0`,children:e}),(0,K.jsx)(`span`,{className:`text-[12px] text-[var(--color-fg-2)] flex-1 min-w-0 truncate`,children:n})]})}function _p(){let[e,t]=(0,_.useState)(!1),[n,r]=(0,_.useState)(!0),[i,a]=(0,_.useState)(!1),[o,s]=(0,_.useState)(null);async function c(){a(!0),s(null);try{s(await(await fetch(`/api/json/uninstall-everything`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({keepData:n})})).json())}catch(e){s({ok:!1,error:`Could not reach SigmaShake`,detail:e instanceof Error?e.message:String(e)})}finally{a(!1)}}return(0,K.jsxs)(`section`,{className:`rounded-2xl p-5`,style:{border:`1px solid color-mix(in oklab, var(--color-hig-red) 28%, var(--color-line-1))`,background:`linear-gradient(180deg, color-mix(in oklab, var(--color-hig-red) 6%, transparent) 0%, transparent 100%), var(--color-surface-1)`},children:[(0,K.jsx)(`div`,{className:`flex items-baseline justify-between gap-3 flex-wrap`,children:(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h2`,{className:`text-[15px] font-semibold tracking-tight text-[var(--color-fg-0)]`,children:`Uninstall SigmaShake`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-2)] leading-relaxed mt-1`,children:[`Removes the SigmaShake hook from every AI-agent config file on this machine and stops the daemon.`,` `,(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`The`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg`}),` binary itself stays installed — remove it with your package manager.`]})]})]})}),!e&&!o&&(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(!0),className:`mt-4 text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors`,style:{color:`var(--color-hig-red)`,border:`1px solid color-mix(in oklab, var(--color-hig-red) 40%, transparent)`,background:`color-mix(in oklab, var(--color-hig-red) 8%, transparent)`},children:`Uninstall SigmaShake everywhere…`}),e&&!o&&(0,K.jsxs)(`div`,{className:`mt-4 space-y-3`,children:[(0,K.jsxs)(`label`,{className:`flex items-start gap-2 text-[12px] text-[var(--color-fg-1)] cursor-pointer`,children:[(0,K.jsx)(`input`,{type:`checkbox`,checked:n,onChange:e=>r(e.target.checked),className:`mt-0.5`}),(0,K.jsxs)(`span`,{children:[`Keep my activity history and license`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`(~/.sigmashake/). Uncheck to wipe everything.`})]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>void c(),disabled:i,className:`text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors disabled:opacity-50 disabled:cursor-not-allowed`,style:{color:`white`,background:`var(--color-hig-red)`},children:i?`Uninstalling…`:`Yes — uninstall everywhere`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>t(!1),disabled:i,className:`text-[12.5px] font-medium px-4 py-2 rounded-lg cursor-pointer transition-colors`,style:{color:`var(--color-fg-1)`,background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`},children:`Cancel`})]})]}),o&&(0,K.jsxs)(`div`,{className:`mt-4 space-y-3`,children:[(0,K.jsxs)(`div`,{className:`rounded-lg px-4 py-3`,style:{border:`1px solid ${o.ok?`color-mix(in oklab, var(--color-hig-green) 38%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 38%, transparent)`}`,background:o.ok?`color-mix(in oklab, var(--color-hig-green) 6%, transparent)`:`color-mix(in oklab, var(--color-hig-red) 6%, transparent)`},children:[(0,K.jsx)(`p`,{className:`text-[13px] font-semibold`,style:{color:o.ok?`var(--color-hig-green)`:`var(--color-hig-red)`},children:o.ok?`SigmaShake has been removed from this machine`:`Uninstall failed`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-2)] mt-1 leading-relaxed`,children:o.ok?(0,K.jsxs)(K.Fragment,{children:[`Hooks were stripped from every AI-agent config file. The daemon has stopped.`,o.packageManagerHint&&(0,K.jsxs)(K.Fragment,{children:[` `,`To also remove the`,` `,(0,K.jsx)(`code`,{className:`text-[var(--color-brand)]`,children:`ssg`}),` `,`binary, run:`,(0,K.jsx)(`code`,{className:`block mt-2 px-2 py-1.5 rounded bg-[var(--color-surface-2)] text-[var(--color-brand)] text-[11.5px] font-mono`,children:o.packageManagerHint})]})]}):(0,K.jsxs)(K.Fragment,{children:[o.error??`Unknown error.`,` `,o.detail&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:o.detail})]})})]}),(o.stdout||o.stderr)&&(0,K.jsxs)(`details`,{children:[(0,K.jsx)(`summary`,{className:`text-[11px] text-[var(--color-fg-3)] cursor-pointer hover:text-[var(--color-fg-1)]`,children:`Show full log`}),(0,K.jsx)(`pre`,{className:`text-[11px] font-mono rounded-md p-3 mt-2 max-h-48 overflow-auto whitespace-pre-wrap break-all`,style:{background:`var(--color-surface-2)`,border:`1px solid var(--color-line-1)`,color:`var(--color-fg-2)`},children:[o.stdout,o.stderr].filter(Boolean).join(`
36
+ `)})]}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>{s(null),t(!1)},className:`text-[11.5px] text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] cursor-pointer`,children:`↺ Close`})]})]})}function vp(){return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`Notifications`}),(0,K.jsx)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:`Things that need your attention — rule drift, audit log capacity, daemon health, noisy rules. We update this list whenever something changes.`})]}),(0,K.jsx)(Js,{showEmptyState:!0,hideHeader:!0})]})}function yp({status:e,className:t=``}){return(0,K.jsx)(`span`,{className:`status-dot ${e===`ok`?`bg-[var(--color-decision-allow)]`:e===`warn`?`bg-[var(--color-decision-ask)]`:e===`fail`?`bg-[var(--color-decision-block)]`:`bg-[var(--color-fg-3)]`} ${t}`})}function bp({status:e}){let t=e===`ok`?`text-[var(--color-decision-allow)]`:e===`warn`?`text-[var(--color-decision-ask)]`:e===`fail`?`text-[var(--color-decision-block)]`:`text-[var(--color-fg-3)]`,n=e===`ok`?`OK`:e===`warn`?`Warn`:e===`fail`?`Fail`:`Skipped`;return(0,K.jsx)(`span`,{className:`text-[10.5px] font-medium uppercase tracking-wide ${t}`,children:n})}function xp(e){return e===void 0?``:e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Sp(e){if(!e)return``;let t=Math.floor((Date.now()-e)/1e3);return t<60?`${t}s ago`:t<3600?`${Math.floor(t/60)}m ago`:t<86400?`${Math.floor(t/3600)}h ago`:`${Math.floor(t/86400)}d ago`}function Cp(e,t){return t&&e.startsWith(t+`/`)?`~/`+e.slice(t.length+1):e===t?`~`:e}function wp({file:e,home:t,wired:n}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-2 py-1 border-b border-[var(--color-line-0)] last:border-0 text-[11.5px]`,children:[(0,K.jsx)(yp,{status:e.exists?n===void 0||n?`ok`:`warn`:`skip`}),(0,K.jsx)(`code`,{className:`flex-1 truncate text-[var(--color-fg-1)]`,title:e.path,children:Cp(e.path,t)}),e.exists?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:xp(e.size)}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)] min-w-[60px] text-right`,children:Sp(e.modified_at)}),n===!1&&(0,K.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-wide text-[var(--color-decision-ask)]`,title:`File exists but does not appear to contain SSG wiring`,children:`no ssg`}),n===!0&&(0,K.jsx)(`span`,{className:`text-[10px] font-medium uppercase tracking-wide text-[var(--color-decision-allow)]`,title:`File contains SSG hook / MCP entries`,children:`wired`})]}):(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:`missing`})]})}function Tp({title:e,status:t,children:n,hint:r}){return(0,K.jsxs)(`section`,{className:`hig-card hig-card-padded`,children:[(0,K.jsxs)(`header`,{className:`flex items-center justify-between mb-3`,children:[(0,K.jsxs)(`h2`,{className:`text-[13px] font-semibold text-[var(--color-fg-0)] flex items-center gap-2`,children:[t!==void 0&&(0,K.jsx)(yp,{status:t}),e]}),r&&(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:r})]}),(0,K.jsx)(`div`,{children:n})]})}function Ep({k:e,v:t,mono:n=!1}){return(0,K.jsxs)(`div`,{className:`flex items-baseline gap-3 py-1 text-[11.5px] border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)] min-w-[110px]`,children:e}),(0,K.jsx)(`span`,{className:`flex-1 text-[var(--color-fg-1)] ${n?`font-mono text-[11px]`:``}`,children:t})]})}var Dp={"claude-code":`Claude Code`,cursor:`Cursor`,codex:`Codex CLI`,pi:`Pi Agent`,gemini:`Gemini CLI`,antigravity:`Antigravity`,copilot:`GitHub Copilot`};function Op({adapter:e,home:t}){let n=Dp[e.id]??e.id,r=e.artifacts.filter(e=>e.exists&&e.ssg_wired).length,i=e.artifacts.filter(e=>e.exists).length;return(0,K.jsxs)(`div`,{className:`rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yp,{status:e.status}),(0,K.jsx)(`span`,{className:`text-[12.5px] font-semibold text-[var(--color-fg-0)]`,children:n}),e.active&&(0,K.jsx)(`span`,{className:`text-[9.5px] font-semibold uppercase tracking-wider px-1.5 py-0.5 rounded-sm text-[var(--color-hig-blue)] bg-[color-mix(in_oklab,var(--color-hig-blue)_14%,transparent)]`,title:`This is the adapter ssg is currently using at runtime`,children:`Active`})]}),(0,K.jsxs)(`span`,{className:`text-[10px] text-[var(--color-fg-3)]`,children:[r,`/`,e.artifacts.length,` wired`]})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2 mb-2 text-[10.5px]`,children:[(0,K.jsx)(`span`,{className:e.detected?`text-[var(--color-decision-allow)]`:`text-[var(--color-fg-3)]`,children:e.detected?`● detected`:`○ not detected`}),(0,K.jsx)(`span`,{className:e.healthy?`text-[var(--color-decision-allow)]`:`text-[var(--color-fg-3)]`,children:e.healthy?`● binary healthy`:`○ binary missing`}),i===0&&(0,K.jsx)(`span`,{className:`text-[var(--color-fg-3)]`,children:`○ no config files on disk`})]}),e.artifacts.length>0&&(0,K.jsx)(`div`,{className:`border-t border-[var(--color-line-0)] pt-1`,children:e.artifacts.map(e=>(0,K.jsx)(wp,{file:e,home:t,wired:e.exists?e.ssg_wired:void 0},e.path))}),e.status===`warn`&&i===0&&(0,K.jsxs)(`div`,{className:`mt-2 text-[10.5px] text-[var(--color-fg-3)]`,children:[`Wire it up with:`,` `,(0,K.jsxs)(`code`,{className:`font-mono text-[var(--color-fg-1)]`,children:[`ssg init --client=`,e.id]})]})]})}function kp(){let{data:e,loading:t,error:n,refetch:r}=V(`/api/json/setup-status`);if(t&&!e)return(0,K.jsx)(`div`,{className:`py-12 text-center text-[var(--color-fg-3)] text-[12px]`,children:`Reading setup status…`});if(n||!e)return(0,K.jsxs)(`div`,{className:`hig-card hig-card-padded text-[12px]`,children:[(0,K.jsxs)(`p`,{className:`text-[var(--color-decision-block)] mb-2`,children:[`Could not load /api/json/setup-status: `,n??`no response`]}),(0,K.jsx)(`button`,{onClick:r,className:`hig-button hig-button-small`,children:`Retry`})]});let{summary:i,license:a,daemon:o,dashboard:s,native:c,db:l,mcp:u,rules:d,init_files:f,adapters:p,hub:m,checks:h,home:g,cwd:_}=e;return(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-end justify-between`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-[20px] font-semibold tracking-tight text-[var(--color-fg-0)] leading-tight`,children:`Setup Status`}),(0,K.jsxs)(`p`,{className:`text-[12.5px] text-[var(--color-fg-3)] mt-1 leading-relaxed`,children:[`What `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg init`}),` wrote and whether every piece is wired up — license, hooks, MCP, native engine, daemon, rules, and hub packages.`]})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsxs)(`span`,{className:`text-[11px] text-[var(--color-fg-3)]`,children:[`ssg v`,e.version]}),(0,K.jsx)(`button`,{onClick:r,className:`hig-button hig-button-small`,children:`Refresh`})]})]}),(0,K.jsxs)(`section`,{className:`hig-card hig-card-padded flex items-center gap-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(yp,{status:i.overall,className:`!w-3 !h-3`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`text-[11px] uppercase tracking-wide text-[var(--color-fg-3)]`,children:`Overall`}),(0,K.jsx)(`div`,{className:`text-[14px] font-semibold text-[var(--color-fg-0)]`,children:i.overall===`ok`?`Healthy`:i.overall===`warn`?`Needs attention`:i.overall===`fail`?`Broken`:`Skipped`})]})]}),(0,K.jsxs)(`div`,{className:`flex gap-4 text-[12px]`,children:[(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-allow)]`,children:[`● `,i.ok,` ok`]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-ask)]`,children:[`● `,i.warn,` warn`]}),i.fail>0&&(0,K.jsxs)(`span`,{className:`text-[var(--color-decision-block)]`,children:[`● `,i.fail,` fail`]}),(0,K.jsxs)(`span`,{className:`text-[var(--color-fg-3)]`,children:[`○ `,i.skip,` skipped`]})]}),(0,K.jsxs)(`div`,{className:`ml-auto text-right`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)]`,children:`Working dir`}),(0,K.jsx)(`code`,{className:`text-[11px] text-[var(--color-fg-1)]`,title:_,children:Cp(_,g)})]})]}),(0,K.jsx)(Tp,{title:`Checks`,hint:`${h.length} probes`,children:(0,K.jsx)(`div`,{children:h.map(e=>(0,K.jsxs)(`div`,{className:`flex items-start gap-3 py-1.5 border-b border-[var(--color-line-0)] last:border-0`,children:[(0,K.jsx)(yp,{status:e.status,className:`mt-1`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-2`,children:[(0,K.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--color-fg-0)]`,children:e.name}),(0,K.jsx)(bp,{status:e.status})]}),(0,K.jsx)(`div`,{className:`text-[11px] text-[var(--color-fg-2)] mt-0.5 break-words`,children:e.detail}),e.fix&&(0,K.jsxs)(`div`,{className:`text-[11px] text-[var(--color-hig-blue)] font-mono mt-0.5`,children:[`→ `,e.fix]})]})]},e.name))})}),(0,K.jsxs)(Tp,{title:`License & authentication`,status:a.status===`healthy`||a.status===`healthy_free`?`ok`:`warn`,children:[(0,K.jsx)(Ep,{k:`Tier`,v:a.tier_label}),(0,K.jsx)(Ep,{k:`Status`,v:a.status}),(0,K.jsx)(Ep,{k:`Account`,v:a.email??`—`}),(0,K.jsx)(Ep,{k:`Auth method`,v:a.auth_method??`—`}),(0,K.jsx)(Ep,{k:`Evals today`,v:a.eval_daily_limit===null?`${a.evals_today.toLocaleString()} (unlimited)`:`${a.evals_today.toLocaleString()} / ${a.eval_daily_limit.toLocaleString()}`}),(0,K.jsxs)(`div`,{className:`mt-2 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] mb-1`,children:`Credential files`}),(0,K.jsx)(wp,{file:a.license_file,home:g}),(0,K.jsx)(wp,{file:a.hosts_file,home:g})]})]}),(0,K.jsxs)(Tp,{title:`Runtime processes`,status:o.alive&&s.alive?`ok`:`warn`,children:[(0,K.jsx)(Ep,{k:`Daemon (evald)`,v:o.alive?`running — PID ${o.pid}`:o.pid?`stale — PID ${o.pid} in pidfile but process gone`:`not running`}),(0,K.jsx)(Ep,{k:`Daemon socket`,v:o.socket_exists?`present`:`missing`,mono:!0}),(0,K.jsx)(Ep,{k:`Dashboard (serve)`,v:s.alive?`running — PID ${s.pid}`:`not running`}),(0,K.jsx)(Ep,{k:`Native engine`,v:c.available?`loaded — sub-ms eval available`:`unavailable — TypeScript fallback`})]}),(0,K.jsxs)(Tp,{title:`Database & MCP`,status:l.status,children:[(0,K.jsx)(Ep,{k:`Rules in DB`,v:l.rules.toLocaleString()}),(0,K.jsx)(Ep,{k:`Audit log rows`,v:l.audit_rows.toLocaleString()}),(0,K.jsx)(Ep,{k:`DB path`,v:Cp(l.path,g),mono:!0}),(0,K.jsxs)(`div`,{className:`mt-2 pt-2 border-t border-[var(--color-line-0)]`,children:[(0,K.jsx)(`div`,{className:`text-[10.5px] uppercase tracking-wide text-[var(--color-fg-3)] mb-1`,children:`MCP server`}),(0,K.jsx)(Ep,{k:`Status`,v:u.status===`active`?`active — ${u.recent_5min.toLocaleString()} calls in last 5 min`:u.status===`configured`?`configured — ${u.total.toLocaleString()} historical calls, none recent`:`no MCP traffic recorded yet`}),(0,K.jsx)(Ep,{k:`All-time calls`,v:u.total.toLocaleString()})]})]}),(0,K.jsxs)(Tp,{title:`Rules directories`,status:d.local_count>0?`ok`:`warn`,children:[(0,K.jsx)(Ep,{k:`Local`,v:`${d.local_count} .rules file${d.local_count===1?``:`s`}`}),(0,K.jsx)(Ep,{k:`Local path`,v:Cp(d.local_dir,g),mono:!0}),(0,K.jsx)(Ep,{k:`Global`,v:`${d.global_count} .rules file${d.global_count===1?``:`s`}`}),(0,K.jsx)(Ep,{k:`Global path`,v:Cp(d.global_dir,g),mono:!0})]}),(0,K.jsx)(Tp,{title:`Project init files`,hint:`${f.filter(e=>e.exists).length}/${f.length} present`,children:(0,K.jsx)(`div`,{children:f.map(e=>(0,K.jsx)(wp,{file:e,home:g},e.path))})}),(0,K.jsx)(Tp,{title:`Adapters, hooks & MCP files`,hint:e.active_adapter?`Active: ${Dp[e.active_adapter]??e.active_adapter}`:`No active adapter`,children:(0,K.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-1 lg:grid-cols-2`,children:p.map(e=>(0,K.jsx)(Op,{adapter:e,home:g},e.id))})}),(0,K.jsxs)(Tp,{title:`Hub-installed rulesets`,status:m.installs.length===0?`skip`:m.drift===0?`ok`:`warn`,hint:m.installs.length===0?`none installed`:`${m.in_sync} in sync${m.drift>0?`, ${m.drift} drift`:``}`,children:[(0,K.jsx)(wp,{file:m.pins_file,home:g}),m.installs.length===0?(0,K.jsxs)(`p`,{className:`text-[11.5px] text-[var(--color-fg-3)] mt-2`,children:[`Install rulesets from the Hub tab. Each install is recorded per project path in `,(0,K.jsx)(`code`,{className:`font-mono`,children:`hub-pins.json`}),`.`]}):(0,K.jsx)(`div`,{className:`mt-2 space-y-2`,children:m.installs.map((e,t)=>(0,K.jsxs)(`div`,{className:`rounded-md border border-[var(--color-line-1)] bg-[var(--color-surface-1)] p-2 text-[11.5px]`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-1`,children:[(0,K.jsx)(yp,{status:e.in_sync?`ok`:`warn`}),(0,K.jsx)(`span`,{className:`font-semibold text-[var(--color-fg-0)]`,children:e.id}),(0,K.jsx)(`span`,{className:`text-[10.5px] text-[var(--color-fg-3)]`,children:e.version}),(0,K.jsx)(`span`,{className:`ml-auto text-[10.5px] text-[var(--color-fg-3)]`,children:Sp(e.installed_at)})]}),(0,K.jsx)(`code`,{className:`block truncate text-[11px] text-[var(--color-fg-2)]`,title:e.path,children:Cp(e.path,g)}),e.files.length>0&&(0,K.jsx)(`div`,{className:`mt-1 flex flex-wrap gap-1`,children:e.files.map(e=>(0,K.jsx)(`span`,{className:`text-[10px] font-mono text-[var(--color-fg-2)] bg-[var(--color-surface-2)] border border-[var(--color-line-0)] rounded-sm px-1.5 py-0.5`,children:e},e))}),!e.in_sync&&e.drift_reason&&(0,K.jsxs)(`div`,{className:`mt-1 text-[10.5px] text-[var(--color-decision-ask)]`,children:[`Drift: `,e.drift_reason]})]},`${e.id}-${e.path}-${t}`))})]})]})}var Ap=[{value:`issue`,label:`Bug / Issue`,hint:`Something is broken`},{value:`feature_request`,label:`Feature Request`,hint:`Suggest an improvement`},{value:`question`,label:`Question`,hint:`How does X work?`},{value:`incident`,label:`Incident`,hint:`Urgent outage or data concern`}],jp=[{value:`p4`,label:`P4 — Low`},{value:`p3`,label:`P3 — Normal`},{value:`p2`,label:`P2 — High (4h SLA)`},{value:`p1`,label:`P1 — Critical (1h SLA)`}],Mp=5,Np=8*1024*1024;function Pp(){let[e,t]=(0,_.useState)(`issue`),[n,r]=(0,_.useState)(`p3`),[i,a]=(0,_.useState)(``),[o,s]=(0,_.useState)(``),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([]),[f,p]=(0,_.useState)(!1),[m,h]=(0,_.useState)(null),[g,v]=(0,_.useState)(null),[y,b]=(0,_.useState)(!1),[x,S]=(0,_.useState)(``),C=(0,_.useRef)(null);(0,_.useEffect)(()=>{fetch(`/api/json/profile`,{headers:B()}).then(e=>e.ok?e.json():null).then(e=>{e?.email&&l(e.email)}).catch(()=>{})},[]),(0,_.useEffect)(()=>{!y||g||fetch(`/api/support/diagnostics?route=${encodeURIComponent(window.location.pathname)}`).then(e=>e.ok?e.json():null).then(e=>v(e)).catch(()=>{})},[y,g]),(0,_.useEffect)(()=>{let e=new URL(window.location.href),n=e.searchParams.get(`error`),r=e.searchParams.get(`from`);if(n||r){t(`issue`);let e=r?`Page: ${r}\n\n`:``,i=n?`Error: ${n}\n\n`:``;s(t=>t||`${e}${i}`)}},[]);function w(e){e.preventDefault(),E(Array.from(e.dataTransfer.files))}function T(e){E(Array.from(e.target.files??[])),C.current&&(C.current.value=``)}function E(e){S(``);let t=e.filter(e=>e.type.startsWith(`image/`));t.length<e.length&&S(`Only image files are accepted.`);let n=Mp-u.length,r=t.slice(0,n);r.length<t.length&&S(`Maximum ${Mp} images. Some were dropped.`);let i=r.filter(e=>e.size>Np);if(i.length>0){S(`"${i[0].name}" exceeds 8 MiB.`);return}let a=r.map(e=>({file:e,preview:URL.createObjectURL(e)}));d(e=>[...e,...a])}function D(e){d(t=>(URL.revokeObjectURL(t[e].preview),t.filter((t,n)=>n!==e)))}async function O(t){t.preventDefault(),p(!0),h(null);let r=new FormData;r.append(`category`,e),r.append(`severity`,n),r.append(`subject`,i.trim()),r.append(`description`,o.trim()),r.append(`contact_email`,c.trim()),r.append(`route`,window.location.pathname);for(let{file:e}of u)r.append(`images`,e,e.name);try{let e=await(await fetch(`/api/support/feedback`,{method:`POST`,headers:B(),body:r})).json();h(e),e.ok&&(a(``),s(``),d([]))}catch(e){h({ok:!1,error:e instanceof Error?e.message:`Network error`})}finally{p(!1)}}return(0,K.jsxs)(`div`,{className:`max-w-2xl mx-auto space-y-5`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`h1`,{className:`text-xl font-medium tracking-tight text-[var(--color-fg-0)]`,children:`Support & Feedback`}),(0,K.jsx)(`p`,{className:`text-[12px] text-[var(--color-fg-3)] mt-1 font-mono`,children:`report a bug, request a feature, or ask a question`})]}),m?.ok?(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`space-y-3 py-2`,children:[(0,K.jsxs)(`p`,{className:`text-sm text-emerald-400 font-mono`,children:[`✓ `,m.message??`Ticket created.`]}),m.ticket_id&&(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-mono`,children:[`Ticket ID: `,(0,K.jsx)(`span`,{className:`text-[var(--color-fg-1)]`,children:m.ticket_id})]}),(0,K.jsx)(`button`,{className:`text-[12px] text-[var(--color-brand)] hover:underline font-mono`,onClick:()=>h(null),children:`Submit another`})]})})}):(0,K.jsxs)(`form`,{onSubmit:O,className:`space-y-4`,children:[(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`label`,{className:`block overline mb-2`,children:`type`}),(0,K.jsx)(`div`,{className:`grid grid-cols-2 gap-2`,children:Ap.map(n=>(0,K.jsxs)(`button`,{type:`button`,onClick:()=>t(n.value),className:`text-left px-3 py-2 rounded-sm border text-xs font-mono transition-colors ${e===n.value?`border-[var(--color-brand)]/50 bg-[var(--color-brand)]/10 text-[var(--color-fg-0)]`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:border-[var(--color-line-0)]`}`,children:[(0,K.jsx)(`span`,{className:`block font-medium text-[var(--color-fg-1)]`,children:n.label}),(0,K.jsx)(`span`,{className:`block text-[11px] mt-0.5`,children:n.hint})]},n.value))})]})}),e===`incident`&&(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsx)(`label`,{className:`block overline mb-2`,children:`severity`}),(0,K.jsx)(`div`,{className:`flex gap-2 flex-wrap`,children:jp.map(e=>(0,K.jsx)(`button`,{type:`button`,onClick:()=>r(e.value),className:`px-3 py-1.5 rounded-sm border text-xs font-mono transition-colors ${n===e.value?`border-[var(--color-brand)]/50 bg-[var(--color-brand)]/10 text-[var(--color-fg-0)]`:`border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:border-[var(--color-line-0)]`}`,children:e.label},e.value))})]})}),(0,K.jsx)(q,{children:(0,K.jsx)(Y,{children:(0,K.jsxs)(`div`,{className:`space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`subject`}),(0,K.jsx)(`input`,{type:`text`,value:i,onChange:e=>a(e.target.value),placeholder:`Short summary (required)`,maxLength:200,required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`description`}),(0,K.jsx)(`textarea`,{value:o,onChange:e=>s(e.target.value),placeholder:`Describe the issue in detail (10–10000 characters)`,minLength:10,maxLength:1e4,required:!0,rows:6,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono resize-y`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`label`,{className:`block overline mb-1.5`,children:`contact email`}),(0,K.jsx)(`input`,{type:`email`,value:c,onChange:e=>l(e.target.value),placeholder:`your@email.com`,required:!0,className:`w-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-1)] text-sm rounded-sm px-3 py-2 focus:outline-none focus:border-[var(--color-brand)]/50 placeholder:text-[var(--color-fg-4)] font-mono`})]})]})})}),(0,K.jsx)(q,{children:(0,K.jsxs)(Y,{children:[(0,K.jsxs)(`label`,{className:`block overline mb-2`,children:[`screenshots / attachments`,` `,(0,K.jsxs)(`span`,{className:`normal-case text-[var(--color-fg-4)] font-mono font-normal`,children:[`(optional, up to `,Mp,` images)`]})]}),u.length<Mp&&(0,K.jsxs)(`div`,{onDragOver:e=>e.preventDefault(),onDrop:w,onClick:()=>C.current?.click(),className:`border border-dashed border-[var(--color-line-1)] rounded-sm p-6 text-center cursor-pointer hover:border-[var(--color-brand)]/50 transition-colors`,children:[(0,K.jsxs)(`p`,{className:`text-xs text-[var(--color-fg-3)] font-mono`,children:[`drag & drop images, or`,` `,(0,K.jsx)(`span`,{className:`text-[var(--color-brand)]`,children:`click to browse`})]}),(0,K.jsx)(`p`,{className:`text-[11px] text-[var(--color-fg-4)] mt-1 font-mono`,children:`PNG · JPEG · WebP · GIF · HEIC — max 8 MiB each`})]}),(0,K.jsx)(`input`,{ref:C,type:`file`,accept:`image/*`,multiple:!0,className:`hidden`,onChange:T}),x&&(0,K.jsx)(`p`,{className:`text-xs text-red-400 font-mono mt-2`,children:x}),u.length>0&&(0,K.jsx)(`div`,{className:`mt-3 flex flex-wrap gap-2`,children:u.map((e,t)=>(0,K.jsxs)(`div`,{className:`relative group`,children:[(0,K.jsx)(`img`,{src:e.preview,alt:e.file.name,className:`h-20 w-20 object-cover rounded-sm border border-[var(--color-line-1)]`}),(0,K.jsx)(`button`,{type:`button`,onClick:()=>D(t),className:`absolute -top-1.5 -right-1.5 w-5 h-5 rounded-full bg-[var(--color-surface-0)] border border-[var(--color-line-1)] text-[var(--color-fg-3)] hover:text-red-400 text-[10px] font-mono flex items-center justify-center`,title:`Remove`,children:`✕`}),(0,K.jsx)(`p`,{className:`text-[10px] font-mono text-[var(--color-fg-4)] mt-0.5 max-w-[80px] truncate`,children:e.file.name})]},t))})]})}),(0,K.jsxs)(`div`,{className:`rounded-sm border border-[var(--color-line-1)] overflow-hidden`,children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>b(e=>!e),className:`w-full flex items-center justify-between px-3 py-2 text-xs font-mono text-[var(--color-fg-3)] hover:text-[var(--color-fg-1)] bg-[var(--color-surface-0)] transition-colors`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`diagnostics that will be attached`}),(0,K.jsx)(`span`,{children:y?`▲`:`▼`})]}),y&&(0,K.jsx)(`div`,{className:`px-3 py-2 bg-[var(--color-surface-0)] border-t border-[var(--color-line-1)] max-h-64 overflow-auto`,children:g?(0,K.jsx)(`pre`,{className:`text-[10px] font-mono text-[var(--color-fg-3)] whitespace-pre-wrap break-all`,children:JSON.stringify(g,null,2)}):(0,K.jsx)(`p`,{className:`text-[11px] font-mono text-[var(--color-fg-4)]`,children:`Loading…`})})]}),m&&!m.ok&&(0,K.jsx)(`div`,{className:`rounded-sm border border-red-500/25 bg-red-500/5 px-3 py-2 text-xs text-red-300 font-mono`,children:m.error??`Submission failed. Please try again.`}),(0,K.jsx)(X,{type:`submit`,variant:`primary`,disabled:f,children:f?`submitting…`:`submit feedback`})]})]})}var Fp=`ssg-dashboard-tabs`,Ip=2e3,Lp=6e3;function Rp(){return`tab-${Date.now()}-${Math.random().toString(36).slice(2,7)}`}function zp(){let[e,t]=(0,_.useState)(0),[n,r]=(0,_.useState)(!0),i=(0,_.useRef)(Rp()),a=(0,_.useRef)(new Map);return(0,_.useEffect)(()=>{if(typeof BroadcastChannel>`u`)return;let e=new BroadcastChannel(Fp);function n(){let e=Date.now();for(let[t,n]of a.current.entries())e-n>Lp&&a.current.delete(t);let n=a.current.size;t(n),r([...a.current.keys(),i.current].sort()[0]===i.current)}function o(e){let t=e.data;!t||t.id===i.current||(t.type===`leave`?a.current.delete(t.id):a.current.set(t.id,Date.now()),n())}e.addEventListener(`message`,o),e.postMessage({type:`join`,id:i.current});let s=setInterval(()=>{e.postMessage({type:`heartbeat`,id:i.current}),n()},Ip),c=()=>{e.postMessage({type:`leave`,id:i.current})};return window.addEventListener(`beforeunload`,c),()=>{clearInterval(s),e.postMessage({type:`leave`,id:i.current}),e.removeEventListener(`message`,o),e.close(),window.removeEventListener(`beforeunload`,c)}},[]),{otherTabCount:e,isLeader:n}}var Bp=b;function Vp(){(0,_.useEffect)(()=>Ce([]),[]);let e=(0,_.useSyncExternalStore)(R,ge),[,t]=(0,_.useState)(0);(0,_.useEffect)(()=>{if(e.connected||e.lastErrorAt===null)return;let n=setInterval(()=>t(e=>e+1),1e3);return()=>clearInterval(n)},[e.connected,e.lastErrorAt]);let n=Hp(e),r=n===`reconnecting`&&e.lastErrorAt!==null?Math.max(0,Math.ceil((e.lastErrorAt+e.reconnectDelayMs-Date.now())/1e3)):null,i=Math.round(Bp/1e3);if(n===`connected`)return(0,K.jsxs)(`div`,{className:`chip`,title:`Telemetry Live — SSE connected`,"data-testid":`sse-status-chip`,"data-state":`connected`,children:[(0,K.jsx)(`span`,{className:`status-dot bg-[var(--color-decision-allow)]`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:`Live`})]});let a=n===`reconnecting`,o=a?{color:`var(--color-hig-orange)`,background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`}:{color:`var(--color-hig-red)`,background:`color-mix(in oklab, var(--color-hig-red) 14%, transparent)`},s=a?`bg-[var(--color-hig-orange)]`:`bg-[var(--color-hig-red)]`,c=a?r===null?`Reconnecting`:`Reconnect ${r}s`:`Offline`,l=`Live paused · ${i}s poll`;return(0,K.jsxs)(`div`,{className:`chip`,style:o,title:a?`Live stream down — reconnect in ${r??`…`}s (attempt ${e.reconnectAttempts}). Dashboard is polling every ${i}s until SSE recovers.`:`Live stream disconnected. Dashboard is polling every ${i}s — data still updates, just at a coarser cadence.`,"data-testid":`sse-status-chip`,"data-state":n,role:`status`,"aria-live":`polite`,children:[(0,K.jsx)(`span`,{className:`status-dot ${s} pulse-soft`}),(0,K.jsx)(`span`,{className:`hidden md:inline`,children:l}),(0,K.jsx)(`span`,{className:`md:hidden`,children:c})]})}function Hp(e){return e.connected?`connected`:e.reconnectAttempts>0||e.lastErrorAt!==null?`reconnecting`:`disconnected`}var Up=`ssg:ui:font-scale:v1`,Wp=[{label:`S`,value:.9},{label:`M`,value:1},{label:`L`,value:1.15},{label:`XL`,value:1.3}],Gp=1;function Kp(e){if(typeof e!=`number`||!Number.isFinite(e))return Gp;let t=Wp.find(t=>Math.abs(t.value-e)<.001);return t?t.value:Gp}function qp(){if(typeof localStorage>`u`)return Gp;try{let e=localStorage.getItem(Up);return e===null?Gp:Kp(parseFloat(e))}catch{return Gp}}function Jp(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(Up,String(e))}catch{}}function Yp(e){typeof document>`u`||(document.documentElement.style.setProperty(`--ssg-font-scale`,String(e)),document.documentElement.style.fontSize=`${16*e}px`)}function Xp(){let[e,t]=(0,_.useState)(()=>{let e=qp();return Yp(e),e});return(0,_.useEffect)(()=>{Yp(e)},[e]),{scale:e,setScale:(0,_.useCallback)(e=>{t(e),Jp(e),Yp(e)},[])}}function Zp(){let{scale:e,setScale:t}=Xp();return(0,K.jsx)(`div`,{role:`radiogroup`,"aria-label":`Font size`,className:`hig-segmented`,style:{height:`24px`},children:Wp.map(n=>{let r=Math.abs(n.value-e)<.001;return(0,K.jsx)(`button`,{role:`radio`,"aria-checked":r,"aria-selected":r,onClick:()=>t(n.value),title:`Font size: ${n.label} (${Math.round(n.value*100)}%)`,className:r?`selected`:``,style:{height:`20px`,padding:`0 8px`,fontSize:`11px`},children:n.label},n.label)})})}var Qp=`ssg:ui:theme:v1`,$p=[{label:`System (Auto)`,value:`default`},{label:`Apple Light`,value:`apple-light`},{label:`Apple Dark`,value:`apple-dark`},{label:`Light (Legacy)`,value:`light`},{label:`Dracula`,value:`dracula`},{label:`Gruvbox Dark`,value:`gruvbox-dark`},{label:`Gruvbox Light`,value:`gruvbox-light`},{label:`Tokyo Night`,value:`tokyo-night`},{label:`Catppuccin Mocha`,value:`catppuccin-mocha`},{label:`Nord`,value:`nord`},{label:`One Dark Pro`,value:`one-dark-pro`}],em=new Set([`light`,`gruvbox-light`,`apple-light`]),tm=new Set([`apple-dark`,`dracula`,`gruvbox-dark`,`tokyo-night`,`catppuccin-mocha`,`nord`,`one-dark-pro`]),nm=`default`;function rm(e){return typeof e==`string`&&$p.some(t=>t.value===e)}function im(){if(typeof localStorage>`u`)return nm;try{let e=localStorage.getItem(Qp);return rm(e)?e:nm}catch{return nm}}function am(e){if(!(typeof localStorage>`u`))try{localStorage.setItem(Qp,e)}catch{}}function om(e){typeof document>`u`||(e===nm?(document.documentElement.removeAttribute(`data-theme`),document.documentElement.style.colorScheme=`light dark`):(document.documentElement.setAttribute(`data-theme`,e),document.documentElement.style.colorScheme=em.has(e)?`light`:tm.has(e)?`dark`:`light dark`))}function sm(){let[e,t]=(0,_.useState)(()=>{let e=im();return om(e),e});return(0,_.useEffect)(()=>{om(e)},[e]),{theme:e,setTheme:(0,_.useCallback)(e=>{t(e),am(e),om(e)},[])}}function cm(){let{theme:e,setTheme:t}=sm();return(0,K.jsx)(`select`,{value:e,onChange:e=>t(e.target.value),"aria-label":`Color theme`,title:`Color theme`,className:`hig-input cursor-pointer`,style:{height:`24px`,paddingRight:`22px`,minWidth:`90px`},children:$p.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))})}function lm(){let{mode:e,setMode:t}=_u(),n=e===`newcomer`;return(0,K.jsxs)(`div`,{role:`radiogroup`,"aria-label":`UI mode`,className:`hig-segmented`,style:{height:`24px`},title:n?`Switch to advanced view`:`Switch to simple view`,children:[(0,K.jsx)(`button`,{role:`radio`,"aria-checked":n,"aria-selected":n,onClick:()=>t(`newcomer`),className:n?`selected`:``,style:{height:`20px`,padding:`0 10px`,fontSize:`11.5px`},children:`Simple`}),(0,K.jsx)(`button`,{role:`radio`,"aria-checked":!n,"aria-selected":!n,onClick:()=>t(`pro`),className:n?``:`selected`,style:{height:`20px`,padding:`0 10px`,fontSize:`11.5px`},children:`Advanced`})]})}function um(){let[e,t]=(0,_.useState)(()=>Lo()),[n,r]=(0,_.useState)(()=>zo()),[i,a]=(0,_.useState)(!1);return(0,_.useEffect)(()=>{Ro(e)},[e]),(0,_.useEffect)(()=>{Bo(n)},[n]),(0,K.jsxs)(`div`,{className:`relative flex items-center`,children:[(0,K.jsxs)(`button`,{onClick:()=>t(e=>!e),onContextMenu:e=>{e.preventDefault(),a(e=>!e)},className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors`,style:e?{color:`var(--color-decision-allow)`}:void 0,title:e?`Decision chimes on · click to mute · right-click for volume`:`Decision chimes off · click to enable`,children:[(0,K.jsx)(`span`,{className:`status-dot ${e?`bg-[var(--color-decision-allow)]`:`bg-[var(--color-fg-4)]`}`}),(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`Audio `,e?`on`:`off`]})]}),i&&(0,K.jsxs)(`div`,{className:`absolute right-0 top-full mt-1 z-50 flex items-center gap-2 px-3 py-2 hig-card hig-card-padded shadow-[var(--hig-shadow-2)]`,onMouseLeave:()=>a(!1),children:[(0,K.jsx)(`span`,{className:`overline`,children:`Volume`}),(0,K.jsx)(`input`,{type:`range`,min:0,max:1,step:.02,value:n,onChange:e=>r(parseFloat(e.target.value)),className:`w-24`,style:{accentColor:`var(--color-accent)`}}),(0,K.jsx)(`span`,{className:`text-[11px] font-mono tabular-nums text-[var(--color-fg-2)] w-8 text-right`,children:Math.round(n*100)})]})]})}var dm={dashboard:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`3`,y:`3`,width:`7`,height:`9`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`14`,y:`3`,width:`7`,height:`5`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`14`,y:`12`,width:`7`,height:`9`,rx:`1.5`}),(0,K.jsx)(`rect`,{x:`3`,y:`16`,width:`7`,height:`5`,rx:`1.5`})]}),graph:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`6`,cy:`18`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`18`,cy:`6`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`18`,cy:`18`,r:`2.4`}),(0,K.jsx)(`circle`,{cx:`12`,cy:`11`,r:`2.4`}),(0,K.jsx)(`path`,{d:`M7.5 16.5l3-4M13.5 11.5l3-3.5M13.5 12l3 4.5`})]}),rules:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 5h11M9 12h11M9 19h11`}),(0,K.jsx)(`path`,{d:`M4 5l1 1 2-2M4 12l1 1 2-2M4 19l1 1 2-2`})]}),hub:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,K.jsx)(`path`,{d:`M3 12h18`}),(0,K.jsx)(`path`,{d:`M12 3a14 14 0 010 18M12 3a14 14 0 000 18`})]}),audit:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`11`,cy:`11`,r:`6.5`}),(0,K.jsx)(`path`,{d:`M21 21l-5-5`})]}),approvals:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M5 7h14v12a2 2 0 01-2 2H7a2 2 0 01-2-2z`}),(0,K.jsx)(`path`,{d:`M9 3v4M15 3v4`}),(0,K.jsx)(`path`,{d:`M9 13l2 2 4-4`})]}),profile:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`8`,r:`4`}),(0,K.jsx)(`path`,{d:`M4 21c0-4.4 3.6-8 8-8s8 3.6 8 8`})]}),monitor:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M3 12h3l3-7 4 14 3-7h5`})}),observability:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M4 20h16M7 16V8M11 16V4M15 16v-6M19 16v-3`})}),debug:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`7`,y:`7`,width:`10`,height:`12`,rx:`5`}),(0,K.jsx)(`path`,{d:`M12 7V4M9 4l3 3 3-3`}),(0,K.jsx)(`path`,{d:`M5 11l2-1M5 18l2-1M19 11l-2-1M19 18l-2-1`})]}),home:(0,K.jsx)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:(0,K.jsx)(`path`,{d:`M3 11l9-7 9 7v9a2 2 0 01-2 2h-3v-7H10v7H5a2 2 0 01-2-2z`})}),guardrails:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M12 3l8 3.7v6.3c0 5-3.5 9.6-8 11-4.5-1.4-8-6-8-11V6.7L12 3z`}),(0,K.jsx)(`path`,{d:`M9 12l2 2 4-4`})]}),tryit:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 3v6L4.5 18a2 2 0 001.7 3h11.6a2 2 0 001.7-3L15 9V3`}),(0,K.jsx)(`path`,{d:`M8 3h8`})]}),agents:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`8`,cy:`9`,r:`3`}),(0,K.jsx)(`circle`,{cx:`16`,cy:`9`,r:`3`}),(0,K.jsx)(`path`,{d:`M3 19c.7-2.5 2.6-4 5-4`}),(0,K.jsx)(`path`,{d:`M21 19c-.7-2.5-2.6-4-5-4`}),(0,K.jsx)(`path`,{d:`M9 17.5c.8-1 1.8-1.5 3-1.5s2.2.5 3 1.5`})]}),notifications:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M18 16v-5a6 6 0 1 0-12 0v5l-2 2h16z`}),(0,K.jsx)(`path`,{d:`M10 20a2 2 0 0 0 4 0`})]}),setup:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M9 12l2 2 4-4`}),(0,K.jsx)(`path`,{d:`M12 3l8 3.7v6.3c0 5-3.5 9.6-8 11-4.5-1.4-8-6-8-11V6.7L12 3z`})]}),support:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`9`}),(0,K.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3.5`}),(0,K.jsx)(`path`,{d:`M12 2.5v6M12 15.5v6M2.5 12h6M15.5 12h6`})]}),workspace:(0,K.jsxs)(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`rect`,{x:`3`,y:`4`,width:`18`,height:`14`,rx:`2`}),(0,K.jsx)(`path`,{d:`M3 9h18M8 14h2M14 14h2`}),(0,K.jsx)(`path`,{d:`M9 20h6`})]})},fm=[{title:`Overview`,items:[{path:`/`,label:`Dashboard`,icon:`dashboard`},{path:`/notifications`,label:`Notifications`,icon:`notifications`},{path:`/agents`,label:`Agents`,icon:`agents`},{path:`/graph`,label:`Graph`,icon:`graph`}]},{title:`Rules`,items:[{path:`/rules`,label:`Rules`,icon:`rules`},{path:`/hub`,label:`Hub`,icon:`hub`},{path:`/approvals`,label:`Approvals`,icon:`approvals`}]},{title:`Activity`,items:[{path:`/audit`,label:`Audit`,icon:`audit`},{path:`/monitor`,label:`Monitor`,icon:`monitor`},{path:`/observability`,label:`Observability`,icon:`observability`}]},{title:`Tools`,items:[{path:`/workspace`,label:`Workspace`,icon:`workspace`},{path:`/setup`,label:`Setup`,icon:`setup`},{path:`/debug`,label:`Debug`,icon:`debug`},{path:`/profile`,label:`Profile`,icon:`profile`},{path:`/support`,label:`Support`,icon:`support`}]}],pm=[{title:`Get Started`,items:[{path:`/`,label:`Home`,icon:`home`},{path:`/agents`,label:`Agents`,icon:`agents`},{path:`/guardrails`,label:`Guardrails`,icon:`guardrails`},{path:`/try`,label:`Try It`,icon:`tryit`}]},{title:`Activity`,items:[{path:`/notifications`,label:`Notifications`,icon:`notifications`},{path:`/audit`,label:`Activity`,icon:`audit`},{path:`/approvals`,label:`Approvals`,icon:`approvals`}]},{title:`You`,items:[{path:`/setup`,label:`Setup`,icon:`setup`},{path:`/profile`,label:`Profile`,icon:`profile`},{path:`/support`,label:`Support`,icon:`support`}]}];function mm(e){return e===`newcomer`?pm:fm}function hm(e){let t=Math.max(0,e-Date.now()),n=Math.floor(t/1e3);if(n<60)return`${n}s`;let r=Math.floor(n/60);return r<60?`${r}m ${n%60}s`:`${Math.floor(r/60)}h ${r%60}m`}function gm(){let{data:e}=V(`/api/json/daemon-status`,[ke([`counters-updated`])[`counters-updated`]]),[t,n]=(0,_.useState)(!1),[,r]=(0,_.useState)(0);(0,_.useEffect)(()=>{if(e?.status!==`degraded`||!e.hibernation)return;let t=setInterval(()=>r(e=>e+1),1e3);return()=>clearInterval(t)},[e?.status,e?.hibernation]);let i=e?.status??`starting`,a=i===`running`?`bg-[var(--color-decision-allow)]`:i===`starting`||i===`degraded`?`bg-[var(--color-decision-ask)]`:`bg-[var(--color-decision-block)]`,o=i===`starting`||i===`degraded`?`pulse-soft`:``,s=i===`degraded`&&e?.hibernation?hm(e.hibernation.nextRetryAt):null,c=i===`running`?`Daemon`:i===`starting`?`Booting`:i===`degraded`?`Retry ${s??`…`}`:i===`error`?`Error`:`Offline`;return(0,K.jsxs)(`div`,{className:`relative`,children:[(0,K.jsxs)(`button`,{onClick:()=>n(e=>!e),className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors`,title:i===`running`?`Daemon running`:i===`starting`?`Daemon starting…`:i===`degraded`?`Daemon hibernating — retry in ${s??`…`}`:i===`error`?`Daemon error`:`Daemon stopped`,children:[(0,K.jsx)(`span`,{className:`status-dot ${a} ${o}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:c})]}),t&&(0,K.jsxs)(`div`,{className:`absolute right-0 top-7 z-50 w-72 hig-card hig-card-padded text-xs`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between mb-2`,children:[(0,K.jsx)(`span`,{className:`overline`,children:`Eval Daemon`}),(0,K.jsx)(`button`,{onClick:()=>n(!1),className:`text-[var(--color-fg-3)] hover:text-[var(--color-fg-0)] cursor-pointer`,children:`✕`})]}),(0,K.jsxs)(`div`,{className:`space-y-1 text-[var(--color-fg-2)]`,children:[(0,K.jsxs)(`div`,{className:`font-mono text-[11px]`,children:[`status:`,` `,(0,K.jsx)(`span`,{className:i===`running`?`text-[var(--color-decision-allow)]`:i===`starting`||i===`degraded`?`text-[var(--color-decision-ask)]`:`text-[var(--color-decision-block)]`,children:i})]}),e?.pid&&(0,K.jsxs)(`div`,{className:`font-mono text-[11px]`,children:[`pid: `,e.pid]}),i===`degraded`&&e?.hibernation&&(0,K.jsxs)(`div`,{className:`mt-2 rounded-lg p-2 text-[11px] space-y-0.5`,style:{background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`,color:`color-mix(in oklab, var(--color-hig-orange) 90%, var(--color-fg-0))`},children:[(0,K.jsxs)(`div`,{children:[`next retry: `,(0,K.jsx)(`span`,{className:`font-medium`,children:s})]}),(0,K.jsxs)(`div`,{children:[`episode attempt: `,e.hibernation.attempt,e.hibernation.reason?` (${e.hibernation.reason})`:``]}),(0,K.jsx)(`div`,{className:`opacity-70`,children:`Slow-tier supervisor is retrying at long backoff — no manual restart required.`})]})]}),e?.logTail&&e.logTail.length>0&&(0,K.jsxs)(`div`,{className:`mt-3`,children:[(0,K.jsx)(`div`,{className:`overline mb-1`,children:`Recent log`}),(0,K.jsx)(`pre`,{className:`bg-[var(--color-surface-2)] border border-[var(--color-line-0)] rounded-md p-2 text-[10px] text-[var(--color-fg-2)] overflow-x-auto whitespace-pre-wrap break-all max-h-32 overflow-y-auto`,children:e.logTail.join(`
37
+ `)})]})]})]})}function _m(){let{data:e}=V(`/api/state/activity-degraded`);if(!e?.degraded)return null;let t=e.since?new Date(e.since).toLocaleTimeString():`recently`;return(0,K.jsxs)(`div`,{role:`status`,className:`hig-banner hig-banner-warning`,title:e.reason??`audit-worker degraded`,children:[(0,K.jsx)(`span`,{children:`⚠`}),(0,K.jsxs)(`span`,{children:[`Audit pipeline degraded since `,t,` — entries may be missing. Run`,` `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg daemon --status`}),` to inspect.`]})]})}function vm(){let{data:e}=V(`/api/json/license`,[ke([`counters-updated`])[`counters-updated`]]);return!e||e.tier!==`unlicensed`||e.status===`needs_reauth`||e.status===`needs_login`||e.eval_daily_limit===null||e.evals_today<e.eval_daily_limit?null:(0,K.jsxs)(`div`,{role:`alert`,className:`hig-banner hig-banner-error`,title:`Free tier daily eval limit reached — rules are being bypassed until quota resets`,children:[(0,K.jsx)(`span`,{children:`●`}),(0,K.jsxs)(`span`,{children:[`Quota exhausted — `,e.evals_today.toLocaleString(),`/`,e.eval_daily_limit.toLocaleString(),` evals used today. BLOCK and ASK rules are being bypassed (fail-open) until daily reset.`,` `,(0,K.jsx)(`a`,{href:e.upgrade_url,target:`_blank`,rel:`noopener noreferrer`,className:`underline font-medium`,children:`Upgrade to Pro →`})]})]})}function ym(){let{data:e}=V(`/api/json/license`,[ke([`counters-updated`])[`counters-updated`]]);if(!e||e.status!==`needs_reauth`)return null;let t=e.detail??`License JWT invalid or expired`;return(0,K.jsxs)(`div`,{role:`alert`,className:`hig-banner hig-banner-warning`,title:`Re-authentication required — paid-tier features are paused until you re-login`,children:[(0,K.jsx)(`span`,{children:`⚠`}),(0,K.jsxs)(`span`,{children:[`Re-authentication required — `,t,`. Run`,` `,(0,K.jsx)(`code`,{className:`font-mono`,children:`ssg auth login`}),` in your terminal to restore your tier.`]})]})}function bm(){let{data:e,refetch:t}=V(`/api/json/ask-mode`),[n,r]=(0,_.useState)(!1),i=e?.mode??`tty`;async function a(e){if(!(n||e===i)){r(!0);try{await fetch(`/api/json/ask-mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})}),t()}finally{r(!1)}}}let o=i===`tty`;return(0,K.jsxs)(`button`,{onClick:()=>a(o?`dashboard`:`tty`),disabled:n,className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors disabled:opacity-50`,title:o?`ASK decisions prompt in the native IDE/TTY. Click to route to dashboard.`:`ASK decisions queue on /approvals. Click to route to native prompt.`,children:[(0,K.jsx)(`span`,{className:`status-dot ${o?`bg-[var(--color-hig-blue)]`:`bg-[var(--color-hig-purple)]`}`}),(0,K.jsxs)(`span`,{className:`hidden sm:inline`,children:[`Ask · `,o?`Native`:`Dashboard`]})]})}function xm(e){let t=new Date(e);return`${t.getHours().toString().padStart(2,`0`)}:${t.getMinutes().toString().padStart(2,`0`)}`}var Sm={on:`audit`,audit:`off`,off:`on`};function Cm(){let{data:e,refetch:t}=V(`/api/json/mode`,[ke([`mode-changed`])[`mode-changed`]]),[n,r]=(0,_.useState)(!1),i=e?.mode??`on`;async function a(e,i){if(!n){r(!0);try{let n={mode:e};typeof i==`number`&&i>0&&(n.forMs=i),await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify(n)}),t()}finally{r(!1)}}}let o=i===`on`?`bg-[var(--color-hig-green)]`:i===`audit`?`bg-[var(--color-hig-orange)]`:`bg-[var(--color-hig-red)]`,s=e?.rearmAt!==void 0&&i!==`on`?` · until ${xm(e.rearmAt)}`:``,c=`SSG · ${i.toUpperCase()}${s}`;return(0,K.jsxs)(`button`,{onClick:e=>{e.shiftKey?a(i===`off`?`audit`:`on`):a(Sm[i])},disabled:n,className:`chip cursor-pointer hover:bg-[var(--color-fill-2)] transition-colors disabled:opacity-50`,title:i===`on`?`SSG ON — rules enforce normally. Click to cycle: On → Audit → Off.`:i===`audit`?`SSG AUDIT — rules log only, nothing blocked or prompted. Click for Off; Shift+Click to resume On.`:`SSG OFF — kill switch engaged, evaluator returns allow. Click to resume On; Shift+Click for Audit.`,children:[(0,K.jsx)(`span`,{className:`status-dot ${o}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:c})]})}function wm(){let{data:e,refetch:t}=V(`/api/json/mode`,[ke([`mode-changed`])[`mode-changed`]]),n=e?.mode??`on`;if(n===`on`)return null;let r=e?.rearmAt===void 0?``:` Auto-restores at ${xm(e.rearmAt)}.`,i=n===`off`?`SSG is OFF — kill switch engaged.`:`SSG is in AUDIT mode — log-only.`,a=n===`off`?`Every tool call is being allowed without evaluation.${r}`:`Rules still match for the audit log, but nothing is being blocked or prompted.${r}`,o=n===`off`?`hig-banner hig-banner-error`:`hig-banner hig-banner-warning`;async function s(){await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:`on`})}),t()}return(0,K.jsxs)(`div`,{className:o,children:[(0,K.jsxs)(`svg`,{className:`shrink-0`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),(0,K.jsxs)(`span`,{className:`flex-1`,children:[(0,K.jsx)(`span`,{className:`font-semibold`,children:i}),` `,a]}),(0,K.jsx)(`button`,{onClick:s,className:`hig-button hig-button-small`,title:`Re-enable normal rule enforcement`,children:`Resume`})]})}function Tm({onRefresh:e}){return(0,K.jsx)(`button`,{onClick:e,className:`hig-button`,title:`Reset page — clears stale graph state without dropping SSE`,"aria-label":`Refresh page`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M21 12a9 9 0 1 1-3-6.7`}),(0,K.jsx)(`polyline`,{points:`21 3 21 9 15 9`})]})})}function Em(){return(0,K.jsx)(`button`,{onClick:()=>{try{window.location.reload()}catch{}},className:`hig-button`,title:`Reload dashboard — fetches fresh assets (use after a desktop upgrade)`,"aria-label":`Reload dashboard`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M3 12a9 9 0 1 1 3 6.7`}),(0,K.jsx)(`polyline`,{points:`3 21 3 15 9 15`}),(0,K.jsx)(`path`,{d:`M3 3v6h6`})]})})}function Dm(){let{data:e}=V(`/api/json/mcp-status`,[ke([`activity-updated`])[`activity-updated`]]),t=e?.status??`inactive`;if(t===`inactive`)return null;let n=t===`active`?`bg-[var(--color-hig-blue)]`:`bg-[var(--color-fg-3)]`,r=t===`active`?`MCP active`:`MCP idle`;return(0,K.jsxs)(`div`,{className:`chip`,title:t===`active`?`MCP server: ${e?.recentCount??0} evals in last 5 min`:`MCP server: ${e?.totalCount??0} total evals`,children:[(0,K.jsx)(`span`,{className:`status-dot ${n}`}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:r})]})}function Om(){let{data:e}=V(`/api/json/adapters`);if(!e)return null;let t=e.adapters.find(e=>e.active);if(!t)return null;let n=t.id===`generic`;return(0,K.jsxs)(`a`,{href:`/agents`,className:`chip ss-agent-chip cursor-pointer transition-all`,title:n?`No specific AI client detected — SSG is running in generic adapter mode. Click to wire one up.`:`Connected agent: ${t.displayName} (${t.vendor}). Click to manage.`,style:{"--agent-accent":t.accent},"data-generic":n?`true`:`false`,children:[(0,K.jsx)(`span`,{className:`status-dot`,style:{background:t.accent,boxShadow:`0 0 6px color-mix(in oklab, ${t.accent} 60%, transparent)`}}),(0,K.jsx)(`span`,{className:`hidden sm:inline`,children:t.displayName})]})}function km(e,t){if(e===`/`)return t===`newcomer`?(0,K.jsx)(If,{}):(0,K.jsx)(ic,{});if(e===`/classic`)return(0,K.jsx)(dl,{});if(e===`/graph`)return(0,K.jsx)(lf,{});if(e===`/debug`)return(0,K.jsx)(df,{});if(e===`/rules`)return(0,K.jsx)(El,{});if(e===`/audit`)return(0,K.jsx)(Al,{});if(e===`/approvals`)return(0,K.jsx)(Gl,{});if(e===`/profile`)return(0,K.jsx)(lu,{});if(e===`/agents`)return(0,K.jsx)(mp,{});if(e===`/notifications`)return(0,K.jsx)(vp,{});if(e===`/setup`)return(0,K.jsx)(kp,{});if(e===`/try`)return(0,K.jsx)(Xf,{});if(e===`/guardrails`)return(0,K.jsx)(xu,{});if(e===`/hub/connect`)return(0,K.jsx)(Iu,{});if(e===`/hub/publish`)return(0,K.jsx)(Lu,{});if(e.startsWith(`/hub/`)){let t=e.slice(5);if(t)return(0,K.jsx)(Fu,{id:t})}return e===`/hub`?(0,K.jsx)(Mu,{}):e===`/monitor`?(0,K.jsx)(Xu,{}):e===`/observability`?(0,K.jsx)(gd,{}):e===`/support`?(0,K.jsx)(Pp,{}):(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-24 text-[var(--color-fg-3)]`,children:[(0,K.jsx)(`p`,{className:`overline mb-2`,children:`Error · 404`}),(0,K.jsx)(`p`,{className:`text-sm`,children:`Page not found`}),(0,K.jsx)(`a`,{href:`/`,className:`mt-4 text-[12px] text-[var(--color-hig-blue)] hover:underline`,children:`← Back to dashboard`})]})}function Am(e,t){return e===`/`?t===`newcomer`?`Home`:`Dashboard`:e===`/classic`?`Classic Dashboard`:e===`/graph`?`Graph`:e===`/debug`?`Debug`:e===`/rules`?`Rules`:e===`/audit`?t===`newcomer`?`Activity`:`Audit`:e===`/approvals`?`Approvals`:e===`/profile`?`Profile`:e===`/agents`?`Agents`:e===`/notifications`?`Notifications`:e===`/setup`?`Setup Status`:e===`/try`?`Try It`:e===`/guardrails`?`Guardrails`:e===`/hub/connect`?`Connect Hub`:e===`/hub/publish`?`Publish to Hub`:e.startsWith(`/hub/`)||e===`/hub`?`Hub`:e===`/monitor`?`Monitor`:e===`/observability`?`Observability`:e===`/support`?`Support & Feedback`:`SigmaShake`}function jm(e){history.pushState(null,``,e),window.dispatchEvent(new PopStateEvent(`popstate`))}function Mm({count:e}){let[t,n]=(0,_.useState)(!1);return t||e===0?null:(0,K.jsxs)(`div`,{className:`hig-banner hig-banner-warning`,children:[(0,K.jsxs)(`svg`,{className:`shrink-0`,width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`path`,{d:`M10.29 3.86 1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z`}),(0,K.jsx)(`line`,{x1:`12`,y1:`9`,x2:`12`,y2:`13`}),(0,K.jsx)(`line`,{x1:`12`,y1:`17`,x2:`12.01`,y2:`17`})]}),(0,K.jsxs)(`span`,{className:`flex-1`,children:[(0,K.jsxs)(`span`,{className:`font-semibold`,children:[e,` other `,e===1?`tab`:`tabs`,` open.`]}),` `,`Each tab holds a live SSE connection. Browsers limit connections per origin — too many tabs will prevent this page from loading.`,` `,(0,K.jsx)(`span`,{className:`opacity-70`,children:`Close other tabs to restore full live-update functionality.`})]}),(0,K.jsx)(`button`,{onClick:()=>n(!0),className:`opacity-60 hover:opacity-100 transition-opacity shrink-0 cursor-pointer`,title:`Dismiss`,children:(0,K.jsxs)(`svg`,{width:`13`,height:`13`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`6`,x2:`6`,y2:`18`}),(0,K.jsx)(`line`,{x1:`6`,y1:`6`,x2:`18`,y2:`18`})]})})]})}function Nm({pathname:e,navSections:t,open:n,onClose:r}){let i=t=>t===`/`?e===`/`:e.startsWith(t);return(0,K.jsxs)(`aside`,{className:`hig-sidebar ${n?`open`:``}`,"aria-label":`Primary`,children:[(0,K.jsxs)(`div`,{className:`hig-sidebar-header`,children:[(0,K.jsx)(`span`,{className:`hig-app-icon`,"aria-hidden":`true`,children:`SS`}),(0,K.jsxs)(`div`,{children:[(0,K.jsx)(`div`,{className:`hig-app-name`,children:`SigmaShake`}),(0,K.jsx)(`div`,{className:`hig-app-meta`,children:`Governance`})]})]}),(0,K.jsx)(`nav`,{className:`hig-sidebar-nav`,children:t.map(e=>(0,K.jsxs)(`div`,{className:`hig-sidebar-section`,children:[(0,K.jsx)(`div`,{className:`hig-sidebar-section-title`,children:e.title}),e.items.map(e=>(0,K.jsxs)(`a`,{href:e.path,onClick:r,className:`hig-sidebar-item`,"data-active":i(e.path)?`true`:`false`,children:[(0,K.jsx)(`span`,{className:`hig-sidebar-icon`,"aria-hidden":`true`,children:dm[e.icon]}),(0,K.jsx)(`span`,{children:e.label})]},e.path))]},e.title))})]})}function Pm(){let[e,t]=(0,_.useState)(window.location.pathname),[n,r]=(0,_.useState)(0),[i,a]=(0,_.useState)(!1),{otherTabCount:o}=zp(),{mode:s,setMode:c}=_u(),l=mm(s),u=Am(e,s),[d,f]=(0,_.useState)(0),p=(0,_.useMemo)(()=>({navigate:e=>jm(e),async setSsgMode(e){await fetch(`/api/json/mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})})},async setAskMode(e){await fetch(`/api/json/ask-mode`,{method:`POST`,headers:{"Content-Type":`application/json`,...B()},body:JSON.stringify({mode:e})})},setUiMode:e=>c(e),refresh:()=>r(e=>e+1),hardReload:()=>{try{window.location.reload()}catch{}}}),[c]);return(0,_.useEffect)(()=>{let e=e=>{let t=e.detail;if(!t?.selector)return;let n=null;try{n=document.querySelector(t.selector)}catch{return}if(!n)return;n.classList.remove(`voice-nav-pulse`),n.offsetWidth,n.classList.add(`voice-nav-pulse`);let r=window.setTimeout(()=>{n?.classList.remove(`voice-nav-pulse`)},1100);return()=>window.clearTimeout(r)},t=()=>f(e=>e+1);return window.addEventListener(`ssg:voice-target`,e),window.addEventListener(`ssg:voice-page-morph`,t),()=>{window.removeEventListener(`ssg:voice-target`,e),window.removeEventListener(`ssg:voice-page-morph`,t)}},[]),(0,_.useEffect)(()=>{let e=()=>t(window.location.pathname);return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[]),(0,_.useEffect)(()=>{a(!1)},[e]),(0,_.useEffect)(()=>{let e=e=>{let t=e.target.closest(`a`);if(!t)return;let n=t.getAttribute(`href`);!n||n.startsWith(`http`)||n.startsWith(`//`)||n===`/workspace`||n.startsWith(`/workspace/`)||(e.preventDefault(),jm(n))};return document.addEventListener(`click`,e),()=>document.removeEventListener(`click`,e)},[]),(0,K.jsxs)(`div`,{className:`hig-app`,children:[(0,K.jsx)(Nm,{pathname:e,navSections:l,open:i,onClose:()=>a(!1)}),(0,K.jsxs)(`div`,{className:`hig-window`,children:[(0,K.jsxs)(`header`,{className:`hig-toolbar`,children:[(0,K.jsx)(`button`,{"aria-label":`Toggle sidebar`,className:`md:hidden hig-button hig-button-small`,onClick:()=>a(e=>!e),children:(0,K.jsxs)(`svg`,{width:`14`,height:`14`,viewBox:`0 0 18 18`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.8`,strokeLinecap:`round`,children:[(0,K.jsx)(`line`,{x1:`2`,y1:`5`,x2:`16`,y2:`5`}),(0,K.jsx)(`line`,{x1:`2`,y1:`9`,x2:`16`,y2:`9`}),(0,K.jsx)(`line`,{x1:`2`,y1:`13`,x2:`16`,y2:`13`})]})}),(0,K.jsx)(`h1`,{className:`hig-toolbar-title`,children:u}),(0,K.jsx)(`div`,{className:`hig-toolbar-spacer`}),(0,K.jsxs)(`div`,{className:`hig-toolbar-controls hidden md:flex`,children:[o>0&&(0,K.jsxs)(`span`,{className:`chip`,style:{color:`var(--color-hig-orange)`,background:`color-mix(in oklab, var(--color-hig-orange) 14%, transparent)`},title:`${o} other tab${o===1?``:`s`} open — may cause connection issues`,children:[o+1,` tabs`]}),(0,K.jsx)(Vp,{}),(0,K.jsx)(Cm,{}),(0,K.jsx)(bm,{}),(0,K.jsx)(Om,{}),(0,K.jsx)(Dm,{}),(0,K.jsx)(gm,{}),(0,K.jsx)(Tm,{onRefresh:()=>r(e=>e+1)}),(0,K.jsx)(Em,{}),(0,K.jsx)(lm,{}),(0,K.jsx)(cm,{}),(0,K.jsx)(Zp,{}),(0,K.jsx)(um,{})]})]}),(0,K.jsx)(wm,{}),(0,K.jsx)(Mm,{count:o}),(0,K.jsx)(ym,{}),(0,K.jsx)(vm,{}),(0,K.jsx)(_m,{}),(0,K.jsx)(`main`,{className:`hig-content px-6 py-6`,children:km(e,s)},n),d>0&&(0,K.jsx)(`div`,{className:`voice-page-flash`,"aria-hidden":`true`},d)]}),(0,K.jsx)(fc,{actions:p})]})}var Fm=document.getElementById(`app-root`);if(!Fm)throw Error(`Missing #app-root`);g.createRoot(Fm).render((0,K.jsx)(_.StrictMode,{children:(0,K.jsx)(Pm,{})}));