@invariant.guru/cli 0.8.1 → 0.8.2

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.
@@ -0,0 +1,262 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/LoopGraph-DHwsLYLI.js","assets/LoopGraph-DLioOiRN.css"])))=>i.map(i=>d[i]);
2
+ 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),e=null),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(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},l=(n,r,o)=>(o=n==null?{}:e(i(n)),c(r||!n||!n.__esModule||!a.call(n,`default`)?t(o,`default`,{value:n,enumerable:!0}):o,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),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u=o(((e,t)=>{(function(){function n(e,t){Object.defineProperty(a.prototype,e,{get:function(){console.warn(`%s(...) is deprecated in plain JavaScript React classes. %s`,t[0],t[1])}})}function r(e){return typeof e!=`object`||!e?null:(e=be&&e[be]||e[`@@iterator`],typeof e==`function`?e:null)}function i(e,t){e=(e=e.constructor)&&(e.displayName||e.name)||`ReactClass`;var n=e+`.`+t;xe[n]||(console.error("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",t,e),xe[n]=!0)}function a(e,t,n){this.props=e,this.context=t,this.refs=Ce,this.updater=n||Se}function o(){}function s(e,t,n){this.props=e,this.context=t,this.refs=Ce,this.updater=n||Se}function c(){}function l(e){return``+e}function u(e){try{l(e);var t=!1}catch{t=!0}if(t){t=console;var n=t.error,r=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return n.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,r),l(e)}}function d(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===Ee?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case le:return`Fragment`;case de:return`Profiler`;case ue:return`StrictMode`;case he:return`Suspense`;case ge:return`SuspenseList`;case ye:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case ce:return`Portal`;case pe:return e.displayName||`Context`;case fe:return(e._context.displayName||`Context`)+`.Consumer`;case me:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case _e:return t=e.displayName||null,t===null?d(e.type)||`Memo`:t;case ve:t=e._payload,e=e._init;try{return d(e(t))}catch{}}return null}function f(e){if(e===le)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===ve)return`<...>`;try{var t=d(e);return t?`<`+t+`>`:`<...>`}catch{return`<...>`}}function p(){var e=k.A;return e===null?null:e.getOwner()}function m(){return Error(`react-stack-top-frame`)}function h(e){if(De.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function g(e,t){function n(){ke||(ke=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function _(){var e=d(this.type);return je[e]||(je[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function v(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:se,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:_}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function y(e,t){return t=v(e.type,t,e.props,e._owner,e._debugStack,e._debugTask),e._store&&(t._store.validated=e._store.validated),t}function b(e){x(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===ve&&(e._payload.status===`fulfilled`?x(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function x(e){return typeof e==`object`&&!!e&&e.$$typeof===se}function ee(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}function te(e,t){return typeof e==`object`&&e&&e.key!=null?(u(e.key),ee(``+e.key)):t.toString(36)}function S(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 ne(e,t,n,i,a){var o=typeof e;(o===`undefined`||o===`boolean`)&&(e=null);var s=!1;if(e===null)s=!0;else switch(o){case`bigint`:case`string`:case`number`:s=!0;break;case`object`:switch(e.$$typeof){case se:case ce:s=!0;break;case ve:return s=e._init,ne(s(e._payload),t,n,i,a)}}if(s){s=e,a=a(s);var c=i===``?`.`+te(s,0):i;return Te(a)?(n=``,c!=null&&(n=c.replace(Fe,`$&/`)+`/`),ne(a,t,n,``,function(e){return e})):a!=null&&(x(a)&&(a.key!=null&&(s&&s.key===a.key||u(a.key)),n=y(a,n+(a.key==null||s&&s.key===a.key?``:(``+a.key).replace(Fe,`$&/`)+`/`)+c),i!==``&&s!=null&&x(s)&&s.key==null&&s._store&&!s._store.validated&&(n._store.validated=2),a=n),t.push(a)),1}if(s=0,c=i===``?`.`:i+`:`,Te(e))for(var l=0;l<e.length;l++)i=e[l],o=c+te(i,l),s+=ne(i,t,n,o,a);else if(l=r(e),typeof l==`function`)for(l===e.entries&&(Pe||console.warn(`Using Maps as children is not supported. Use an array of keyed ReactElements instead.`),Pe=!0),e=l.call(e),l=0;!(i=e.next()).done;)i=i.value,o=c+te(i,l++),s+=ne(i,t,n,o,a);else if(o===`object`){if(typeof e.then==`function`)return ne(S(e),t,n,i,a);throw t=String(e),Error(`Objects are not valid as a React child (found: `+(t===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:t)+`). If you meant to render a collection of children, use an array instead.`)}return s}function re(e,t,n){if(e==null)return e;var r=[],i=0;return ne(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function ie(e){if(e._status===-1){var t=e._ioInfo;t!=null&&(t.start=t.end=performance.now()),t=e._result;var n=t();if(n.then(function(t){if(e._status===0||e._status===-1){e._status=1,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`fulfilled`,n.value=t)}},function(t){if(e._status===0||e._status===-1){e._status=2,e._result=t;var r=e._ioInfo;r!=null&&(r.end=performance.now()),n.status===void 0&&(n.status=`rejected`,n.reason=t)}}),t=e._ioInfo,t!=null){t.value=n;var r=n.displayName;typeof r==`string`&&(t.name=r)}e._status===-1&&(e._status=0,e._result=n)}if(e._status===1)return t=e._result,t===void 0&&console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
3
+
4
+ Your code should look like:
5
+ const MyComponent = lazy(() => import('./MyComponent'))
6
+
7
+ Did you accidentally put curly braces around the import?`,t),`default`in t||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
8
+
9
+ Your code should look like:
10
+ const MyComponent = lazy(() => import('./MyComponent'))`,t),t.default;throw e._result}function C(){var e=k.H;return e===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
11
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
12
+ 2. You might be breaking the Rules of Hooks
13
+ 3. You might have more than one copy of React in the same app
14
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}function w(){k.asyncTransitions--}function T(e){if(Re===null)try{var n=(`require`+Math.random()).slice(0,7);Re=(t&&t[n]).call(t,`timers`).setImmediate}catch{Re=function(e){!1===Le&&(Le=!0,typeof MessageChannel>`u`&&console.error(`This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning.`));var t=new MessageChannel;t.port1.onmessage=e,t.port2.postMessage(void 0)}}return Re(e)}function E(e){return 1<e.length&&typeof AggregateError==`function`?AggregateError(e):e[0]}function ae(e,t){t!==ze-1&&console.error(`You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. `),ze=t}function D(e,t,n){var r=k.actQueue;if(r!==null){if(r.length!==0)try{oe(r),T(function(){return D(e,t,n)});return}catch(e){k.thrownErrors.push(e)}else k.actQueue=null}0<k.thrownErrors.length?(r=E(k.thrownErrors),k.thrownErrors.length=0,n(r)):t(e)}function oe(e){if(!Ve){Ve=!0;var t=0;try{for(;t<e.length;t++){var n=e[t];do{k.didUsePromise=!1;var r=n(!1);if(r!==null){if(k.didUsePromise){e[t]=n,e.splice(0,t);return}n=r}else break}while(1)}e.length=0}catch(n){e.splice(0,t+1),k.thrownErrors.push(n)}finally{Ve=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var se=Symbol.for(`react.transitional.element`),ce=Symbol.for(`react.portal`),le=Symbol.for(`react.fragment`),ue=Symbol.for(`react.strict_mode`),de=Symbol.for(`react.profiler`),fe=Symbol.for(`react.consumer`),pe=Symbol.for(`react.context`),me=Symbol.for(`react.forward_ref`),he=Symbol.for(`react.suspense`),ge=Symbol.for(`react.suspense_list`),_e=Symbol.for(`react.memo`),ve=Symbol.for(`react.lazy`),ye=Symbol.for(`react.activity`),be=Symbol.iterator,xe={},Se={isMounted:function(){return!1},enqueueForceUpdate:function(e){i(e,`forceUpdate`)},enqueueReplaceState:function(e){i(e,`replaceState`)},enqueueSetState:function(e){i(e,`setState`)}},O=Object.assign,Ce={};Object.freeze(Ce),a.prototype.isReactComponent={},a.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`)},a.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};var we={isMounted:[`isMounted`,`Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.`],replaceState:[`replaceState`,`Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236).`]};for(Ue in we)we.hasOwnProperty(Ue)&&n(Ue,we[Ue]);o.prototype=a.prototype,we=s.prototype=new o,we.constructor=s,O(we,a.prototype),we.isPureReactComponent=!0;var Te=Array.isArray,Ee=Symbol.for(`react.client.reference`),k={H:null,A:null,T:null,S:null,actQueue:null,asyncTransitions:0,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},De=Object.prototype.hasOwnProperty,Oe=console.createTask?console.createTask:function(){return null};we={react_stack_bottom_frame:function(e){return e()}};var ke,Ae,je={},Me=we.react_stack_bottom_frame.bind(we,m)(),Ne=Oe(f(m)),Pe=!1,Fe=/\/+/g,Ie=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)},Le=!1,Re=null,ze=0,Be=!1,Ve=!1,He=typeof queueMicrotask==`function`?function(e){queueMicrotask(function(){return queueMicrotask(e)})}:T;we=Object.freeze({__proto__:null,c:function(e){return C().useMemoCache(e)}});var Ue={map:re,forEach:function(e,t,n){re(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return re(e,function(){t++}),t},toArray:function(e){return re(e,function(e){return e})||[]},only:function(e){if(!x(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=ye,e.Children=Ue,e.Component=a,e.Fragment=le,e.Profiler=de,e.PureComponent=s,e.StrictMode=ue,e.Suspense=he,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=k,e.__COMPILER_RUNTIME=we,e.act=function(e){var t=k.actQueue,n=ze;ze++;var r=k.actQueue=t===null?[]:t,i=!1;try{var a=e()}catch(e){k.thrownErrors.push(e)}if(0<k.thrownErrors.length)throw ae(t,n),e=E(k.thrownErrors),k.thrownErrors.length=0,e;if(typeof a==`object`&&a&&typeof a.then==`function`){var o=a;return He(function(){i||Be||(Be=!0,console.error(`You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);`))}),{then:function(e,a){i=!0,o.then(function(i){if(ae(t,n),n===0){try{oe(r),T(function(){return D(i,e,a)})}catch(e){k.thrownErrors.push(e)}if(0<k.thrownErrors.length){var o=E(k.thrownErrors);k.thrownErrors.length=0,a(o)}}else e(i)},function(e){ae(t,n),0<k.thrownErrors.length?(e=E(k.thrownErrors),k.thrownErrors.length=0,a(e)):a(e)})}}}var s=a;if(ae(t,n),n===0&&(oe(r),r.length!==0&&He(function(){i||Be||(Be=!0,console.error("A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\n\nawait act(() => ...)"))}),k.actQueue=null),0<k.thrownErrors.length)throw e=E(k.thrownErrors),k.thrownErrors.length=0,e;return{then:function(e,t){i=!0,n===0?(k.actQueue=r,T(function(){return D(s,e,t)})):e(s)}}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.captureOwnerStack=function(){var e=k.getCurrentStack;return e===null?null:e()},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=O({},e.props),i=e.key,a=e._owner;if(t!=null){var o;a:{if(De.call(t,`ref`)&&(o=Object.getOwnPropertyDescriptor(t,`ref`).get)&&o.isReactWarning){o=!1;break a}o=t.ref!==void 0}for(s in o&&(a=p()),h(t)&&(u(t.key),i=``+t.key),t)!De.call(t,s)||s===`key`||s===`__self`||s===`__source`||s===`ref`&&t.ref===void 0||(r[s]=t[s])}var s=arguments.length-2;if(s===1)r.children=n;else if(1<s){o=Array(s);for(var c=0;c<s;c++)o[c]=arguments[c+2];r.children=o}for(r=v(e.type,i,r,a,e._debugStack,e._debugTask),i=2;i<arguments.length;i++)b(arguments[i]);return r},e.createContext=function(e){return e={$$typeof:pe,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:fe,_context:e},e._currentRenderer=null,e._currentRenderer2=null,e},e.createElement=function(e,t,n){for(var r=2;r<arguments.length;r++)b(arguments[r]);r={};var i=null;if(t!=null)for(c in Ae||!(`__self`in t)||`key`in t||(Ae=!0,console.warn(`Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform`)),h(t)&&(u(t.key),i=``+t.key),t)De.call(t,c)&&c!==`key`&&c!==`__self`&&c!==`__source`&&(r[c]=t[c]);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];Object.freeze&&Object.freeze(o),r.children=o}if(e&&e.defaultProps)for(c in a=e.defaultProps,a)r[c]===void 0&&(r[c]=a[c]);i&&g(r,typeof e==`function`?e.displayName||e.name||`Unknown`:e);var c=1e4>k.recentlyCreatedOwnerStacks++;return v(e,i,r,p(),c?Error(`react-stack-top-frame`):Me,c?Oe(f(e)):Ne)},e.createRef=function(){var e={current:null};return Object.seal(e),e},e.forwardRef=function(e){e!=null&&e.$$typeof===_e?console.error("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof e==`function`?e.length!==0&&e.length!==2&&console.error(`forwardRef render functions accept exactly two parameters: props and ref. %s`,e.length===1?`Did you forget to use the ref parameter?`:`Any additional parameter will be undefined.`):console.error(`forwardRef requires a render function but was given %s.`,e===null?`null`:typeof e),e!=null&&e.defaultProps!=null&&console.error(`forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?`);var t={$$typeof:me,render:e},n;return Object.defineProperty(t,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,"name",{value:t}),e.displayName=t)}}),t},e.isValidElement=x,e.lazy=function(e){e={_status:-1,_result:e};var t={$$typeof:ve,_payload:e,_init:ie},n={name:`lazy`,start:-1,end:-1,value:null,owner:null,debugStack:Error(`react-stack-top-frame`),debugTask:console.createTask?console.createTask(`lazy()`):null};return e._ioInfo=n,t._debugInfo=[{awaited:n}],t},e.memo=function(e,t){e??console.error(`memo: The first argument must be a component. Instead received: %s`,e===null?`null`:typeof e),t={$$typeof:_e,type:e,compare:t===void 0?null:t};var n;return Object.defineProperty(t,"displayName",{enumerable:!1,configurable:!0,get:function(){return n},set:function(t){n=t,e.name||e.displayName||(Object.defineProperty(e,"name",{value:t}),e.displayName=t)}}),t},e.startTransition=function(e){var t=k.T,n={};n._updatedFibers=new Set,k.T=n;try{var r=e(),i=k.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&(k.asyncTransitions++,r.then(w,w),r.then(c,Ie))}catch(e){Ie(e)}finally{t===null&&n._updatedFibers&&(e=n._updatedFibers.size,n._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`)),t!==null&&n.types!==null&&(t.types!==null&&t.types!==n.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),t.types=n.types),k.T=t}},e.unstable_useCacheRefresh=function(){return C().useCacheRefresh()},e.use=function(e){return C().use(e)},e.useActionState=function(e,t,n){return C().useActionState(e,t,n)},e.useCallback=function(e,t){return C().useCallback(e,t)},e.useContext=function(e){var t=C();return e.$$typeof===fe&&console.error(`Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?`),t.useContext(e)},e.useDebugValue=function(e,t){return C().useDebugValue(e,t)},e.useDeferredValue=function(e,t){return C().useDeferredValue(e,t)},e.useEffect=function(e,t){return e??console.warn(`React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useEffect(e,t)},e.useEffectEvent=function(e){return C().useEffectEvent(e)},e.useId=function(){return C().useId()},e.useImperativeHandle=function(e,t,n){return C().useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return e??console.warn(`React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return e??console.warn(`React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?`),C().useLayoutEffect(e,t)},e.useMemo=function(e,t){return C().useMemo(e,t)},e.useOptimistic=function(e,t){return C().useOptimistic(e,t)},e.useReducer=function(e,t,n){return C().useReducer(e,t,n)},e.useRef=function(e){return C().useRef(e)},e.useState=function(e){return C().useState(e)},e.useSyncExternalStore=function(e,t,n){return C().useSyncExternalStore(e,t,n)},e.useTransition=function(){return C().useTransition()},e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),d=o(((e,t)=>{t.exports=u()})),f=o((e=>{(function(){function t(){if(x=!1,ne){var t=e.unstable_now();C=t;var n=!0;try{a:{y=!1,b&&(b=!1,te(re),re=-1),v=!0;var a=_;try{b:{for(o(t),g=r(p);g!==null&&!(g.expirationTime>t&&c());){var u=g.callback;if(typeof u==`function`){g.callback=null,_=g.priorityLevel;var d=u(g.expirationTime<=t);if(t=e.unstable_now(),typeof d==`function`){g.callback=d,o(t),n=!0;break b}g===r(p)&&i(p),o(t)}else i(p);g=r(p)}if(g!==null)n=!0;else{var f=r(m);f!==null&&l(s,f.startTime-t),n=!1}}break a}finally{g=null,_=a,v=!1}n=void 0}}finally{n?w():ne=!1}}}function n(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,i=e[r];if(0<a(i,t))e[r]=t,e[n]=i,n=r;else break a}}function r(e){return e.length===0?null:e[0]}function i(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,i=e.length,o=i>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>a(c,n))l<i&&0>a(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<i&&0>a(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function a(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}function o(e){for(var t=r(m);t!==null;){if(t.callback===null)i(m);else if(t.startTime<=e)i(m),t.sortIndex=t.expirationTime,n(p,t);else break;t=r(m)}}function s(e){if(b=!1,o(e),!y){if(r(p)!==null)y=!0,ne||(ne=!0,w());else{var t=r(m);t!==null&&l(s,t.startTime-e)}}}function c(){return x?!0:!(e.unstable_now()-C<ie)}function l(t,n){re=ee(function(){t(e.unstable_now())},n)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var u=performance;e.unstable_now=function(){return u.now()}}else{var d=Date,f=d.now();e.unstable_now=function(){return d.now()-f}}var p=[],m=[],h=1,g=null,_=3,v=!1,y=!1,b=!1,x=!1,ee=typeof setTimeout==`function`?setTimeout:null,te=typeof clearTimeout==`function`?clearTimeout:null,S=typeof setImmediate<`u`?setImmediate:null,ne=!1,re=-1,ie=5,C=-1;if(typeof S==`function`)var w=function(){S(t)};else if(typeof MessageChannel<`u`){var T=new MessageChannel,E=T.port2;T.port1.onmessage=t,w=function(){E.postMessage(null)}}else w=function(){ee(t,0)};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`):ie=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return _},e.unstable_next=function(e){switch(_){case 1:case 2:case 3:var t=3;break;default:t=_}var n=_;_=t;try{return e()}finally{_=n}},e.unstable_requestPaint=function(){x=!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=_;_=e;try{return t()}finally{_=n}},e.unstable_scheduleCallback=function(t,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,t){case 1:var c=-1;break;case 2:c=250;break;case 5:c=1073741823;break;case 4:c=1e4;break;default:c=5e3}return c=a+c,t={id:h++,callback:i,priorityLevel:t,startTime:a,expirationTime:c,sortIndex:-1},a>o?(t.sortIndex=a,n(m,t),r(p)===null&&t===r(m)&&(b?(te(re),re=-1):b=!0,l(s,a-o))):(t.sortIndex=c,n(p,t),y||v||(y=!0,ne||(ne=!0,w()))),t},e.unstable_shouldYield=c,e.unstable_wrapCallback=function(e){var t=_;return function(){var n=_;_=t;try{return e.apply(this,arguments)}finally{_=n}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),p=o(((e,t)=>{t.exports=f()})),m=o((e=>{(function(){function t(){}function n(e){return``+e}function r(e,t,r){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{n(i);var a=!1}catch{a=!0}return a&&(console.error(`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,typeof Symbol==`function`&&Symbol.toStringTag&&i[Symbol.toStringTag]||i.constructor.name||`Object`),n(i)),{$$typeof:u,key:i==null?null:``+i,children:e,containerInfo:t,implementation:r}}function i(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}function a(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:`something with type "`+typeof e+`"`}function o(e){return e===null?"`null`":e===void 0?"`undefined`":e===``?`an empty string`:typeof e==`string`?JSON.stringify(e):typeof e==`number`?"`"+e+"`":`something with type "`+typeof e+`"`}function s(){var e=f.H;return e===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
15
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
16
+ 2. You might be breaking the Rules of Hooks
17
+ 3. You might have more than one copy of React in the same app
18
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),e}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var c=d(),l={d:{f:t,r:function(){throw Error(`Invalid form element. requestFormReset must be passed a form that was rendered by React.`)},D:t,C:t,L:t,m:t,X:t,S:t,M:t},p:0,findDOMNode:null},u=Symbol.for(`react.portal`),f=c.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map==`function`&&Map.prototype!=null&&typeof Map.prototype.forEach==`function`&&typeof Set==`function`&&Set.prototype!=null&&typeof Set.prototype.clear==`function`&&typeof Set.prototype.forEach==`function`||console.error(`React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills`),e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=l,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(`Target container is not a DOM element.`);return r(e,t,null,n)},e.flushSync=function(e){var t=f.T,n=l.p;try{if(f.T=null,l.p=2,e)return e()}finally{f.T=t,l.p=n,l.d.f()&&console.error(`flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.`)}},e.preconnect=function(e,t){typeof e==`string`&&e?t!=null&&typeof t!=`object`?console.error("ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",o(t)):t!=null&&typeof t.crossOrigin!=`string`&&console.error("ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",a(t.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e)),typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,l.d.C(e,t))},e.prefetchDNS=function(e){if(typeof e!=`string`||!e)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e));else if(1<arguments.length){var t=arguments[1];typeof t==`object`&&t.hasOwnProperty(`crossOrigin`)?console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",o(t)):console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",o(t))}typeof e==`string`&&l.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&e?typeof t!=`object`||!t?console.error("ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",o(t)):t.as!==`style`&&t.as!==`script`&&console.error('ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',o(t.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",a(e)),typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=i(n,t.crossOrigin),s=typeof t.integrity==`string`?t.integrity:void 0,c=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?l.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:s,fetchPriority:c}):n===`script`&&l.d.X(e,{crossOrigin:r,integrity:s,fetchPriority:c,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+a(t)+`.`:t&&`as`in t&&t.as!==`script`&&(n+=" The `as` option encountered was "+o(t.as)+`.`),n)console.error("ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",n);else switch(n=t&&typeof t.as==`string`?t.as:`script`,n){case`script`:break;default:n=o(n),console.error('ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',n,e)}typeof e==`string`&&(typeof t==`object`&&t?(t.as==null||t.as===`script`)&&(n=i(t.as,t.crossOrigin),l.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})):t??l.d.M(e))},e.preload=function(e,t){var n=``;if(typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),typeof t!=`object`||!t?n+=" The `options` argument encountered was "+a(t)+`.`:typeof t.as==`string`&&t.as||(n+=" The `as` option encountered was "+a(t.as)+`.`),n&&console.error('ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',n),typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){n=t.as;var r=i(n,t.crossOrigin);l.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){var n=``;typeof e==`string`&&e||(n+=" The `href` argument encountered was "+a(e)+`.`),t!==void 0&&typeof t!=`object`?n+=" The `options` argument encountered was "+a(t)+`.`:t&&`as`in t&&typeof t.as!=`string`&&(n+=" The `as` option encountered was "+a(t.as)+`.`),n&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',n),typeof e==`string`&&(t?(n=i(t.as,t.crossOrigin),l.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})):l.d.m(e))},e.requestFormReset=function(e){l.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s().useFormState(e,t,n)},e.useFormStatus=function(){return s().useHostTransitionStatus()},e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),h=o(((e,t)=>{t.exports=m()})),g=o((e=>{(function(){function t(e,t){for(e=e.memoizedState;e!==null&&0<t;)e=e.next,t--;return e}function n(e,t,r,i){if(r>=t.length)return i;var a=t[r],o=Bf(e)?e.slice():Sf({},e);return o[a]=n(e[a],t,r+1,i),o}function r(e,t,n){if(t.length!==n.length)console.warn(`copyWithRename() expects paths of the same length`);else{for(var r=0;r<n.length-1;r++)if(t[r]!==n[r]){console.warn(`copyWithRename() expects paths to be the same except for the deepest key`);return}return i(e,t,n,0)}}function i(e,t,n,r){var a=t[r],o=Bf(e)?e.slice():Sf({},e);return r+1===t.length?(o[n[r]]=o[a],Bf(o)?o.splice(a,1):delete o[a]):o[a]=i(e[a],t,n,r+1),o}function a(e,t,n){var r=t[n],i=Bf(e)?e.slice():Sf({},e);return n+1===t.length?(Bf(i)?i.splice(r,1):delete i[r],i):(i[r]=a(e[r],t,n+1),i)}function o(){return!1}function s(){return null}function c(){console.error(`Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks`)}function l(){console.error(`Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().`)}function u(){}function f(){}function m(e){var t=[];return e.forEach(function(e){t.push(e)}),t.sort().join(`, `)}function g(e,t,n,r){return new _r(e,t,n,r)}function _(e,t){e.context===kg&&(Kd(e.current,2,t,e,null,null),$c())}function v(e,t){if(Ag!==null){var n=t.staleFamilies;t=t.updatedFamilies,wl(),gr(e.current,t,n),$c()}}function y(e){Ag=e}function b(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function x(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 ee(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 te(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 S(e){if(x(e)!==e)throw Error(`Unable to find node on an unmounted component.`)}function ne(e){var t=e.alternate;if(!t){if(t=x(e),t===null)throw Error(`Unable to find node on an unmounted component.`);return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return S(i),e;if(a===r)return S(i),t;a=a.sibling}throw Error(`Unable to find node on an unmounted component.`)}if(n.return!==r.return)n=i,r=a;else{for(var o=!1,s=i.child;s;){if(s===n){o=!0,n=i,r=a;break}if(s===r){o=!0,r=i,n=a;break}s=s.sibling}if(!o){for(s=a.child;s;){if(s===n){o=!0,n=a,r=i;break}if(s===r){o=!0,r=a,n=i;break}s=s.sibling}if(!o)throw Error(`Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.`)}}if(n.alternate!==r)throw Error(`Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.`)}if(n.tag!==3)throw Error(`Unable to find node on an unmounted component.`);return n.stateNode.current===n?e:t}function re(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=re(e),t!==null)return t;e=e.sibling}return null}function ie(e){return typeof e!=`object`||!e?null:(e=Rf&&e[Rf]||e[`@@iterator`],typeof e==`function`?e:null)}function C(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===zf?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case Ef:return`Fragment`;case Of:return`Profiler`;case Df:return`StrictMode`;case Mf:return`Suspense`;case Nf:return`SuspenseList`;case If:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case Tf:return`Portal`;case Af:return e.displayName||`Context`;case kf:return(e._context.displayName||`Context`)+`.Consumer`;case jf:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case Pf:return t=e.displayName||null,t===null?C(e.type)||`Memo`:t;case Ff:t=e._payload,e=e._init;try{return C(e(t))}catch{}}return null}function w(e){return typeof e.tag==`number`?T(e):typeof e.name==`string`?e.name:null}function T(e){var t=e.type;switch(e.tag){case 31:return`Activity`;case 24:return`Cache`;case 9:return(t._context.displayName||`Context`)+`.Consumer`;case 10:return t.displayName||`Context`;case 18:return`DehydratedFragment`;case 11:return e=t.render,e=e.displayName||e.name||``,t.displayName||(e===``?`ForwardRef`:`ForwardRef(`+e+`)`);case 7:return`Fragment`;case 26:case 27:case 5:return t;case 4:return`Portal`;case 3:return`Root`;case 6:return`Text`;case 16:return C(t);case 8:return t===Df?`StrictMode`:`Mode`;case 22:return`Offscreen`;case 12:return`Profiler`;case 21:return`Scope`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 25:return`TracingMarker`;case 1:case 0:case 14:case 15:if(typeof t==`function`)return t.displayName||t.name||null;if(typeof t==`string`)return t;break;case 29:if(t=e._debugInfo,t!=null){for(var n=t.length-1;0<=n;n--)if(typeof t[n].name==`string`)return t[n].name}if(e.return!==null)return T(e.return)}return null}function E(e){return{current:e}}function ae(e,t){0>Gf?console.error(`Unexpected pop.`):(t!==Wf[Gf]&&console.error(`Unexpected Fiber popped.`),e.current=Uf[Gf],Uf[Gf]=null,Wf[Gf]=null,Gf--)}function D(e,t,n){Gf++,Uf[Gf]=e.current,Wf[Gf]=n,e.current=t}function oe(e){return e===null&&console.error(`Expected host context to exist. This error is likely caused by a bug in React. Please file an issue.`),e}function se(e,t){D(Jf,t,e),D(qf,e,e),D(Kf,null,e);var n=t.nodeType;switch(n){case 9:case 11:n=n===9?`#document`:`#fragment`,t=(t=t.documentElement)&&(t=t.namespaceURI)?Mu(t):US;break;default:if(n=t.tagName,t=t.namespaceURI)t=Mu(t),t=Nu(t,n);else switch(n){case`svg`:t=WS;break;case`math`:t=GS;break;default:t=US}}n=n.toLowerCase(),n=P(null,n),n={context:t,ancestorInfo:n},ae(Kf,e),D(Kf,n,e)}function ce(e){ae(Kf,e),ae(qf,e),ae(Jf,e)}function le(){return oe(Kf.current)}function ue(e){e.memoizedState!==null&&D(Yf,e,e);var t=oe(Kf.current),n=e.type,r=Nu(t.context,n);n=P(t.ancestorInfo,n),r={context:r,ancestorInfo:n},t!==r&&(D(qf,e,e),D(Kf,r,e))}function de(e){qf.current===e&&(ae(Kf,e),ae(qf,e)),Yf.current===e&&(ae(Yf,e),bC._currentValue=yC)}function fe(){}function pe(){if(Xf===0){Zf=console.log,Qf=console.info,$f=console.warn,ep=console.error,tp=console.group,np=console.groupCollapsed,rp=console.groupEnd;var e={configurable:!0,enumerable:!0,value:fe,writable:!0};Object.defineProperties(console,{info:e,log:e,warn:e,error:e,group:e,groupCollapsed:e,groupEnd:e})}Xf++}function me(){if(Xf--,Xf===0){var e={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:Sf({},e,{value:Zf}),info:Sf({},e,{value:Qf}),warn:Sf({},e,{value:$f}),error:Sf({},e,{value:ep}),group:Sf({},e,{value:tp}),groupCollapsed:Sf({},e,{value:np}),groupEnd:Sf({},e,{value:rp})})}0>Xf&&console.error(`disabledDepth fell below zero. This is a bug in React. Please file an issue.`)}function he(e){var t=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,e=e.stack,Error.prepareStackTrace=t,e.startsWith(`Error: react-stack-top-frame
19
+ `)&&(e=e.slice(29)),t=e.indexOf(`
20
+ `),t!==-1&&(e=e.slice(t+1)),t=e.indexOf(`react_stack_bottom_frame`),t!==-1&&(t=e.lastIndexOf(`
21
+ `,t)),t!==-1)e=e.slice(0,t);else return``;return e}function ge(e){if(ip===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);ip=t&&t[1]||``,ap=-1<e.stack.indexOf(`
22
+ at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
23
+ `+ip+e+ap}function _e(e,t){if(!e||op)return``;var n=sp.get(e);if(n!==void 0)return n;op=!0,n=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var r=null;r=J.H,J.H=null,pe();try{var i={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]}};i.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var a=Object.getOwnPropertyDescriptor(i.DetermineComponentFrameRoot,`name`);a&&a.configurable&&Object.defineProperty(i.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var o=i.DetermineComponentFrameRoot(),s=o[0],c=o[1];if(s&&c){var l=s.split(`
24
+ `),u=c.split(`
25
+ `);for(o=a=0;a<l.length&&!l[a].includes(`DetermineComponentFrameRoot`);)a++;for(;o<u.length&&!u[o].includes(`DetermineComponentFrameRoot`);)o++;if(a===l.length||o===u.length)for(a=l.length-1,o=u.length-1;1<=a&&0<=o&&l[a]!==u[o];)o--;for(;1<=a&&0<=o;a--,o--)if(l[a]!==u[o]){if(a!==1||o!==1)do if(a--,o--,0>o||l[a]!==u[o]){var d=`
26
+ `+l[a].replace(` at new `,` at `);return e.displayName&&d.includes(`<anonymous>`)&&(d=d.replace(`<anonymous>`,e.displayName)),typeof e==`function`&&sp.set(e,d),d}while(1<=a&&0<=o);break}}}finally{op=!1,J.H=r,me(),Error.prepareStackTrace=n}return l=(l=e?e.displayName||e.name:``)?ge(l):``,typeof e==`function`&&sp.set(e,l),l}function ve(e,t){switch(e.tag){case 26:case 27:case 5:return ge(e.type);case 16:return ge(`Lazy`);case 13:return e.child!==t&&t!==null?ge(`Suspense Fallback`):ge(`Suspense`);case 19:return ge(`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 ge(`Activity`);default:return``}}function ye(e){try{var t=``,n=null;do{t+=ve(e,n);var r=e._debugInfo;if(r)for(var i=r.length-1;0<=i;i--){var a=r[i];if(typeof a.name==`string`){var o=t;a:{var s=a.name,c=a.env,l=a.debugLocation;if(l!=null){var u=he(l),d=u.lastIndexOf(`
27
+ `),f=d===-1?u:u.slice(d+1);if(f.indexOf(s)!==-1){var p=`
28
+ `+f;break a}}p=ge(s+(c?` [`+c+`]`:``))}t=o+p}}n=e,e=e.return}while(e);return t}catch(e){return`
29
+ Error generating stack: `+e.message+`
30
+ `+e.stack}}function be(e){return(e=e?e.displayName||e.name:``)?ge(e):``}function xe(){if(cp===null)return null;var e=cp._debugOwner;return e==null?null:w(e)}function Se(){if(cp===null)return``;var e=cp;try{var t=``;switch(e.tag===6&&(e=e.return),e.tag){case 26:case 27:case 5:t+=ge(e.type);break;case 13:t+=ge(`Suspense`);break;case 19:t+=ge(`SuspenseList`);break;case 31:t+=ge(`Activity`);break;case 30:case 0:case 15:case 1:e._debugOwner||t!==``||(t+=be(e.type));break;case 11:e._debugOwner||t!==``||(t+=be(e.type.render))}for(;e;)if(typeof e.tag==`number`){var n=e;e=n._debugOwner;var r=n._debugStack;if(e&&r){var i=he(r);i!==``&&(t+=`
31
+ `+i)}}else if(e.debugStack!=null){var a=e.debugStack;(e=e.owner)&&a&&(t+=`
32
+ `+he(a))}else break;var o=t}catch(e){o=`
33
+ Error generating stack: `+e.message+`
34
+ `+e.stack}return o}function O(e,t,n,r,i,a,o){var s=cp;Ce(e);try{return e!==null&&e._debugTask?e._debugTask.run(t.bind(null,n,r,i,a,o)):t(n,r,i,a,o)}finally{Ce(s)}throw Error(`runWithFiberInDEV should never be called in production. This is a bug in React.`)}function Ce(e){J.getCurrentStack=e===null?null:Se,lp=!1,cp=e}function we(e){return typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`}function Te(e){try{return Ee(e),!1}catch{return!0}}function Ee(e){return``+e}function k(e,t){if(Te(e))return console.error("The provided `%s` attribute is an unsupported type %s. This value must be coerced to a string before using it here.",t,we(e)),Ee(e)}function De(e,t){if(Te(e))return console.error("The provided `%s` CSS property is an unsupported type %s. This value must be coerced to a string before using it here.",t,we(e)),Ee(e)}function Oe(e){if(Te(e))return console.error(`Form field values (value, checked, defaultValue, or defaultChecked props) must be strings, not %s. This value must be coerced to a string before using it here.`,we(e)),Ee(e)}function ke(e){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled)return!0;if(!t.supportsFiber)return console.error(`The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools`),!0;try{wp=t.inject(e),Tp=t}catch(e){console.error(`React instrumentation encountered an error: %o.`,e)}return!!t.checkDCE}function Ae(e){if(typeof Sp==`function`&&Cp(e),Tp&&typeof Tp.setStrictMode==`function`)try{Tp.setStrictMode(wp,e)}catch(e){Ep||(Ep=!0,console.error(`React instrumentation encountered an error: %o`,e))}}function je(e){return e>>>=0,e===0?32:31-(kp(e)/Ap|0)|0}function Me(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 console.error(`Should have found matching lanes. This is a bug in React.`),e}}function Ne(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=Me(n))):i=Me(o):i=Me(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=Me(n))):i=Me(o)):i=Me(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 Pe(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function Fe(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 console.error(`Should have found matching lanes. This is a bug in React.`),-1}}function Ie(){var e=Np;return Np<<=1,!(Np&62914560)&&(Np=4194304),e}function Le(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Re(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function ze(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-Op(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&&Be(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Be(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Op(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function Ve(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Op(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function He(e,t){var n=t&-t;return n=n&42?1:Ue(n),(n&(e.suspendedLanes|t))===0?n:0}function Ue(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 We(e,t,n){if(Dp)for(e=e.pendingUpdatersLaneMap;0<n;){var r=31-Op(n),i=1<<r;e[r].add(t),n&=~i}}function Ge(e,t){if(Dp)for(var n=e.pendingUpdatersLaneMap,r=e.memoizedUpdaters;0<t;){var i=31-Op(t);e=1<<i,i=n[i],0<i.size&&(i.forEach(function(e){var t=e.alternate;t!==null&&r.has(t)||r.add(e)}),i.clear()),t&=~e}}function Ke(e){return e&=-e,Pp!==0&&Pp<e?Fp!==0&&Fp<e?e&134217727?Ip:Lp:Fp:Pp}function qe(){var e=Vf.p;return e===0?(e=window.event,e===void 0?Ip:rf(e.type)):e}function Je(e,t){var n=Vf.p;try{return Vf.p=e,t()}finally{Vf.p=n}}function Ye(e){delete e[zp],delete e[Bp],delete e[Hp],delete e[Up],delete e[Wp]}function Xe(e){var t=e[zp];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Vp]||n[zp]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=pd(e);e!==null;){if(n=e[zp])return n;e=pd(e)}return t}e=n,n=e.parentNode}return null}function Ze(e){if(e=e[zp]||e[Vp]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function Qe(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(`getNodeFromInstance: Invalid argument.`)}function A(e){var t=e[Gp];return t||=e[Gp]={hoistableStyles:new Map,hoistableScripts:new Map},t}function $e(e){e[Kp]=!0}function et(e,t){j(e,t),j(e+`Capture`,t)}function j(e,t){Jp[e]&&console.error("EventRegistry: More than one plugin attempted to publish the same registration name, `%s`.",e),Jp[e]=t;var n=e.toLowerCase();for(Yp[n]=e,e===`onDoubleClick`&&(Yp.ondblclick=e),e=0;e<t.length;e++)qp.add(t[e])}function tt(e,t){Xp[t.type]||t.onChange||t.onInput||t.readOnly||t.disabled||t.value==null||console.error(e===`select`?"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set `onChange`.":"You provided a `value` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultValue`. Otherwise, set either `onChange` or `readOnly`."),t.onChange||t.readOnly||t.disabled||t.checked==null||console.error("You provided a `checked` prop to a form field without an `onChange` handler. This will render a read-only field. If the field should be mutable use `defaultChecked`. Otherwise, set either `onChange` or `readOnly`.")}function nt(e){return up.call($p,e)?!0:up.call(Qp,e)?!1:Zp.test(e)?$p[e]=!0:(Qp[e]=!0,console.error("Invalid attribute name: `%s`",e),!1)}function rt(e,t,n){if(nt(t)){if(!e.hasAttribute(t)){switch(typeof n){case`symbol`:case`object`:return n;case`function`:return n;case`boolean`:if(!1===n)return n}return n===void 0?void 0:null}return e=e.getAttribute(t),e===``&&!0===n||(k(n,t),e===``+n?n:e)}}function it(e,t,n){if(nt(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}}k(n,t),e.setAttribute(t,``+n)}}}function at(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}k(n,t),e.setAttribute(t,``+n)}}function ot(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}k(r,n),e.setAttributeNS(t,n,``+r)}}function st(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return Oe(e),e;default:return``}}function ct(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function lt(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){Oe(e),n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){Oe(e),n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function ut(e){if(!e._valueTracker){var t=ct(e)?`checked`:`value`;e._valueTracker=lt(e,t,``+e[t])}}function dt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=ct(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}function ft(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}function pt(e){return e.replace(em,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function mt(e,t){t.checked===void 0||t.defaultChecked===void 0||nm||(console.error(`%s contains an input of type %s with both checked and defaultChecked props. Input elements must be either controlled or uncontrolled (specify either the checked prop, or the defaultChecked prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components`,xe()||`A component`,t.type),nm=!0),t.value===void 0||t.defaultValue===void 0||tm||(console.error(`%s contains an input of type %s with both value and defaultValue props. Input elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled input element and remove one of these props. More info: https://react.dev/link/controlled-components`,xe()||`A component`,t.type),tm=!0)}function ht(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?(k(o,`type`),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=``+st(t)):e.value!==``+st(t)&&(e.value=``+st(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):_t(e,o,st(n)):_t(e,o,st(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`?(k(s,`name`),e.name=``+st(s)):e.removeAttribute(`name`)}function gt(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(k(a,`type`),e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){ut(e);return}n=n==null?``:``+st(n),t=t==null?n:``+st(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`&&(k(o,`name`),e.name=o),ut(e)}function _t(e,t,n){t===`number`&&ft(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function vt(e,t){t.value??(typeof t.children==`object`&&t.children!==null?bf.Children.forEach(t.children,function(e){e==null||typeof e==`string`||typeof e==`number`||typeof e==`bigint`||im||(im=!0,console.error("Cannot infer the option value of complex children. Pass a `value` prop or use a plain string as children to <option>."))}):t.dangerouslySetInnerHTML==null||am||(am=!0,console.error("Pass a `value` prop if you set dangerouslyInnerHTML so React knows which value should be selected."))),t.selected==null||rm||(console.error("Use the `defaultValue` or `value` props on <select> instead of setting `selected` on <option>."),rm=!0)}function yt(){var e=xe();return e?`
35
+
36
+ Check the render method of \``+e+"`.":``}function bt(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=``+st(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 xt(e,t){for(e=0;e<sm.length;e++){var n=sm[e];if(t[n]!=null){var r=Bf(t[n]);t.multiple&&!r?console.error("The `%s` prop supplied to <select> must be an array if `multiple` is true.%s",n,yt()):!t.multiple&&r&&console.error("The `%s` prop supplied to <select> must be a scalar value if `multiple` is false.%s",n,yt())}}t.value===void 0||t.defaultValue===void 0||om||(console.error(`Select elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled select element and remove one of these props. More info: https://react.dev/link/controlled-components`),om=!0)}function St(e,t){t.value===void 0||t.defaultValue===void 0||cm||(console.error(`%s contains a textarea with both value and defaultValue props. Textarea elements must be either controlled or uncontrolled (specify either the value prop, or the defaultValue prop, but not both). Decide between using a controlled or uncontrolled textarea and remove one of these props. More info: https://react.dev/link/controlled-components`,xe()||`A component`),cm=!0),t.children!=null&&t.value==null&&console.error("Use the `defaultValue` or `value` props instead of setting children on <textarea>.")}function Ct(e,t,n){if(t!=null&&(t=``+st(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+st(n)}function wt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error("If you supply `defaultValue` on a <textarea>, do not pass children.");if(Bf(r)){if(1<r.length)throw Error(`<textarea> can only have at most one child.`);r=r[0]}n=r}n??=``,t=n}n=st(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),ut(e)}function Tt(e,t){return e.serverProps===void 0&&e.serverTail.length===0&&e.children.length===1&&3<e.distanceFromLeaf&&e.distanceFromLeaf>15-t?Tt(e.children[0],t):e}function Et(e){return` `+` `.repeat(e)}function Dt(e){return`+ `+` `.repeat(e)}function M(e){return`- `+` `.repeat(e)}function Ot(e){switch(e.tag){case 26:case 27:case 5:return e.type;case 16:return`Lazy`;case 31:return`Activity`;case 13:return`Suspense`;case 19:return`SuspenseList`;case 0:case 15:return e=e.type,e.displayName||e.name||null;case 11:return e=e.type.render,e.displayName||e.name||null;case 1:return e=e.type,e.displayName||e.name||null;default:return null}}function kt(e,t){return lm.test(e)?(e=JSON.stringify(e),e.length>t-2?8>t?`{"..."}`:`{`+e.slice(0,t-7)+`..."}`:`{`+e+`}`):e.length>t?5>t?`{"..."}`:e.slice(0,t-3)+`...`:e}function At(e,t,n){var r=120-2*n;if(t===null)return Dt(n)+kt(e,r)+`
37
+ `;if(typeof t==`string`){for(var i=0;i<t.length&&i<e.length&&t.charCodeAt(i)===e.charCodeAt(i);i++);return i>r-8&&10<i&&(e=`...`+e.slice(i-8),t=`...`+t.slice(i-8)),Dt(n)+kt(e,r)+`
38
+ `+M(n)+kt(t,r)+`
39
+ `}return Et(n)+kt(e,r)+`
40
+ `}function jt(e){return Object.prototype.toString.call(e).replace(/^\[object (.*)\]$/,function(e,t){return t})}function N(e,t){switch(typeof e){case`string`:return e=JSON.stringify(e),e.length>t?5>t?`"..."`:e.slice(0,t-4)+`..."`:e;case`object`:if(e===null)return`null`;if(Bf(e))return`[...]`;if(e.$$typeof===wf)return(t=C(e.type))?`<`+t+`>`:`<...>`;var n=jt(e);if(n===`Object`){for(var r in n=``,t-=2,e)if(e.hasOwnProperty(r)){var i=JSON.stringify(r);if(i!==`"`+r+`"`&&(r=i),t-=r.length-2,i=N(e[r],15>t?t:15),t-=i.length,0>t){n+=n===``?`...`:`, ...`;break}n+=(n===``?``:`,`)+r+`:`+i}return`{`+n+`}`}return n;case`function`:return(t=e.displayName||e.name)?`function `+t:`function`;default:return String(e)}}function Mt(e,t){return typeof e!=`string`||lm.test(e)?`{`+N(e,t-2)+`}`:e.length>t-2?5>t?`"..."`:`"`+e.slice(0,t-5)+`..."`:`"`+e+`"`}function Nt(e,t,n){var r=120-n.length-e.length,i=[],a;for(a in t)if(t.hasOwnProperty(a)&&a!==`children`){var o=Mt(t[a],120-n.length-a.length-1);r-=a.length+o.length+2,i.push(a+`=`+o)}return i.length===0?n+`<`+e+`>
41
+ `:0<r?n+`<`+e+` `+i.join(` `)+`>
42
+ `:n+`<`+e+`
43
+ `+n+` `+i.join(`
44
+ `+n+` `)+`
45
+ `+n+`>
46
+ `}function Pt(e,t,n){var r=``,i=Sf({},t),a;for(a in e)if(e.hasOwnProperty(a)){delete i[a];var o=120-2*n-a.length-2,s=N(e[a],o);t.hasOwnProperty(a)?(o=N(t[a],o),r+=Dt(n)+a+`: `+s+`
47
+ `,r+=M(n)+a+`: `+o+`
48
+ `):r+=Dt(n)+a+`: `+s+`
49
+ `}for(var c in i)i.hasOwnProperty(c)&&(e=N(i[c],120-2*n-c.length-2),r+=M(n)+c+`: `+e+`
50
+ `);return r}function Ft(e,t,n,r){var i=``,a=new Map;for(l in n)n.hasOwnProperty(l)&&a.set(l.toLowerCase(),l);if(a.size===1&&a.has(`children`))i+=Nt(e,t,Et(r));else{for(var o in t)if(t.hasOwnProperty(o)&&o!==`children`){var s=120-2*(r+1)-o.length-1,c=a.get(o.toLowerCase());if(c!==void 0){a.delete(o.toLowerCase());var l=t[o];c=n[c];var u=Mt(l,s);s=Mt(c,s),typeof l==`object`&&l&&typeof c==`object`&&c&&jt(l)===`Object`&&jt(c)===`Object`&&(2<Object.keys(l).length||2<Object.keys(c).length||-1<u.indexOf(`...`)||-1<s.indexOf(`...`))?i+=Et(r+1)+o+`={{
51
+ `+Pt(l,c,r+2)+Et(r+1)+`}}
52
+ `:(i+=Dt(r+1)+o+`=`+u+`
53
+ `,i+=M(r+1)+o+`=`+s+`
54
+ `)}else i+=Et(r+1)+o+`=`+Mt(t[o],s)+`
55
+ `}a.forEach(function(e){if(e!==`children`){var t=120-2*(r+1)-e.length-1;i+=M(r+1)+e+`=`+Mt(n[e],t)+`
56
+ `}}),i=i===``?Et(r)+`<`+e+`>
57
+ `:Et(r)+`<`+e+`
58
+ `+i+Et(r)+`>
59
+ `}return e=n.children,t=t.children,typeof e==`string`||typeof e==`number`||typeof e==`bigint`?(a=``,(typeof t==`string`||typeof t==`number`||typeof t==`bigint`)&&(a=``+t),i+=At(a,``+e,r+1)):(typeof t==`string`||typeof t==`number`||typeof t==`bigint`)&&(i=e==null?i+At(``+t,null,r+1):i+At(``+t,void 0,r+1)),i}function It(e,t){var n=Ot(e);if(n===null){for(n=``,e=e.child;e;)n+=It(e,t),e=e.sibling;return n}return Et(t)+`<`+n+`>
60
+ `}function Lt(e,t){var n=Tt(e,t);if(n!==e&&(e.children.length!==1||e.children[0]!==n))return Et(t)+`...
61
+ `+Lt(n,t+1);n=``;var r=e.fiber._debugInfo;if(r)for(var i=0;i<r.length;i++){var a=r[i].name;typeof a==`string`&&(n+=Et(t)+`<`+a+`>
62
+ `,t++)}if(r=``,i=e.fiber.pendingProps,e.fiber.tag===6)r=At(i,e.serverProps,t),t++;else if(a=Ot(e.fiber),a!==null){if(e.serverProps===void 0){r=t;var o=120-2*r-a.length-2,s=``;for(l in i)if(i.hasOwnProperty(l)&&l!==`children`){var c=Mt(i[l],15);if(o-=l.length+c.length+2,0>o){s+=` ...`;break}s+=` `+l+`=`+c}r=Et(r)+`<`+a+s+`>
63
+ `,t++}else e.serverProps===null?(r=Nt(a,i,Dt(t)),t++):typeof e.serverProps==`string`?console.error(`Should not have matched a non HostText fiber to a Text node. This is a bug in React.`):(r=Ft(a,i,e.serverProps,t),t++)}var l=``;for(i=e.fiber.child,a=0;i&&a<e.children.length;)o=e.children[a],o.fiber===i?(l+=Lt(o,t),a++):l+=It(i,t),i=i.sibling;for(i&&0<e.children.length&&(l+=Et(t)+`...
64
+ `),i=e.serverTail,e.serverProps===null&&t--,e=0;e<i.length;e++)a=i[e],l=typeof a==`string`?l+(M(t)+kt(a,120-2*t)+`
65
+ `):l+Nt(a.type,a.props,M(t));return n+r+l}function Rt(e){try{return`
66
+
67
+ `+Lt(e,0)}catch{return``}}function zt(e,t,n){for(var r=t,i=null,a=0;r;)r===e&&(a=0),i={fiber:r,children:i===null?[]:[i],serverProps:r===t?n:r===e?null:void 0,serverTail:[],distanceFromLeaf:a},a++,r=r.return;return i===null?``:Rt(i).replaceAll(/^[+-]/gm,`>`)}function P(e,t){var n=Sf({},e||mm),r={tag:t};return dm.indexOf(t)!==-1&&(n.aTagInScope=null,n.buttonTagInScope=null,n.nobrTagInScope=null),fm.indexOf(t)!==-1&&(n.pTagInButtonScope=null),um.indexOf(t)!==-1&&t!==`address`&&t!==`div`&&t!==`p`&&(n.listItemTagAutoclosing=null,n.dlItemTagAutoclosing=null),n.current=r,t===`form`&&(n.formTag=r),t===`a`&&(n.aTagInScope=r),t===`button`&&(n.buttonTagInScope=r),t===`nobr`&&(n.nobrTagInScope=r),t===`p`&&(n.pTagInButtonScope=r),t===`li`&&(n.listItemTagAutoclosing=r),(t===`dd`||t===`dt`)&&(n.dlItemTagAutoclosing=r),t===`#document`||t===`html`?n.containerTagInScope=null:n.containerTagInScope||=r,e!==null||t!==`#document`&&t!==`html`&&t!==`body`?!0===n.implicitRootScope&&(n.implicitRootScope=!1):n.implicitRootScope=!0,n}function Bt(e,t,n){switch(t){case`select`:return e===`hr`||e===`option`||e===`optgroup`||e===`script`||e===`template`||e===`#text`;case`optgroup`:return e===`option`||e===`#text`;case`option`:return e===`#text`;case`tr`:return e===`th`||e===`td`||e===`style`||e===`script`||e===`template`;case`tbody`:case`thead`:case`tfoot`:return e===`tr`||e===`style`||e===`script`||e===`template`;case`colgroup`:return e===`col`||e===`template`;case`table`:return e===`caption`||e===`colgroup`||e===`tbody`||e===`tfoot`||e===`thead`||e===`style`||e===`script`||e===`template`;case`head`:return e===`base`||e===`basefont`||e===`bgsound`||e===`link`||e===`meta`||e===`title`||e===`noscript`||e===`noframes`||e===`style`||e===`script`||e===`template`;case`html`:if(n)break;return e===`head`||e===`body`||e===`frameset`;case`frameset`:return e===`frame`;case`#document`:if(!n)return e===`html`}switch(e){case`h1`:case`h2`:case`h3`:case`h4`:case`h5`:case`h6`:return t!==`h1`&&t!==`h2`&&t!==`h3`&&t!==`h4`&&t!==`h5`&&t!==`h6`;case`rp`:case`rt`:return pm.indexOf(t)===-1;case`caption`:case`col`:case`colgroup`:case`frameset`:case`frame`:case`tbody`:case`td`:case`tfoot`:case`th`:case`thead`:case`tr`:return t==null;case`head`:return n||t===null;case`html`:return n&&t===`#document`||t===null;case`body`:return n&&(t===`#document`||t===`html`)||t===null}return!0}function Vt(e,t){switch(e){case`address`:case`article`:case`aside`:case`blockquote`:case`center`:case`details`:case`dialog`:case`dir`:case`div`:case`dl`:case`fieldset`:case`figcaption`:case`figure`:case`footer`:case`header`:case`hgroup`:case`main`:case`menu`:case`nav`:case`ol`:case`p`:case`section`:case`summary`:case`ul`:case`pre`:case`listing`:case`table`:case`hr`:case`xmp`:case`h1`:case`h2`:case`h3`:case`h4`:case`h5`:case`h6`:return t.pTagInButtonScope;case`form`:return t.formTag||t.pTagInButtonScope;case`li`:return t.listItemTagAutoclosing;case`dd`:case`dt`:return t.dlItemTagAutoclosing;case`button`:return t.buttonTagInScope;case`a`:return t.aTagInScope;case`nobr`:return t.nobrTagInScope}return null}function Ht(e,t){for(;e;){switch(e.tag){case 5:case 26:case 27:if(e.type===t)return e}e=e.return}return null}function Ut(e,t){t||=mm;var n=t.current;if(t=(n=Bt(e,n&&n.tag,t.implicitRootScope)?null:n)?null:Vt(e,t),t=n||t,!t)return!0;var r=t.tag;if(t=String(!!n)+`|`+e+`|`+r,hm[t])return!1;hm[t]=!0;var i=(t=cp)?Ht(t.return,r):null,a=t!==null&&i!==null?zt(i,t,null):``,o=`<`+e+`>`;return n?(n=``,r===`table`&&e===`tr`&&(n+=` Add a <tbody>, <thead> or <tfoot> to your code to match the DOM tree generated by the browser.`),console.error(`In HTML, %s cannot be a child of <%s>.%s
68
+ This will cause a hydration error.%s`,o,r,n,a)):console.error(`In HTML, %s cannot be a descendant of <%s>.
69
+ This will cause a hydration error.%s`,o,r,a),t&&(e=t.return,i===null||e===null||i===e&&e._debugOwner===t._debugOwner||O(i,function(){console.error(`<%s> cannot contain a nested %s.
70
+ See this log for the ancestor stack trace.`,r,o)})),!1}function Wt(e,t,n){if(n||Bt(`#text`,t,!1))return!0;if(n=`#text|`+t,hm[n])return!1;hm[n]=!0;var r=(n=cp)?Ht(n,t):null;return n=n!==null&&r!==null?zt(r,n,n.tag===6?null:{children:null}):``,/\S/.test(e)?console.error(`In HTML, text nodes cannot be a child of <%s>.
71
+ This will cause a hydration error.%s`,t,n):console.error(`In HTML, whitespace text nodes cannot be a child of <%s>. Make sure you don't have any extra whitespace between tags on each line of your source code.
72
+ This will cause a hydration error.%s`,t,n),!1}function Gt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}function Kt(e){return e.replace(xm,function(e,t){return t.toUpperCase()})}function qt(e,t,n){var r=t.indexOf(`--`)===0;r||(-1<t.indexOf(`-`)?Cm.hasOwnProperty(t)&&Cm[t]||(Cm[t]=!0,console.error(`Unsupported style property %s. Did you mean %s?`,t,Kt(t.replace(bm,`ms-`)))):ym.test(t)?Cm.hasOwnProperty(t)&&Cm[t]||(Cm[t]=!0,console.error(`Unsupported vendor-prefixed style property %s. Did you mean %s?`,t,t.charAt(0).toUpperCase()+t.slice(1))):!Sm.test(n)||wm.hasOwnProperty(n)&&wm[n]||(wm[n]=!0,console.error(`Style property values shouldn't contain a semicolon. Try "%s: %s" instead.`,t,n.replace(Sm,``))),typeof n==`number`&&(isNaN(n)?Tm||(Tm=!0,console.error("`NaN` is an invalid value for the `%s` css style property.",t)):isFinite(n)||Em||(Em=!0,console.error("`Infinity` is an invalid value for the `%s` css style property.",t)))),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||Dm.has(t)?t===`float`?e.cssFloat=n:(De(n,t),e[t]=(``+n).trim()):e[t]=n+`px`}function Jt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");if(t&&Object.freeze(t),e=e.style,n!=null){if(t){var r={};if(n){for(var i in n)if(n.hasOwnProperty(i)&&!t.hasOwnProperty(i))for(var a=gm[i]||[i],o=0;o<a.length;o++)r[a[o]]=i}for(var s in t)if(t.hasOwnProperty(s)&&(!n||n[s]!==t[s]))for(i=gm[s]||[s],a=0;a<i.length;a++)r[i[a]]=s;for(var c in s={},t)for(i=gm[c]||[c],a=0;a<i.length;a++)s[i[a]]=c;for(var l in c={},r)if(i=r[l],(a=s[l])&&i!==a&&(o=i+`,`+a,!c[o])){c[o]=!0,o=console;var u=t[i];o.error.call(o,`%s a style property during rerender (%s) when a conflicting property is set (%s) can lead to styling bugs. To avoid this, don't mix shorthand and non-shorthand properties for the same value; instead, replace the shorthand with separate values.`,u==null||typeof u==`boolean`||u===``?`Removing`:`Updating`,i,a)}}for(var d in n)!n.hasOwnProperty(d)||t!=null&&t.hasOwnProperty(d)||(d.indexOf(`--`)===0?e.setProperty(d,``):d===`float`?e.cssFloat=``:e[d]=``);for(var f in t)l=t[f],t.hasOwnProperty(f)&&n[f]!==l&&qt(e,f,l)}else for(r in t)t.hasOwnProperty(r)&&qt(e,r,t[r])}function Yt(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}}function Xt(e){return Am.get(e)||e}function Zt(e,t){if(up.call(Nm,t)&&Nm[t])return!0;if(Fm.test(t)){if(e=`aria-`+t.slice(4).toLowerCase(),e=Mm.hasOwnProperty(e)?e:null,e==null)return console.error("Invalid ARIA attribute `%s`. ARIA attributes follow the pattern aria-* and must be lowercase.",t),Nm[t]=!0;if(t!==e)return console.error("Invalid ARIA attribute `%s`. Did you mean `%s`?",t,e),Nm[t]=!0}if(Pm.test(t)){if(e=t.toLowerCase(),e=Mm.hasOwnProperty(e)?e:null,e==null)return Nm[t]=!0,!1;t!==e&&(console.error("Unknown ARIA attribute `%s`. Did you mean `%s`?",t,e),Nm[t]=!0)}return!0}function Qt(e,t){var n=[],r;for(r in t)Zt(e,r)||n.push(r);t=n.map(function(e){return"`"+e+"`"}).join(`, `),n.length===1?console.error(`Invalid aria prop %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props`,t,e):1<n.length&&console.error(`Invalid aria props %s on <%s> tag. For details, see https://react.dev/link/invalid-aria-props`,t,e)}function $t(e,t,n,r){if(up.call(Lm,t)&&Lm[t])return!0;var i=t.toLowerCase();if(i===`onfocusin`||i===`onfocusout`)return console.error(`React uses onFocus and onBlur instead of onFocusIn and onFocusOut. All React events are normalized to bubble, so onFocusIn and onFocusOut are not needed/supported by React.`),Lm[t]=!0;if(typeof n==`function`&&(e===`form`&&t===`action`||e===`input`&&t===`formAction`||e===`button`&&t===`formAction`))return!0;if(r!=null){if(e=r.possibleRegistrationNames,r.registrationNameDependencies.hasOwnProperty(t))return!0;if(r=e.hasOwnProperty(i)?e[i]:null,r!=null)return console.error("Invalid event handler property `%s`. Did you mean `%s`?",t,r),Lm[t]=!0;if(Rm.test(t))return console.error("Unknown event handler property `%s`. It will be ignored.",t),Lm[t]=!0}else if(Rm.test(t))return zm.test(t)&&console.error("Invalid event handler property `%s`. React events use the camelCase naming convention, for example `onClick`.",t),Lm[t]=!0;if(Bm.test(t)||Vm.test(t))return!0;if(i===`innerhtml`)return console.error("Directly setting property `innerHTML` is not permitted. For more information, lookup documentation on `dangerouslySetInnerHTML`."),Lm[t]=!0;if(i===`aria`)return console.error("The `aria` attribute is reserved for future use in React. Pass individual `aria-` attributes instead."),Lm[t]=!0;if(i===`is`&&n!=null&&typeof n!=`string`)return console.error("Received a `%s` for a string attribute `is`. If this is expected, cast the value to a string.",typeof n),Lm[t]=!0;if(typeof n==`number`&&isNaN(n))return console.error("Received NaN for the `%s` attribute. If this is expected, cast the value to a string.",t),Lm[t]=!0;if(jm.hasOwnProperty(i)){if(i=jm[i],i!==t)return console.error("Invalid DOM property `%s`. Did you mean `%s`?",t,i),Lm[t]=!0}else if(t!==i)return console.error("React does not recognize the `%s` prop on a DOM element. If you intentionally want it to appear in the DOM as a custom attribute, spell it as lowercase `%s` instead. If you accidentally passed it from a parent component, remove it from the DOM element.",t,i),Lm[t]=!0;switch(t){case`dangerouslySetInnerHTML`:case`children`:case`style`:case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:return!0;case`innerText`:case`textContent`:return!0}switch(typeof n){case`boolean`:switch(t){case`autoFocus`:case`checked`:case`multiple`:case`muted`:case`selected`:case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`: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`:case`capture`:case`download`:case`inert`:return!0;default:return i=t.toLowerCase().slice(0,5),i===`data-`||i===`aria-`||(n?console.error('Received `%s` for a non-boolean attribute `%s`.\n\nIf you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.',n,t,t,n,t):console.error(`Received \`%s\` for a non-boolean attribute \`%s\`.
73
+
74
+ If you want to write it to the DOM, pass a string instead: %s="%s" or %s={value.toString()}.
75
+
76
+ If you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.`,n,t,t,n,t,t,t),Lm[t]=!0)}case`function`:case`symbol`:return Lm[t]=!0,!1;case`string`:if(n===`false`||n===`true`){switch(t){case`checked`:case`selected`:case`multiple`:case`muted`: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`:case`inert`:break;default:return!0}console.error("Received the string `%s` for the boolean attribute `%s`. %s Did you mean %s={%s}?",n,t,n===`false`?`The browser will interpret it as a truthy value.`:`Although this works, it will not work as expected if you pass the string "false".`,t,n),Lm[t]=!0}}return!0}function en(e,t,n){var r=[],i;for(i in t)$t(e,i,t[i],n)||r.push(i);t=r.map(function(e){return"`"+e+"`"}).join(`, `),r.length===1?console.error(`Invalid value for prop %s on <%s> tag. Either remove it from the element, or pass a string or number value to keep it in the DOM. For details, see https://react.dev/link/attribute-behavior `,t,e):1<r.length&&console.error(`Invalid values for props %s on <%s> tag. Either remove them from the element, or pass a string or number value to keep them in the DOM. For details, see https://react.dev/link/attribute-behavior `,t,e)}function tn(e){return Hm.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function nn(){}function rn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}function an(e){var t=Ze(e);if(t&&(e=t.stateNode)){var n=e[Bp]||null;a:switch(e=t.stateNode,t.type){case`input`:if(ht(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(k(t,`name`),n=n.querySelectorAll(`input[name="`+pt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=r[Bp]||null;if(!i)throw Error("ReactDOMInput: Mixing React and non-React radio inputs with the same `name` is not supported.");ht(r,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&dt(r)}break a;case`textarea`:Ct(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&bt(e,!!n.multiple,t,!1)}}}function on(e,t,n){if(Km)return e(t,n);Km=!0;try{return e(t)}finally{if(Km=!1,(Wm!==null||Gm!==null)&&($c(),Wm&&(t=Wm,e=Gm,Gm=Wm=null,an(t),e)))for(t=0;t<e.length;t++)an(e[t])}}function sn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[Bp]||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("Expected `"+t+"` listener to be a function, instead got a value of `"+typeof n+"` type.");return n}function cn(){if(Qm)return Qm;var e,t=Zm,n=t.length,r,i=`value`in Xm?Xm.value:Xm.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 Qm=i.slice(e,1<r?1-r:void 0)}function ln(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 un(){return!0}function dn(){return!1}function fn(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)?un:dn,this.isPropagationStopped=dn,this}return Sf(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=un)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=un)},persist:function(){},isPersistent:un}),t}function pn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=gh[e])?!!t[e]:!1}function mn(){return pn}function hn(e,t){switch(e){case`keyup`:return Ch.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==wh;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function gn(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}function _n(e,t){switch(e){case`compositionend`:return gn(t);case`keypress`:return t.which===kh?(jh=!0,Ah):null;case`textInput`:return e=t.data,e===Ah&&jh?null:e;default:return null}}function vn(e,t){if(Mh)return e===`compositionend`||!Th&&hn(e,t)?(e=cn(),Qm=Zm=Xm=null,Mh=!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 Oh&&t.locale!==`ko`?null:t.data;default:return null}}function yn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!Nh[e.type]:t===`textarea`}function bn(e){if(!qm)return!1;e=`on`+e;var t=e in document;return t||=(t=document.createElement(`div`),t.setAttribute(e,`return;`),typeof t[e]==`function`),t}function xn(e,t,n,r){Wm?Gm?Gm.push(r):Gm=[r]:Wm=r,t=au(t,`onChange`),0<t.length&&(n=new eh(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}function Sn(e){Ql(e,0)}function Cn(e){if(dt(Qe(e)))return e}function wn(e,t){if(e===`change`)return t}function Tn(){Ph&&(Ph.detachEvent(`onpropertychange`,En),Fh=Ph=null)}function En(e){if(e.propertyName===`value`&&Cn(Fh)){var t=[];xn(t,Fh,e,rn(e)),on(Sn,t)}}function Dn(e,t,n){e===`focusin`?(Tn(),Ph=t,Fh=n,Ph.attachEvent(`onpropertychange`,En)):e===`focusout`&&Tn()}function On(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return Cn(Fh)}function kn(e,t){if(e===`click`)return Cn(t)}function An(e,t){if(e===`input`||e===`change`)return Cn(t)}function jn(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}function Mn(e,t){if(Lh(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(!up.call(t,i)||!Lh(e[i],t[i]))return!1}return!0}function Nn(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Pn(e,t){var n=Nn(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=Nn(n)}}function Fn(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Fn(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function In(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=ft(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=ft(e.document)}return t}function Ln(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}function Rn(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Hh||zh==null||zh!==ft(r)||(r=zh,`selectionStart`in r&&Ln(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}),Vh&&Mn(Vh,r)||(Vh=r,r=au(Bh,`onSelect`),0<r.length&&(t=new eh(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=zh)))}function zn(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}function Bn(e){if(Wh[e])return Wh[e];if(!Uh[e])return e;var t=Uh[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Gh)return Wh[e]=t[n];return e}function Vn(e,t){$h.set(e,t),et(t,[e])}function Hn(e){for(var t=sg,n=0;n<e.length;n++){var r=e[n];if(typeof r==`object`&&r){if(Bf(r)&&r.length===2&&typeof r[0]==`string`){if(t!==sg&&t!==ug)return cg;t=ug}else return cg}else{if(typeof r==`function`||typeof r==`string`&&50<r.length||t!==sg&&t!==lg)return cg;t=lg}}return t}function Un(e,t,n,r){for(var i in e)up.call(e,i)&&i[0]!==`_`&&Wn(i,e[i],t,n,r)}function Wn(e,t,n,r,i){switch(typeof t){case`object`:if(t===null){t=`null`;break}if(t.$$typeof===wf){var a=C(t.type)||`…`,o=t.key;t=t.props;var s=Object.keys(t),c=s.length;if(o==null&&c===0){t=`<`+a+` />`;break}if(3>r||c===1&&s[0]===`children`&&o==null){t=`<`+a+` … />`;break}for(var l in n.push([i+`\xA0\xA0`.repeat(r)+e,`<`+a]),o!==null&&Wn(`key`,o,n,r+1,i),e=!1,t)l===`children`?t.children!=null&&(!Bf(t.children)||0<t.children.length)&&(e=!0):up.call(t,l)&&l[0]!==`_`&&Wn(l,t[l],n,r+1,i);n.push([``,e?`>…</`+a+`>`:`/>`]);return}if(a=Object.prototype.toString.call(t),a=a.slice(8,a.length-1),a===`Array`){if(l=Hn(t),l===lg||l===sg){t=JSON.stringify(t);break}if(l===ug){for(n.push([i+`\xA0\xA0`.repeat(r)+e,``]),e=0;e<t.length;e++)a=t[e],Wn(a[0],a[1],n,r+1,i);return}}if(a===`Promise`){if(t.status===`fulfilled`){if(a=n.length,Wn(e,t.value,n,r,i),n.length>a){n=n[a],n[1]=`Promise<`+(n[1]||`Object`)+`>`;return}}else if(t.status===`rejected`&&(a=n.length,Wn(e,t.reason,n,r,i),n.length>a)){n=n[a],n[1]=`Rejected Promise<`+n[1]+`>`;return}n.push([`\xA0\xA0`.repeat(r)+e,`Promise`]);return}a===`Object`&&(l=Object.getPrototypeOf(t))&&typeof l.constructor==`function`&&(a=l.constructor.name),n.push([i+`\xA0\xA0`.repeat(r)+e,a===`Object`?3>r?``:`…`:a]),3>r&&Un(t,n,r+1,i);return;case`function`:t=t.name===``?`() => {}`:t.name+`() {}`;break;case`string`:t=t===og?`…`:JSON.stringify(t);break;case`undefined`:t=`undefined`;break;case`boolean`:t=t?`true`:`false`;break;default:t=String(t)}n.push([i+`\xA0\xA0`.repeat(r)+e,t])}function Gn(e,t,n,r){var i=!0;for(o in e)o in t||(n.push([dg+`\xA0\xA0`.repeat(r)+o,`…`]),i=!1);for(var a in t)if(a in e){var o=e[a],s=t[a];if(o!==s){if(r===0&&a===`children`)i=`\xA0\xA0`.repeat(r)+a,n.push([dg+i,`…`],[fg+i,`…`]);else{if(!(3<=r)){if(typeof o==`object`&&typeof s==`object`&&o!==null&&s!==null&&o.$$typeof===s.$$typeof){if(s.$$typeof===wf){if(o.type===s.type&&o.key===s.key){o=C(s.type)||`…`,i=`\xA0\xA0`.repeat(r)+a,o=`<`+o+` … />`,n.push([dg+i,o],[fg+i,o]),i=!1;continue}}else{var c=Object.prototype.toString.call(o),l=Object.prototype.toString.call(s);if(c===l&&(l===`[object Object]`||l===`[object Array]`)){c=[pg+`\xA0\xA0`.repeat(r)+a,l===`[object Array]`?`Array`:``],n.push(c),l=n.length,Gn(o,s,n,r+1)?l===n.length&&(c[1]=`Referentially unequal but deeply equal objects. Consider memoization.`):i=!1;continue}}}else if(typeof o==`function`&&typeof s==`function`&&o.name===s.name&&o.length===s.length&&(c=Function.prototype.toString.call(o),l=Function.prototype.toString.call(s),c===l)){o=s.name===``?`() => {}`:s.name+`() {}`,n.push([pg+`\xA0\xA0`.repeat(r)+a,o+` Referentially unequal function closure. Consider memoization.`]);continue}}Wn(a,o,n,r,dg),Wn(a,s,n,r,fg)}i=!1}}else n.push([fg+`\xA0\xA0`.repeat(r)+a,`…`]),i=!1;return i}function Kn(e){_g=e&63?`Blocking`:e&64?`Gesture`:e&4194176?`Transition`:e&62914560?`Suspense`:e&2080374784?`Idle`:`Other`}function qn(e,t,n,r){mg&&(bg.start=t,bg.end=n,yg.color=`warning`,yg.tooltipText=r,yg.properties=null,(e=e._debugTask)?e.run(performance.measure.bind(performance,r,bg)):performance.measure(r,bg))}function Jn(e,t,n){qn(e,t,n,`Reconnect`)}function Yn(e,t,n,r,i){var a=T(e);if(a!==null&&mg){var o=e.alternate,s=e.actualDuration;if(o===null||o.child!==e.child)for(var c=e.child;c!==null;c=c.sibling)s-=c.actualDuration;r=.5>s?r?`tertiary-light`:`primary-light`:10>s?r?`tertiary`:`primary`:100>s?r?`tertiary-dark`:`primary-dark`:`error`;var l=e.memoizedProps;s=e._debugTask,l!==null&&o!==null&&o.memoizedProps!==l?(c=[xg],l=Gn(o.memoizedProps,l,c,0),1<c.length&&(l&&!vg&&(o.lanes&i)===0&&100<e.actualDuration?(vg=!0,c[0]=Cg,yg.color=`warning`,yg.tooltipText=Sg):(yg.color=r,yg.tooltipText=a),yg.properties=c,bg.start=t,bg.end=n,s==null?performance.measure(`​`+a,bg):s.run(performance.measure.bind(performance,`​`+a,bg)))):s==null?console.timeStamp(a,t,n,hg,void 0,r):s.run(console.timeStamp.bind(console,a,t,n,hg,void 0,r))}}function Xn(e,t,n,r){if(mg){var i=T(e);if(i!==null){for(var a=null,o=[],s=0;s<r.length;s++){var c=r[s];a==null&&c.source!==null&&(a=c.source._debugTask),c=c.value,o.push([`Error`,typeof c==`object`&&c&&typeof c.message==`string`?String(c.message):String(c)])}e.key!==null&&Wn(`key`,e.key,o,0,``),e.memoizedProps!==null&&Un(e.memoizedProps,o,0,``),a??=e._debugTask,e={start:t,end:n,detail:{devtools:{color:`error`,track:hg,tooltipText:e.tag===13?`Hydration failed`:`Error boundary caught an error`,properties:o}}},a?a.run(performance.measure.bind(performance,`​`+i,e)):performance.measure(`​`+i,e)}}}function Zn(e,t,n,r,i){if(i!==null){if(mg){var a=T(e);if(a!==null){r=[];for(var o=0;o<i.length;o++){var s=i[o].value;r.push([`Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}e.key!==null&&Wn(`key`,e.key,r,0,``),e.memoizedProps!==null&&Un(e.memoizedProps,r,0,``),t={start:t,end:n,detail:{devtools:{color:`error`,track:hg,tooltipText:`A lifecycle or effect errored`,properties:r}}},(e=e._debugTask)?e.run(performance.measure.bind(performance,`​`+a,t)):performance.measure(`​`+a,t)}}}else a=T(e),a!==null&&mg&&(i=1>r?`secondary-light`:100>r?`secondary`:500>r?`secondary-dark`:`error`,(e=e._debugTask)?e.run(console.timeStamp.bind(console,a,t,n,hg,void 0,i)):console.timeStamp(a,t,n,hg,void 0,i))}function Qn(e,t,n,r){if(mg&&!(t<=e)){var i=(n&738197653)===n?`tertiary-dark`:`primary-dark`;n=(n&536870912)===n?`Prepared`:(n&201326741)===n?`Hydrated`:`Render`,r?r.run(console.timeStamp.bind(console,n,e,t,_g,gg,i)):console.timeStamp(n,e,t,_g,gg,i)}}function $n(e,t,n,r){!mg||t<=e||(n=(n&738197653)===n?`tertiary-dark`:`primary-dark`,r?r.run(console.timeStamp.bind(console,`Prewarm`,e,t,_g,gg,n)):console.timeStamp(`Prewarm`,e,t,_g,gg,n))}function er(e,t,n,r){!mg||t<=e||(n=(n&738197653)===n?`tertiary-dark`:`primary-dark`,r?r.run(console.timeStamp.bind(console,`Suspended`,e,t,_g,gg,n)):console.timeStamp(`Suspended`,e,t,_g,gg,n))}function tr(e,t,n,r,i,a){if(mg&&!(t<=e)){n=[];for(var o=0;o<r.length;o++){var s=r[o].value;n.push([`Recoverable Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}e={start:e,end:t,detail:{devtools:{color:`primary-dark`,track:_g,trackGroup:gg,tooltipText:i?`Hydration Failed`:`Recovered after Error`,properties:n}}},a?a.run(performance.measure.bind(performance,`Recovered`,e)):performance.measure(`Recovered`,e)}}function nr(e,t,n,r){!mg||t<=e||(r?r.run(console.timeStamp.bind(console,`Errored`,e,t,_g,gg,`error`)):console.timeStamp(`Errored`,e,t,_g,gg,`error`))}function rr(e,t,n,r){!mg||t<=e||(r?r.run(console.timeStamp.bind(console,n,e,t,_g,gg,`secondary-light`)):console.timeStamp(n,e,t,_g,gg,`secondary-light`))}function ir(e,t,n,r,i){if(mg&&!(t<=e)){for(var a=[],o=0;o<n.length;o++){var s=n[o].value;a.push([`Error`,typeof s==`object`&&s&&typeof s.message==`string`?String(s.message):String(s)])}e={start:e,end:t,detail:{devtools:{color:`error`,track:_g,trackGroup:gg,tooltipText:r?`Remaining Effects Errored`:`Commit Errored`,properties:a}}},i?i.run(performance.measure.bind(performance,`Errored`,e)):performance.measure(`Errored`,e)}}function ar(e,t,n){!mg||t<=e||(n?n.run(console.timeStamp.bind(console,`Animating`,e,t,_g,gg,`secondary-dark`)):console.timeStamp(`Animating`,e,t,_g,gg,`secondary-dark`))}function or(){for(var e=Dg,t=Og=Dg=0;t<e;){var n=Eg[t];Eg[t++]=null;var r=Eg[t];Eg[t++]=null;var i=Eg[t];Eg[t++]=null;var a=Eg[t];if(Eg[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&&ur(n,i,a)}}function sr(e,t,n,r){Eg[Dg++]=e,Eg[Dg++]=t,Eg[Dg++]=n,Eg[Dg++]=r,Og|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function cr(e,t,n,r){return sr(e,t,n,r),dr(e)}function lr(e,t){return sr(e,null,null,t),dr(e)}function ur(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&wg||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Op(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function dr(e){if(Kx>Gx)throw Zx=Kx=0,Qx=qx=null,Error(`Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.`);Zx>Xx&&(Zx=0,Qx=null,console.error(`Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render.`)),e.alternate===null&&e.flags&4098&&Pl(e);for(var t=e,n=t.return;n!==null;)t.alternate===null&&t.flags&4098&&Pl(e),t=n,n=t.return;return t.tag===3?t.stateNode:null}function fr(e){if(Ag===null)return e;var t=Ag(e);return t===void 0?e:t.current}function pr(e){if(Ag===null)return e;var t=Ag(e);return t===void 0?e!=null&&typeof e.render==`function`&&(t=fr(e.render),e.render!==t)?(t={$$typeof:jf,render:t},e.displayName!==void 0&&(t.displayName=e.displayName),t):e:t.current}function mr(e,t){if(Ag===null)return!1;var n=e.elementType;t=t.type;var r=!1,i=typeof t==`object`&&t?t.$$typeof:null;switch(e.tag){case 1:typeof t==`function`&&(r=!0);break;case 0:(typeof t==`function`||i===Ff)&&(r=!0);break;case 11:(i===jf||i===Ff)&&(r=!0);break;case 14:case 15:(i===Pf||i===Ff)&&(r=!0);break;default:return!1}return!!(r&&(e=Ag(n),e!==void 0&&e===Ag(t)))}function hr(e){Ag!==null&&typeof WeakSet==`function`&&(jg===null&&(jg=new WeakSet),jg.add(e))}function gr(e,t,n){do{var r=e,i=r.alternate,a=r.child,o=r.sibling,s=r.tag;r=r.type;var c=null;switch(s){case 0:case 15:case 1:c=r;break;case 11:c=r.render}if(Ag===null)throw Error(`Expected resolveFamily to be set during hot reload.`);var l=!1;if(r=!1,c!==null&&(c=Ag(c),c!==void 0&&(n.has(c)?r=!0:t.has(c)&&(s===1?r=!0:l=!0))),jg!==null&&(jg.has(e)||i!==null&&jg.has(i))&&(r=!0),r&&(e._debugNeedsRemount=!0),(r||l)&&(i=lr(e,2),i!==null&&Jc(i,e,2)),a===null||r||gr(a,t,n),o===null)break;e=o}while(1)}function _r(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,this.actualDuration=-0,this.actualStartTime=-1.1,this.treeBaseDuration=this.selfBaseDuration=-0,this._debugTask=this._debugStack=this._debugOwner=this._debugInfo=null,this._debugNeedsRemount=!1,this._debugHookTypes=null,Lg||typeof Object.preventExtensions!=`function`||Object.preventExtensions(this)}function vr(e){return e=e.prototype,!(!e||!e.isReactComponent)}function yr(e,t){var n=e.alternate;switch(n===null?(n=g(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n._debugOwner=e._debugOwner,n._debugStack=e._debugStack,n._debugTask=e._debugTask,n._debugHookTypes=e._debugHookTypes,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null,n.actualDuration=-0,n.actualStartTime=-1.1),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,_debugThenableState:t._debugThenableState},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n.selfBaseDuration=e.selfBaseDuration,n.treeBaseDuration=e.treeBaseDuration,n._debugInfo=e._debugInfo,n._debugNeedsRemount=e._debugNeedsRemount,n.tag){case 0:case 15:n.type=fr(e.type);break;case 1:n.type=fr(e.type);break;case 11:n.type=pr(e.type)}return n}function br(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.selfBaseDuration=0,e.treeBaseDuration=0):(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,_debugThenableState:t._debugThenableState},e.selfBaseDuration=n.selfBaseDuration,e.treeBaseDuration=n.treeBaseDuration),e}function xr(e,t,n,r,i,a){var o=0,s=e;if(typeof e==`function`)vr(e)&&(o=1),s=fr(s);else if(typeof e==`string`)o=le(),o=Id(e,n,o)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case If:return t=g(31,n,t,i),t.elementType=If,t.lanes=a,t;case Ef:return Cr(n.children,i,a,t);case Df:o=8,i|=Pg,i|=Fg;break;case Of:return e=n,r=i,typeof e.id!=`string`&&console.error('Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',typeof e.id),t=g(12,e,t,r|Ng),t.elementType=Of,t.lanes=a,t.stateNode={effectDuration:0,passiveEffectDuration:0},t;case Mf:return t=g(13,n,t,i),t.elementType=Mf,t.lanes=a,t;case Nf:return t=g(19,n,t,i),t.elementType=Nf,t.lanes=a,t;default:if(typeof e==`object`&&e)switch(e.$$typeof){case Af:o=10;break a;case kf:o=9;break a;case jf:o=11,s=pr(s);break a;case Pf:o=14;break a;case Ff:o=16,s=null;break a}s=``,(e===void 0||typeof e==`object`&&e&&Object.keys(e).length===0)&&(s+=` You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.`),e===null?n=`null`:Bf(e)?n=`array`:e!==void 0&&e.$$typeof===wf?(n=`<`+(C(e.type)||`Unknown`)+` />`,s=` Did you accidentally export a JSX literal instead of a component?`):n=typeof e,(o=r?w(r):null)&&(s+=`
77
+
78
+ Check the render method of \``+o+"`."),o=29,n=Error(`Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: `+(n+`.`+s)),s=null}return t=g(o,n,t,i),t.elementType=e,t.type=s,t.lanes=a,t._debugOwner=r,t}function Sr(e,t,n){return t=xr(e.type,e.key,e.props,e._owner,t,n),t._debugOwner=e._owner,t._debugStack=e._debugStack,t._debugTask=e._debugTask,t}function Cr(e,t,n,r){return e=g(7,e,r,t),e.lanes=n,e}function wr(e,t,n){return e=g(6,e,null,t),e.lanes=n,e}function Tr(e){var t=g(18,null,null,Y);return t.stateNode=e,t}function Er(e,t,n){return t=g(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function F(e,t){if(typeof e==`object`&&e){var n=Rg.get(e);return n===void 0?(t={value:e,source:t,stack:ye(t)},Rg.set(e,t),t):n}return{value:e,source:t,stack:ye(t)}}function Dr(e,t){Nr(),zg[Bg++]=Hg,zg[Bg++]=Vg,Vg=e,Hg=t}function Or(e,t,n){Nr(),Ug[Wg++]=Kg,Ug[Wg++]=qg,Ug[Wg++]=Gg,Gg=e;var r=Kg;e=qg;var i=32-Op(r)-1;r&=~(1<<i),n+=1;var a=32-Op(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Kg=1<<32-Op(t)+i|n<<i|r,qg=a+e}else Kg=1<<a|n<<i|r,qg=e}function kr(e){Nr(),e.return!==null&&(Dr(e,1),Or(e,1,0))}function Ar(e){for(;e===Vg;)Vg=zg[--Bg],zg[Bg]=null,Hg=zg[--Bg],zg[Bg]=null;for(;e===Gg;)Gg=Ug[--Wg],Ug[Wg]=null,qg=Ug[--Wg],Ug[Wg]=null,Kg=Ug[--Wg],Ug[Wg]=null}function jr(){return Nr(),Gg===null?null:{id:Kg,overflow:qg}}function Mr(e,t){Nr(),Ug[Wg++]=Kg,Ug[Wg++]=qg,Ug[Wg++]=Gg,Kg=t.id,qg=t.overflow,Gg=e}function Nr(){Xg||console.error(`Expected to be hydrating. This is a bug in React. Please file an issue.`)}function Pr(e,t){if(e.return===null){if(Qg===null)Qg={fiber:e,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:t};else{if(Qg.fiber!==e)throw Error(`Saw multiple hydration diff roots in a pass. This is a bug in React.`);Qg.distanceFromLeaf>t&&(Qg.distanceFromLeaf=t)}return Qg}var n=Pr(e.return,t+1).children;return 0<n.length&&n[n.length-1].fiber===e?(n=n[n.length-1],n.distanceFromLeaf>t&&(n.distanceFromLeaf=t),n):(t={fiber:e,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:t},n.push(t),t)}function Fr(){Xg&&console.error(`We should not be hydrating here. This is a bug in React. Please file a bug.`)}function Ir(e,t){Zg||(e=Pr(e,0),e.serverProps=null,t!==null&&(t=ud(t),e.serverTail.push(t)))}function Lr(e){var t=1<arguments.length&&arguments[1]!==void 0&&arguments[1],n=``,r=Qg;throw r!==null&&(Qg=null,n=Rt(r)),Ur(F(Error(`Hydration failed because the server rendered `+(t?`text`:`HTML`)+` didn't match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:
79
+
80
+ - A server/client branch \`if (typeof window !== 'undefined')\`.
81
+ - Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
82
+ - Date formatting in a user's locale which doesn't match the server.
83
+ - External changing data without sending a snapshot of it along with the HTML.
84
+ - Invalid HTML tag nesting.
85
+
86
+ It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
87
+
88
+ https://react.dev/link/hydration-mismatch`+n),e)),t_}function Rr(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[zp]=e,t[Bp]=r,cu(n,r),n){case`dialog`:$l(`cancel`,t),$l(`close`,t);break;case`iframe`:case`object`:case`embed`:$l(`load`,t);break;case`video`:case`audio`:for(n=0;n<fS.length;n++)$l(fS[n],t);break;case`source`:$l(`error`,t);break;case`img`:case`image`:case`link`:$l(`error`,t),$l(`load`,t);break;case`details`:$l(`toggle`,t);break;case`input`:tt(`input`,r),$l(`invalid`,t),mt(t,r),gt(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`option`:vt(t,r);break;case`select`:tt(`select`,r),$l(`invalid`,t),xt(t,r);break;case`textarea`:tt(`textarea`,r),$l(`invalid`,t),St(t,r),wt(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||mu(t.textContent,n)?(r.popover!=null&&($l(`beforetoggle`,t),$l(`toggle`,t)),r.onScroll!=null&&$l(`scroll`,t),r.onScrollEnd!=null&&$l(`scrollend`,t),r.onClick!=null&&(t.onclick=nn),t=!0):t=!1,t||Lr(e,!0)}function zr(e){for(Jg=e.return;Jg;)switch(Jg.tag){case 5:case 31:case 13:e_=!1;return;case 27:case 3:e_=!0;return;default:Jg=Jg.return}}function Br(e){if(e!==Jg)return!1;if(!Xg)return zr(e),Xg=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Pu(e.type,e.memoizedProps)),n=!n),n&&Yg){for(n=Yg;n;){var r=Pr(e,0),i=ud(n);r.serverTail.push(i),n=i.type===`Suspense`?fd(n):ld(n.nextSibling)}Lr(e)}if(zr(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);Yg=fd(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);Yg=fd(e)}else t===27?(t=Yg,Gu(e.type)?(e=nC,nC=null,Yg=e):Yg=t):Yg=Jg?ld(e.stateNode.nextSibling):null;return!0}function Vr(){Yg=Jg=null,Zg=Xg=!1}function Hr(){var e=$g;return e!==null&&(mx===null?mx=e:mx.push.apply(mx,e),$g=null),e}function Ur(e){$g===null?$g=[e]:$g.push(e)}function Wr(){var e=Qg;if(e!==null){Qg=null;for(var t=Rt(e);0<e.children.length;)e=e.children[0];O(e.fiber,function(){console.error(`A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up. This can happen if a SSR-ed Client Component used:
89
+
90
+ - A server/client branch \`if (typeof window !== 'undefined')\`.
91
+ - Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
92
+ - Date formatting in a user's locale which doesn't match the server.
93
+ - External changing data without sending a snapshot of it along with the HTML.
94
+ - Invalid HTML tag nesting.
95
+
96
+ It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
97
+
98
+ %s%s`,`https://react.dev/link/hydration-mismatch`,t)})}}function Gr(){o_=a_=null,s_=!1}function Kr(e,t,n){D(n_,t._currentValue,e),t._currentValue=n,D(r_,t._currentRenderer,e),t._currentRenderer!==void 0&&t._currentRenderer!==null&&t._currentRenderer!==i_&&console.error(`Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported.`),t._currentRenderer=i_}function qr(e,t){e._currentValue=n_.current;var n=r_.current;ae(r_,t),e._currentRenderer=n,ae(n_,t)}function Jr(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}e!==n&&console.error(`Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.`)}function Yr(e,t,n,r){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var a=i.dependencies;if(a!==null){var o=i.child;a=a.firstContext;a:for(;a!==null;){var s=a;a=i;for(var c=0;c<t.length;c++)if(s.context===t[c]){a.lanes|=n,s=a.alternate,s!==null&&(s.lanes|=n),Jr(a.return,n,e),r||(o=null);break a}a=s.next}}else if(i.tag===18){if(o=i.return,o===null)throw Error(`We just came from a parent so we must have had a parent. This is a bug in React.`);o.lanes|=n,a=o.alternate,a!==null&&(a.lanes|=n),Jr(o,n,e),o=null}else o=i.child;if(o!==null)o.return=i;else for(o=i;o!==null;){if(o===e){o=null;break}if(i=o.sibling,i!==null){i.return=o.return,o=i;break}o=o.return}i=o}}function Xr(e,t,n,r){e=null;for(var i=t,a=!1;i!==null;){if(!a){if(i.flags&524288)a=!0;else if(i.flags&262144)break}if(i.tag===10){var o=i.alternate;if(o===null)throw Error(`Should have a current fiber. This is a bug in React.`);if(o=o.memoizedProps,o!==null){var s=i.type;Lh(i.pendingProps.value,o.value)||(e===null?e=[s]:e.push(s))}}else if(i===Yf.current){if(o=i.alternate,o===null)throw Error(`Should have a current fiber. This is a bug in React.`);o.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e===null?e=[bC]:e.push(bC))}i=i.return}e!==null&&Yr(t,e,n,r),t.flags|=262144}function Zr(e){for(e=e.firstContext;e!==null;){if(!Lh(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Qr(e){a_=e,o_=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function $r(e){return s_&&console.error(`Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().`),ti(a_,e)}function ei(e,t){return a_===null&&Qr(e),ti(e,t)}function ti(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},o_===null){if(e===null)throw Error(`Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().`);o_=t,e.dependencies={lanes:0,firstContext:t,_debugThenableState:null},e.flags|=524288}else o_=o_.next=t;return n}function ni(){return{controller:new c_,data:new Map,refCount:0}}function ri(e){e.controller.signal.aborted&&console.warn(`A cache instance was retained after it was already freed. This likely indicates a bug in React.`),e.refCount++}function ii(e){e.refCount--,0>e.refCount&&console.warn(`A cache instance was released after it was already freed. This likely indicates a bug in React.`),e.refCount===0&&l_(u_,function(){e.controller.abort()})}function ai(e,t,n){e&127?0>E_&&(E_=f_(),D_=p_(t),k_=t,n!=null&&(A_=T(n)),(Vb&(Mb|Nb))!==jb&&(w_=!0,O_=m_),e=Lu(),t=Iu(),e!==N_||t!==M_?N_=-1.1:t!==null&&(O_=m_),j_=e,M_=t):e&4194048&&0>L_&&(L_=f_(),z_=p_(t),B_=t,n!=null&&(V_=T(n)),0>I_)&&(e=Lu(),t=Iu(),(e!==W_||t!==U_)&&(W_=-1.1),H_=e,U_=t)}function oi(e){if(0>E_){E_=f_(),D_=e._debugTask==null?null:e._debugTask,(Vb&(Mb|Nb))!==jb&&(O_=m_);var t=Lu(),n=Iu();t!==N_||n!==M_?N_=-1.1:n!==null&&(O_=m_),j_=t,M_=n}0>L_&&(L_=f_(),z_=e._debugTask==null?null:e._debugTask,0>I_)&&(e=Lu(),t=Iu(),(e!==W_||t!==U_)&&(W_=-1.1),H_=e,U_=t)}function si(){var e=x_;return x_=0,e}function ci(e){var t=x_;return x_=e,t}function li(e){var t=x_;return x_+=e,t}function ui(){Z=X=-1.1}function di(){var e=X;return X=-1.1,e}function fi(e){0<=e&&(X=e)}function pi(){var e=S_;return S_=-0,e}function mi(e){0<=e&&(S_=e)}function hi(){var e=C_;return C_=null,e}function gi(){var e=w_;return w_=!1,e}function _i(e){b_=f_(),0>e.actualStartTime&&(e.actualStartTime=b_)}function vi(e){if(0<=b_){var t=f_()-b_;e.actualDuration+=t,e.selfBaseDuration=t,b_=-1}}function yi(e){if(0<=b_){var t=f_()-b_;e.actualDuration+=t,b_=-1}}function bi(){if(0<=b_){var e=f_(),t=e-b_;b_=-1,x_+=t,S_+=t,Z=e}}function xi(e){C_===null&&(C_=[]),C_.push(e),y_===null&&(y_=[]),y_.push(e)}function Si(){b_=f_(),0>X&&(X=b_)}function Ci(e){for(var t=e.child;t;)e.actualDuration+=t.actualDuration,t=t.sibling}function wi(e,t){if(ev===null){var n=ev=[];tv=0,nv=ql(),rv={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return tv++,t.then(Ti,Ti),t}function Ti(){if(--tv===0&&(-1<L_||(I_=-1.1),ev!==null)){rv!==null&&(rv.status=`fulfilled`);var e=ev;ev=null,nv=0,rv=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Ei(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}function Di(){var e=av.current;return e===null?Hb.pooledCache:e}function Oi(e,t){t===null?D(av,av.current,e):D(av,t.pool,e)}function ki(){var e=Di();return e===null?null:{parent:d_._currentValue,pool:e}}function Ai(){return{didWarnAboutUncachedPromise:!1,thenables:[]}}function ji(e){return e=e.status,e===`fulfilled`||e===`rejected`}function Mi(e,t,n){J.actQueue!==null&&(J.didUsePromise=!0);var r=e.thenables;if(n=r[n],n===void 0?r.push(t):n!==t&&(e.didWarnAboutUncachedPromise||(e.didWarnAboutUncachedPromise=!0,console.error(`A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework.`)),t.then(nn,nn),t=n),t._debugInfo===void 0){e=performance.now(),r=t.displayName;var i={name:typeof r==`string`?r:`Promise`,start:e,end:e,value:t};t._debugInfo=[{awaited:i}],t.status!==`fulfilled`&&t.status!==`rejected`&&(e=function(){i.end=performance.now()},t.then(e,e))}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Fi(e),e;default:if(typeof t.status==`string`)t.then(nn,nn);else{if(e=Hb,e!==null&&100<e.shellSuspendCounter)throw Error("An unknown Component is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.");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,Fi(e),e}throw Rv=t,zv=!0,Pv}}function Ni(e){try{return Nv(e)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Rv=e,zv=!0,Pv):e}}function Pi(){if(Rv===null)throw Error(`Expected a suspended thenable. This is a bug in React. Please file an issue.`);var e=Rv;return Rv=null,zv=!1,e}function Fi(e){if(e===Pv||e===Iv)throw Error("Hooks are not supported inside an async component. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.")}function Ii(e){var t=Hv;return e!=null&&(Hv=t===null?e:t.concat(e)),t}function Li(){var e=Hv;if(e!=null){for(var t=e.length-1;0<=t;t--)if(e[t].name!=null){var n=e[t].debugTask;if(n!=null)return n}}return null}function Ri(e,t,n){for(var r=Object.keys(e.props),i=0;i<r.length;i++){var a=r[i];if(a!==`children`&&a!==`key`){t===null&&(t=Sr(e,n.mode,0),t._debugInfo=Hv,t.return=n),O(t,function(e){console.error("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",e)},a);break}}}function zi(e){var t=Vv;return Vv+=1,Bv===null&&(Bv=Ai()),Mi(Bv,e,t)}function Bi(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Vi(e,t){throw t.$$typeof===Cf?Error(`A React Element from an older version of React was rendered. This is not supported. It can happen if:
99
+ - Multiple copies of the "react" package is used.
100
+ - A library pre-bundled an old copy of "react" or "react/jsx-runtime".
101
+ - A compiler tries to "inline" JSX instead of using the runtime.`):(e=Object.prototype.toString.call(t),Error(`Objects are not valid as a React child (found: `+(e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)+`). If you meant to render a collection of children, use an array instead.`))}function Hi(e,t){var n=Li();n===null?Vi(e,t):n.run(Vi.bind(null,e,t))}function Ui(e,t){var n=T(e)||`Component`;Kv[n]||(Kv[n]=!0,t=t.displayName||t.name||`Component`,e.tag===3?console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
102
+ root.render(%s)`,t,t,t):console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
103
+ <%s>{%s}</%s>`,t,t,n,t,n))}function Wi(e,t){var n=Li();n===null?Ui(e,t):n.run(Ui.bind(null,e,t))}function Gi(e,t){var n=T(e)||`Component`;qv[n]||(qv[n]=!0,t=String(t),e.tag===3?console.error(`Symbols are not valid as a React child.
104
+ root.render(%s)`,t):console.error(`Symbols are not valid as a React child.
105
+ <%s>%s</%s>`,n,t,n))}function Ki(e,t){var n=Li();n===null?Gi(e,t):n.run(Gi.bind(null,e,t))}function qi(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 i(e,t){return e=yr(e,t),e.index=0,e.sibling=null,e}function a(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 o(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function s(e,t,n,r){return t===null||t.tag!==6?(t=wr(n,e.mode,r),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=Hv,t):(t=i(t,n),t.return=e,t._debugInfo=Hv,t)}function c(e,t,n,r){var a=n.type;return a===Ef?(t=u(e,t,n.props.children,r,n.key),Ri(n,t,e),t):t!==null&&(t.elementType===a||mr(t,n)||typeof a==`object`&&a&&a.$$typeof===Ff&&Ni(a)===t.type)?(t=i(t,n.props),Bi(t,n),t.return=e,t._debugOwner=n._owner,t._debugInfo=Hv,t):(t=Sr(n,e.mode,r),Bi(t,n),t.return=e,t._debugInfo=Hv,t)}function l(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=Er(n,e.mode,r),t.return=e,t._debugInfo=Hv,t):(t=i(t,n.children||[]),t.return=e,t._debugInfo=Hv,t)}function u(e,t,n,r,a){return t===null||t.tag!==7?(t=Cr(n,e.mode,r,a),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=Hv,t):(t=i(t,n),t.return=e,t._debugInfo=Hv,t)}function d(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=wr(``+t,e.mode,n),t.return=e,t._debugOwner=e,t._debugTask=e._debugTask,t._debugInfo=Hv,t;if(typeof t==`object`&&t){switch(t.$$typeof){case wf:return n=Sr(t,e.mode,n),Bi(n,t),n.return=e,e=Ii(t._debugInfo),n._debugInfo=Hv,Hv=e,n;case Tf:return t=Er(t,e.mode,n),t.return=e,t._debugInfo=Hv,t;case Ff:var r=Ii(t._debugInfo);return t=Ni(t),e=d(e,t,n),Hv=r,e}if(Bf(t)||ie(t))return n=Cr(t,e.mode,n,null),n.return=e,n._debugOwner=e,n._debugTask=e._debugTask,e=Ii(t._debugInfo),n._debugInfo=Hv,Hv=e,n;if(typeof t.then==`function`)return r=Ii(t._debugInfo),e=d(e,zi(t),n),Hv=r,e;if(t.$$typeof===Af)return d(e,ei(e,t),n);Hi(e,t)}return typeof t==`function`&&Wi(e,t),typeof t==`symbol`&&Ki(e,t),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?s(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case wf:return n.key===i?(i=Ii(n._debugInfo),e=c(e,t,n,r),Hv=i,e):null;case Tf:return n.key===i?l(e,t,n,r):null;case Ff:return i=Ii(n._debugInfo),n=Ni(n),e=p(e,t,n,r),Hv=i,e}if(Bf(n)||ie(n))return i===null?(i=Ii(n._debugInfo),e=u(e,t,n,r,null),Hv=i,e):null;if(typeof n.then==`function`)return i=Ii(n._debugInfo),e=p(e,t,zi(n),r),Hv=i,e;if(n.$$typeof===Af)return p(e,t,ei(e,n),r);Hi(e,n)}return typeof n==`function`&&Wi(e,n),typeof n==`symbol`&&Ki(e,n),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,s(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case wf:return n=e.get(r.key===null?n:r.key)||null,e=Ii(r._debugInfo),t=c(t,n,r,i),Hv=e,t;case Tf:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case Ff:var a=Ii(r._debugInfo);return r=Ni(r),t=m(e,t,n,r,i),Hv=a,t}if(Bf(r)||ie(r))return n=e.get(n)||null,e=Ii(r._debugInfo),t=u(t,n,r,i,null),Hv=e,t;if(typeof r.then==`function`)return a=Ii(r._debugInfo),t=m(e,t,n,zi(r),i),Hv=a,t;if(r.$$typeof===Af)return m(e,t,n,ei(t,r),i);Hi(t,r)}return typeof r==`function`&&Wi(t,r),typeof r==`symbol`&&Ki(t,r),null}function h(e,t,n,r){if(typeof n!=`object`||!n)return r;switch(n.$$typeof){case wf:case Tf:f(e,t,n);var i=n.key;if(typeof i!=`string`)break;if(r===null){r=new Set,r.add(i);break}if(!r.has(i)){r.add(i);break}O(t,function(){console.error("Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted — the behavior is unsupported and could change in a future version.",i)});break;case Ff:n=Ni(n),h(e,t,n,r)}return r}function _(i,o,s,c){for(var l=null,u=null,f=null,g=o,_=o=0,v=null;g!==null&&_<s.length;_++){g.index>_?(v=g,g=null):v=g.sibling;var y=p(i,g,s[_],c);if(y===null){g===null&&(g=v);break}l=h(i,y,s[_],l),e&&g&&y.alternate===null&&t(i,g),o=a(y,o,_),f===null?u=y:f.sibling=y,f=y,g=v}if(_===s.length)return n(i,g),Xg&&Dr(i,_),u;if(g===null){for(;_<s.length;_++)g=d(i,s[_],c),g!==null&&(l=h(i,g,s[_],l),o=a(g,o,_),f===null?u=g:f.sibling=g,f=g);return Xg&&Dr(i,_),u}for(g=r(g);_<s.length;_++)v=m(g,i,_,s[_],c),v!==null&&(l=h(i,v,s[_],l),e&&v.alternate!==null&&g.delete(v.key===null?_:v.key),o=a(v,o,_),f===null?u=v:f.sibling=v,f=v);return e&&g.forEach(function(e){return t(i,e)}),Xg&&Dr(i,_),u}function v(i,o,s,c){if(s==null)throw Error(`An iterable object provided no iterator.`);for(var l=null,u=null,f=o,g=o=0,_=null,v=null,y=s.next();f!==null&&!y.done;g++,y=s.next()){f.index>g?(_=f,f=null):_=f.sibling;var b=p(i,f,y.value,c);if(b===null){f===null&&(f=_);break}v=h(i,b,y.value,v),e&&f&&b.alternate===null&&t(i,f),o=a(b,o,g),u===null?l=b:u.sibling=b,u=b,f=_}if(y.done)return n(i,f),Xg&&Dr(i,g),l;if(f===null){for(;!y.done;g++,y=s.next())f=d(i,y.value,c),f!==null&&(v=h(i,f,y.value,v),o=a(f,o,g),u===null?l=f:u.sibling=f,u=f);return Xg&&Dr(i,g),l}for(f=r(f);!y.done;g++,y=s.next())_=m(f,i,g,y.value,c),_!==null&&(v=h(i,_,y.value,v),e&&_.alternate!==null&&f.delete(_.key===null?g:_.key),o=a(_,o,g),u===null?l=_:u.sibling=_,u=_);return e&&f.forEach(function(e){return t(i,e)}),Xg&&Dr(i,g),l}function y(e,r,a,s){if(typeof a==`object`&&a&&a.type===Ef&&a.key===null&&(Ri(a,null,e),a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case wf:var c=Ii(a._debugInfo);a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===Ef){if(r.tag===7){n(e,r.sibling),s=i(r,a.props.children),s.return=e,s._debugOwner=a._owner,s._debugInfo=Hv,Ri(a,s,e),e=s;break a}}else if(r.elementType===l||mr(r,a)||typeof l==`object`&&l&&l.$$typeof===Ff&&Ni(l)===r.type){n(e,r.sibling),s=i(r,a.props),Bi(s,a),s.return=e,s._debugOwner=a._owner,s._debugInfo=Hv,e=s;break a}n(e,r);break}t(e,r),r=r.sibling}a.type===Ef?(s=Cr(a.props.children,e.mode,s,a.key),s.return=e,s._debugOwner=e,s._debugTask=e._debugTask,s._debugInfo=Hv,Ri(a,s,e),e=s):(s=Sr(a,e.mode,s),Bi(s,a),s.return=e,s._debugInfo=Hv,e=s)}return e=o(e),Hv=c,e;case Tf:a:{for(c=a,a=c.key;r!==null;){if(r.key===a){if(r.tag===4&&r.stateNode.containerInfo===c.containerInfo&&r.stateNode.implementation===c.implementation){n(e,r.sibling),s=i(r,c.children||[]),s.return=e,e=s;break a}n(e,r);break}t(e,r),r=r.sibling}s=Er(c,e.mode,s),s.return=e,e=s}return o(e);case Ff:return c=Ii(a._debugInfo),a=Ni(a),e=y(e,r,a,s),Hv=c,e}if(Bf(a))return c=Ii(a._debugInfo),e=_(e,r,a,s),Hv=c,e;if(ie(a)){if(c=Ii(a._debugInfo),l=ie(a),typeof l!=`function`)throw Error(`An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.`);var u=l.call(a);return u===a?(e.tag!==0||Object.prototype.toString.call(e.type)!==`[object GeneratorFunction]`||Object.prototype.toString.call(u)!==`[object Generator]`)&&(Wv||console.error("Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items."),Wv=!0):a.entries!==l||Uv||(console.error(`Using Maps as children is not supported. Use an array of keyed ReactElements instead.`),Uv=!0),e=v(e,r,u,s),Hv=c,e}if(typeof a.then==`function`)return c=Ii(a._debugInfo),e=y(e,r,zi(a),s),Hv=c,e;if(a.$$typeof===Af)return y(e,r,ei(e,a),s);Hi(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(c=``+a,r!==null&&r.tag===6?(n(e,r.sibling),s=i(r,c),s.return=e,e=s):(n(e,r),s=wr(c,e.mode,s),s.return=e,s._debugOwner=e,s._debugTask=e._debugTask,s._debugInfo=Hv,e=s),o(e)):(typeof a==`function`&&Wi(e,a),typeof a==`symbol`&&Ki(e,a),n(e,r))}return function(e,t,n,r){var i=Hv;Hv=null;try{Vv=0;var a=y(e,t,n,r);return Bv=null,a}catch(t){if(t===Pv||t===Iv)throw t;var o=g(29,t,null,e.mode);o.lanes=r,o.return=e;var s=o._debugInfo=Hv;if(o._debugOwner=e._debugOwner,o._debugTask=e._debugTask,s!=null){for(var c=s.length-1;0<=c;c--)if(typeof s[c].stack==`string`){o._debugOwner=s[c],o._debugTask=s[c].debugTask;break}}return o}finally{Hv=i}}}function Ji(e,t){var n=Bf(e);return e=!n&&typeof ie(e)==`function`,n||e?(n=n?`array`:`iterable`,console.error(`A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>`,n,t,n),!1):!0}function Yi(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Xi(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 Zi(e){return{lane:e,tag:Xv,payload:null,callback:null,next:null}}function Qi(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,ny===r&&!ty){var i=T(e);console.error(`An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.
106
+
107
+ Please update the following component: %s`,i),ty=!0}return(Vb&Mb)===jb?(sr(e,r,t,n),dr(e)):(i=r.pending,i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=dr(e),ur(e,null,n),t)}function $i(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,Ve(e,n)}}function ea(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}function ta(){if(ry){var e=rv;if(e!==null)throw e}}function I(e,t,n,r){ry=!1;var i=e.updateQueue;ey=!1,ny=i.shared;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?(Wb&f)===f:(r&f)===f){f!==0&&f===nv&&(ry=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{f=e;var m=s,h=t,g=n;switch(m.tag){case Zv:if(m=m.payload,typeof m==`function`){s_=!0;var _=m.call(g,d,h);if(f.mode&Pg){Ae(!0);try{m.call(g,d,h)}finally{Ae(!1)}}s_=!1,d=_;break a}d=m;break a;case $v:f.flags=f.flags&-65537|128;case Xv:if(_=m.payload,typeof _==`function`){if(s_=!0,m=_.call(g,d,h),f.mode&Pg){Ae(!0);try{_.call(g,d,h)}finally{Ae(!1)}}s_=!1}else m=_;if(m==null)break a;d=Sf({},d,m);break a;case Qv:ey=!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),cx|=o,e.lanes=o,e.memoizedState=d}ny=null}function na(e,t){if(typeof e!=`function`)throw Error(`Invalid argument passed as callback. Expected a function. Instead received: `+e);e.call(t)}function ra(e,t){var n=e.shared.hiddenCallbacks;if(n!==null)for(e.shared.hiddenCallbacks=null,e=0;e<n.length;e++)na(n[e],t)}function ia(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)na(n[e],t)}function aa(e,t){var n=ox;D(ay,n,e),D(iy,t,e),ox=n|t.baseLanes}function oa(e){D(ay,ox,e),D(iy,iy.current,e)}function sa(e){ox=ay.current,ae(iy,e),ae(ay,e)}function ca(e){var t=e.alternate;D(uy,uy.current&cy,e),D(oy,e,e),sy===null&&(t===null||iy.current!==null||t.memoizedState!==null)&&(sy=e)}function la(e){D(uy,uy.current,e),D(oy,e,e),sy===null&&(sy=e)}function ua(e){e.tag===22?(D(uy,uy.current,e),D(oy,e,e),sy===null&&(sy=e)):da(e)}function da(e){D(uy,uy.current,e),D(oy,oy.current,e)}function fa(e){ae(oy,e),sy===e&&(sy=null),ae(uy,e)}function pa(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||od(n)||sd(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}function L(){var e=$;My===null?My=[e]:My.push(e)}function R(){var e=$;if(My!==null&&(Ny++,My[Ny]!==e)){var t=T(Q);if(!_y.has(t)&&(_y.add(t),My!==null)){for(var n=``,r=0;r<=Ny;r++){var i=My[r],a=r===Ny?e:i;for(i=r+1+`. `+i;30>i.length;)i+=` `;i+=a+`
108
+ `,n+=i}console.error(`React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks
109
+
110
+ Previous render Next render
111
+ ------------------------------------------------------
112
+ %s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
113
+ `,t,n)}}}function ma(e){e==null||Bf(e)||console.error("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",$,typeof e)}function ha(){var e=T(Q);by.has(e)||(by.add(e),console.error(`ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.`,e))}function ga(){throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
114
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
115
+ 2. You might be breaking the Rules of Hooks
116
+ 3. You might have more than one copy of React in the same app
117
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function _a(e,t){if(Py)return!1;if(t===null)return console.error(`%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.`,$),!1;e.length!==t.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.
118
+
119
+ Previous: %s
120
+ Incoming: %s`,$,`[`+t.join(`, `)+`]`,`[`+e.join(`, `)+`]`);for(var n=0;n<t.length&&n<e.length;n++)if(!Lh(e[n],t[n]))return!1;return!0}function va(e,t,n,r,i,a){xy=a,Q=t,My=e===null?null:e._debugHookTypes,Ny=-1,Py=e!==null&&e.type!==t.type,(Object.prototype.toString.call(n)===`[object AsyncFunction]`||Object.prototype.toString.call(n)===`[object AsyncGeneratorFunction]`)&&(a=T(Q),yy.has(a)||(yy.add(a),console.error("%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.",a===null?`An unknown Component`:`<`+a+`>`))),t.memoizedState=null,t.updateQueue=null,t.lanes=0,J.H=e!==null&&e.memoizedState!==null?Ry:My===null?Iy:Ly,Ey=a=(t.mode&Pg)!==Y;var o=_v(n,r,i);if(Ey=!1,Ty&&(o=ba(t,n,r,i)),a){Ae(!0);try{o=ba(t,n,r,i)}finally{Ae(!1)}}return ya(e,t),o}function ya(e,t){t._debugHookTypes=My,t.dependencies===null?ky!==null&&(t.dependencies={lanes:0,firstContext:null,_debugThenableState:ky}):t.dependencies._debugThenableState=ky,J.H=Fy;var n=Sy!==null&&Sy.next!==null;if(xy=0,My=$=Cy=Sy=Q=null,Ny=-1,e!==null&&(e.flags&65011712)!=(t.flags&65011712)&&console.error(`Internal React error: Expected static flag was missing. Please notify the React team.`),wy=!1,Oy=0,ky=null,n)throw Error(`Rendered fewer hooks than expected. This may be caused by an accidental early return statement.`);e===null||ib||(e=e.dependencies,e!==null&&Zr(e)&&(ib=!0)),zv?(zv=!1,e=!0):e=!1,e&&(t=T(t)||`Unknown`,vy.has(t)||yy.has(t)||(vy.add(t),console.error("`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary.")))}function ba(e,t,n,r){Q=e;var i=0;do{if(Ty&&(ky=null),Oy=0,Ty=!1,i>=jy)throw Error(`Too many re-renders. React limits the number of renders to prevent an infinite loop.`);if(i+=1,Py=!1,Cy=Sy=null,e.updateQueue!=null){var a=e.updateQueue;a.lastEffect=null,a.events=null,a.stores=null,a.memoCache!=null&&(a.memoCache.index=0)}Ny=-1,J.H=zy,a=_v(t,n,r)}while(Ty);return a}function xa(){var e=J.H,t=e.useState()[0];return t=typeof t.then==`function`?Oa(t):t,e=e.useState()[0],(Sy===null?null:Sy.memoizedState)!==e&&(Q.flags|=1024),t}function Sa(){var e=Dy!==0;return Dy=0,e}function Ca(e,t,n){t.updateQueue=e.updateQueue,t.flags=(t.mode&Fg)===Y?t.flags&-2053:t.flags&-402655237,e.lanes&=~n}function wa(e){if(wy){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}wy=!1}xy=0,My=Cy=Sy=Q=null,Ny=-1,$=null,Ty=!1,Oy=Dy=0,ky=null}function Ta(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Cy===null?Q.memoizedState=Cy=e:Cy=Cy.next=e,Cy}function Ea(){if(Sy===null){var e=Q.alternate;e=e===null?null:e.memoizedState}else e=Sy.next;var t=Cy===null?Q.memoizedState:Cy.next;if(t!==null)Cy=t,Sy=e;else{if(e===null)throw Q.alternate===null?Error(`Update hook called on initial render. This is likely a bug in React. Please file an issue.`):Error(`Rendered more hooks than during the previous render.`);Sy=e,e={memoizedState:Sy.memoizedState,baseState:Sy.baseState,baseQueue:Sy.baseQueue,queue:Sy.queue,next:null},Cy===null?Q.memoizedState=Cy=e:Cy=Cy.next=e}return Cy}function Da(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Oa(e){var t=Oy;return Oy+=1,ky===null&&(ky=Ai()),e=Mi(ky,e,t),t=Q,(Cy===null?t.memoizedState:Cy.next)===null&&(t=t.alternate,J.H=t!==null&&t.memoizedState!==null?Ry:Iy),e}function ka(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return Oa(e);if(e.$$typeof===Af)return $r(e)}throw Error(`An unsupported type was passed to use(): `+String(e))}function Aa(e){var t=null,n=Q.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=Q.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=Da(),Q.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0||Py)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=Lf;else n.length!==e&&console.error(`Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.`,n.length,e);return t.index++,n}function ja(e,t){return typeof t==`function`?t(e):t}function Ma(e,t,n){var r=Ta();if(n!==void 0){var i=n(t);if(Ey){Ae(!0);try{n(t)}finally{Ae(!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=zo.bind(null,Q,e),[r.memoizedState,e]}function z(e){return Na(Ea(),Sy,e)}function Na(e,t,n){var r=e.queue;if(r===null)throw Error(`Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)`);r.lastRenderedReducer=n;var i=e.baseQueue,a=r.pending;if(a!==null){if(i!==null){var o=i.next;i.next=a.next,a.next=o}t.baseQueue!==i&&console.error(`Internal error: Expected work-in-progress queue to be a clone. This is a bug in React.`),t.baseQueue=i=a,r.pending=null}if(a=e.baseState,i===null)e.memoizedState=a;else{t=i.next;var s=o=null,c=null,l=t,u=!1;do{var d=l.lane&-536870913;if(d===l.lane?(xy&d)===d:(Wb&d)===d){var f=l.revertLane;if(f===0)c!==null&&(c=c.next={lane:0,revertLane:0,gesture:null,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null}),d===nv&&(u=!0);else if((xy&f)===f){l=l.next,f===nv&&(u=!0);continue}else d={lane:0,revertLane:l.revertLane,gesture:null,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null},c===null?(s=c=d,o=a):c=c.next=d,Q.lanes|=f,cx|=f;d=l.action,Ey&&n(a,d),a=l.hasEagerState?l.eagerState:n(a,d)}else f={lane:d,revertLane:l.revertLane,gesture:l.gesture,action:l.action,hasEagerState:l.hasEagerState,eagerState:l.eagerState,next:null},c===null?(s=c=f,o=a):c=c.next=f,Q.lanes|=d,cx|=d;l=l.next}while(l!==null&&l!==t);if(c===null?o=a:c.next=s,!Lh(a,e.memoizedState)&&(ib=!0,u&&(n=rv,n!==null)))throw n;e.memoizedState=a,e.baseState=o,e.baseQueue=c,r.lastRenderedState=a}return i===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Pa(e){var t=Ea(),n=t.queue;if(n===null)throw Error(`Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)`);n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,a=t.memoizedState;if(i!==null){n.pending=null;var o=i=i.next;do a=e(a,o.action),o=o.next;while(o!==i);Lh(a,t.memoizedState)||(ib=!0),t.memoizedState=a,t.baseQueue===null&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function Fa(e,t,n){var r=Q,i=Ta();if(Xg){if(n===void 0)throw Error(`Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.`);var a=n();gy||a===n()||(console.error(`The result of getServerSnapshot should be cached to avoid an infinite loop`),gy=!0)}else{if(a=t(),gy||(n=t(),Lh(a,n)||(console.error(`The result of getSnapshot should be cached to avoid an infinite loop`),gy=!0)),Hb===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);Wb&127||La(r,t,a)}return i.memoizedState=a,n={value:a,getSnapshot:t},i.queue=n,uo(za.bind(null,r,n,e),[e]),r.flags|=2048,oo(fy|hy,{destroy:void 0},Ra.bind(null,r,n,a,t),null),a}function Ia(e,t,n){var r=Q,i=Ea(),a=Xg;if(a){if(n===void 0)throw Error(`Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.`);n=n()}else if(n=t(),!gy){var o=t();Lh(n,o)||(console.error(`The result of getSnapshot should be cached to avoid an infinite loop`),gy=!0)}if((o=!Lh((Sy||i).memoizedState,n))&&(i.memoizedState=n,ib=!0),i=i.queue,lo(2048,hy,za.bind(null,r,i,e),[e]),i.getSnapshot!==t||o||Cy!==null&&Cy.memoizedState.tag&fy){if(r.flags|=2048,oo(fy|hy,{destroy:void 0},Ra.bind(null,r,i,n,t),null),Hb===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);a||xy&127||La(r,t,n)}return n}function La(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=Q.updateQueue,t===null?(t=Da(),Q.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Ra(e,t,n,r){t.value=n,t.getSnapshot=r,Ba(t)&&Va(e)}function za(e,t,n){return n(function(){Ba(t)&&(ai(2,`updateSyncExternalStore()`,e),Va(e))})}function Ba(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Lh(e,n)}catch{return!0}}function Va(e){var t=lr(e,2);t!==null&&Jc(t,e,2)}function Ha(e){var t=Ta();if(typeof e==`function`){var n=e;if(e=n(),Ey){Ae(!0);try{n()}finally{Ae(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ja,lastRenderedState:e},t}function Ua(e){e=Ha(e);var t=e.queue,n=Bo.bind(null,Q,t);return t.dispatch=n,[e.memoizedState,n]}function Wa(e){var t=Ta();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Ho.bind(null,Q,!0,n),n.dispatch=t,[e,t]}function Ga(e,t){return Ka(Ea(),Sy,e,t)}function Ka(e,t,n,r){return e.baseState=n,Na(e,Sy,typeof r==`function`?r:ja)}function qa(e,t){var n=Ea();return Sy===null?(n.baseState=e,[e,n.queue.dispatch]):Ka(n,Sy,e,t)}function Ja(e,t,n,r,i){if(Uo(e))throw Error(`Cannot update form state while rendering.`);if(e=t.action,e!==null){var a={payload:i,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){a.listeners.push(e)}};J.T===null?a.isTransition=!1:n(!0),r(a),n=t.pending,n===null?(a.next=t.pending=a,Ya(t,a)):(a.next=n.next,t.pending=n.next=a)}}function Ya(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=J.T,o={};o._updatedFibers=new Set,J.T=o;try{var s=n(i,r),c=J.S;c!==null&&c(o,s),Xa(e,t,s)}catch(n){Qa(e,t,n)}finally{a!==null&&o.types!==null&&(a.types!==null&&a.types!==o.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),a.types=o.types),J.T=a,a===null&&o._updatedFibers&&(e=o._updatedFibers.size,o._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`))}}else try{o=n(i,r),Xa(e,t,o)}catch(n){Qa(e,t,n)}}function Xa(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?(J.asyncTransitions++,n.then(Do,Do),n.then(function(n){Za(e,t,n)},function(n){return Qa(e,t,n)}),t.isTransition||console.error("An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop.")):Za(e,t,n)}function Za(e,t,n){t.status=`fulfilled`,t.value=n,$a(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,Ya(e,n)))}function Qa(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,$a(t),t=t.next;while(t!==r)}e.action=null}function $a(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function eo(e,t){return t}function to(e,t){if(Xg){var n=Hb.formState;if(n!==null){a:{var r=Q;if(Xg){if(Yg){b:{for(var i=Yg,a=e_;i.nodeType!==8;){if(!a){i=null;break b}if(i=ld(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===zS||a===BS?i:null}if(i){Yg=ld(i.nextSibling),r=i.data===zS;break a}}Lr(r)}r=!1}r&&(t=n[0])}}return n=Ta(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:eo,lastRenderedState:t},n.queue=r,n=Bo.bind(null,Q,r),r.dispatch=n,r=Ha(!1),a=Ho.bind(null,Q,!1,r.queue),r=Ta(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Ja.bind(null,Q,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function no(e){return ro(Ea(),Sy,e)}function ro(e,t,n){if(t=Na(e,t,eo)[0],e=z(ja)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=Oa(t)}catch(e){throw e===Pv?Iv:e}else r=t;t=Ea();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(Q.flags|=2048,oo(fy|hy,{destroy:void 0},io.bind(null,i,n),null)),[r,a,e]}function io(e,t){e.action=t}function ao(e){var t=Ea(),n=Sy;if(n!==null)return ro(t,n,e);Ea(),t=t.memoizedState,n=Ea();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function oo(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=Q.updateQueue,t===null&&(t=Da(),Q.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 so(e){var t=Ta();return e={current:e},t.memoizedState=e}function co(e,t,n,r){var i=Ta();Q.flags|=e,i.memoizedState=oo(fy|t,{destroy:void 0},n,r===void 0?null:r)}function lo(e,t,n,r){var i=Ea();r=r===void 0?null:r;var a=i.memoizedState.inst;Sy!==null&&r!==null&&_a(r,Sy.memoizedState.deps)?i.memoizedState=oo(t,a,n,r):(Q.flags|=e,i.memoizedState=oo(fy|t,a,n,r))}function uo(e,t){(Q.mode&Fg)===Y?co(8390656,hy,e,t):co(276826112,hy,e,t)}function B(e){Q.flags|=4;var t=Q.updateQueue;if(t===null)t=Da(),Q.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function fo(e){var t=Ta(),n={impl:e};return t.memoizedState=n,function(){if((Vb&Mb)!==jb)throw Error(`A function wrapped in useEffectEvent can't be called during rendering.`);return n.impl.apply(void 0,arguments)}}function po(e){var t=Ea().memoizedState;return B({ref:t,nextImpl:e}),function(){if((Vb&Mb)!==jb)throw Error(`A function wrapped in useEffectEvent can't be called during rendering.`);return t.impl.apply(void 0,arguments)}}function mo(e,t){var n=4194308;return(Q.mode&Fg)!==Y&&(n|=134217728),co(n,my,e,t)}function ho(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return t.hasOwnProperty(`current`)||console.error(`Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.`,`an object with keys {`+Object.keys(t).join(`, `)+`}`),e=e(),t.current=e,function(){t.current=null}}function go(e,t,n){typeof t!=`function`&&console.error(`Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.`,t===null?`null`:typeof t),n=n==null?null:n.concat([e]);var r=4194308;(Q.mode&Fg)!==Y&&(r|=134217728),co(r,my,ho.bind(null,t,e),n)}function _o(e,t,n){typeof t!=`function`&&console.error(`Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.`,t===null?`null`:typeof t),n=n==null?null:n.concat([e]),lo(4,my,ho.bind(null,t,e),n)}function vo(e,t){return Ta().memoizedState=[e,t===void 0?null:t],e}function yo(e,t){var n=Ea();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&_a(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function bo(e,t){var n=Ta();t=t===void 0?null:t;var r=e();if(Ey){Ae(!0);try{e()}finally{Ae(!1)}}return n.memoizedState=[r,t],r}function xo(e,t){var n=Ea();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&_a(t,r[1]))return r[0];if(r=e(),Ey){Ae(!0);try{e()}finally{Ae(!1)}}return n.memoizedState=[r,t],r}function So(e,t){return To(Ta(),e,t)}function Co(e,t){return Eo(Ea(),Sy.memoizedState,e,t)}function wo(e,t){var n=Ea();return Sy===null?To(n,e,t):Eo(n,Sy.memoizedState,e,t)}function To(e,t,n){return n===void 0||xy&1073741824&&!(Wb&261930)?e.memoizedState=t:(e.memoizedState=n,e=qc(),Q.lanes|=e,cx|=e,n)}function Eo(e,t,n,r){return Lh(n,t)?n:iy.current===null?!(xy&42)||xy&1073741824&&!(Wb&261930)?(ib=!0,e.memoizedState=n):(e=qc(),Q.lanes|=e,cx|=e,t):(e=To(e,n,r),Lh(e,t)||(ib=!0),e)}function Do(){J.asyncTransitions--}function Oo(e,t,n,r,i){var a=Vf.p;Vf.p=a!==0&&a<Fp?a:Fp;var o=J.T,s={};s._updatedFibers=new Set,J.T=s,Ho(e,!1,t,n);try{var c=i(),l=J.S;if(l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`){J.asyncTransitions++,c.then(Do,Do);var u=Ei(c,r);Vo(e,t,u,Kc(e))}else Vo(e,t,r,Kc(e))}catch(n){Vo(e,t,{then:function(){},status:`rejected`,reason:n},Kc(e))}finally{Vf.p=a,o!==null&&s.types!==null&&(o.types!==null&&o.types!==s.types&&console.error(`We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React.`),o.types=s.types),J.T=o,o===null&&s._updatedFibers&&(e=s._updatedFibers.size,s._updatedFibers.clear(),10<e&&console.warn(`Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.`))}}function ko(e,t,n,r){if(e.tag!==5)throw Error(`Expected the form instance to be a HostComponent. This is a bug in React.`);var i=Ao(e).queue;oi(e),Oo(e,i,t,yC,n===null?u:function(){return jo(e),n(r)})}function Ao(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:yC,baseState:yC,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ja,lastRenderedState:yC},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:ja,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function jo(e){J.T===null&&console.error(`requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition.`);var t=Ao(e);t.next===null&&(t=e.alternate.memoizedState),Vo(e,t.next.queue,{},Kc(e))}function Mo(){var e=Ha(!1);return e=Oo.bind(null,Q,e.queue,!0,!1),Ta().memoizedState=e,[!1,e]}function No(){var e=z(ja)[0],t=Ea().memoizedState;return[typeof e==`boolean`?e:Oa(e),t]}function Po(){var e=Pa(ja)[0],t=Ea().memoizedState;return[typeof e==`boolean`?e:Oa(e),t]}function Fo(){return $r(bC)}function Io(){var e=Ta(),t=Hb.identifierPrefix;if(Xg){var n=qg,r=Kg;n=(r&~(1<<32-Op(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=Dy++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=Ay++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t}function Lo(){return Ta().memoizedState=Ro.bind(null,Q)}function Ro(e,t){for(var n=e.return;n!==null;){switch(n.tag){case 24:case 3:var r=Kc(n),i=Zi(r),a=Qi(n,i,r);a!==null&&(ai(r,`refresh()`,e),Jc(a,n,r),$i(a,n,r)),e=ni(),t!=null&&a!==null&&console.error(`The seed argument is not enabled outside experimental channels.`),i.payload={cache:e};return}n=n.return}}function zo(e,t,n){var r=arguments;typeof r[3]==`function`&&console.error(`State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().`),r=Kc(e);var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};Uo(e)?Wo(t,i):(i=cr(e,t,i,r),i!==null&&(ai(r,`dispatch()`,e),Jc(i,e,r),Go(i,t,r)))}function Bo(e,t,n){var r=arguments;typeof r[3]==`function`&&console.error(`State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect().`),r=Kc(e),Vo(e,t,n,r)&&ai(r,`setState()`,e)}function Vo(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Uo(e))Wo(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null)){var o=J.H;J.H=Vy;try{var s=t.lastRenderedState,c=a(s,n);if(i.hasEagerState=!0,i.eagerState=c,Lh(c,s))return sr(e,t,i,0),Hb===null&&or(),!1}catch{}finally{J.H=o}}if(n=cr(e,t,i,r),n!==null)return Jc(n,e,r),Go(n,t,r),!0}return!1}function Ho(e,t,n,r){if(J.T===null&&nv===0&&console.error(`An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition.`),r={lane:2,revertLane:ql(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Uo(e)){if(t)throw Error(`Cannot update optimistic state while rendering.`);console.error(`Cannot call startTransition while rendering.`)}else t=cr(e,n,r,2),t!==null&&(ai(2,`setOptimistic()`,e),Jc(t,e,2))}function Uo(e){var t=e.alternate;return e===Q||t!==null&&t===Q}function Wo(e,t){Ty=wy=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Go(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,Ve(e,n)}}function Ko(e){if(e!==null&&typeof e!=`function`){var t=String(e);$y.has(t)||($y.add(t),console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",e))}}function qo(e,t,n,r){var i=e.memoizedState,a=n(r,i);if(e.mode&Pg){Ae(!0);try{a=n(r,i)}finally{Ae(!1)}}a===void 0&&(t=C(t)||`Component`,Yy.has(t)||(Yy.add(t),console.error(`%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.`,t))),i=a==null?i:Sf({},i,a),e.memoizedState=i,e.lanes===0&&(e.updateQueue.baseState=i)}function Jo(e,t,n,r,i,a,o){var s=e.stateNode;if(typeof s.shouldComponentUpdate==`function`){if(n=s.shouldComponentUpdate(r,a,o),e.mode&Pg){Ae(!0);try{n=s.shouldComponentUpdate(r,a,o)}finally{Ae(!1)}}return n===void 0&&console.error(`%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.`,C(t)||`Component`),n}return t.prototype&&t.prototype.isPureReactComponent?!Mn(n,r)||!Mn(i,a):!0}function Yo(e,t,n,r){var i=t.state;typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==i&&(e=T(e)||`Component`,Wy.has(e)||(Wy.add(e),console.error(`%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.`,e)),eb.enqueueReplaceState(t,t.state,null))}function Xo(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=Sf({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Zo(e){ag(e),console.warn(`%s
121
+
122
+ %s
123
+ `,tb?`An error occurred in the <`+tb+`> component.`:`An error occurred in one of your React components.`,`Consider adding an error boundary to your tree to customize error handling behavior.
124
+ Visit https://react.dev/link/error-boundaries to learn more about error boundaries.`)}function Qo(e){var t=tb?`The above error occurred in the <`+tb+`> component.`:`The above error occurred in one of your React components.`,n=`React will try to recreate this component tree from scratch using the error boundary you provided, `+((nb||`Anonymous`)+`.`);if(typeof e==`object`&&e&&typeof e.environmentName==`string`){var r=e.environmentName;e=[`%o
125
+
126
+ %s
127
+
128
+ %s
129
+ `,e,t,n].slice(0),typeof e[0]==`string`?e.splice(0,1,xC+` `+e[0],SC,wC+r+wC,CC):e.splice(0,0,xC,SC,wC+r+wC,CC),e.unshift(console),r=TC.apply(console.error,e),r()}else console.error(`%o
130
+
131
+ %s
132
+
133
+ %s
134
+ `,e,t,n)}function $o(e){ag(e)}function es(e,t){try{tb=t.source?T(t.source):null,nb=null;var n=t.value;if(J.actQueue!==null)J.thrownErrors.push(n);else{var r=e.onUncaughtError;r(n,{componentStack:t.stack})}}catch(e){setTimeout(function(){throw e})}}function ts(e,t,n){try{tb=n.source?T(n.source):null,nb=T(t);var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function ns(e,t,n){return n=Zi(n),n.tag=$v,n.payload={element:null},n.callback=function(){O(t.source,es,e,t)},n}function rs(e){return e=Zi(e),e.tag=$v,e}function is(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(){hr(n),O(r.source,ts,t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){hr(n),O(r.source,ts,t,n,r),typeof i!=`function`&&(Cx===null?Cx=new Set([this]):Cx.add(this)),Tv(this,r),typeof i==`function`||!(n.lanes&2)&&console.error(`%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.`,T(n)||`Unknown`)})}function as(e,t,n,r,i){if(n.flags|=32768,Dp&&Fl(e,i),typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Xr(t,n,i,!0),Xg&&(Zg=!0),n=oy.current,n!==null){switch(n.tag){case 31:case 13:return sy===null?cl():n.alternate===null&&sx===Pb&&(sx=Lb),n.flags&=-257,n.flags|=65536,n.lanes=i,r===Lv?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Ol(e,r,i)),!1;case 22:return n.flags|=65536,r===Lv?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)),Ol(e,r,i)),!1}throw Error(`Unexpected Suspense handler tag (`+n.tag+`). This is a bug in React.`)}return Ol(e,r,i),cl(),!1}if(Xg)return Zg=!0,t=oy.current,t===null?(r!==t_&&Ur(F(Error(`There was an error while hydrating but React was able to recover by instead client rendering the entire root.`,{cause:r}),n)),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,r=F(r,n),i=ns(e.stateNode,r,i),ea(e,i),sx!==Rb&&(sx=Ib)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=i,r!==t_&&Ur(F(Error(`There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.`,{cause:r}),n))),!1;var a=F(Error(`There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.`,{cause:r}),n);if(px===null?px=[a]:px.push(a),sx!==Rb&&(sx=Ib),t===null)return!0;r=F(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=i&-i,n.lanes|=e,e=ns(n.stateNode,r,e),ea(n,e),!1;case 1:if(t=n.type,a=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||a!==null&&typeof a.componentDidCatch==`function`&&(Cx===null||!Cx.has(a))))return n.flags|=65536,i&=-i,n.lanes|=i,i=rs(i),is(i,e,n,r),ea(n,i),!1}n=n.return}while(n!==null);return!1}function os(e,t,n,r){t.child=e===null?Yv(t,null,n,r):Jv(t,e.child,n,r)}function ss(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 Qr(t),r=va(e,t,n,o,a,i),s=Sa(),e!==null&&!ib?(Ca(e,t,i),As(e,t,i)):(Xg&&s&&kr(t),t.flags|=1,os(e,t,r,i),t.child)}function cs(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!vr(a)&&a.defaultProps===void 0&&n.compare===null?(n=fr(a),t.tag=15,t.type=n,bs(t,a),ls(e,t,n,r,i)):(e=xr(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!js(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Mn:n,n(o,r)&&e.ref===t.ref)return As(e,t,i)}return t.flags|=1,e=yr(a,r),e.ref=t.ref,e.return=t,t.child=e}function ls(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Mn(a,r)&&e.ref===t.ref&&t.type===e.type){if(ib=!1,t.pendingProps=r=a,js(e,i))e.flags&131072&&(ib=!0);else return t.lanes=e.lanes,As(e,t,i)}}return gs(e,t,n,r,i)}function us(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:wg,_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 V(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Oi(t,a===null?null:a.cachePool),a===null?oa(t):aa(t,a),ua(t);else return r=t.lanes=536870912,V(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&Oi(t,null),oa(t),da(t)):(Oi(t,a.cachePool),aa(t,a),da(t),t.memoizedState=null);return os(e,t,i,n),t.child}function ds(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:wg,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function V(e,t,n,r,i){var a=Di();return a=a===null?null:{parent:d_._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&Oi(t,null),oa(t),ua(t),e!==null&&Xr(e,t,r,!0),t.childLanes=i,null}function fs(e,t){var n=t.hidden;return n!==void 0&&console.error(`<Activity> doesn't accept a hidden prop. Use mode="hidden" instead.
135
+ - <Activity %s>
136
+ + <Activity %s>`,!0===n?`hidden`:!1===n?`hidden={false}`:`hidden={...}`,n?`mode="hidden"`:`mode="visible"`),t=Ts({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function ps(e,t,n){return Jv(t,e.child,null,n),e=fs(t,t.pendingProps),e.flags|=2,fa(t),t.memoizedState=null,e}function ms(e,t,n){var r=t.pendingProps,i=!!(t.flags&128);if(t.flags&=-129,e===null){if(Xg){if(r.mode===`hidden`)return e=fs(t,r),t.lanes=536870912,ds(null,e);if(la(t),(e=Yg)?(n=ad(e,e_),n=n!==null&&n.data===kS?n:null,n!==null&&(r={dehydrated:n,treeContext:jr(),retryLane:536870912,hydrationErrors:null},t.memoizedState=r,r=Tr(n),r.return=t,t.child=r,Jg=t,Yg=null)):n=null,n===null)throw Ir(t,e),Lr(t);return t.lanes=536870912,null}return fs(t,r)}var a=e.memoizedState;if(a!==null){var o=a.dehydrated;if(la(t),i){if(t.flags&256)t.flags&=-257,t=ps(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(`Client rendering an Activity suspended it again. This is a bug in React.`)}else if(Fr(),n&536870912&&sl(t),ib||Xr(e,t,n,!1),i=(n&e.childLanes)!==0,ib||i){if(r=Hb,r!==null&&(o=He(r,n),o!==0&&o!==a.retryLane))throw a.retryLane=o,lr(e,o),Jc(r,e,o),rb;cl(),t=ps(e,t,n)}else e=a.treeContext,Yg=ld(o.nextSibling),Jg=t,Xg=!0,$g=null,Zg=!1,Qg=null,e_=!1,e!==null&&Mr(t,e),t=fs(t,r),t.flags|=4096;return t}return a=e.child,r={mode:r.mode,children:r.children},n&536870912&&(n&e.lanes)!==0&&sl(t),e=yr(a,r),e.ref=t.ref,t.child=e,e.return=t,e}function hs(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(`Expected ref to be a function, an object returned by React.createRef(), or undefined/null.`);(e===null||e.ref!==n)&&(t.flags|=4194816)}}function gs(e,t,n,r,i){if(n.prototype&&typeof n.prototype.render==`function`){var a=C(n)||`Unknown`;ab[a]||(console.error(`The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.`,a,a),ab[a]=!0)}return t.mode&Pg&&ov.recordLegacyContextWarning(t,null),e===null&&(bs(t,t.type),n.contextTypes&&(a=C(n)||`Unknown`,sb[a]||(sb[a]=!0,console.error(`%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)`,a)))),Qr(t),n=va(e,t,n,r,void 0,i),r=Sa(),e!==null&&!ib?(Ca(e,t,i),As(e,t,i)):(Xg&&r&&kr(t),t.flags|=1,os(e,t,n,i),t.child)}function _s(e,t,n,r,i,a){return Qr(t),Ny=-1,Py=e!==null&&e.type!==t.type,t.updateQueue=null,n=ba(t,r,n,i),ya(e,t),r=Sa(),e!==null&&!ib?(Ca(e,t,a),As(e,t,a)):(Xg&&r&&kr(t),t.flags|=1,os(e,t,n,a),t.child)}function vs(e,t,n,r,i){switch(s(t)){case!1:var a=t.stateNode,o=new t.type(t.memoizedProps,a.context).state;a.updater.enqueueSetState(a,o,null);break;case!0:t.flags|=128,t.flags|=65536,a=Error(`Simulated error coming from DevTools`);var c=i&-i;if(t.lanes|=c,o=Hb,o===null)throw Error(`Expected a work-in-progress root. This is a bug in React. Please file an issue.`);c=rs(c),is(c,o,t,F(a,t)),ea(t,c)}if(Qr(t),t.stateNode===null){if(o=kg,a=n.contextType,`contextType`in n&&a!==null&&(a===void 0||a.$$typeof!==Af)&&!Qy.has(n)&&(Qy.add(n),c=a===void 0?` However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.`:typeof a==`object`?a.$$typeof===kf?` Did you accidentally pass the Context.Consumer instead?`:` However, it is set to an object with keys {`+Object.keys(a).join(`, `)+`}.`:` However, it is set to a `+typeof a+`.`,console.error(`%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s`,C(n)||`Component`,c)),typeof a==`object`&&a&&(o=$r(a)),a=new n(r,o),t.mode&Pg){Ae(!0);try{a=new n(r,o)}finally{Ae(!1)}}if(o=t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=eb,t.stateNode=a,a._reactInternals=t,a._reactInternalInstance=Uy,typeof n.getDerivedStateFromProps==`function`&&o===null&&(o=C(n)||`Component`,Gy.has(o)||(Gy.add(o),console.error("`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",o,a.state===null?`null`:`undefined`,o))),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`){var l=c=o=null;if(typeof a.componentWillMount==`function`&&!0!==a.componentWillMount.__suppressDeprecationWarning?o=`componentWillMount`:typeof a.UNSAFE_componentWillMount==`function`&&(o=`UNSAFE_componentWillMount`),typeof a.componentWillReceiveProps==`function`&&!0!==a.componentWillReceiveProps.__suppressDeprecationWarning?c=`componentWillReceiveProps`:typeof a.UNSAFE_componentWillReceiveProps==`function`&&(c=`UNSAFE_componentWillReceiveProps`),typeof a.componentWillUpdate==`function`&&!0!==a.componentWillUpdate.__suppressDeprecationWarning?l=`componentWillUpdate`:typeof a.UNSAFE_componentWillUpdate==`function`&&(l=`UNSAFE_componentWillUpdate`),o!==null||c!==null||l!==null){a=C(n)||`Component`;var u=typeof n.getDerivedStateFromProps==`function`?`getDerivedStateFromProps()`:`getSnapshotBeforeUpdate()`;qy.has(a)||(qy.add(a),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs.
137
+
138
+ %s uses %s but also contains the following legacy lifecycles:%s%s%s
139
+
140
+ The above lifecycles should be removed. Learn more about this warning here:
141
+ https://react.dev/link/unsafe-component-lifecycles`,a,u,o===null?``:`
142
+ `+o,c===null?``:`
143
+ `+c,l===null?``:`
144
+ `+l))}}a=t.stateNode,o=C(n)||`Component`,a.render||(n.prototype&&typeof n.prototype.render==`function`?console.error("No `render` method found on the %s instance: did you accidentally return an object from the constructor?",o):console.error("No `render` method found on the %s instance: you may have forgotten to define `render`.",o)),!a.getInitialState||a.getInitialState.isReactClassApproved||a.state||console.error(`getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?`,o),a.getDefaultProps&&!a.getDefaultProps.isReactClassApproved&&console.error(`getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.`,o),a.contextType&&console.error(`contextType was defined as an instance property on %s. Use a static property to define contextType instead.`,o),n.childContextTypes&&!Zy.has(n)&&(Zy.add(n),console.error(`%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)`,o)),n.contextTypes&&!Xy.has(n)&&(Xy.add(n),console.error(`%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)`,o)),typeof a.componentShouldUpdate==`function`&&console.error(`%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.`,o),n.prototype&&n.prototype.isPureReactComponent&&a.shouldComponentUpdate!==void 0&&console.error(`%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.`,C(n)||`A pure component`),typeof a.componentDidUnmount==`function`&&console.error(`%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?`,o),typeof a.componentDidReceiveProps==`function`&&console.error(`%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().`,o),typeof a.componentWillRecieveProps==`function`&&console.error(`%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?`,o),typeof a.UNSAFE_componentWillRecieveProps==`function`&&console.error(`%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?`,o),c=a.props!==r,a.props!==void 0&&c&&console.error("When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",o),a.defaultProps&&console.error(`Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.`,o,o),typeof a.getSnapshotBeforeUpdate!=`function`||typeof a.componentDidUpdate==`function`||Ky.has(n)||(Ky.add(n),console.error(`%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.`,C(n))),typeof a.getDerivedStateFromProps==`function`&&console.error(`%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.`,o),typeof a.getDerivedStateFromError==`function`&&console.error(`%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.`,o),typeof n.getSnapshotBeforeUpdate==`function`&&console.error(`%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.`,o),(c=a.state)&&(typeof c!=`object`||Bf(c))&&console.error(`%s.state: must be set to an object or null`,o),typeof a.getChildContext==`function`&&typeof n.childContextTypes!=`object`&&console.error(`%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().`,o),a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Yi(t),o=n.contextType,a.context=typeof o==`object`&&o?$r(o):kg,a.state===r&&(o=C(n)||`Component`,Jy.has(o)||(Jy.add(o),console.error(`%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.`,o))),t.mode&Pg&&ov.recordLegacyContextWarning(t,a),ov.recordUnsafeLifecycleWarnings(t,a),a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(qo(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&&(console.error(`%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.`,T(t)||`Component`),eb.enqueueReplaceState(a,a.state,null)),I(t,r,a,i),ta(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&Fg)!==Y&&(t.flags|=134217728),a=!0}else if(e===null){a=t.stateNode;var d=t.memoizedProps;c=Xo(n,d),a.props=c;var f=a.context;l=n.contextType,o=kg,typeof l==`object`&&l&&(o=$r(l)),u=n.getDerivedStateFromProps,l=typeof u==`function`||typeof a.getSnapshotBeforeUpdate==`function`,d=t.pendingProps!==d,l||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(d||f!==o)&&Yo(t,a,r,o),ey=!1;var p=t.memoizedState;a.state=p,I(t,r,a,i),ta(),f=t.memoizedState,d||p!==f||ey?(typeof u==`function`&&(qo(t,n,u,r),f=t.memoizedState),(c=ey||Jo(t,n,c,r,p,f,o))?(l||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),(t.mode&Fg)!==Y&&(t.flags|=134217728)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&Fg)!==Y&&(t.flags|=134217728),t.memoizedProps=r,t.memoizedState=f),a.props=r,a.state=f,a.context=o,a=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),(t.mode&Fg)!==Y&&(t.flags|=134217728),a=!1)}else{a=t.stateNode,Xi(e,t),o=t.memoizedProps,l=Xo(n,o),a.props=l,u=t.pendingProps,p=a.context,f=n.contextType,c=kg,typeof f==`object`&&f&&(c=$r(f)),d=n.getDerivedStateFromProps,(f=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==u||p!==c)&&Yo(t,a,r,c),ey=!1,p=t.memoizedState,a.state=p,I(t,r,a,i),ta();var m=t.memoizedState;o!==u||p!==m||ey||e!==null&&e.dependencies!==null&&Zr(e.dependencies)?(typeof d==`function`&&(qo(t,n,d,r),m=t.memoizedState),(l=ey||Jo(t,n,l,r,p,m,c)||e!==null&&e.dependencies!==null&&Zr(e.dependencies))?(f||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,m,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,m,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=m),a.props=r,a.state=m,a.context=c,a=l):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&p===e.memoizedState||(t.flags|=1024),a=!1)}if(c=a,hs(e,t),o=!!(t.flags&128),c||o){if(c=t.stateNode,Ce(t),o&&typeof n.getDerivedStateFromError!=`function`)n=null,b_=-1;else if(n=yv(c),t.mode&Pg){Ae(!0);try{yv(c)}finally{Ae(!1)}}t.flags|=1,e!==null&&o?(t.child=Jv(t,e.child,null,i),t.child=Jv(t,null,n,i)):os(e,t,n,i),t.memoizedState=c.state,e=t.child}else e=As(e,t,i);return i=t.stateNode,a&&i.props!==r&&(lb||console.error("It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",T(t)||`a component`),lb=!0),e}function ys(e,t,n,r){return Vr(),t.flags|=256,os(e,t,n,r),t.child}function bs(e,t){t&&t.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component.
145
+ %s.childContextTypes = ...`,t.displayName||t.name||`Component`),typeof t.getDerivedStateFromProps==`function`&&(e=C(t)||`Unknown`,cb[e]||(console.error(`%s: Function components do not support getDerivedStateFromProps.`,e),cb[e]=!0)),typeof t.contextType==`object`&&t.contextType!==null&&(t=C(t)||`Unknown`,ob[t]||(console.error(`%s: Function components do not support contextType.`,t),ob[t]=!0))}function xs(e){return{baseLanes:e,cachePool:ki()}}function Ss(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=dx),e}function Cs(e,t,n){var r,i=t.pendingProps;o(t)&&(t.flags|=128);var a=!1,s=!!(t.flags&128);if((r=s)||(r=e!==null&&e.memoizedState===null?!1:(uy.current&ly)!==0),r&&(a=!0,t.flags&=-129),r=!!(t.flags&32),t.flags&=-33,e===null){if(Xg){if(a?ca(t):da(t),(e=Yg)?(n=ad(e,e_),n=n!==null&&n.data!==kS?n:null,n!==null&&(r={dehydrated:n,treeContext:jr(),retryLane:536870912,hydrationErrors:null},t.memoizedState=r,r=Tr(n),r.return=t,t.child=r,Jg=t,Yg=null)):n=null,n===null)throw Ir(t,e),Lr(t);return sd(n)?t.lanes=32:t.lanes=536870912,null}var c=i.children;if(i=i.fallback,a){da(t);var l=t.mode;return c=Ts({mode:`hidden`,children:c},l),i=Cr(i,l,n,null),c.return=t,i.return=t,c.sibling=i,t.child=c,i=t.child,i.memoizedState=xs(n),i.childLanes=Ss(e,r,n),t.memoizedState=fb,ds(null,i)}return ca(t),ws(t,c)}var u=e.memoizedState;if(u!==null){var d=u.dehydrated;if(d!==null){if(s)t.flags&256?(ca(t),t.flags&=-257,t=Es(e,t,n)):t.memoizedState===null?(da(t),c=i.fallback,l=t.mode,i=Ts({mode:`visible`,children:i.children},l),c=Cr(c,l,n,null),c.flags|=2,i.return=t,c.return=t,i.sibling=c,t.child=i,Jv(t,e.child,null,n),i=t.child,i.memoizedState=xs(n),i.childLanes=Ss(e,r,n),t.memoizedState=fb,t=ds(null,i)):(da(t),t.child=e.child,t.flags|=128,t=null);else if(ca(t),Fr(),n&536870912&&sl(t),sd(d)){if(r=d.nextSibling&&d.nextSibling.dataset,r){c=r.dgst;var f=r.msg;l=r.stck;var p=r.cstck}a=f,r=c,i=l,d=p,c=a,l=d,c=Error(c||`The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering.`),c.stack=i||``,c.digest=r,r=l===void 0?null:l,i={value:c,source:null,stack:r},typeof r==`string`&&Rg.set(c,i),Ur(i),t=Es(e,t,n)}else if(ib||Xr(e,t,n,!1),r=(n&e.childLanes)!==0,ib||r){if(r=Hb,r!==null&&(i=He(r,n),i!==0&&i!==u.retryLane))throw u.retryLane=i,lr(e,i),Jc(r,e,i),rb;od(d)||cl(),t=Es(e,t,n)}else od(d)?(t.flags|=192,t.child=e.child,t=null):(e=u.treeContext,Yg=ld(d.nextSibling),Jg=t,Xg=!0,$g=null,Zg=!1,Qg=null,e_=!1,e!==null&&Mr(t,e),t=ws(t,i.children),t.flags|=4096);return t}}return a?(da(t),c=i.fallback,l=t.mode,p=e.child,d=p.sibling,i=yr(p,{mode:`hidden`,children:i.children}),i.subtreeFlags=p.subtreeFlags&65011712,d===null?(c=Cr(c,l,n,null),c.flags|=2):c=yr(d,c),c.return=t,i.return=t,i.sibling=c,t.child=i,ds(null,i),i=t.child,c=e.child.memoizedState,c===null?c=xs(n):(l=c.cachePool,l===null?l=ki():(p=d_._currentValue,l=l.parent===p?l:{parent:p,pool:p}),c={baseLanes:c.baseLanes|n,cachePool:l}),i.memoizedState=c,i.childLanes=Ss(e,r,n),t.memoizedState=fb,ds(e.child,i)):(u!==null&&(n&62914560)===n&&(n&e.lanes)!==0&&sl(t),ca(t),n=e.child,e=n.sibling,n=yr(n,{mode:`visible`,children:i.children}),n.return=t,n.sibling=null,e!==null&&(r=t.deletions,r===null?(t.deletions=[e],t.flags|=16):r.push(e)),t.child=n,t.memoizedState=null,n)}function ws(e,t){return t=Ts({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Ts(e,t){return e=g(22,e,null,t),e.lanes=0,e}function Es(e,t,n){return Jv(t,e.child,null,n),e=ws(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Ds(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Jr(e.return,t,n)}function Os(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 ks(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail,o=r.children,s=uy.current;if((r=(s&ly)!==0)?(s=s&cy|ly,t.flags|=128):s&=cy,D(uy,s,t),s=i??`null`,i!==`forwards`&&i!==`unstable_legacy-backwards`&&i!==`together`&&i!==`independent`&&!ub[s]){if(ub[s]=!0,i==null)console.error(`The default for the <SuspenseList revealOrder="..."> prop is changing. To be future compatible you must explictly specify either "independent" (the current default), "together", "forwards" or "legacy_unstable-backwards".`);else if(i===`backwards`)console.error(`The rendering order of <SuspenseList revealOrder="backwards"> is changing. To be future compatible you must specify revealOrder="legacy_unstable-backwards" instead.`);else if(typeof i==`string`)switch(i.toLowerCase()){case`together`:case`forwards`:case`backwards`:case`independent`:console.error(`"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.`,i,i.toLowerCase());break;case`forward`:case`backward`:console.error(`"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.`,i,i.toLowerCase());break;default:console.error(`"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?`,i)}else console.error(`%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?`,i)}s=a??`null`,db[s]||(a==null?(i===`forwards`||i===`backwards`||i===`unstable_legacy-backwards`)&&(db[s]=!0,console.error(`The default for the <SuspenseList tail="..."> prop is changing. To be future compatible you must explictly specify either "visible" (the current default), "collapsed" or "hidden".`)):a!==`visible`&&a!==`collapsed`&&a!==`hidden`?(db[s]=!0,console.error(`"%s" is not a supported value for tail on <SuspenseList />. Did you mean "visible", "collapsed" or "hidden"?`,a)):i!==`forwards`&&i!==`backwards`&&i!==`unstable_legacy-backwards`&&(db[s]=!0,console.error(`<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" or "backwards". Did you mean to specify revealOrder="forwards"?`,a)));a:if((i===`forwards`||i===`backwards`||i===`unstable_legacy-backwards`)&&o!=null&&!1!==o){if(Bf(o)){for(s=0;s<o.length;s++)if(!Ji(o[s],s))break a}else if(s=ie(o),typeof s==`function`){if(s=s.call(o))for(var c=s.next(),l=0;!c.done;c=s.next()){if(!Ji(c.value,l))break a;l++}}else console.error(`A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?`,i)}if(os(e,t,o,n),Xg?(Nr(),o=Hg):o=0,!r&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ds(e,n,t);else if(e.tag===19)Ds(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&&pa(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Os(t,!1,i,n,a,o);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&pa(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Os(t,!0,n,null,a,o);break;case`together`:Os(t,!1,null,null,void 0,o);break;default:t.memoizedState=null}return t.child}function As(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),b_=-1,cx|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(Xr(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(`Resuming work not yet implemented.`);if(t.child!==null){for(e=t.child,n=yr(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=yr(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function js(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&Zr(e)))}function Ms(e,t,n){switch(t.tag){case 3:se(t,t.stateNode.containerInfo),Kr(t,d_,e.memoizedState.cache),Vr();break;case 27:case 5:ue(t);break;case 4:se(t,t.stateNode.containerInfo);break;case 10:Kr(t,t.type,t.memoizedProps.value);break;case 12:(n&t.childLanes)!==0&&(t.flags|=4),t.flags|=2048;var r=t.stateNode;r.effectDuration=-0,r.passiveEffectDuration=-0;break;case 31:if(t.memoizedState!==null)return t.flags|=128,la(t),null;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(ca(t),e=As(e,t,n),e===null?null:e.sibling):Cs(e,t,n):(ca(t),t.flags|=128,null);ca(t);break;case 19:var i=!!(e.flags&128);if(r=(n&t.childLanes)!==0,r||=(Xr(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return ks(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),D(uy,uy.current,t),r)break;return null;case 22:return t.lanes=0,us(e,t,n,t.pendingProps);case 24:Kr(t,d_,e.memoizedState.cache)}return As(e,t,n)}function Ns(e,t,n){if(t._debugNeedsRemount&&e!==null){n=xr(t.type,t.key,t.pendingProps,t._debugOwner||null,t.mode,t.lanes),n._debugStack=t._debugStack,n._debugTask=t._debugTask;var r=t.return;if(r===null)throw Error(`Cannot swap the root fiber.`);if(e.alternate=null,t.alternate=null,n.index=t.index,n.sibling=t.sibling,n.return=t.return,n.ref=t.ref,n._debugInfo=t._debugInfo,t===r.child)r.child=n;else{var i=r.child;if(i===null)throw Error(`Expected parent to have a child.`);for(;i.sibling!==t;)if(i=i.sibling,i===null)throw Error(`Expected to find the previous sibling.`);i.sibling=n}return t=r.deletions,t===null?(r.deletions=[e],r.flags|=16):t.push(e),n.flags|=2,n}if(e!==null){if(e.memoizedProps!==t.pendingProps||t.type!==e.type)ib=!0;else{if(!js(e,n)&&!(t.flags&128))return ib=!1,Ms(e,t,n);ib=!!(e.flags&131072)}}else ib=!1,(r=Xg)&&(Nr(),r=!!(t.flags&1048576)),r&&(r=t.index,Nr(),Or(t,Hg,r));switch(t.lanes=0,t.tag){case 16:a:if(r=t.pendingProps,e=Ni(t.elementType),t.type=e,typeof e==`function`)vr(e)?(r=Xo(e,r),t.tag=1,t.type=e=fr(e),t=vs(null,t,e,r,n)):(t.tag=0,bs(t,e),t.type=e=fr(e),t=gs(null,t,e,r,n));else{if(e!=null){if(i=e.$$typeof,i===jf){t.tag=11,t.type=e=pr(e),t=ss(null,t,e,r,n);break a}if(i===Pf){t.tag=14,t=cs(null,t,e,r,n);break a}}throw t=``,typeof e==`object`&&e&&e.$$typeof===Ff&&(t=` Did you wrap a component in React.lazy() more than once?`),n=C(e)||e,Error(`Element type is invalid. Received a promise that resolves to: `+n+`. Lazy element type must resolve to a class or function.`+t)}return t;case 0:return gs(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,i=Xo(r,t.pendingProps),vs(e,t,r,i,n);case 3:a:{if(se(t,t.stateNode.containerInfo),e===null)throw Error(`Should have a current fiber. This is a bug in React.`);r=t.pendingProps;var a=t.memoizedState;i=a.element,Xi(e,t),I(t,r,null,n);var o=t.memoizedState;if(r=o.cache,Kr(t,d_,r),r!==a.cache&&Yr(t,[d_],n,!0),ta(),r=o.element,a.isDehydrated){if(a={element:r,isDehydrated:!1,cache:o.cache},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){t=ys(e,t,r,n);break a}if(r!==i){i=F(Error(`This root received an early update, before anything was able hydrate. Switched the entire root to client rendering.`),t),Ur(i),t=ys(e,t,r,n);break a}switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Yg=ld(e.firstChild),Jg=t,Xg=!0,$g=null,Zg=!1,Qg=null,e_=!0,n=Yv(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Vr(),r===i){t=As(e,t,n);break a}os(e,t,r,n)}t=t.child}return t;case 26:return hs(e,t),e===null?(n=Sd(t.type,null,t.pendingProps,null))?t.memoizedState=n:Xg||(n=t.type,e=t.pendingProps,r=oe(Jf.current),r=ju(r).createElement(n),r[zp]=t,r[Bp]=e,_u(r,n,e),$e(r),t.stateNode=r):t.memoizedState=Sd(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return ue(t),e===null&&Xg&&(r=oe(Jf.current),i=le(),r=t.stateNode=_d(t.type,t.pendingProps,r,i,!1),Zg||(i=Du(r,t.type,t.pendingProps,i),i!==null&&(Pr(t,0).serverProps=i)),Jg=t,e_=!0,i=Yg,Gu(t.type)?(nC=i,Yg=ld(r.firstChild)):Yg=i),os(e,t,t.pendingProps.children,n),hs(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Xg&&(a=le(),r=Ut(t.type,a.ancestorInfo),i=Yg,(o=!i)||(o=rd(i,t.type,t.pendingProps,e_),o===null?a=!1:(t.stateNode=o,Zg||(a=Du(o,t.type,t.pendingProps,a),a!==null&&(Pr(t,0).serverProps=a)),Jg=t,Yg=ld(o.firstChild),e_=!1,a=!0),o=!a),o&&(r&&Ir(t,i),Lr(t))),ue(t),i=t.type,a=t.pendingProps,o=e===null?null:e.memoizedProps,r=a.children,Pu(i,a)?r=null:o!==null&&Pu(i,o)&&(t.flags|=32),t.memoizedState!==null&&(i=va(e,t,xa,null,null,n),bC._currentValue=i),hs(e,t),os(e,t,r,n),t.child;case 6:return e===null&&Xg&&(n=t.pendingProps,e=le(),r=e.ancestorInfo.current,n=r==null||Wt(n,r.tag,e.ancestorInfo.implicitRootScope),e=Yg,(r=!e)||(r=id(e,t.pendingProps,e_),r===null?r=!1:(t.stateNode=r,Jg=t,Yg=null,r=!0),r=!r),r&&(n&&Ir(t,e),Lr(t))),null;case 13:return Cs(e,t,n);case 4:return se(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Jv(t,null,r,n):os(e,t,r,n),t.child;case 11:return ss(e,t,t.type,t.pendingProps,n);case 7:return os(e,t,t.pendingProps,n),t.child;case 8:return os(e,t,t.pendingProps.children,n),t.child;case 12:return t.flags|=4,t.flags|=2048,r=t.stateNode,r.effectDuration=-0,r.passiveEffectDuration=-0,os(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.type,i=t.pendingProps,a=i.value,`value`in i||pb||(pb=!0,console.error("The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?")),Kr(t,r,a),os(e,t,i.children,n),t.child;case 9:return i=t.type._context,r=t.pendingProps.children,typeof r!=`function`&&console.error(`A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it.`),Qr(t),i=$r(i),r=_v(r,i,void 0),t.flags|=1,os(e,t,r,n),t.child;case 14:return cs(e,t,t.type,t.pendingProps,n);case 15:return ls(e,t,t.type,t.pendingProps,n);case 19:return ks(e,t,n);case 31:return ms(e,t,n);case 22:return us(e,t,n,t.pendingProps);case 24:return Qr(t),r=$r(d_),e===null?(i=Di(),i===null&&(i=Hb,a=ni(),i.pooledCache=a,ri(a),a!==null&&(i.pooledCacheLanes|=n),i=a),t.memoizedState={parent:r,cache:i},Yi(t),Kr(t,d_,i)):((e.lanes&n)!==0&&(Xi(e,t),I(t,null,null,n),ta()),i=e.memoizedState,a=t.memoizedState,i.parent===r?(r=a.cache,Kr(t,d_,r),r!==i.cache&&Yr(t,[d_],n,!0)):(i={parent:r,cache:r},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Kr(t,d_,r))),os(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(`Unknown unit of work tag (`+t.tag+`). This error is likely caused by a bug in React. Please file an issue.`)}function Ps(e){e.flags|=4}function Fs(e,t,n,r,i){if((t=(e.mode&Ig)!==Y)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if(il())e.flags|=8192;else throw Rv=Lv,Fv}}else e.flags&=-16777217}function Is(e,t){if(t.type!==`stylesheet`||(t.state.loading&sC)!==rC)e.flags&=-16777217;else if(e.flags|=16777216,!Ld(t)){if(il())e.flags|=8192;else throw Rv=Lv,Fv}}function Ls(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Ie(),e.lanes|=t,fx|=t)}function Rs(e,t){if(!Xg)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 zs(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t){if((e.mode&Ng)!==Y){for(var i=e.selfBaseDuration,a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags&65011712,r|=a.flags&65011712,i+=a.treeBaseDuration,a=a.sibling;e.treeBaseDuration=i}else for(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 if((e.mode&Ng)!==Y){i=e.actualDuration,a=e.selfBaseDuration;for(var o=e.child;o!==null;)n|=o.lanes|o.childLanes,r|=o.subtreeFlags,r|=o.flags,i+=o.actualDuration,a+=o.treeBaseDuration,o=o.sibling;e.actualDuration=i,e.treeBaseDuration=a}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 Bs(e,t,n){var r=t.pendingProps;switch(Ar(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return zs(t),null;case 1:return zs(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),qr(d_,t),ce(t),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Br(t)?(Wr(),Ps(t)):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Hr())),zs(t),null;case 26:var i=t.type,a=t.memoizedState;return e===null?(Ps(t),a===null?(zs(t),Fs(t,i,null,r,n)):(zs(t),Is(t,a))):a?a===e.memoizedState?(zs(t),t.flags&=-16777217):(Ps(t),zs(t),Is(t,a)):(e=e.memoizedProps,e!==r&&Ps(t),zs(t),Fs(t,i,e,r,n)),null;case 27:if(de(t),n=oe(Jf.current),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Ps(t);else{if(!r){if(t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);return zs(t),null}e=le(),Br(t)?Rr(t,e):(e=_d(i,r,n,e,!0),t.stateNode=e,Ps(t))}return zs(t),null;case 5:if(de(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Ps(t);else{if(!r){if(t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);return zs(t),null}var o=le();if(Br(t))Rr(t,o);else{switch(a=oe(Jf.current),Ut(i,o.ancestorInfo),o=o.context,a=ju(a),o){case WS:a=a.createElementNS(km,i);break;case GS:a=a.createElementNS(Om,i);break;default:switch(i){case`svg`:a=a.createElementNS(km,i);break;case`math`:a=a.createElementNS(Om,i);break;case`script`:a=a.createElement(`div`),a.innerHTML=`<script><\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?a.createElement(`select`,{is:r.is}):a.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?a.createElement(i,{is:r.is}):a.createElement(i),i.indexOf(`-`)===-1&&(i!==i.toLowerCase()&&console.error(`<%s /> is using incorrect casing. Use PascalCase for React components, or lowercase for HTML elements.`,i),Object.prototype.toString.call(a)!==`[object HTMLUnknownElement]`||up.call(JS,i)||(JS[i]=!0,console.error(`The tag <%s> is unrecognized in this browser. If you meant to render a React component, start its name with an uppercase letter.`,i)))}}a[zp]=t,a[Bp]=r;a:for(o=t.child;o!==null;){if(o.tag===5||o.tag===6)a.appendChild(o.stateNode);else if(o.tag!==4&&o.tag!==27&&o.child!==null){o.child.return=o,o=o.child;continue}if(o===t)break a;for(;o.sibling===null;){if(o.return===null||o.return===t)break a;o=o.return}o.sibling.return=o.return,o=o.sibling}t.stateNode=a;a:switch(_u(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Ps(t)}}return zs(t),Fs(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Ps(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(`We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.`);if(e=oe(Jf.current),n=le(),Br(t)){if(e=t.stateNode,n=t.memoizedProps,i=!Zg,r=null,a=Jg,a!==null)switch(a.tag){case 3:i&&(i=dd(e,n,r),i!==null&&(Pr(t,0).serverProps=i));break;case 27:case 5:r=a.memoizedProps,i&&(i=dd(e,n,r),i!==null&&(Pr(t,0).serverProps=i))}e[zp]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||mu(e.nodeValue,n)),e||Lr(t,!0)}else i=n.ancestorInfo.current,i!=null&&Wt(r,i.tag,n.ancestorInfo.implicitRootScope),e=ju(e).createTextNode(r),e[zp]=t,t.stateNode=e}return zs(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Br(t),n!==null){if(e===null){if(!r)throw Error(`A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.`);if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(`Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue.`);e[zp]=t,zs(t),(t.mode&Ng)!==Y&&n!==null&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration))}else Wr(),Vr(),!(t.flags&128)&&(n=t.memoizedState=null),t.flags|=4,zs(t),(t.mode&Ng)!==Y&&n!==null&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration));e=!1}else n=Hr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(fa(t),t):(fa(t),null);if(t.flags&128)throw Error(`Client rendering an Activity suspended it again. This is a bug in React.`)}return zs(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=r,a=Br(t),i!==null&&i.dehydrated!==null){if(e===null){if(!a)throw Error(`A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.`);if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(`Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.`);a[zp]=t,zs(t),(t.mode&Ng)!==Y&&i!==null&&(i=t.child,i!==null&&(t.treeBaseDuration-=i.treeBaseDuration))}else Wr(),Vr(),!(t.flags&128)&&(i=t.memoizedState=null),t.flags|=4,zs(t),(t.mode&Ng)!==Y&&i!==null&&(i=t.child,i!==null&&(t.treeBaseDuration-=i.treeBaseDuration));i=!1}else i=Hr(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(fa(t),t):(fa(t),null)}return fa(t),t.flags&128?(t.lanes=n,(t.mode&Ng)!==Y&&Ci(t),t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Ls(t,t.updateQueue),zs(t),(t.mode&Ng)!==Y&&n&&(e=t.child,e!==null&&(t.treeBaseDuration-=e.treeBaseDuration)),null);case 4:return ce(t),e===null&&tu(t.stateNode.containerInfo),zs(t),null;case 10:return qr(t.type,t),zs(t),null;case 19:if(ae(uy,t),r=t.memoizedState,r===null)return zs(t),null;if(i=!!(t.flags&128),a=r.rendering,a===null){if(i)Rs(r,!1);else{if(sx!==Pb||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=pa(e),a!==null){for(t.flags|=128,Rs(r,!1),e=a.updateQueue,t.updateQueue=e,Ls(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)br(n,e),n=n.sibling;return D(uy,uy.current&cy|ly,t),Xg&&Dr(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&hp()>yx&&(t.flags|=128,i=!0,Rs(r,!1),t.lanes=4194304)}}else{if(!i){if(e=pa(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Ls(t,e),Rs(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!Xg)return zs(t),null}else 2*hp()-r.renderingStartTime>yx&&n!==536870912&&(t.flags|=128,i=!0,Rs(r,!1),t.lanes=4194304)}r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(zs(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=hp(),e.sibling=null,n=uy.current,n=i?n&cy|ly:n&cy,D(uy,n,t),Xg&&Dr(t,r.treeForkCount),e);case 22:case 23:return fa(t),sa(t),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(zs(t),t.subtreeFlags&6&&(t.flags|=8192)):zs(t),n=t.updateQueue,n!==null&&Ls(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&&ae(av,t),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),qr(d_,t),zs(t),null;case 25:return null;case 30:return null}throw Error(`Unknown unit of work tag (`+t.tag+`). This error is likely caused by a bug in React. Please file an issue.`)}function Vs(e,t){switch(Ar(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Ng)!==Y&&Ci(t),t):null;case 3:return qr(d_,t),ce(t),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return de(t),null;case 31:if(t.memoizedState!==null){if(fa(t),t.alternate===null)throw Error(`Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.`);Vr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Ng)!==Y&&Ci(t),t):null;case 13:if(fa(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(`Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.`);Vr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Ng)!==Y&&Ci(t),t):null;case 19:return ae(uy,t),null;case 4:return ce(t),null;case 10:return qr(t.type,t),null;case 22:case 23:return fa(t),sa(t),e!==null&&ae(av,t),e=t.flags,e&65536?(t.flags=e&-65537|128,(t.mode&Ng)!==Y&&Ci(t),t):null;case 24:return qr(d_,t),null;case 25:return null;default:return null}}function Hs(e,t){switch(Ar(t),t.tag){case 3:qr(d_,t),ce(t);break;case 26:case 27:case 5:de(t);break;case 4:ce(t);break;case 31:t.memoizedState!==null&&fa(t);break;case 13:fa(t);break;case 19:ae(uy,t);break;case 10:qr(t.type,t);break;case 22:case 23:fa(t),sa(t),e!==null&&ae(av,t);break;case 24:qr(d_,t)}}function Us(e){return(e.mode&Ng)!==Y}function Ws(e,t){Us(e)?(Si(),Ks(t,e),bi()):Ks(t,e)}function Gs(e,t,n){Us(e)?(Si(),qs(n,e,t),bi()):qs(n,e,t)}function Ks(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,(e&py)!==dy&&($x=!0),r=O(t,kv,n),(e&py)!==dy&&($x=!1),r!==void 0&&typeof r!=`function`)){var a=void 0;a=(n.tag&my)===0?(n.tag&py)===0?`useEffect`:`useInsertionEffect`:`useLayoutEffect`;var o=void 0;o=r===null?` You returned null. If your effect does not require clean up, return undefined (or nothing).`:typeof r.then==`function`?`
146
+
147
+ It looks like you wrote `+a+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:
148
+
149
+ `+a+`(() => {
150
+ async function fetchData() {
151
+ // You can await here
152
+ const response = await MyAPI.getData(someId);
153
+ // ...
154
+ }
155
+ fetchData();
156
+ }, [someId]); // Or [] if effect doesn't need props or state
157
+
158
+ Learn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching`:` You returned: `+r,O(t,function(e,t){console.error(`%s must not return anything besides a function, which is used for clean-up.%s`,e,t)},a,o)}n=n.next}while(n!==i)}}catch(e){Dl(t,t.return,e)}}function qs(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;s!==void 0&&(o.destroy=void 0,(e&py)!==dy&&($x=!0),i=t,O(i,jv,i,n,s),(e&py)!==dy&&($x=!1))}r=r.next}while(r!==a)}}catch(e){Dl(t,t.return,e)}}function Js(e,t){Us(e)?(Si(),Ks(t,e),bi()):Ks(t,e)}function Ys(e,t,n){Us(e)?(Si(),qs(n,e,t),bi()):qs(n,e,t)}function Xs(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;e.type.defaultProps||`ref`in e.memoizedProps||lb||(n.props!==e.memoizedProps&&console.error("Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",T(e)||`instance`),n.state!==e.memoizedState&&console.error("Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",T(e)||`instance`));try{O(e,ia,t,n)}catch(t){Dl(e,e.return,t)}}}function Zs(e,t,n){return e.getSnapshotBeforeUpdate(t,n)}function Qs(e,t){var n=t.memoizedProps,r=t.memoizedState;t=e.stateNode,e.type.defaultProps||`ref`in e.memoizedProps||lb||(t.props!==e.memoizedProps&&console.error("Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",T(e)||`instance`),t.state!==e.memoizedState&&console.error("Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",T(e)||`instance`));try{var i=Xo(e.type,n),a=O(e,Zs,t,i,r);n=mb,a!==void 0||n.has(e.type)||(n.add(e.type),O(e,function(){console.error(`%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.`,T(e))})),t.__reactInternalSnapshotBeforeUpdate=a}catch(t){Dl(e,e.return,t)}}function $s(e,t,n){n.props=Xo(e.type,e.memoizedProps),n.state=e.memoizedState,Us(e)?(Si(),O(e,Dv,e,t,n),bi()):O(e,Dv,e,t,n)}function ec(e){var t=e.ref;if(t!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}if(typeof t==`function`){if(Us(e))try{Si(),e.refCleanup=t(n)}finally{bi()}else e.refCleanup=t(n)}else typeof t==`string`?console.error(`String refs are no longer supported.`):t.hasOwnProperty(`current`)||console.error(`Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().`,T(e)),t.current=n}}function tc(e,t){try{O(e,ec,e)}catch(n){Dl(e,t,n)}}function nc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{if(Us(e))try{Si(),O(e,r)}finally{bi(e)}else O(e,r)}catch(n){Dl(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{if(Us(e))try{Si(),O(e,n,null)}finally{bi(e)}else O(e,n,null)}catch(n){Dl(e,t,n)}else n.current=null}}function rc(e,t,n,r){var i=e.memoizedProps,a=i.id,o=i.onCommit;i=i.onRender,t=t===null?`mount`:`update`,Q_&&(t=`nested-update`),typeof i==`function`&&i(a,t,e.actualDuration,e.treeBaseDuration,e.actualStartTime,n),typeof o==`function`&&o(a,t,r,n)}function ic(e,t,n,r){var i=e.memoizedProps;e=i.id,i=i.onPostCommit,t=t===null?`mount`:`update`,Q_&&(t=`nested-update`),typeof i==`function`&&i(e,t,r,n)}function ac(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{O(e,zu,r,t,n,e)}catch(t){Dl(e,e.return,t)}}function oc(e,t,n){try{O(e,Vu,e.stateNode,e.type,n,t,e)}catch(t){Dl(e,e.return,t)}}function sc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Gu(e.type)||e.tag===4}function cc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||sc(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&&Gu(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 lc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(Wu(n),(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t)):(Wu(n),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=nn));else if(r!==4&&(r===27&&Gu(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(lc(e,t,n),e=e.sibling;e!==null;)lc(e,t,n),e=e.sibling}function uc(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&&Gu(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(uc(e,t,n),e=e.sibling;e!==null;)uc(e,t,n),e=e.sibling}function dc(e){for(var t,n=e.return;n!==null;){if(sc(n)){t=n;break}n=n.return}if(t==null)throw Error(`Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.`);switch(t.tag){case 27:t=t.stateNode,n=cc(e),uc(e,n,t);break;case 5:n=t.stateNode,t.flags&32&&(Hu(n),t.flags&=-33),t=cc(e),uc(e,t,n);break;case 3:case 4:t=t.stateNode.containerInfo,n=cc(e),lc(e,n,t);break;default:throw Error(`Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.`)}}function fc(e){var t=e.stateNode,n=e.memoizedProps;try{O(e,vd,e.type,n,t,e)}catch(t){Dl(e,e.return,t)}}function pc(e,t){return t.tag===31?(t=t.memoizedState,e.memoizedState!==null&&t===null):t.tag===13?(e=e.memoizedState,t=t.memoizedState,e!==null&&e.dehydrated!==null&&(t===null||t.dehydrated===null)):t.tag===3&&e.memoizedState.isDehydrated&&!(t.flags&256)}function mc(e,t){if(e=e.containerInfo,KS=LC,e=In(e),Ln(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 i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break a}var o=0,s=-1,c=-1,l=0,u=0,d=e,f=null;b:for(;;){for(var p;d!==n||i!==0&&d.nodeType!==3||(s=o+i),d!==a||r!==0&&d.nodeType!==3||(c=o+r),d.nodeType===3&&(o+=d.nodeValue.length),(p=d.firstChild)!==null;)f=d,d=p;for(;;){if(d===e)break b;if(f===n&&++l===i&&(s=o),f===a&&++u===r&&(c=o),(p=d.nextSibling)!==null)break;d=f,f=d.parentNode}d=p}n=s===-1||c===-1?null:{start:s,end:c}}else n=null}n||={start:0,end:0}}else n=null;for(qS={focusedElem:e,selectionRange:n},LC=!1,yb=t;yb!==null;)if(t=yb,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,yb=e;else for(;yb!==null;){switch(e=t=yb,n=e.alternate,i=e.flags,e.tag){case 0:if(i&4&&(e=e.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)i=e[n],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:i&1024&&n!==null&&Qs(e,n);break;case 3:if(i&1024){if(e=e.stateNode.containerInfo,n=e.nodeType,n===9)nd(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:nd(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(i&1024)throw Error(`This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.`)}if(e=t.sibling,e!==null){e.return=t.return,yb=e;break}yb=t.return}}function H(e,t,n){var r=di(),i=pi(),a=hi(),o=gi(),s=n.flags;switch(n.tag){case 0:case 11:case 15:Tc(e,n),s&4&&Ws(n,my|fy);break;case 1:if(Tc(e,n),s&4){if(e=n.stateNode,t===null)n.type.defaultProps||`ref`in n.memoizedProps||lb||(e.props!==n.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",T(n)||`instance`),e.state!==n.memoizedState&&console.error("Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",T(n)||`instance`)),Us(n)?(Si(),O(n,xv,n,e),bi()):O(n,xv,n,e);else{var c=Xo(n.type,t.memoizedProps);t=t.memoizedState,n.type.defaultProps||`ref`in n.memoizedProps||lb||(e.props!==n.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",T(n)||`instance`),e.state!==n.memoizedState&&console.error("Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",T(n)||`instance`)),Us(n)?(Si(),O(n,Cv,n,e,c,t,e.__reactInternalSnapshotBeforeUpdate),bi()):O(n,Cv,n,e,c,t,e.__reactInternalSnapshotBeforeUpdate)}}s&64&&Xs(n),s&512&&tc(n,n.return);break;case 3:if(t=si(),Tc(e,n),s&64&&(s=n.updateQueue,s!==null)){if(c=null,n.child!==null)switch(n.child.tag){case 27:case 5:c=n.child.stateNode;break;case 1:c=n.child.stateNode}try{O(n,ia,s,c)}catch(e){Dl(n,n.return,e)}}e.effectDuration+=ci(t);break;case 27:t===null&&s&4&&fc(n);case 26:case 5:if(Tc(e,n),t===null){if(s&4)ac(n);else if(s&64){e=n.type,t=n.memoizedProps,c=n.stateNode;try{O(n,Bu,c,e,t,n)}catch(e){Dl(n,n.return,e)}}}s&512&&tc(n,n.return);break;case 12:if(s&4){s=si(),Tc(e,n),e=n.stateNode,e.effectDuration+=li(s);try{O(n,rc,n,t,__,e.effectDuration)}catch(e){Dl(n,n.return,e)}}else Tc(e,n);break;case 31:Tc(e,n),s&4&&vc(e,n);break;case 13:Tc(e,n),s&4&&yc(e,n),s&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(s=jl.bind(null,n),cd(e,s))));break;case 22:if(s=n.memoizedState!==null||hb,!s){t=t!==null&&t.memoizedState!==null||gb,c=hb;var l=gb;hb=s,(gb=t)&&!l?(kc(e,n,!!(n.subtreeFlags&8772)),(n.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&Jn(n,X,Z)):Tc(e,n),hb=c,gb=l}break;case 30:break;default:Tc(e,n)}(n.mode&Ng)!==Y&&0<=X&&0<=Z&&((w_||.05<S_)&&Zn(n,X,Z,S_,C_),n.alternate===null&&n.return!==null&&n.return.alternate!==null&&.05<Z-X&&(pc(n.return.alternate,n.return)||qn(n,X,Z,`Mount`))),fi(r),mi(i),C_=a,w_=o}function hc(e){var t=e.alternate;t!==null&&(e.alternate=null,hc(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Ye(t)),e.stateNode=null,e._debugOwner=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function gc(e,t,n){for(n=n.child;n!==null;)_c(e,t,n),n=n.sibling}function _c(e,t,n){if(Tp&&typeof Tp.onCommitFiberUnmount==`function`)try{Tp.onCommitFiberUnmount(wp,n)}catch(e){Ep||(Ep=!0,console.error(`React instrumentation encountered an error: %o`,e))}var r=di(),i=pi(),a=hi(),o=gi();switch(n.tag){case 26:gb||nc(n,t),gc(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(e=n.stateNode,e.parentNode.removeChild(e));break;case 27:gb||nc(n,t);var s=Sb,c=Cb;Gu(n.type)&&(Sb=n.stateNode,Cb=!1),gc(e,t,n),O(n,yd,n.stateNode),Sb=s,Cb=c;break;case 5:gb||nc(n,t);case 6:if(s=Sb,c=Cb,Sb=null,gc(e,t,n),Sb=s,Cb=c,Sb!==null){if(Cb)try{O(n,qu,Sb,n.stateNode)}catch(e){Dl(n,t,e)}else try{O(n,Ku,Sb,n.stateNode)}catch(e){Dl(n,t,e)}}break;case 18:Sb!==null&&(Cb?(e=Sb,Ju(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),mf(e)):Ju(Sb,n.stateNode));break;case 4:s=Sb,c=Cb,Sb=n.stateNode.containerInfo,Cb=!0,gc(e,t,n),Sb=s,Cb=c;break;case 0:case 11:case 14:case 15:qs(py,n,t),gb||Gs(n,t,my),gc(e,t,n);break;case 1:gb||(nc(n,t),s=n.stateNode,typeof s.componentWillUnmount==`function`&&$s(n,t,s)),gc(e,t,n);break;case 21:gc(e,t,n);break;case 22:gb=(s=gb)||n.memoizedState!==null,gc(e,t,n),gb=s;break;default:gc(e,t,n)}(n.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(n,X,Z,S_,C_),fi(r),mi(i),C_=a,w_=o}function vc(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{O(t,hd,e)}catch(e){Dl(t,t.return,e)}}}function yc(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{O(t,gd,e)}catch(e){Dl(t,t.return,e)}}function bc(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new vb),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new vb),t;default:throw Error(`Unexpected Suspense handler tag (`+e.tag+`). This is a bug in React.`)}}function xc(e,t){var n=bc(e);t.forEach(function(t){if(!n.has(t)){if(n.add(t),Dp){if(bb!==null&&xb!==null)Fl(xb,bb);else throw Error(`Expected finished root and lanes to be set. This is a bug in React.`)}var r=Ml.bind(null,e,t);t.then(r,r)}})}function Sc(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=e,a=t,o=n[r],s=di(),c=a;a:for(;c!==null;){switch(c.tag){case 27:if(Gu(c.type)){Sb=c.stateNode,Cb=!1;break a}break;case 5:Sb=c.stateNode,Cb=!1;break a;case 3:case 4:Sb=c.stateNode.containerInfo,Cb=!0;break a}c=c.return}if(Sb===null)throw Error(`Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.`);_c(i,a,o),Sb=null,Cb=!1,(o.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&qn(o,X,Z,`Unmount`),fi(s),i=o,a=i.alternate,a!==null&&(a.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Cc(t,e),t=t.sibling}function Cc(e,t){var n=di(),r=pi(),i=hi(),a=gi(),o=e.alternate,s=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:Sc(t,e),U(e),s&4&&(qs(py|fy,e,e.return),Ks(py|fy,e),Gs(e,e.return,my|fy));break;case 1:if(Sc(t,e),U(e),s&512&&(gb||o===null||nc(o,o.return)),s&64&&hb&&(s=e.updateQueue,s!==null&&(o=s.callbacks,o!==null))){var c=s.shared.hiddenCallbacks;s.shared.hiddenCallbacks=c===null?o:c.concat(o)}break;case 26:if(c=wb,Sc(t,e),U(e),s&512&&(gb||o===null||nc(o,o.return)),s&4){var l=o===null?null:o.memoizedState;if(s=e.memoizedState,o===null){if(s===null){if(e.stateNode===null){a:{s=e.type,o=e.memoizedProps,c=c.ownerDocument||c;b:switch(s){case`title`:l=c.getElementsByTagName(`title`)[0],(!l||l[Kp]||l[zp]||l.namespaceURI===km||l.hasAttribute(`itemprop`))&&(l=c.createElement(s),c.head.insertBefore(l,c.querySelector(`head > title`))),_u(l,s,o),l[zp]=e,$e(l),s=l;break a;case`link`:var u=Pd(`link`,`href`,c).get(s+(o.href||``));if(u){for(var d=0;d<u.length;d++)if(l=u[d],l.getAttribute(`href`)===(o.href==null||o.href===``?null:o.href)&&l.getAttribute(`rel`)===(o.rel==null?null:o.rel)&&l.getAttribute(`title`)===(o.title==null?null:o.title)&&l.getAttribute(`crossorigin`)===(o.crossOrigin==null?null:o.crossOrigin)){u.splice(d,1);break b}}l=c.createElement(s),_u(l,s,o),c.head.appendChild(l);break;case`meta`:if(u=Pd(`meta`,`content`,c).get(s+(o.content||``))){for(d=0;d<u.length;d++)if(l=u[d],k(o.content,`content`),l.getAttribute(`content`)===(o.content==null?null:``+o.content)&&l.getAttribute(`name`)===(o.name==null?null:o.name)&&l.getAttribute(`property`)===(o.property==null?null:o.property)&&l.getAttribute(`http-equiv`)===(o.httpEquiv==null?null:o.httpEquiv)&&l.getAttribute(`charset`)===(o.charSet==null?null:o.charSet)){u.splice(d,1);break b}}l=c.createElement(s),_u(l,s,o),c.head.appendChild(l);break;default:throw Error(`getNodesForType encountered a type it did not expect: "`+s+`". This is a bug in React.`)}l[zp]=e,$e(l),s=l}e.stateNode=s}else Fd(c,e.type,e.stateNode)}else e.stateNode=Ad(c,s,e.memoizedProps)}else l===s?s===null&&e.stateNode!==null&&oc(e,e.memoizedProps,o.memoizedProps):(l===null?o.stateNode!==null&&(o=o.stateNode,o.parentNode.removeChild(o)):l.count--,s===null?Fd(c,e.type,e.stateNode):Ad(c,s,e.memoizedProps))}break;case 27:Sc(t,e),U(e),s&512&&(gb||o===null||nc(o,o.return)),o!==null&&s&4&&oc(e,e.memoizedProps,o.memoizedProps);break;case 5:if(Sc(t,e),U(e),s&512&&(gb||o===null||nc(o,o.return)),e.flags&32){c=e.stateNode;try{O(e,Hu,c)}catch(t){Dl(e,e.return,t)}}s&4&&e.stateNode!=null&&(c=e.memoizedProps,oc(e,c,o===null?c:o.memoizedProps)),s&1024&&(_b=!0,e.type!==`form`&&console.error(`Unexpected host component type. Expected a form. This is a bug in React.`));break;case 6:if(Sc(t,e),U(e),s&4){if(e.stateNode===null)throw Error(`This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.`);s=e.memoizedProps,o=o===null?s:o.memoizedProps,c=e.stateNode;try{O(e,Uu,c,o,s)}catch(t){Dl(e,e.return,t)}}break;case 3:if(c=si(),fC=null,l=wb,wb=bd(t.containerInfo),Sc(t,e),wb=l,U(e),s&4&&o!==null&&o.memoizedState.isDehydrated)try{O(e,md,t.containerInfo)}catch(t){Dl(e,e.return,t)}_b&&(_b=!1,wc(e)),t.effectDuration+=ci(c);break;case 4:s=wb,wb=bd(e.stateNode.containerInfo),Sc(t,e),U(e),wb=s;break;case 12:s=si(),Sc(t,e),U(e),e.stateNode.effectDuration+=li(s);break;case 31:Sc(t,e),U(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,xc(e,s)));break;case 13:Sc(t,e),U(e),e.child.flags&8192&&e.memoizedState!==null!=(o!==null&&o.memoizedState!==null)&&(gx=hp()),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,xc(e,s)));break;case 22:c=e.memoizedState!==null;var f=o!==null&&o.memoizedState!==null,p=hb,m=gb;if(hb=p||c,gb=m||f,Sc(t,e),gb=m,hb=p,f&&!c&&!p&&!m&&(e.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&Jn(e,X,Z),U(e),s&8192)a:for(t=e.stateNode,t._visibility=c?t._visibility&~wg:t._visibility|wg,!c||o===null||f||hb||gb||(Dc(e),(e.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&qn(e,X,Z,`Disconnect`)),o=null,t=e;;){if(t.tag===5||t.tag===26){if(o===null){f=o=t;try{l=f.stateNode,c?O(f,Zu,l):O(f,ed,f.stateNode,f.memoizedProps)}catch(e){Dl(f,f.return,e)}}}else if(t.tag===6){if(o===null){f=t;try{u=f.stateNode,c?O(f,Qu,u):O(f,td,u,f.memoizedProps)}catch(e){Dl(f,f.return,e)}}}else if(t.tag===18){if(o===null){f=t;try{d=f.stateNode,c?O(f,Xu,d):O(f,$u,f.stateNode)}catch(e){Dl(f,f.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;o===t&&(o=null),t=t.return}o===t&&(o=null),t.sibling.return=t.return,t=t.sibling}s&4&&(s=e.updateQueue,s!==null&&(o=s.retryQueue,o!==null&&(s.retryQueue=null,xc(e,o))));break;case 19:Sc(t,e),U(e),s&4&&(s=e.updateQueue,s!==null&&(e.updateQueue=null,xc(e,s)));break;case 30:break;case 21:break;default:Sc(t,e),U(e)}(e.mode&Ng)!==Y&&0<=X&&0<=Z&&((w_||.05<S_)&&Zn(e,X,Z,S_,C_),e.alternate===null&&e.return!==null&&e.return.alternate!==null&&.05<Z-X&&(pc(e.return.alternate,e.return)||qn(e,X,Z,`Mount`))),fi(n),mi(r),C_=i,w_=a}function U(e){var t=e.flags;if(t&2){try{O(e,dc,e)}catch(t){Dl(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function wc(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;wc(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function Tc(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)H(e,t.alternate,t),t=t.sibling}function Ec(e){var t=di(),n=pi(),r=hi(),i=gi();switch(e.tag){case 0:case 11:case 14:case 15:Gs(e,e.return,my),Dc(e);break;case 1:nc(e,e.return);var a=e.stateNode;typeof a.componentWillUnmount==`function`&&$s(e,e.return,a),Dc(e);break;case 27:O(e,yd,e.stateNode);case 26:case 5:nc(e,e.return),Dc(e);break;case 22:e.memoizedState===null&&Dc(e);break;case 30:Dc(e);break;default:Dc(e)}(e.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(e,X,Z,S_,C_),fi(t),mi(n),C_=r,w_=i}function Dc(e){for(e=e.child;e!==null;)Ec(e),e=e.sibling}function Oc(e,t,n,r){var i=di(),a=pi(),o=hi(),s=gi(),c=n.flags;switch(n.tag){case 0:case 11:case 15:kc(e,n,r),Ws(n,my);break;case 1:if(kc(e,n,r),t=n.stateNode,typeof t.componentDidMount==`function`&&O(n,xv,n,t),t=n.updateQueue,t!==null){e=n.stateNode;try{O(n,ra,t,e)}catch(e){Dl(n,n.return,e)}}r&&c&64&&Xs(n),tc(n,n.return);break;case 27:fc(n);case 26:case 5:kc(e,n,r),r&&t===null&&c&4&&ac(n),tc(n,n.return);break;case 12:if(r&&c&4){c=si(),kc(e,n,r),r=n.stateNode,r.effectDuration+=li(c);try{O(n,rc,n,t,__,r.effectDuration)}catch(e){Dl(n,n.return,e)}}else kc(e,n,r);break;case 31:kc(e,n,r),r&&c&4&&vc(e,n);break;case 13:kc(e,n,r),r&&c&4&&yc(e,n);break;case 22:n.memoizedState===null&&kc(e,n,r),tc(n,n.return);break;case 30:break;default:kc(e,n,r)}(n.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(n,X,Z,S_,C_),fi(i),mi(a),C_=o,w_=s}function kc(e,t,n){for(n&&=!!(t.subtreeFlags&8772),t=t.child;t!==null;)Oc(e,t.alternate,t,n),t=t.sibling}function Ac(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&&ri(e),n!=null&&ii(n))}function W(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(ri(t),e!=null&&ii(e))}function jc(e,t,n,r,i){if(t.subtreeFlags&10256||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child))for(t=t.child;t!==null;){var a=t.sibling;Mc(e,t,n,r,a===null?i:a.actualStartTime),t=a}}function Mc(e,t,n,r,i){var a=di(),o=pi(),s=hi(),c=gi(),l=vg,u=t.flags;switch(t.tag){case 0:case 11:case 15:(t.mode&Ng)!==Y&&0<t.actualStartTime&&t.flags&1&&Yn(t,t.actualStartTime,i,Tb,n),jc(e,t,n,r,i),u&2048&&Js(t,hy|fy);break;case 1:(t.mode&Ng)!==Y&&0<t.actualStartTime&&(t.flags&128?Xn(t,t.actualStartTime,i,[]):t.flags&1&&Yn(t,t.actualStartTime,i,Tb,n)),jc(e,t,n,r,i);break;case 3:var d=si(),f=Tb;Tb=t.alternate!==null&&t.alternate.memoizedState.isDehydrated&&!(t.flags&256),jc(e,t,n,r,i),Tb=f,u&2048&&(n=null,t.alternate!==null&&(n=t.alternate.memoizedState.cache),r=t.memoizedState.cache,r!==n&&(ri(r),n!=null&&ii(n))),e.passiveEffectDuration+=ci(d);break;case 12:if(u&2048){u=si(),jc(e,t,n,r,i),e=t.stateNode,e.passiveEffectDuration+=li(u);try{O(t,ic,t,t.alternate,__,e.passiveEffectDuration)}catch(e){Dl(t,t.return,e)}}else jc(e,t,n,r,i);break;case 31:u=Tb,d=t.alternate===null?null:t.alternate.memoizedState,f=t.memoizedState,d!==null&&f===null?(f=t.deletions,f!==null&&0<f.length&&f[0].tag===18?(Tb=!1,d=d.hydrationErrors,d!==null&&Xn(t,t.actualStartTime,i,d)):Tb=!0):Tb=!1,jc(e,t,n,r,i),Tb=u;break;case 13:u=Tb,d=t.alternate===null?null:t.alternate.memoizedState,f=t.memoizedState,d===null||d.dehydrated===null||f!==null&&f.dehydrated!==null?Tb=!1:(f=t.deletions,f!==null&&0<f.length&&f[0].tag===18?(Tb=!1,d=d.hydrationErrors,d!==null&&Xn(t,t.actualStartTime,i,d)):Tb=!0),jc(e,t,n,r,i),Tb=u;break;case 23:break;case 22:f=t.stateNode,d=t.alternate,t.memoizedState===null?f._visibility&Tg?jc(e,t,n,r,i):(f._visibility|=Tg,Nc(e,t,n,r,!!(t.subtreeFlags&10256)||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child),i),(t.mode&Ng)===Y||Tb||(e=t.actualStartTime,0<=e&&.05<i-e&&Jn(t,e,i),0<=X&&0<=Z&&.05<Z-X&&Jn(t,X,Z))):f._visibility&Tg?jc(e,t,n,r,i):Fc(e,t,n,r,i),u&2048&&Ac(d,t);break;case 24:jc(e,t,n,r,i),u&2048&&W(t.alternate,t);break;default:jc(e,t,n,r,i)}(t.mode&Ng)!==Y&&((e=!Tb&&t.alternate===null&&t.return!==null&&t.return.alternate!==null)&&(n=t.actualStartTime,0<=n&&.05<i-n&&qn(t,n,i,`Mount`)),0<=X&&0<=Z&&((w_||.05<S_)&&Zn(t,X,Z,S_,C_),e&&.05<Z-X&&qn(t,X,Z,`Mount`))),fi(a),mi(o),C_=s,w_=c,vg=l}function Nc(e,t,n,r,i,a){for(i&&=!!(t.subtreeFlags&10256)||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child),t=t.child;t!==null;){var o=t.sibling;Pc(e,t,n,r,i,o===null?a:o.actualStartTime),t=o}}function Pc(e,t,n,r,i,a){var o=di(),s=pi(),c=hi(),l=gi(),u=vg;i&&(t.mode&Ng)!==Y&&0<t.actualStartTime&&t.flags&1&&Yn(t,t.actualStartTime,a,Tb,n);var d=t.flags;switch(t.tag){case 0:case 11:case 15:Nc(e,t,n,r,i,a),Js(t,hy);break;case 23:break;case 22:var f=t.stateNode;t.memoizedState===null?(f._visibility|=Tg,Nc(e,t,n,r,i,a)):f._visibility&Tg?Nc(e,t,n,r,i,a):Fc(e,t,n,r,a),i&&d&2048&&Ac(t.alternate,t);break;case 24:Nc(e,t,n,r,i,a),i&&d&2048&&W(t.alternate,t);break;default:Nc(e,t,n,r,i,a)}(t.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(t,X,Z,S_,C_),fi(o),mi(s),C_=c,w_=l,vg=u}function Fc(e,t,n,r,i){if(t.subtreeFlags&10256||t.actualDuration!==0&&(t.alternate===null||t.alternate.child!==t.child))for(var a=t.child;a!==null;){t=a.sibling;var o=e,s=n,c=r,l=t===null?i:t.actualStartTime,u=vg;(a.mode&Ng)!==Y&&0<a.actualStartTime&&a.flags&1&&Yn(a,a.actualStartTime,l,Tb,s);var d=a.flags;switch(a.tag){case 22:Fc(o,a,s,c,l),d&2048&&Ac(a.alternate,a);break;case 24:Fc(o,a,s,c,l),d&2048&&W(a.alternate,a);break;default:Fc(o,a,s,c,l)}vg=u,a=t}}function Ic(e,t,n){if(e.subtreeFlags&Eb)for(e=e.child;e!==null;)Lc(e,t,n),e=e.sibling}function Lc(e,t,n){switch(e.tag){case 26:Ic(e,t,n),e.flags&Eb&&e.memoizedState!==null&&Rd(n,wb,e.memoizedState,e.memoizedProps);break;case 5:Ic(e,t,n);break;case 3:case 4:var r=wb;wb=bd(e.stateNode.containerInfo),Ic(e,t,n),wb=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Eb,Eb=16777216,Ic(e,t,n),Eb=r):Ic(e,t,n));break;default:Ic(e,t,n)}}function Rc(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 zc(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n],i=di();yb=r,Uc(r,e),(r.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&qn(r,X,Z,`Unmount`),fi(i)}Rc(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Bc(e),e=e.sibling}function Bc(e){var t=di(),n=pi(),r=hi(),i=gi();switch(e.tag){case 0:case 11:case 15:zc(e),e.flags&2048&&Ys(e,e.return,hy|fy);break;case 3:var a=si();zc(e),e.stateNode.passiveEffectDuration+=ci(a);break;case 12:a=si(),zc(e),e.stateNode.passiveEffectDuration+=li(a);break;case 22:a=e.stateNode,e.memoizedState!==null&&a._visibility&Tg&&(e.return===null||e.return.tag!==13)?(a._visibility&=~Tg,Vc(e),(e.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&qn(e,X,Z,`Disconnect`)):zc(e);break;default:zc(e)}(e.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(e,X,Z,S_,C_),fi(t),mi(n),w_=i,C_=r}function Vc(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n],i=di();yb=r,Uc(r,e),(r.mode&Ng)!==Y&&0<=X&&0<=Z&&.05<Z-X&&qn(r,X,Z,`Unmount`),fi(i)}Rc(e)}for(e=e.child;e!==null;)Hc(e),e=e.sibling}function Hc(e){var t=di(),n=pi(),r=hi(),i=gi();switch(e.tag){case 0:case 11:case 15:Ys(e,e.return,hy),Vc(e);break;case 22:var a=e.stateNode;a._visibility&Tg&&(a._visibility&=~Tg,Vc(e));break;default:Vc(e)}(e.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(e,X,Z,S_,C_),fi(t),mi(n),w_=i,C_=r}function Uc(e,t){for(;yb!==null;){var n=yb,r=n,i=t,a=di(),o=pi(),s=hi(),c=gi();switch(r.tag){case 0:case 11:case 15:Ys(r,i,hy);break;case 23:case 22:r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(i=r.memoizedState.cachePool.pool,i!=null&&ri(i));break;case 24:ii(r.memoizedState.cache)}if((r.mode&Ng)!==Y&&0<=X&&0<=Z&&(w_||.05<S_)&&Zn(r,X,Z,S_,C_),fi(a),mi(o),w_=c,C_=s,r=n.child,r!==null)r.return=n,yb=r;else a:for(n=e;yb!==null;){if(r=yb,a=r.sibling,o=r.return,hc(r),r===n){yb=null;break a}if(a!==null){a.return=o,yb=a;break a}yb=o}}}function Wc(){kb.forEach(function(e){return e()})}function Gc(){var e=typeof IS_REACT_ACT_ENVIRONMENT<`u`?IS_REACT_ACT_ENVIRONMENT:void 0;return e||J.actQueue===null||console.error(`The current testing environment is not configured to support act(...)`),e}function Kc(e){if((Vb&Mb)!==jb&&Wb!==0)return Wb&-Wb;var t=J.T;return t===null?qe():(t._updatedFibers||=new Set,t._updatedFibers.add(e),ql())}function qc(){if(dx===0){if(!(Wb&536870912)||Xg){var e=Mp;Mp<<=1,!(Mp&3932160)&&(Mp=262144),dx=e}else dx=536870912}return e=oy.current,e!==null&&(e.flags|=32),dx}function Jc(e,t,n){if($x&&console.error(`useInsertionEffect must not schedule updates.`),Jx&&(Yx=!0),(e===Hb&&(tx===qb||tx===ex)||e.cancelPendingCommit!==null)&&(nl(e,0),Qc(e,Wb,dx,!1)),Re(e,n),(Vb&Mb)!==jb&&e===Hb){if(lp)switch(t.tag){case 0:case 11:case 15:e=Ub&&T(Ub)||`Unknown`,nS.has(e)||(nS.add(e),t=T(t)||`Unknown`,console.error("Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render",t,e,e));break;case 1:tS||=(console.error("Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."),!0)}}else Dp&&We(e,t,n),Ll(t),e===Hb&&((Vb&Mb)===jb&&(lx|=n),sx===Rb&&Qc(e,Wb,dx,!1)),Rl(e)}function Yc(e,t,n){if((Vb&(Mb|Nb))!==jb)throw Error(`Should not already be working.`);if(Wb!==0&&Ub!==null){var r=Ub,i=hp();switch(X_){case Jb:case qb:var a=Z_;mg&&((r=r._debugTask)?r.run(console.timeStamp.bind(console,`Suspended`,a,i,hg,void 0,`primary-light`)):console.timeStamp(`Suspended`,a,i,hg,void 0,`primary-light`));break;case ex:a=Z_,mg&&((r=r._debugTask)?r.run(console.timeStamp.bind(console,`Action`,a,i,hg,void 0,`primary-light`)):console.timeStamp(`Action`,a,i,hg,void 0,`primary-light`));break;default:mg&&(r=i-Z_,3>r||console.timeStamp(`Blocked`,Z_,i,hg,void 0,5>r?`primary-light`:10>r?`primary`:100>r?`primary-dark`:`error`))}}a=(n=!n&&!(t&127)&&(t&e.expiredLanes)===0||Pe(e,t))?dl(e,t):ll(e,t,!0);var o=n;do{if(a===Pb){ix&&!n&&Qc(e,t,0,!1),t=tx,Z_=f_(),X_=t;break}if(r=hp(),i=e.current.alternate,o&&!Zc(i)){Kn(t),i=g_,a=r,!mg||a<=i||(Sx?Sx.run(console.timeStamp.bind(console,`Teared Render`,i,a,_g,gg,`error`)):console.timeStamp(`Teared Render`,i,a,_g,gg,`error`)),tl(t,r),a=ll(e,t,!1),o=!1;continue}if(a===Ib){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){Kn(t),nr(g_,r,t,Sx),tl(t,r),t=s;a:{r=e,a=o,o=px;var c=r.current.memoizedState.isDehydrated;if(c&&(nl(r,s).flags|=256),s=ll(r,s,!1),s!==Ib){if(ax&&!c){r.errorRecoveryDisabledLanes|=a,lx|=a,a=Rb;break a}r=mx,mx=o,r!==null&&(mx===null?mx=r:mx.push.apply(mx,r))}a=s}if(o=!1,a!==Ib)continue;r=hp()}}if(a===Fb){Kn(t),nr(g_,r,t,Sx),tl(t,r),nl(e,0),Qc(e,t,0,!0);break}a:{switch(n=e,a){case Pb:case Fb:throw Error(`Root did not complete. This is a bug in React.`);case Rb:if((t&4194048)!==t)break;case zb:Kn(t),$n(g_,r,t,Sx),tl(t,r),i=t,i&127?P_=r:i&4194048&&(G_=r),Qc(n,t,dx,!rx);break a;case Ib:mx=null;break;case Lb:case Bb:break;default:throw Error(`Unknown root exit status.`)}if(J.actQueue!==null)yl(n,i,t,mx,xx,hx,dx,lx,fx,a,null,null,g_,r);else{if((t&62914560)===t&&(o=gx+vx-hp(),10<o)){if(Qc(n,t,dx,!rx),Ne(n,0,!0)!==0)break a;Lx=t,n.timeoutHandle=ZS(Xc.bind(null,n,i,mx,xx,hx,t,dx,lx,fx,rx,a,`Throttled`,g_,r),o);break a}Xc(n,i,mx,xx,hx,t,dx,lx,fx,rx,a,null,g_,r)}}break}while(1);Rl(e)}function Xc(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.timeoutHandle=$S;var m=t.subtreeFlags,h=null;if((m&8192||(m&16785408)==16785408)&&(h={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:nn},Lc(t,a,h),m=(a&62914560)===a?gx-hp():(a&4194048)===a?_x-hp():0,m=zd(h,m),m!==null)){Lx=a,e.cancelPendingCommit=m(yl.bind(null,e,t,a,n,r,i,o,s,c,u,h,h.waitingForViewTransition?`Waiting for the previous Animation`:0<h.count?0<h.imgCount?`Suspended on CSS and Images`:`Suspended on CSS`:h.imgCount===1?`Suspended on an Image`:0<h.imgCount?`Suspended on Images`:null,f,p)),Qc(e,a,o,!l);return}yl(e,t,a,n,r,i,o,s,c,u,h,d,f,p)}function Zc(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(!Lh(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 Qc(e,t,n,r){t&=~ux,t&=~lx,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Op(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Be(e,n,t)}function $c(){return(Vb&(Mb|Nb))!==jb||(zl(0,!1),!1)}function el(){if(Ub!==null){if(tx===Gb)var e=Ub.return;else e=Ub,Gr(),wa(e),Bv=null,Vv=0,e=Ub;for(;e!==null;)Hs(e.alternate,e),e=e.return;Ub=null}}function tl(e,t){e&127&&(T_=t),e&4194048&&(F_=t),e&62914560&&(K_=t),e&2080374784&&(q_=t)}function nl(e,t){mg&&(console.timeStamp(`Blocking Track`,.003,.003,`Blocking`,gg,`primary-light`),console.timeStamp(`Transition Track`,.003,.003,`Transition`,gg,`primary-light`),console.timeStamp(`Suspense Track`,.003,.003,`Suspense`,gg,`primary-light`),console.timeStamp(`Idle Track`,.003,.003,`Idle`,gg,`primary-light`));var n=g_;if(g_=f_(),Wb!==0&&0<n){if(Kn(Wb),sx===Lb||sx===Rb)$n(n,g_,t,Sx);else{var r=g_,i=Sx;if(mg&&!(r<=n)){var a=(t&738197653)===t?`tertiary-dark`:`primary-dark`,o=(t&536870912)===t?`Prewarm`:(t&201326741)===t?`Interrupted Hydration`:`Interrupted Render`;i?i.run(console.timeStamp.bind(console,o,n,r,_g,gg,a)):console.timeStamp(o,n,r,_g,gg,a)}}tl(Wb,g_)}if(n=Sx,Sx=null,t&127){Sx=D_,i=0<=E_&&E_<T_?T_:E_,r=0<=j_&&j_<T_?T_:j_,a=0<=r?r:0<=i?i:g_,0<=P_?(Kn(2),er(P_,a,t,n)):J_&127&&(Kn(2),ar(T_,a,Y_)),n=i;var s=r,c=M_,l=0<N_,u=O_===m_,d=O_===h_;if(i=g_,r=D_,a=k_,o=A_,mg){if(_g=`Blocking`,0<n?n>i&&(n=i):n=i,0<s?s>n&&(s=n):s=n,c!==null&&n>s){var f=l?`secondary-light`:`warning`;r?r.run(console.timeStamp.bind(console,l?`Consecutive`:`Event: `+c,s,n,_g,gg,f)):console.timeStamp(l?`Consecutive`:`Event: `+c,s,n,_g,gg,f)}i>n&&(s=u?`error`:(t&738197653)===t?`tertiary-light`:`primary-light`,u=d?`Promise Resolved`:u?`Cascading Update`:5<i-n?`Update Blocked`:`Update`,d=[],o!=null&&d.push([`Component name`,o]),a!=null&&d.push([`Method name`,a]),n={start:n,end:i,detail:{devtools:{properties:d,track:_g,trackGroup:gg,color:s}}},r?r.run(performance.measure.bind(performance,u,n)):performance.measure(u,n))}E_=-1.1,O_=0,A_=k_=null,P_=-1.1,N_=j_,j_=-1.1,T_=f_()}if(t&4194048&&(Sx=z_,i=0<=I_&&I_<F_?F_:I_,n=0<=L_&&L_<F_?F_:L_,r=0<=H_&&H_<F_?F_:H_,a=0<=r?r:0<=n?n:g_,0<=G_?(Kn(256),er(G_,a,t,Sx)):J_&4194048&&(Kn(256),ar(F_,a,Y_)),d=r,s=U_,c=0<W_,l=R_===h_,a=g_,r=z_,o=B_,u=V_,mg&&(_g=`Transition`,0<n?n>a&&(n=a):n=a,0<i?i>n&&(i=n):i=n,0<d?d>i&&(d=i):d=i,i>d&&s!==null&&(f=c?`secondary-light`:`warning`,r?r.run(console.timeStamp.bind(console,c?`Consecutive`:`Event: `+s,d,i,_g,gg,f)):console.timeStamp(c?`Consecutive`:`Event: `+s,d,i,_g,gg,f)),n>i&&(r?r.run(console.timeStamp.bind(console,`Action`,i,n,_g,gg,`primary-dark`)):console.timeStamp(`Action`,i,n,_g,gg,`primary-dark`)),a>n&&(i=l?`Promise Resolved`:5<a-n?`Update Blocked`:`Update`,d=[],u!=null&&d.push([`Component name`,u]),o!=null&&d.push([`Method name`,o]),n={start:n,end:a,detail:{devtools:{properties:d,track:_g,trackGroup:gg,color:`primary-light`}}},r?r.run(performance.measure.bind(performance,i,n)):performance.measure(i,n))),L_=I_=-1.1,R_=0,G_=-1.1,W_=H_,H_=-1.1,F_=f_()),t&62914560&&J_&62914560&&(Kn(4194304),ar(K_,g_,Y_)),t&2080374784&&J_&2080374784&&(Kn(268435456),ar(q_,g_,Y_)),n=e.timeoutHandle,n!==$S&&(e.timeoutHandle=$S,QS(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),Lx=0,el(),Hb=e,Ub=n=yr(e.current,null),Wb=t,tx=Gb,nx=null,rx=!1,ix=Pe(e,t),ax=!1,sx=Pb,fx=dx=ux=lx=cx=0,mx=px=null,hx=!1,t&8&&(t|=t&32),r=e.entangledLanes,r!==0)for(e=e.entanglements,r&=t;0<r;)i=31-Op(r),a=1<<i,t|=e[i],r&=~a;return ox=t,or(),e=rg(),1e3<e-tg&&(J.recentlyCreatedOwnerStacks=0,tg=e),ov.discardPendingWarnings(),n}function rl(e,t){Q=null,J.H=Fy,J.getCurrentStack=null,lp=!1,cp=null,t===Pv||t===Iv?(t=Pi(),tx=Jb):t===Fv?(t=Pi(),tx=Yb):tx=t===rb?$b:typeof t==`object`&&t&&typeof t.then==`function`?Zb:Kb,nx=t;var n=Ub;n===null?(sx=Fb,es(e,F(t,e.current))):n.mode&Ng&&vi(n)}function il(){var e=oy.current;return e===null?!0:(Wb&4194048)===Wb?sy===null:(Wb&62914560)===Wb||Wb&536870912?e===sy:!1}function al(){var e=J.H;return J.H=Fy,e===null?Fy:e}function ol(){var e=J.A;return J.A=Db,e}function sl(e){Sx===null&&(Sx=e._debugTask==null?null:e._debugTask)}function cl(){sx=Rb,rx||(Wb&4194048)!==Wb&&oy.current!==null||(ix=!0),!(cx&134217727)&&!(lx&134217727)||Hb===null||Qc(Hb,Wb,dx,!1)}function ll(e,t,n){var r=Vb;Vb|=Mb;var i=al(),a=ol();if(Hb!==e||Wb!==t){if(Dp){var o=e.memoizedUpdaters;0<o.size&&(Fl(e,Wb),o.clear()),Ge(e,t)}xx=null,nl(e,t)}t=!1,o=sx;a:do try{if(tx!==Gb&&Ub!==null){var s=Ub,c=nx;switch(tx){case $b:el(),o=zb;break a;case Jb:case qb:case ex:case Zb:oy.current===null&&(t=!0);var l=tx;if(tx=Gb,nx=null,gl(e,s,c,l),n&&ix){o=Pb;break a}break;default:l=tx,tx=Gb,nx=null,gl(e,s,c,l)}}ul(),o=sx;break}catch(t){rl(e,t)}while(1);return t&&e.shellSuspendCounter++,Gr(),Vb=r,J.H=i,J.A=a,Ub===null&&(Hb=null,Wb=0,or()),o}function ul(){for(;Ub!==null;)pl(Ub)}function dl(e,t){var n=Vb;Vb|=Mb;var r=al(),i=ol();if(Hb!==e||Wb!==t){if(Dp){var a=e.memoizedUpdaters;0<a.size&&(Fl(e,Wb),a.clear()),Ge(e,t)}xx=null,yx=hp()+bx,nl(e,t)}else ix=Pe(e,t);a:do try{if(tx!==Gb&&Ub!==null)b:switch(t=Ub,a=nx,tx){case Kb:tx=Gb,nx=null,gl(e,t,a,Kb);break;case qb:case ex:if(ji(a)){tx=Gb,nx=null,ml(t);break}t=function(){tx!==qb&&tx!==ex||Hb!==e||(tx=Qb),Rl(e)},a.then(t,t);break a;case Jb:tx=Qb;break a;case Yb:tx=Xb;break a;case Qb:ji(a)?(tx=Gb,nx=null,ml(t)):(tx=Gb,nx=null,gl(e,t,a,Qb));break;case Xb:var o=null;switch(Ub.tag){case 26:o=Ub.memoizedState;case 5:case 27:var s=Ub;if(o?Ld(o):s.stateNode.complete){tx=Gb,nx=null;var c=s.sibling;if(c!==null)Ub=c;else{var l=s.return;l===null?Ub=null:(Ub=l,_l(l))}break b}break;default:console.error(`Unexpected type of fiber triggered a suspensey commit. This is a bug in React.`)}tx=Gb,nx=null,gl(e,t,a,Xb);break;case Zb:tx=Gb,nx=null,gl(e,t,a,Zb);break;case $b:el(),sx=zb;break a;default:throw Error(`Unexpected SuspendedReason. This is a bug in React.`)}J.actQueue===null?fl():ul();break}catch(t){rl(e,t)}while(1);return Gr(),J.H=r,J.A=i,Vb=n,Ub===null?(Hb=null,Wb=0,or(),sx):Pb}function fl(){for(;Ub!==null&&!pp();)pl(Ub)}function pl(e){var t=e.alternate;(e.mode&Ng)===Y?t=O(e,Ns,t,e,ox):(_i(e),t=O(e,Ns,t,e,ox),vi(e)),e.memoizedProps=e.pendingProps,t===null?_l(e):Ub=t}function ml(e){var t=O(e,hl,e);e.memoizedProps=e.pendingProps,t===null?_l(e):Ub=t}function hl(e){var t=e.alternate,n=(e.mode&Ng)!==Y;switch(n&&_i(e),e.tag){case 15:case 0:t=_s(t,e,e.pendingProps,e.type,void 0,Wb);break;case 11:t=_s(t,e,e.pendingProps,e.type.render,e.ref,Wb);break;case 5:wa(e);default:Hs(t,e),e=Ub=br(e,ox),t=Ns(t,e,ox)}return n&&vi(e),t}function gl(e,t,n,r){Gr(),wa(t),Bv=null,Vv=0;var i=t.return;try{if(as(e,i,t,n,Wb)){sx=Fb,es(e,F(n,e.current)),Ub=null;return}}catch(t){if(i!==null)throw Ub=i,t;sx=Fb,es(e,F(n,e.current)),Ub=null;return}t.flags&32768?(Xg||r===Kb?e=!0:ix||Wb&536870912?e=!1:(rx=e=!0,(r===qb||r===ex||r===Jb||r===Zb)&&(r=oy.current,r!==null&&r.tag===13&&(r.flags|=16384))),vl(t,e)):_l(t)}function _l(e){var t=e;do{if(t.flags&32768){vl(t,rx);return}var n=t.alternate;if(e=t.return,_i(t),n=O(t,Bs,n,t,ox),(t.mode&Ng)!==Y&&yi(t),n!==null){Ub=n;return}if(t=t.sibling,t!==null){Ub=t;return}Ub=t=e}while(t!==null);sx===Pb&&(sx=Bb)}function vl(e,t){do{var n=Vs(e.alternate,e);if(n!==null){n.flags&=32767,Ub=n;return}if((e.mode&Ng)!==Y){yi(e),n=e.actualDuration;for(var r=e.child;r!==null;)n+=r.actualDuration,r=r.sibling;e.actualDuration=n}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Ub=e;return}Ub=e=n}while(e!==null);sx=zb,Ub=null}function yl(e,t,n,r,i,a,o,s,c,l,u,d,f,p){e.cancelPendingCommit=null;do wl();while(Px!==Ox);if(ov.flushLegacyContextWarning(),ov.flushPendingUnsafeLifecycleWarnings(),(Vb&(Mb|Nb))!==jb)throw Error(`Should not already be working.`);if(Kn(n),l===Ib?nr(f,p,n,Sx):r===null?Qn(f,p,n,Sx):tr(f,p,n,r,t!==null&&t.alternate!==null&&t.alternate.memoizedState.isDehydrated&&!!(t.flags&256),Sx),t!==null){if(n===0&&console.error(`finishedLanes should not be empty during a commit. This is a bug in React.`),t===e.current)throw Error(`Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.`);if(a=t.lanes|t.childLanes,a|=Og,ze(e,n,a,o,s,c),e===Hb&&(Ub=Hb=null,Wb=0),Ix=t,Fx=e,Lx=n,Rx=a,Bx=i,Vx=r,zx=p,Hx=d,Ux=wx,Wx=null,t.actualDuration!==0||t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Il(yp,function(){return XS=window.event,Ux===wx&&(Ux=Ex),Tl(),null})):(e.callbackNode=null,e.callbackPriority=0),y_=null,__=f_(),d!==null&&rr(p,__,d,Sx),r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=J.T,J.T=null,i=Vf.p,Vf.p=Pp,o=Vb,Vb|=Nb;try{mc(e,t,n)}finally{Vb=o,Vf.p=i,J.T=r}}Px=kx,bl(),xl(),G()}}function bl(){if(Px===kx){Px=Ox;var e=Fx,t=Ix,n=Lx,r=!!(t.flags&13878);if(t.subtreeFlags&13878||r){r=J.T,J.T=null;var i=Vf.p;Vf.p=Pp;var a=Vb;Vb|=Nb;try{bb=n,xb=e,ui(),Cc(t,e),xb=bb=null,n=qS;var o=In(e.containerInfo),s=n.focusedElem,c=n.selectionRange;if(o!==s&&s&&s.ownerDocument&&Fn(s.ownerDocument.documentElement,s)){if(c!==null&&Ln(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 _=Pn(s,h),v=Pn(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}}LC=!!KS,qS=KS=null}finally{Vb=a,Vf.p=i,J.T=r}}e.current=t,Px=Ax}}function xl(){if(Px===Ax){Px=Ox;var e=Wx;if(e!==null){__=f_();var t=v_,n=__;!mg||n<=t||(Y_?Y_.run(console.timeStamp.bind(console,e,t,n,_g,gg,`secondary-light`)):console.timeStamp(e,t,n,_g,gg,`secondary-light`))}e=Fx,t=Ix,n=Lx;var r=!!(t.flags&8772);if(t.subtreeFlags&8772||r){r=J.T,J.T=null;var i=Vf.p;Vf.p=Pp;var a=Vb;Vb|=Nb;try{bb=n,xb=e,ui(),H(e,t.alternate,t),xb=bb=null}finally{Vb=a,Vf.p=i,J.T=r}}e=zx,t=Hx,v_=f_(),e=t===null?e:__,t=v_,n=Ux===Tx,r=Sx,y_===null?!mg||t<=e||(r?r.run(console.timeStamp.bind(console,n?`Commit Interrupted View Transition`:`Commit`,e,t,_g,gg,n?`error`:`secondary-dark`)):console.timeStamp(n?`Commit Interrupted View Transition`:`Commit`,e,t,_g,gg,n?`error`:`secondary-dark`)):ir(e,t,y_,!1,r),Px=jx}}function G(){if(Px===Mx||Px===jx){if(Px===Mx){var e=v_;v_=f_();var t=v_,n=Ux===Tx;!mg||t<=e||(Y_?Y_.run(console.timeStamp.bind(console,n?`Interrupted View Transition`:`Starting Animation`,e,t,_g,gg,n?`error`:`secondary-light`)):console.timeStamp(n?`Interrupted View Transition`:`Starting Animation`,e,t,_g,gg,n?` error`:`secondary-light`)),Ux!==Tx&&(Ux=Dx)}Px=Ox,mp(),e=Fx;var r=Ix;t=Lx,n=Vx;var i=r.actualDuration!==0||!!(r.subtreeFlags&10256)||!!(r.flags&10256);i?Px=Nx:(Px=Ox,Ix=Fx=null,Cl(e,e.pendingLanes),Zx=0,Qx=null);var a=e.pendingLanes;if(a===0&&(Cx=null),i||q(e),a=Ke(t),r=r.stateNode,Tp&&typeof Tp.onCommitFiberRoot==`function`)try{var o=(r.current.flags&128)==128;switch(a){case Pp:var s=_p;break;case Fp:s=vp;break;case Ip:s=yp;break;case Lp:s=xp;break;default:s=yp}Tp.onCommitFiberRoot(wp,r,s,o)}catch(e){Ep||(Ep=!0,console.error(`React instrumentation encountered an error: %o`,e))}if(Dp&&e.memoizedUpdaters.clear(),Wc(),n!==null){o=J.T,s=Vf.p,Vf.p=Pp,J.T=null;try{var c=e.onRecoverableError;for(r=0;r<n.length;r++){var l=n[r],u=Sl(l.stack);O(l.source,c,l.value,u)}}finally{J.T=o,Vf.p=s}}Lx&3&&wl(),Rl(e),a=e.pendingLanes,t&261930&&a&42?($_=!0,e===qx?Kx++:(Kx=0,qx=e)):Kx=0,i||tl(t,v_),zl(0,!1)}}function Sl(e){return e={componentStack:e},Object.defineProperty(e,"digest",{get:function(){console.error(`You are accessing "digest" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.`)}}),e}function Cl(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,ii(t)))}function wl(){return bl(),xl(),G(),Tl()}function Tl(){if(Px!==Nx)return!1;var e=Fx,t=Rx;Rx=0;var n=Ke(Lx),r=Ip===0||Ip>n?Ip:n;n=J.T;var i=Vf.p;try{Vf.p=r,J.T=null;var a=Bx;Bx=null,r=Fx;var o=Lx;if(Px=Ox,Ix=Fx=null,Lx=0,(Vb&(Mb|Nb))!==jb)throw Error(`Cannot flush passive effects while already rendering.`);Kn(o),Jx=!0,Yx=!1;var s=0;if(y_=null,s=hp(),Ux===Dx)ar(v_,s,Y_);else{var c=v_,l=s,u=Ux===Ex;!mg||l<=c||(Sx?Sx.run(console.timeStamp.bind(console,u?`Waiting for Paint`:`Waiting`,c,l,_g,gg,`secondary-light`)):console.timeStamp(u?`Waiting for Paint`:`Waiting`,c,l,_g,gg,`secondary-light`))}c=Vb,Vb|=Nb;var d=r.current;ui(),Bc(d);var f=r.current;d=zx,ui(),Mc(r,f,o,a,d),q(r),Vb=c;var p=hp();if(f=s,d=Sx,y_===null?!mg||p<=f||(d?d.run(console.timeStamp.bind(console,`Remaining Effects`,f,p,_g,gg,`secondary-dark`)):console.timeStamp(`Remaining Effects`,f,p,_g,gg,`secondary-dark`)):ir(f,p,y_,!0,d),tl(o,p),zl(0,!1),Yx?r===Qx?Zx++:(Zx=0,Qx=r):Zx=0,Yx=Jx=!1,Tp&&typeof Tp.onPostCommitFiberRoot==`function`)try{Tp.onPostCommitFiberRoot(wp,r)}catch(e){Ep||(Ep=!0,console.error(`React instrumentation encountered an error: %o`,e))}var m=r.current.stateNode;return m.effectDuration=0,m.passiveEffectDuration=0,!0}finally{Vf.p=i,J.T=n,Cl(e,t)}}function El(e,t,n){t=F(n,t),xi(t),t=ns(e.stateNode,t,2),e=Qi(e,t,2),e!==null&&(Re(e,2),Rl(e))}function Dl(e,t,n){if($x=!1,e.tag===3)El(e,e,n);else{for(;t!==null;){if(t.tag===3){El(t,e,n);return}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(Cx===null||!Cx.has(r))){e=F(n,e),xi(e),n=rs(2),r=Qi(t,n,2),r!==null&&(is(n,r,t,e),Re(r,2),Rl(r));return}}t=t.return}console.error(`Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.
159
+
160
+ Error message:
161
+
162
+ %s`,n)}}function Ol(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Ab;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)||(ax=!0,i.add(n),r=kl.bind(null,e,t,n),Dp&&Fl(e,n),t.then(r,r))}function kl(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,n&127?0>E_&&(T_=E_=f_(),D_=p_(`Promise Resolved`),O_=h_):n&4194048&&0>L_&&(F_=L_=f_(),z_=p_(`Promise Resolved`),R_=h_),Gc()&&J.actQueue===null&&console.error(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...).
163
+
164
+ When testing, code that resolves suspended data should be wrapped into act(...):
165
+
166
+ act(() => {
167
+ /* finish loading suspended data */
168
+ });
169
+ /* assert on the output */
170
+
171
+ This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`),Hb===e&&(Wb&n)===n&&(sx===Rb||sx===Lb&&(Wb&62914560)===Wb&&hp()-gx<vx?(Vb&Mb)===jb&&nl(e,0):ux|=n,fx===Wb&&(fx=0)),Rl(e)}function Al(e,t){t===0&&(t=Ie()),e=lr(e,t),e!==null&&(Re(e,t),Rl(e))}function jl(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Al(e,n)}function Ml(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(`Pinged unknown suspense boundary type. This is probably a bug in React.`)}r!==null&&r.delete(t),Al(e,n)}function K(e,t,n){if(t.subtreeFlags&67117056)for(t=t.child;t!==null;){var r=e,i=t,a=i.type===Df;a=n||a,i.tag===22?i.memoizedState===null&&(a&&i.flags&8192?O(i,Nl,r,i):i.subtreeFlags&67108864&&O(i,K,r,i,a)):i.flags&67108864?a&&O(i,Nl,r,i):K(r,i,a),t=t.sibling}}function Nl(e,t){Ae(!0);try{Ec(t),Hc(t),Oc(e,t.alternate,t,!1),Pc(e,t,0,null,!1,0)}finally{Ae(!1)}}function q(e){var t=!0;e.current.mode&(Pg|Fg)||(t=!1),K(e,e.current,t)}function Pl(e){if((Vb&Mb)===jb){var t=e.tag;if(t===3||t===1||t===0||t===11||t===14||t===15){if(t=T(e)||`ReactComponent`,eS!==null){if(eS.has(t))return;eS.add(t)}else eS=new Set([t]);O(e,function(){console.error(`Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously tries to update the component. Move this work to useEffect instead.`)})}}}function Fl(e,t){Dp&&e.memoizedUpdaters.forEach(function(n){We(e,n,t)})}function Il(e,t){var n=J.actQueue;return n===null?dp(e,t):(n.push(t),rS)}function Ll(e){Gc()&&J.actQueue===null&&O(e,function(){console.error(`An update to %s inside a test was not wrapped in act(...).
172
+
173
+ When testing, code that causes React state updates should be wrapped into act(...):
174
+
175
+ act(() => {
176
+ /* fire events that update state */
177
+ });
178
+ /* assert on the output */
179
+
180
+ This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`,T(e))})}function Rl(e){e!==aS&&e.next===null&&(aS===null?iS=aS=e:aS=aS.next=e),cS=!0,J.actQueue===null?oS||(oS=!0,Kl()):sS||(sS=!0,Kl())}function zl(e,t){if(!lS&&cS){lS=!0;do for(var n=!1,r=iS;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-Op(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,Wl(r,a))}else a=Wb,a=Ne(r,r===Hb?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==$S),!(a&3)||Pe(r,a)||(n=!0,Wl(r,a))}r=r.next}while(n);lS=!1}}function Bl(){XS=window.event,Vl()}function Vl(){cS=sS=oS=!1;var e=0;uS!==0&&Fu()&&(e=uS);for(var t=hp(),n=null,r=iS;r!==null;){var i=r.next,a=Hl(r,t);a===0?(r.next=null,n===null?iS=i:n.next=i,i===null&&(aS=n)):(n=r,(e!==0||a&3)&&(cS=!0)),r=i}Px!==Ox&&Px!==Nx||zl(e,!1),uS!==0&&(uS=0)}function Hl(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Op(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=Fe(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Hb,n=Wb,n=Ne(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==$S),r=e.callbackNode,n===0||e===t&&(tx===qb||tx===ex)||e.cancelPendingCommit!==null)return r!==null&&Gl(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Pe(e,n)){if(t=n&-n,t!==e.callbackPriority||J.actQueue!==null&&r!==dS)Gl(r);else return t;switch(Ke(n)){case Pp:case Fp:n=vp;break;case Ip:n=yp;break;case Lp:n=xp;break;default:n=yp}return r=Ul.bind(null,e),J.actQueue===null?n=dp(n,r):(J.actQueue.push(r),n=dS),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&Gl(r),e.callbackPriority=2,e.callbackNode=null,2}function Ul(e,t){if($_=Q_=!1,XS=window.event,Px!==Ox&&Px!==Nx)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Ux===wx&&(Ux=Ex),wl()&&e.callbackNode!==n)return null;var r=Wb;return r=Ne(e,e===Hb?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==$S),r===0?null:(Yc(e,r,t),Hl(e,hp()),e.callbackNode!=null&&e.callbackNode===n?Ul.bind(null,e):null)}function Wl(e,t){if(wl())return null;Q_=$_,$_=!1,Yc(e,t,!0)}function Gl(e){e!==dS&&e!==null&&fp(e)}function Kl(){J.actQueue!==null&&J.actQueue.push(function(){return Vl(),null}),tC(function(){(Vb&(Mb|Nb))===jb?Vl():dp(_p,Bl)})}function ql(){if(uS===0){var e=nv;e===0&&(e=jp,jp<<=1,!(jp&261888)&&(jp=256)),uS=e}return uS}function Jl(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:(k(e,`action`),tn(``+e))}function Yl(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 Xl(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=Jl((i[Bp]||null).action),o=r.submitter;o&&(t=(t=o[Bp]||null)?Jl(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new eh(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(uS!==0){var e=o?Yl(i,o):new FormData(i),t={pending:!0,data:e,method:i.method,action:a};Object.freeze(t),ko(n,t,null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?Yl(i,o):new FormData(i),t={pending:!0,data:e,method:i.method,action:a},Object.freeze(t),ko(n,t,a,e))},currentTarget:i}]})}}function Zl(e,t,n){e.currentTarget=n;try{t(e)}catch(e){ag(e)}e.currentTarget=null}function Ql(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n];a:{var i=void 0,a=r.event;if(r=r.listeners,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!==i&&a.isPropagationStopped())break a;c===null?Zl(a,s,l):O(c,Zl,a,s,l),i=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==i&&a.isPropagationStopped())break a;c===null?Zl(a,s,l):O(c,Zl,a,s,l),i=c}}}}function $l(e,t){pS.has(e)||console.error(`Did not expect a listenToNonDelegatedEvent() call for "%s". This is a bug in React. Please file an issue.`,e);var n=t[Hp];n===void 0&&(n=t[Hp]=new Set);var r=e+`__bubble`;n.has(r)||(nu(t,e,2,!1),n.add(r))}function eu(e,t,n){pS.has(e)&&!t&&console.error(`Did not expect a listenToNativeEvent() call for "%s" in the bubble phase. This is a bug in React. Please file an issue.`,e);var r=0;t&&(r|=4),nu(n,e,r,t)}function tu(e){if(!e[mS]){e[mS]=!0,qp.forEach(function(t){t!==`selectionchange`&&(pS.has(t)||eu(t,!1,e),eu(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[mS]||(t[mS]=!0,eu(`selectionchange`,!1,t))}}function nu(e,t,n,r){switch(rf(t)){case Pp:var i=Qd;break;case Fp:i=$d;break;default:i=ef}n=i.bind(null,t,n,e),i=void 0,!Jm||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 ru(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&o.stateNode.containerInfo===i)return;o=o.return}for(;s!==null;){if(o=Xe(s),o===null)return;if(c=o.tag,c===5||c===6||c===26||c===27){r=a=o;continue a}s=s.parentNode}}r=r.return}on(function(){var r=a,i=rn(n),o=[];a:{var s=$h.get(e);if(s!==void 0){var c=eh,l=e;switch(e){case`keypress`:if(ln(n)===0)break a;case`keydown`:case`keyup`:c=_h;break;case`focusin`:l=`focus`,c=lh;break;case`focusout`:l=`blur`,c=lh;break;case`beforeblur`:case`afterblur`:c=lh;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`:c=sh;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:c=ch;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:c=yh;break;case Kh:case qh:case Jh:c=uh;break;case Qh:c=bh;break;case`scroll`:case`scrollend`:c=nh;break;case`wheel`:c=xh;break;case`copy`:case`cut`:case`paste`:c=dh;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:c=vh;break;case`toggle`:case`beforetoggle`:c=Sh}var u=!!(t&4),d=!u&&(e===`scroll`||e===`scrollend`),f=u?s===null?null:s+`Capture`:s;u=[];for(var p=r,m;p!==null;){var h=p;if(m=h.stateNode,h=h.tag,h!==5&&h!==26&&h!==27||m===null||f===null||(h=sn(p,f),h!=null&&u.push(iu(p,h,m))),d)break;p=p.return}0<u.length&&(s=new c(s,l,null,n,i),o.push({event:s,listeners:u}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,c=e===`mouseout`||e===`pointerout`,s&&n!==Um&&(l=n.relatedTarget||n.fromElement)&&(Xe(l)||l[Vp]))break a;if((c||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,c?(l=n.relatedTarget||n.toElement,c=r,l=l?Xe(l):null,l!==null&&(d=x(l),u=l.tag,l!==d||u!==5&&u!==27&&u!==6)&&(l=null)):(c=null,l=r),c!==l)){if(u=sh,h=`onMouseLeave`,f=`onMouseEnter`,p=`mouse`,(e===`pointerout`||e===`pointerover`)&&(u=vh,h=`onPointerLeave`,f=`onPointerEnter`,p=`pointer`),d=c==null?s:Qe(c),m=l==null?s:Qe(l),s=new u(h,p+`leave`,c,n,i),s.target=d,s.relatedTarget=m,h=null,Xe(i)===r&&(u=new u(f,p+`enter`,l,n,i),u.target=m,u.relatedTarget=d,h=u),d=h,c&&l)b:{for(u=ou,f=c,p=l,m=0,h=f;h;h=u(h))m++;h=0;for(var g=p;g;g=u(g))h++;for(;0<m-h;)f=u(f),m--;for(;0<h-m;)p=u(p),h--;for(;m--;){if(f===p||p!==null&&f===p.alternate){u=f;break b}f=u(f),p=u(p)}u=null}else u=null;c!==null&&su(o,s,c,u,!1),l!==null&&d!==null&&su(o,d,l,u,!0)}}a:{if(s=r?Qe(r):window,c=s.nodeName&&s.nodeName.toLowerCase(),c===`select`||c===`input`&&s.type===`file`)var _=wn;else if(yn(s)){if(Ih)_=An;else{_=On;var v=Dn}}else c=s.nodeName,!c||c.toLowerCase()!==`input`||s.type!==`checkbox`&&s.type!==`radio`?r&&Yt(r.elementType)&&(_=wn):_=kn;if(_&&=_(e,r)){xn(o,_,n,i);break a}v&&v(e,s,r),e===`focusout`&&r&&s.type===`number`&&r.memoizedProps.value!=null&&_t(s,`number`,s.value)}switch(v=r?Qe(r):window,e){case`focusin`:(yn(v)||v.contentEditable===`true`)&&(zh=v,Bh=r,Vh=null);break;case`focusout`:Vh=Bh=zh=null;break;case`mousedown`:Hh=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Hh=!1,Rn(o,n,i);break;case`selectionchange`:if(Rh)break;case`keydown`:case`keyup`:Rn(o,n,i)}var y;if(Th)b:{switch(e){case`compositionstart`:var b=`onCompositionStart`;break b;case`compositionend`:b=`onCompositionEnd`;break b;case`compositionupdate`:b=`onCompositionUpdate`;break b}b=void 0}else Mh?hn(e,n)&&(b=`onCompositionEnd`):e===`keydown`&&n.keyCode===wh&&(b=`onCompositionStart`);b&&(Oh&&n.locale!==`ko`&&(Mh||b!==`onCompositionStart`?b===`onCompositionEnd`&&Mh&&(y=cn()):(Xm=i,Zm=`value`in Xm?Xm.value:Xm.textContent,Mh=!0)),v=au(r,b),0<v.length&&(b=new fh(b,e,null,n,i),o.push({event:b,listeners:v}),y?b.data=y:(y=gn(n),y!==null&&(b.data=y)))),(y=Dh?_n(e,n):vn(e,n))&&(b=au(r,`onBeforeInput`),0<b.length&&(v=new ph(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:v,listeners:b}),v.data=y)),Xl(o,e,r,n,i)}Ql(o,t)})}function iu(e,t,n){return{instance:e,listener:t,currentTarget:n}}function au(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=sn(e,n),i!=null&&r.unshift(iu(e,i,a)),i=sn(e,t),i!=null&&r.push(iu(e,i,a))),e.tag===3)return r;e=e.return}return[]}function ou(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function su(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=sn(n,a),l!=null&&o.unshift(iu(n,l,c))):i||(l=sn(n,a),l!=null&&o.push(iu(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}function cu(e,t){Qt(e,t),e!==`input`&&e!==`textarea`&&e!==`select`||t==null||t.value!==null||Im||(Im=!0,e===`select`&&t.multiple?console.error("`value` prop on `%s` should not be null. Consider using an empty array when `multiple` is set to `true` to clear the component or `undefined` for uncontrolled components.",e):console.error("`value` prop on `%s` should not be null. Consider using an empty string to clear the component or `undefined` for uncontrolled components.",e));var n={registrationNameDependencies:Jp,possibleRegistrationNames:Yp};Yt(e)||typeof t.is==`string`||en(e,t,n),t.contentEditable&&!t.suppressContentEditableWarning&&t.children!=null&&console.error("A component is `contentEditable` and contains `children` managed by React. It is now your responsibility to guarantee that none of those nodes are unexpectedly modified or duplicated. This is probably not intentional.")}function lu(e,t,n,r){t!==n&&(n=pu(n),pu(t)!==n&&(r[e]=t))}function uu(e,t,n){t.forEach(function(t){n[yu(t)]=t===`style`?bu(e):e.getAttribute(t)})}function du(e,t){!1===t?console.error("Expected `%s` listener to be a function, instead got `false`.\n\nIf you used to conditionally omit it with %s={condition && value}, pass %s={condition ? value : undefined} instead.",e,e,e):console.error("Expected `%s` listener to be a function, instead got a value of `%s` type.",e,typeof t)}function fu(e,t){return e=e.namespaceURI===Om||e.namespaceURI===km?e.ownerDocument.createElementNS(e.namespaceURI,e.tagName):e.ownerDocument.createElement(e.tagName),e.innerHTML=t,e.innerHTML}function pu(e){return Te(e)&&(console.error(`The provided HTML markup uses a value of unsupported type %s. This value must be coerced to a string before using it here.`,we(e)),Ee(e)),(typeof e==`string`?e:``+e).replace(CS,`
181
+ `).replace(wS,``)}function mu(e,t){return t=pu(t),pu(e)===t}function hu(e,t,n,r,i,a){switch(n){case`children`:typeof r==`string`?(Wt(r,t,!1),t===`body`||t===`textarea`&&r===``||Gt(e,r)):(typeof r==`number`||typeof r==`bigint`)&&(Wt(``+r,t,!1),t!==`body`&&Gt(e,``+r));break;case`className`:at(e,`class`,r);break;case`tabIndex`:at(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:at(e,n,r);break;case`style`:Jt(e,r,a);break;case`data`:if(t!==`object`){at(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){console.error(n===`src`?`An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.`:`An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.`,n,n),e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}k(r,n),r=tn(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(r!=null&&(t===`form`?n===`formAction`?console.error(`You can only pass the formAction prop to <input> or <button>. Use the action prop on <form>.`):typeof r==`function`&&(i.encType==null&&i.method==null||bS||(bS=!0,console.error(`Cannot specify a encType or method for a form that specifies a function as the action. React provides those automatically. They will get overridden.`)),i.target==null||yS||(yS=!0,console.error(`Cannot specify a target for a form that specifies a function as the action. The function will always be executed in the same window.`))):t===`input`||t===`button`?n===`action`?console.error(`You can only pass the action prop to <form>. Use the formAction prop on <input> or <button>.`):t!==`input`||i.type===`submit`||i.type===`image`||_S?t!==`button`||i.type==null||i.type===`submit`||_S?typeof r==`function`&&(i.name==null||vS||(vS=!0,console.error(`Cannot specify a "name" prop for a button that specifies a function as a formAction. React needs it to encode which action should be invoked. It will get overridden.`)),i.formEncType==null&&i.formMethod==null||bS||(bS=!0,console.error(`Cannot specify a formEncType or formMethod for a button that specifies a function as a formAction. React provides those automatically. They will get overridden.`)),i.formTarget==null||yS||(yS=!0,console.error(`Cannot specify a formTarget for a button that specifies a function as a formAction. The function will always be executed in the same window.`))):(_S=!0,console.error(`A button can only specify a formAction along with type="submit" or no type.`)):(_S=!0,console.error(`An input can only specify a formAction along with type="submit" or type="image".`)):console.error(n===`action`?`You can only pass the action prop to <form>.`:`You can only pass the formAction prop to <input> or <button>.`)),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}if(typeof a==`function`&&(n===`formAction`?(t!==`input`&&hu(e,t,`name`,i.name,i,null),hu(e,t,`formEncType`,i.formEncType,i,null),hu(e,t,`formMethod`,i.formMethod,i,null),hu(e,t,`formTarget`,i.formTarget,i,null)):(hu(e,t,`encType`,i.encType,i,null),hu(e,t,`method`,i.method,i,null),hu(e,t,`target`,i.target,i,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}k(r,n),r=tn(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(typeof r!=`function`&&du(n,r),e.onclick=nn);break;case`onScroll`:r!=null&&(typeof r!=`function`&&du(n,r),$l(`scroll`,e));break;case`onScrollEnd`:r!=null&&(typeof r!=`function`&&du(n,r),$l(`scrollend`,e));break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.");if(n=r.__html,n!=null){if(i.children!=null)throw Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");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}k(r,n),n=tn(``+r),e.setAttributeNS(TS,`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`?(k(r,n),e.setAttribute(n,``+r)):e.removeAttribute(n);break;case`inert`:r!==``||SS[n]||(SS[n]=!0,console.error("Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",n));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`?(k(r,n),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?(k(r,n),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):(k(r,n),e.setAttribute(n,r));break;case`popover`:$l(`beforetoggle`,e),$l(`toggle`,e),it(e,`popover`,r);break;case`xlinkActuate`:ot(e,TS,`xlink:actuate`,r);break;case`xlinkArcrole`:ot(e,TS,`xlink:arcrole`,r);break;case`xlinkRole`:ot(e,TS,`xlink:role`,r);break;case`xlinkShow`:ot(e,TS,`xlink:show`,r);break;case`xlinkTitle`:ot(e,TS,`xlink:title`,r);break;case`xlinkType`:ot(e,TS,`xlink:type`,r);break;case`xmlBase`:ot(e,ES,`xml:base`,r);break;case`xmlLang`:ot(e,ES,`xml:lang`,r);break;case`xmlSpace`:ot(e,ES,`xml:space`,r);break;case`is`:a!=null&&console.error(`Cannot update the "is" prop after it has been initialized.`),it(e,`is`,r);break;case`innerText`:case`textContent`:break;case`popoverTarget`:xS||typeof r!=`object`||!r||(xS=!0,console.error("The `popoverTarget` prop expects the ID of an Element as a string. Received %s instead.",r));default:!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`?(n=Xt(n),it(e,n,r)):Jp.hasOwnProperty(n)&&r!=null&&typeof r!=`function`&&du(n,r)}}function gu(e,t,n,r,i,a){switch(n){case`style`:Jt(e,r,a);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error("`props.dangerouslySetInnerHTML` must be in the form `{__html: ...}`. Please visit https://react.dev/link/dangerously-set-inner-html for more information.");if(n=r.__html,n!=null){if(i.children!=null)throw Error("Can only set one of `children` or `props.dangerouslySetInnerHTML`.");e.innerHTML=n}}break;case`children`:typeof r==`string`?Gt(e,r):(typeof r==`number`||typeof r==`bigint`)&&Gt(e,``+r);break;case`onScroll`:r!=null&&(typeof r!=`function`&&du(n,r),$l(`scroll`,e));break;case`onScrollEnd`:r!=null&&(typeof r!=`function`&&du(n,r),$l(`scrollend`,e));break;case`onClick`:r!=null&&(typeof r!=`function`&&du(n,r),e.onclick=nn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(Jp.hasOwnProperty(n))r!=null&&typeof r!=`function`&&du(n,r);else a:{if(n[0]===`o`&&n[1]===`n`&&(i=n.endsWith(`Capture`),t=n.slice(2,i?n.length-7:void 0),a=e[Bp]||null,a=a==null?null:a[n],typeof a==`function`&&e.removeEventListener(t,a,i),typeof r==`function`)){typeof a!=`function`&&a!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,i);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):it(e,n,r)}}}function _u(e,t,n){switch(cu(t,n),t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:$l(`error`,e),$l(`load`,e);var r=!1,i=!1,a;for(a in n)if(n.hasOwnProperty(a)){var o=n[a];if(o!=null)switch(a){case`src`:r=!0;break;case`srcSet`:i=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");default:hu(e,t,a,o,n,null)}}i&&hu(e,t,`srcSet`,n.srcSet,n,null),r&&hu(e,t,`src`,n.src,n,null);return;case`input`:tt(`input`,n),$l(`invalid`,e);var s=a=o=i=null,c=null,l=null;for(r in n)if(n.hasOwnProperty(r)){var u=n[r];if(u!=null)switch(r){case`name`:i=u;break;case`type`:o=u;break;case`checked`:c=u;break;case`defaultChecked`:l=u;break;case`value`:a=u;break;case`defaultValue`:s=u;break;case`children`:case`dangerouslySetInnerHTML`:if(u!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:hu(e,t,r,u,n,null)}}mt(e,n),gt(e,a,s,c,l,o,i,!1);return;case`select`:for(i in tt(`select`,n),$l(`invalid`,e),r=o=a=null,n)if(n.hasOwnProperty(i)&&(s=n[i],s!=null))switch(i){case`value`:a=s;break;case`defaultValue`:o=s;break;case`multiple`:r=s;default:hu(e,t,i,s,n,null)}xt(e,n),t=a,n=o,e.multiple=!!r,t==null?n!=null&&bt(e,!!r,n,!0):bt(e,!!r,t,!1);return;case`textarea`:for(o in tt(`textarea`,n),$l(`invalid`,e),a=i=r=null,n)if(n.hasOwnProperty(o)&&(s=n[o],s!=null))switch(o){case`value`:r=s;break;case`defaultValue`:i=s;break;case`children`:a=s;break;case`dangerouslySetInnerHTML`:if(s!=null)throw Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");break;default:hu(e,t,o,s,n,null)}St(e,n),wt(e,r,i,a);return;case`option`:for(c in vt(e,n),n)if(n.hasOwnProperty(c)&&(r=n[c],r!=null))switch(c){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:hu(e,t,c,r,n,null)}return;case`dialog`:$l(`beforetoggle`,e),$l(`toggle`,e),$l(`cancel`,e),$l(`close`,e);break;case`iframe`:case`object`:$l(`load`,e);break;case`video`:case`audio`:for(r=0;r<fS.length;r++)$l(fS[r],e);break;case`image`:$l(`error`,e),$l(`load`,e);break;case`details`:$l(`toggle`,e);break;case`embed`:case`source`:case`link`:$l(`error`,e),$l(`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(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`children`:case`dangerouslySetInnerHTML`:throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");default:hu(e,t,l,r,n,null)}return;default:if(Yt(t)){for(u in n)n.hasOwnProperty(u)&&(r=n[u],r!==void 0&&gu(e,t,u,r,n,void 0));return}}for(s in n)n.hasOwnProperty(s)&&(r=n[s],r!=null&&hu(e,t,s,r,n,null))}function vu(e,t,n,r){switch(cu(t,r),t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var i=null,a=null,o=null,s=null,c=null,l=null,u=null;for(p in n){var d=n[p];if(n.hasOwnProperty(p)&&d!=null)switch(p){case`checked`:break;case`value`:break;case`defaultValue`:c=d;default:r.hasOwnProperty(p)||hu(e,t,p,null,r,d)}}for(var f in r){var p=r[f];if(d=n[f],r.hasOwnProperty(f)&&(p!=null||d!=null))switch(f){case`type`:a=p;break;case`name`:i=p;break;case`checked`:l=p;break;case`defaultChecked`:u=p;break;case`value`:o=p;break;case`defaultValue`:s=p;break;case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:p!==d&&hu(e,t,f,p,r,d)}}t=n.type===`checkbox`||n.type===`radio`?n.checked!=null:n.value!=null,r=r.type===`checkbox`||r.type===`radio`?r.checked!=null:r.value!=null,t||!r||gS||(console.error(`A component is changing an uncontrolled input to be controlled. This is likely caused by the value changing from undefined to a defined value, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components`),gS=!0),!t||r||hS||(console.error(`A component is changing a controlled input to be uncontrolled. This is likely caused by the value changing from a defined to undefined, which should not happen. Decide between using a controlled or uncontrolled input element for the lifetime of the component. More info: https://react.dev/link/controlled-components`),hS=!0),ht(e,o,s,c,l,u,a,i);return;case`select`:for(a in p=o=s=f=null,n)if(c=n[a],n.hasOwnProperty(a)&&c!=null)switch(a){case`value`:break;case`multiple`:p=c;default:r.hasOwnProperty(a)||hu(e,t,a,null,r,c)}for(i in r)if(a=r[i],c=n[i],r.hasOwnProperty(i)&&(a!=null||c!=null))switch(i){case`value`:f=a;break;case`defaultValue`:s=a;break;case`multiple`:o=a;default:a!==c&&hu(e,t,i,a,r,c)}r=s,t=o,n=p,f==null?!!n!=!!t&&(r==null?bt(e,!!t,t?[]:``,!1):bt(e,!!t,r,!0)):bt(e,!!t,f,!1);return;case`textarea`:for(s in p=f=null,n)if(i=n[s],n.hasOwnProperty(s)&&i!=null&&!r.hasOwnProperty(s))switch(s){case`value`:break;case`children`:break;default:hu(e,t,s,null,r,i)}for(o in r)if(i=r[o],a=n[o],r.hasOwnProperty(o)&&(i!=null||a!=null))switch(o){case`value`:f=i;break;case`defaultValue`:p=i;break;case`children`:break;case`dangerouslySetInnerHTML`:if(i!=null)throw Error("`dangerouslySetInnerHTML` does not make sense on <textarea>.");break;default:i!==a&&hu(e,t,o,i,r,a)}Ct(e,f,p);return;case`option`:for(var m in n)if(f=n[m],n.hasOwnProperty(m)&&f!=null&&!r.hasOwnProperty(m))switch(m){case`selected`:e.selected=!1;break;default:hu(e,t,m,null,r,f)}for(c in r)if(f=r[c],p=n[c],r.hasOwnProperty(c)&&f!==p&&(f!=null||p!=null))switch(c){case`selected`:e.selected=f&&typeof f!=`function`&&typeof f!=`symbol`;break;default:hu(e,t,c,f,r,p)}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 h in n)f=n[h],n.hasOwnProperty(h)&&f!=null&&!r.hasOwnProperty(h)&&hu(e,t,h,null,r,f);for(l in r)if(f=r[l],p=n[l],r.hasOwnProperty(l)&&f!==p&&(f!=null||p!=null))switch(l){case`children`:case`dangerouslySetInnerHTML`:if(f!=null)throw Error(t+" is a void element tag and must neither have `children` nor use `dangerouslySetInnerHTML`.");break;default:hu(e,t,l,f,r,p)}return;default:if(Yt(t)){for(var g in n)f=n[g],n.hasOwnProperty(g)&&f!==void 0&&!r.hasOwnProperty(g)&&gu(e,t,g,void 0,r,f);for(u in r)f=r[u],p=n[u],!r.hasOwnProperty(u)||f===p||f===void 0&&p===void 0||gu(e,t,u,f,r,p);return}}for(var _ in n)f=n[_],n.hasOwnProperty(_)&&f!=null&&!r.hasOwnProperty(_)&&hu(e,t,_,null,r,f);for(d in r)f=r[d],p=n[d],!r.hasOwnProperty(d)||f===p||f==null&&p==null||hu(e,t,d,f,r,p)}function yu(e){switch(e){case`class`:return`className`;case`for`:return`htmlFor`;default:return e}}function bu(e){var t={};e=e.style;for(var n=0;n<e.length;n++){var r=e[n];t[r]=e.getPropertyValue(r)}return t}function xu(e,t,n){if(t!=null&&typeof t!=`object`)console.error("The `style` prop expects a mapping from style properties to values, not a string. For example, style={{marginRight: spacing + 'em'}} when using JSX.");else{var r,i=r=``,a;for(a in t)if(t.hasOwnProperty(a)){var o=t[a];o!=null&&typeof o!=`boolean`&&o!==``&&(a.indexOf(`--`)===0?(De(o,a),r+=i+a+`:`+(``+o).trim()):typeof o!=`number`||o===0||Dm.has(a)?(De(o,a),r+=i+a.replace(_m,`-$1`).toLowerCase().replace(vm,`-ms-`)+`:`+(``+o).trim()):r+=i+a.replace(_m,`-$1`).toLowerCase().replace(vm,`-ms-`)+`:`+o+`px`,i=`;`)}r||=null,t=e.getAttribute(`style`),t!==r&&(r=pu(r),pu(t)!==r&&(n.style=bu(e)))}}function Su(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(k(r,t),e===``+r)return}lu(t,e,r,a)}function Cu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null){switch(typeof r){case`function`:case`symbol`:return}if(!r)return}else switch(typeof r){case`function`:case`symbol`:break;default:if(r)return}lu(t,e,r,a)}function wu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:break;default:if(k(r,n),e===``+r)return}lu(t,e,r,a)}function Tu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return;default:if(isNaN(r))return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(!isNaN(r)&&(k(r,t),e===``+r))return}lu(t,e,r,a)}function Eu(e,t,n,r,i,a){if(i.delete(n),e=e.getAttribute(n),e===null)switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:return}else if(r!=null)switch(typeof r){case`function`:case`symbol`:case`boolean`:break;default:if(k(r,t),n=tn(``+r),e===n)return}lu(t,e,r,a)}function Du(e,t,n,r){for(var i={},a=new Set,o=e.attributes,s=0;s<o.length;s++)switch(o[s].name.toLowerCase()){case`value`:break;case`checked`:break;case`selected`:break;default:a.add(o[s].name)}if(Yt(t)){for(var c in n)if(n.hasOwnProperty(c)){var l=n[c];if(l!=null){if(Jp.hasOwnProperty(c))typeof l!=`function`&&du(c,l);else if(!0!==n.suppressHydrationWarning)switch(c){case`children`:typeof l!=`string`&&typeof l!=`number`||lu(`children`,e.textContent,l,i);continue;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:continue;case`dangerouslySetInnerHTML`:o=e.innerHTML,l=l?l.__html:void 0,l!=null&&(l=fu(e,l),lu(c,o,l,i));continue;case`style`:a.delete(c),xu(e,l,i);continue;case`offsetParent`:case`offsetTop`:case`offsetLeft`:case`offsetWidth`:case`offsetHeight`:case`isContentEditable`:case`outerText`:case`outerHTML`:a.delete(c.toLowerCase()),console.error("Assignment to read-only property will result in a no-op: `%s`",c);continue;case`className`:a.delete(`class`),o=rt(e,`class`,l),lu(`className`,o,l,i);continue;default:r.context===US&&t!==`svg`&&t!==`math`?a.delete(c.toLowerCase()):a.delete(c),o=rt(e,c,l),lu(c,o,l,i)}}}}else for(l in n)if(n.hasOwnProperty(l)&&(c=n[l],c!=null)){if(Jp.hasOwnProperty(l))typeof c!=`function`&&du(l,c);else if(!0!==n.suppressHydrationWarning)switch(l){case`children`:typeof c!=`string`&&typeof c!=`number`||lu(`children`,e.textContent,c,i);continue;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`value`:case`checked`:case`selected`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:continue;case`dangerouslySetInnerHTML`:o=e.innerHTML,c=c?c.__html:void 0,c!=null&&(c=fu(e,c),o!==c&&(i[l]={__html:o}));continue;case`className`:Su(e,l,`class`,c,a,i);continue;case`tabIndex`:Su(e,l,`tabindex`,c,a,i);continue;case`style`:a.delete(l),xu(e,c,i);continue;case`multiple`:a.delete(l),lu(l,e.multiple,c,i);continue;case`muted`:a.delete(l),lu(l,e.muted,c,i);continue;case`autoFocus`:a.delete(`autofocus`),lu(l,e.autofocus,c,i);continue;case`data`:if(t!==`object`){a.delete(l),o=e.getAttribute(`data`),lu(l,o,c,i);continue}case`src`:case`href`:if(!(c!==``||t===`a`&&l===`href`||t===`object`&&l===`data`)){console.error(l===`src`?`An empty string ("") was passed to the %s attribute. This may cause the browser to download the whole page again over the network. To fix this, either do not render the element at all or pass null to %s instead of an empty string.`:`An empty string ("") was passed to the %s attribute. To fix this, either do not render the element at all or pass null to %s instead of an empty string.`,l,l);continue}Eu(e,l,l,c,a,i);continue;case`action`:case`formAction`:if(o=e.getAttribute(l),typeof c==`function`){a.delete(l.toLowerCase()),l===`formAction`?(a.delete(`name`),a.delete(`formenctype`),a.delete(`formmethod`),a.delete(`formtarget`)):(a.delete(`enctype`),a.delete(`method`),a.delete(`target`));continue}if(o===DS){a.delete(l.toLowerCase()),lu(l,`function`,c,i);continue}Eu(e,l,l.toLowerCase(),c,a,i);continue;case`xlinkHref`:Eu(e,l,`xlink:href`,c,a,i);continue;case`contentEditable`:wu(e,l,`contenteditable`,c,a,i);continue;case`spellCheck`:wu(e,l,`spellcheck`,c,a,i);continue;case`draggable`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:wu(e,l,l,c,a,i);continue;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`:Cu(e,l,l.toLowerCase(),c,a,i);continue;case`capture`:case`download`:a:{s=e;var u=o=l,d=i;if(a.delete(u),s=s.getAttribute(u),s===null)switch(typeof c){case`undefined`:case`function`:case`symbol`:break a;default:if(!1===c)break a}else if(c!=null)switch(typeof c){case`function`:case`symbol`:break;case`boolean`:if(!0===c&&s===``)break a;break;default:if(k(c,o),s===``+c)break a}lu(o,s,c,d)}continue;case`cols`:case`rows`:case`size`:case`span`:a:{if(s=e,u=o=l,d=i,a.delete(u),s=s.getAttribute(u),s===null)switch(typeof c){case`undefined`:case`function`:case`symbol`:case`boolean`:break a;default:if(isNaN(c)||1>c)break a}else if(c!=null)switch(typeof c){case`function`:case`symbol`:case`boolean`:break;default:if(!(isNaN(c)||1>c)&&(k(c,o),s===``+c))break a}lu(o,s,c,d)}continue;case`rowSpan`:Tu(e,l,`rowspan`,c,a,i);continue;case`start`:Tu(e,l,l,c,a,i);continue;case`xHeight`:Su(e,l,`x-height`,c,a,i);continue;case`xlinkActuate`:Su(e,l,`xlink:actuate`,c,a,i);continue;case`xlinkArcrole`:Su(e,l,`xlink:arcrole`,c,a,i);continue;case`xlinkRole`:Su(e,l,`xlink:role`,c,a,i);continue;case`xlinkShow`:Su(e,l,`xlink:show`,c,a,i);continue;case`xlinkTitle`:Su(e,l,`xlink:title`,c,a,i);continue;case`xlinkType`:Su(e,l,`xlink:type`,c,a,i);continue;case`xmlBase`:Su(e,l,`xml:base`,c,a,i);continue;case`xmlLang`:Su(e,l,`xml:lang`,c,a,i);continue;case`xmlSpace`:Su(e,l,`xml:space`,c,a,i);continue;case`inert`:c!==``||SS[l]||(SS[l]=!0,console.error("Received an empty string for a boolean attribute `%s`. This will treat the attribute as if it were false. Either pass `false` to silence this warning, or pass `true` if you used an empty string in earlier versions of React to indicate this attribute is true.",l)),Cu(e,l,l,c,a,i);continue;default:if(!(2<l.length)||l[0]!==`o`&&l[0]!==`O`||l[1]!==`n`&&l[1]!==`N`){s=Xt(l),o=!1,r.context===US&&t!==`svg`&&t!==`math`?a.delete(s.toLowerCase()):(u=l.toLowerCase(),u=jm.hasOwnProperty(u)&&jm[u]||null,u!==null&&u!==l&&(o=!0,a.delete(u)),a.delete(s));a:if(u=e,d=s,s=c,nt(d)){if(u.hasAttribute(d))u=u.getAttribute(d),k(s,d),s=u===``+s?s:u;else{switch(typeof s){case`function`:case`symbol`:break a;case`boolean`:if(u=d.toLowerCase().slice(0,5),u!==`data-`&&u!==`aria-`)break a}s=s===void 0?void 0:null}}else s=void 0;o||lu(l,s,c,i)}}}return 0<a.size&&!0!==n.suppressHydrationWarning&&uu(e,a,i),Object.keys(i).length===0?null:i}function Ou(e,t){switch(e.length){case 0:return``;case 1:return e[0];case 2:return e[0]+` `+t+` `+e[1];default:return e.slice(0,-1).join(`, `)+`, `+t+` `+e[e.length-1]}}function ku(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Au(){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&&ku(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&&ku(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}function ju(e){return e.nodeType===9?e:e.ownerDocument}function Mu(e){switch(e){case km:return WS;case Om:return GS;default:return US}}function Nu(e,t){if(e===US)switch(t){case`svg`:return WS;case`math`:return GS;default:return US}return e===WS&&t===`foreignObject`?US:e}function Pu(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}function Fu(){var e=window.event;return e&&e.type===`popstate`?e!==YS&&(YS=e,!0):(YS=null,!1)}function Iu(){var e=window.event;return e&&e!==XS?e.type:null}function Lu(){var e=window.event;return e&&e!==XS?e.timeStamp:-1.1}function Ru(e){setTimeout(function(){throw e})}function zu(e,t,n){switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&e.focus();break;case`img`:n.src?e.src=n.src:n.srcSet&&(e.srcset=n.srcSet)}}function Bu(){}function Vu(e,t,n,r){vu(e,t,n,r),e[Bp]=r}function Hu(e){Gt(e,``)}function Uu(e,t,n){e.nodeValue=n}function Wu(e){if(!e.__reactWarnedAboutChildrenConflict){var t=e[Bp]||null;if(t!==null){var n=Ze(e);n!==null&&(typeof t.children==`string`||typeof t.children==`number`?(e.__reactWarnedAboutChildrenConflict=!0,O(n,function(){console.error('Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "children" text content using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.')})):t.dangerouslySetInnerHTML!=null&&(e.__reactWarnedAboutChildrenConflict=!0,O(n,function(){console.error('Cannot use a ref on a React element as a container to `createRoot` or `createPortal` if that element also sets "dangerouslySetInnerHTML" using React. It should be a leaf with no children. Otherwise it\'s ambiguous which children should be used.')})))}}}function Gu(e){return e===`head`}function Ku(e,t){e.removeChild(t)}function qu(e,t){(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e).removeChild(t)}function Ju(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===MS||n===AS){if(r===0){e.removeChild(i),mf(t);return}r--}else if(n===jS||n===NS||n===PS||n===FS||n===kS)r++;else if(n===IS)yd(e.ownerDocument.documentElement);else if(n===RS){n=e.ownerDocument.head,yd(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[Kp]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===LS&&yd(e.ownerDocument.body)}n=i}while(n);mf(t)}function Yu(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===MS){if(e===0)break;e--}else n!==jS&&n!==NS&&n!==PS&&n!==FS||e++}n=r}while(n)}function Xu(e){Yu(e,!0)}function Zu(e){e=e.style,typeof e.setProperty==`function`?e.setProperty(`display`,`none`,`important`):e.display=`none`}function Qu(e){e.nodeValue=``}function $u(e){Yu(e,!1)}function ed(e,t){t=t[HS],t=t!=null&&t.hasOwnProperty(`display`)?t.display:null,e.style.display=t==null||typeof t==`boolean`?``:(``+t).trim()}function td(e,t){e.nodeValue=t}function nd(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`:nd(n),Ye(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function rd(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`){k(i.name,`name`);var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[Kp])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=ld(e.nextSibling),e===null)break}return null}function id(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=ld(e.nextSibling),e===null))return null;return e}function ad(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=ld(e.nextSibling),e===null))return null;return e}function od(e){return e.data===NS||e.data===PS}function sd(e){return e.data===FS||e.data===NS&&e.ownerDocument.readyState!==VS}function cd(e,t){var n=e.ownerDocument;if(e.data===PS)e._reactRetry=t;else if(e.data!==NS||n.readyState!==VS)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function ld(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===jS||t===FS||t===NS||t===PS||t===kS||t===zS||t===BS)break;if(t===MS||t===AS)return null}}return e}function ud(e){if(e.nodeType===1){for(var t=e.nodeName.toLowerCase(),n={},r=e.attributes,i=0;i<r.length;i++){var a=r[i];n[yu(a.name)]=a.name.toLowerCase()===`style`?bu(e):a.value}return{type:t,props:n}}return e.nodeType===8?e.data===kS?{type:`Activity`,props:{}}:{type:`Suspense`,props:{}}:e.nodeValue}function dd(e,t,n){return n===null||!0!==n[OS]?(e.nodeValue===t?e=null:(t=pu(t),e=pu(e.nodeValue)===t?null:e.nodeValue),e):null}function fd(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===MS||n===AS){if(t===0)return ld(e.nextSibling);t--}else n!==jS&&n!==FS&&n!==NS&&n!==PS&&n!==kS||t++}e=e.nextSibling}return null}function pd(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===jS||n===FS||n===NS||n===PS||n===kS){if(t===0)return e;t--}else n!==MS&&n!==AS||t++}e=e.previousSibling}return null}function md(e){mf(e)}function hd(e){mf(e)}function gd(e){mf(e)}function _d(e,t,n,r,i){switch(i&&Ut(e,r.ancestorInfo),t=ju(n),e){case`html`:if(e=t.documentElement,!e)throw Error(`React expected an <html> element (document.documentElement) to exist in the Document but one was not found. React never removes the documentElement for any Document it renders into so the cause is likely in some other script running on this page.`);return e;case`head`:if(e=t.head,!e)throw Error(`React expected a <head> element (document.head) to exist in the Document but one was not found. React never removes the head for any Document it renders into so the cause is likely in some other script running on this page.`);return e;case`body`:if(e=t.body,!e)throw Error(`React expected a <body> element (document.body) to exist in the Document but one was not found. React never removes the body for any Document it renders into so the cause is likely in some other script running on this page.`);return e;default:throw Error(`resolveSingletonInstance was called with an element type that is not supported. This is a bug in React.`)}}function vd(e,t,n,r){if(!n[Vp]&&Ze(n)){var i=n.tagName.toLowerCase();console.error(`You are mounting a new %s component when a previous one has not first unmounted. It is an error to render more than one %s component at a time and attributes and children of these components will likely fail in unpredictable ways. Please only render a single instance of <%s> and if you need to mount a new one, ensure any previous ones have unmounted first.`,i,i,i)}switch(e){case`html`:case`head`:case`body`:break;default:console.error(`acquireSingletonInstance was called with an element type that is not supported. This is a bug in React.`)}for(i=n.attributes;i.length;)n.removeAttributeNode(i[0]);_u(n,e,t),n[zp]=r,n[Bp]=t}function yd(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Ye(e)}function bd(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}function xd(e,t,n){var r=dC;if(r&&typeof t==`string`&&t){var i=pt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),lC.has(i)||(lC.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),_u(t,`link`,e),$e(t),r.head.appendChild(t)))}}function Sd(e,t,n,r){var i=(i=Jf.current)?bd(i):null;if(!i)throw Error(`"resourceRoot" was expected to exist. This is a bug in React.`);switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(n=wd(n.href),t=A(i).hoistableStyles,r=t.get(n),r||(r={type:`style`,instance:null,count:0,state:null},t.set(n,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=wd(n.href);var a=A(i).hoistableStyles,o=a.get(e);if(!o&&(i=i.ownerDocument||i,o={type:`stylesheet`,instance:null,count:0,state:{loading:rC,preload:null}},a.set(e,o),(a=i.querySelector(Td(e)))&&!a._p&&(o.instance=a,o.state.loading=iC|sC),!cC.has(e))){var s={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy};cC.set(e,s),a||Dd(i,e,s,o.state)}if(t&&r===null)throw n=`
182
+
183
+ - `+Cd(t)+`
184
+ + `+Cd(n),Error("Expected <link> not to update to be updated to a stylesheet with precedence. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key."+n);return o}if(t&&r!==null)throw n=`
185
+
186
+ - `+Cd(t)+`
187
+ + `+Cd(n),Error("Expected stylesheet with precedence to not be updated to a different kind of <link>. Check the `rel`, `href`, and `precedence` props of this component. Alternatively, check whether two different <link> components render in the same slot or share the same key."+n);return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(n=Od(n),t=A(i).hoistableScripts,r=t.get(n),r||(r={type:`script`,instance:null,count:0,state:null},t.set(n,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(`getResource encountered a type it did not expect: "`+e+`". this is a bug in React.`)}}function Cd(e){var t=0,n=`<link`;return typeof e.rel==`string`?(t++,n+=` rel="`+e.rel+`"`):up.call(e,`rel`)&&(t++,n+=` rel="`+(e.rel===null?`null`:`invalid type `+typeof e.rel)+`"`),typeof e.href==`string`?(t++,n+=` href="`+e.href+`"`):up.call(e,`href`)&&(t++,n+=` href="`+(e.href===null?`null`:`invalid type `+typeof e.href)+`"`),typeof e.precedence==`string`?(t++,n+=` precedence="`+e.precedence+`"`):up.call(e,`precedence`)&&(t++,n+=` precedence={`+(e.precedence===null?`null`:`invalid type `+typeof e.precedence)+`}`),Object.getOwnPropertyNames(e).length>t&&(n+=` ...`),n+` />`}function wd(e){return`href="`+pt(e)+`"`}function Td(e){return`link[rel="stylesheet"][`+e+`]`}function Ed(e){return Sf({},e,{"data-precedence":e.precedence,precedence:null})}function Dd(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=iC:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=iC}),t.addEventListener(`error`,function(){return r.loading|=aC}),_u(t,`link`,n),$e(t),e.head.appendChild(t))}function Od(e){return`[src="`+pt(e)+`"]`}function kd(e){return`script[async]`+e}function Ad(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+pt(n.href)+`"]`);if(r)return t.instance=r,$e(r),r;var i=Sf({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),$e(r),_u(r,`style`,i),jd(r,n.precedence,e),t.instance=r;case`stylesheet`:i=wd(n.href);var a=e.querySelector(Td(i));if(a)return t.state.loading|=sC,t.instance=a,$e(a),a;r=Ed(n),(i=cC.get(i))&&Md(r,i),a=(e.ownerDocument||e).createElement(`link`),$e(a);var o=a;return o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),_u(a,`link`,r),t.state.loading|=sC,jd(a,n.precedence,e),t.instance=a;case`script`:return a=Od(n.src),(i=e.querySelector(kd(a)))?(t.instance=i,$e(i),i):(r=n,(i=cC.get(a))&&(r=Sf({},n),Nd(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),$e(i),_u(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(`acquireResource encountered a resource type it did not expect: "`+t.type+`". this is a bug in React.`)}else t.type===`stylesheet`&&(t.state.loading&sC)===rC&&(r=t.instance,t.state.loading|=sC,jd(r,n.precedence,e));return t.instance}function jd(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 Md(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function Nd(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}function Pd(e,t,n){if(fC===null){var r=new Map,i=fC=new Map;i.set(n,r)}else i=fC,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[Kp]||a[zp]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==km){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Fd(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Id(e,t,n){var r=!n.ancestorInfo.containerTagInScope;if(n.context===WS||t.itemProp!=null)return!r||t.itemProp==null||e!==`meta`&&e!==`title`&&e!==`style`&&e!==`link`&&e!==`script`||console.error("Cannot render a <%s> outside the main document if it has an `itemProp` prop. `itemProp` suggests the tag belongs to an `itemScope` which can appear anywhere in the DOM. If you were intending for React to hoist this <%s> remove the `itemProp` prop. Otherwise, try moving this tag into the <head> or <body> of the Document.",e,e),!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``){r&&console.error('Cannot render a <style> outside the main document without knowing its precedence and a unique href key. React can hoist and deduplicate <style> tags if you provide a `precedence` prop along with an `href` prop that does not conflict with the `href` values used in any other hoisted <style> or <link rel="stylesheet" ...> tags. Note that hoisting <style> tags is considered an advanced feature that most will not use directly. Consider moving the <style> tag to the <head> or consider adding a `precedence="default"` and `href="some unique resource identifier"`.');break}return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError){if(t.rel===`stylesheet`&&typeof t.precedence==`string`){e=t.href;var i=t.onError,a=t.disabled;n=[],t.onLoad&&n.push("`onLoad`"),i&&n.push("`onError`"),a!=null&&n.push("`disabled`"),i=Ou(n,`and`),i+=n.length===1?` prop`:` props`,a=n.length===1?`an `+i:`the `+i,n.length&&console.error('React encountered a <link rel="stylesheet" href="%s" ... /> with a `precedence` prop that also included %s. The presence of loading and error handlers indicates an intent to manage the stylesheet loading state from your from your Component code and React will not hoist or deduplicate this stylesheet. If your intent was to have React hoist and deduplciate this stylesheet using the `precedence` prop remove the %s, otherwise remove the `precedence` prop.',e,a,i)}r&&(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``?console.error("Cannot render a <link> outside the main document without a `rel` and `href` prop. Try adding a `rel` and/or `href` prop to this <link> or moving the link into the <head> tag"):(t.onError||t.onLoad)&&console.error(`Cannot render a <link> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.`));break}switch(t.rel){case`stylesheet`:return e=t.precedence,t=t.disabled,typeof e!=`string`&&r&&console.error(`Cannot render a <link rel="stylesheet" /> outside the main document without knowing its precedence. Consider adding precedence="default" or moving it into the root <head> tag.`),typeof e==`string`&&t==null;default:return!0}case`script`:if(e=t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`,!e||t.onLoad||t.onError||!t.src||typeof t.src!=`string`){r&&(e?t.onLoad||t.onError?console.error(`Cannot render a <script> with onLoad or onError listeners outside the main document. Try removing onLoad={...} and onError={...} or moving it into the root <head> tag or somewhere in the <body>.`):console.error("Cannot render a <script> outside the main document without `async={true}` and a non-empty `src` prop. Ensure there is a valid `src` and either make the script async or move it into the root <head> tag or somewhere in the <body>."):console.error(`Cannot render a sync or defer <script> outside the main document without knowing its order. Try adding async="" or moving it into the root <head> tag.`));break}return!0;case`noscript`:case`template`:r&&console.error(`Cannot render <%s> outside the main document. Try moving it into the root <head> tag.`,e)}return!1}function Ld(e){return e.type!==`stylesheet`||(e.state.loading&oC)!==rC}function Rd(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&(n.state.loading&sC)===rC){if(n.instance===null){var i=wd(r.href),a=t.querySelector(Td(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Bd.bind(e),t.then(e,e)),n.state.loading|=sC,n.instance=a,$e(a);return}a=t.ownerDocument||t,r=Ed(r),(i=cC.get(i))&&Md(r,i),a=a.createElement(`link`),$e(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),_u(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&oC)===rC&&(e.count++,n=Bd.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}function zd(e,t){return e.stylesheets&&e.count===0&&Vd(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Vd(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},pC+t);0<e.imgBytes&&gC===0&&(gC=125*Au()*hC);var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Vd(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>gC?50:mC)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Bd(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Vd(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}function Vd(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,vC=new Map,t.forEach(Hd,e),vC=null,Bd.call(e))}function Hd(e,t){if(!(t.state.loading&sC)){var n=vC.get(e);if(n)var r=n.get(_C);else{n=new Map,vC.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(_C,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(_C,i),n.set(o,i),this.count++,r=Bd.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|=sC}}function Ud(e,t,n,r,i,a,o,s,c){for(this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=$S,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Le(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Le(0),this.hiddenUpdates=Le(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,this.passiveEffectDuration=this.effectDuration=-0,this.memoizedUpdaters=new Set,e=this.pendingUpdatersLaneMap=[],t=0;31>t;t++)e.push(new Set);this._debugRootType=n?`hydrateRoot()`:`createRoot()`}function Wd(e,t,n,r,i,a,o,s,c,l,u,d){return e=new Ud(e,t,n,o,c,l,u,d,s),t=Mg,!0===a&&(t|=Pg|Fg),t|=Ng,a=g(3,null,null,t),e.current=a,a.stateNode=e,t=ni(),ri(t),e.pooledCache=t,ri(t),a.memoizedState={element:r,isDehydrated:n,cache:t},Yi(a),e}function Gd(e){return e?(e=kg,e):kg}function Kd(e,t,n,r,i,a){if(Tp&&typeof Tp.onScheduleFiberRoot==`function`)try{Tp.onScheduleFiberRoot(wp,r,n)}catch(e){Ep||(Ep=!0,console.error(`React instrumentation encountered an error: %o`,e))}i=Gd(i),r.context===null?r.context=i:r.pendingContext=i,lp&&cp!==null&&!EC&&(EC=!0,console.error(`Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.
188
+
189
+ Check the render method of %s.`,T(cp)||`Unknown`)),r=Zi(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(typeof a!=`function`&&console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",a),r.callback=a),n=Qi(e,r,t),n!==null&&(ai(t,`root.render()`,null),Jc(n,e,t),$i(n,e,t))}function qd(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Jd(e,t){qd(e,t),(e=e.alternate)&&qd(e,t)}function Yd(e){if(e.tag===13||e.tag===31){var t=lr(e,67108864);t!==null&&Jc(t,e,67108864),Jd(e,67108864)}}function Xd(e){if(e.tag===13||e.tag===31){var t=Kc(e);t=Ue(t);var n=lr(e,t);n!==null&&Jc(n,e,t),Jd(e,t)}}function Zd(){return cp}function Qd(e,t,n,r){var i=J.T;J.T=null;var a=Vf.p;try{Vf.p=Pp,ef(e,t,n,r)}finally{Vf.p=a,J.T=i}}function $d(e,t,n,r){var i=J.T;J.T=null;var a=Vf.p;try{Vf.p=Fp,ef(e,t,n,r)}finally{Vf.p=a,J.T=i}}function ef(e,t,n,r){if(LC){var i=tf(r);if(i===null)ru(e,t,r,RC,n),af(e,r);else if(sf(i,e,t,n,r))r.stopPropagation();else if(af(e,r),t&4&&-1<KC.indexOf(e)){for(;i!==null;){var a=Ze(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=Me(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Op(o);s.entanglements[1]|=c,o&=~c}Rl(a),(Vb&(Mb|Nb))===jb&&(yx=hp()+bx,zl(0,!1))}}break;case 31:case 13:s=lr(a,2),s!==null&&Jc(s,a,2),$c(),Jd(a,2)}if(a=tf(r),a===null&&ru(e,t,r,RC,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else ru(e,t,r,null,n)}}function tf(e){return e=rn(e),nf(e)}function nf(e){if(RC=null,e=Xe(e),e!==null){var t=x(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=ee(t),e!==null)return e;e=null}else if(n===31){if(e=te(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 RC=e,null}function rf(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 Pp;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 Fp;case`message`:switch(gp()){case _p:return Pp;case vp:return Fp;case yp:case bp:return Ip;case xp:return Lp;default:return Ip}default:return Ip}}function af(e,t){switch(e){case`focusin`:case`focusout`:BC=null;break;case`dragenter`:case`dragleave`:VC=null;break;case`mouseover`:case`mouseout`:HC=null;break;case`pointerover`:case`pointerout`:UC.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:WC.delete(t.pointerId)}}function of(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=Ze(t),t!==null&&Yd(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function sf(e,t,n,r,i){switch(t){case`focusin`:return BC=of(BC,e,t,n,r,i),!0;case`dragenter`:return VC=of(VC,e,t,n,r,i),!0;case`mouseover`:return HC=of(HC,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return UC.set(a,of(UC.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,WC.set(a,of(WC.get(a)||null,e,t,n,r,i)),!0}return!1}function cf(e){var t=Xe(e.target);if(t!==null){var n=x(t);if(n!==null){if(t=n.tag,t===13){if(t=ee(n),t!==null){e.blockedOn=t,Je(e.priority,function(){Xd(n)});return}}else if(t===31){if(t=te(n),t!==null){e.blockedOn=t,Je(e.priority,function(){Xd(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 lf(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=tf(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n),i=r;Um!==null&&console.error(`Expected currently replaying event to be null. This error is likely caused by a bug in React. Please file an issue.`),Um=i,n.target.dispatchEvent(r),Um===null&&console.error(`Expected currently replaying event to not be null. This error is likely caused by a bug in React. Please file an issue.`),Um=null}else return t=Ze(n),t!==null&&Yd(t),e.blockedOn=n,!1;t.shift()}return!0}function uf(e,t,n){lf(e)&&n.delete(t)}function df(){zC=!1,BC!==null&&lf(BC)&&(BC=null),VC!==null&&lf(VC)&&(VC=null),HC!==null&&lf(HC)&&(HC=null),UC.forEach(uf),WC.forEach(uf)}function ff(e,t){e.blockedOn===t&&(e.blockedOn=null,zC||(zC=!0,yf.unstable_scheduleCallback(yf.unstable_NormalPriority,df)))}function pf(e){qC!==e&&(qC=e,yf.unstable_scheduleCallback(yf.unstable_NormalPriority,function(){qC===e&&(qC=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(nf(r||n)===null)continue;break}var a=Ze(n);a!==null&&(e.splice(t,3),t-=3,n={pending:!0,data:i,method:n.method,action:r},Object.freeze(n),ko(a,n,r,i))}}))}function mf(e){function t(t){return ff(t,e)}BC!==null&&ff(BC,e),VC!==null&&ff(VC,e),HC!==null&&ff(HC,e),UC.forEach(t),WC.forEach(t);for(var n=0;n<GC.length;n++){var r=GC[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<GC.length&&(n=GC[0],n.blockedOn===null);)cf(n),n.blockedOn===null&&GC.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[Bp]||null;if(typeof a==`function`)o||pf(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[Bp]||null)s=o.formAction;else if(nf(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),pf(n)}}}function hf(){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 gf(e){this._internalRoot=e}function _f(e){this._internalRoot=e}function vf(e){e[Vp]&&(e._reactRootContainer?console.error(`You are calling ReactDOMClient.createRoot() on a container that was previously passed to ReactDOM.render(). This is not supported.`):console.error(`You are calling ReactDOMClient.createRoot() on a container that has already been passed to createRoot() before. Instead, call root.render() on the existing root instead if you want to update it.`))}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var yf=p(),bf=d(),xf=h(),Sf=Object.assign,Cf=Symbol.for(`react.element`),wf=Symbol.for(`react.transitional.element`),Tf=Symbol.for(`react.portal`),Ef=Symbol.for(`react.fragment`),Df=Symbol.for(`react.strict_mode`),Of=Symbol.for(`react.profiler`),kf=Symbol.for(`react.consumer`),Af=Symbol.for(`react.context`),jf=Symbol.for(`react.forward_ref`),Mf=Symbol.for(`react.suspense`),Nf=Symbol.for(`react.suspense_list`),Pf=Symbol.for(`react.memo`),Ff=Symbol.for(`react.lazy`),If=Symbol.for(`react.activity`),Lf=Symbol.for(`react.memo_cache_sentinel`),Rf=Symbol.iterator,zf=Symbol.for(`react.client.reference`),Bf=Array.isArray,J=bf.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Vf=xf.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Hf=Object.freeze({pending:!1,data:null,method:null,action:null}),Uf=[],Wf=[],Gf=-1,Kf=E(null),qf=E(null),Jf=E(null),Yf=E(null),Xf=0,Zf,Qf,$f,ep,tp,np,rp;fe.__reactDisabledLog=!0;var ip,ap,op=!1,sp=new(typeof WeakMap==`function`?WeakMap:Map),cp=null,lp=!1,up=Object.prototype.hasOwnProperty,dp=yf.unstable_scheduleCallback,fp=yf.unstable_cancelCallback,pp=yf.unstable_shouldYield,mp=yf.unstable_requestPaint,hp=yf.unstable_now,gp=yf.unstable_getCurrentPriorityLevel,_p=yf.unstable_ImmediatePriority,vp=yf.unstable_UserBlockingPriority,yp=yf.unstable_NormalPriority,bp=yf.unstable_LowPriority,xp=yf.unstable_IdlePriority,Sp=yf.log,Cp=yf.unstable_setDisableYieldValue,wp=null,Tp=null,Ep=!1,Dp=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`,Op=Math.clz32?Math.clz32:je,kp=Math.log,Ap=Math.LN2,jp=256,Mp=262144,Np=4194304,Pp=2,Fp=8,Ip=32,Lp=268435456,Rp=Math.random().toString(36).slice(2),zp=`__reactFiber$`+Rp,Bp=`__reactProps$`+Rp,Vp=`__reactContainer$`+Rp,Hp=`__reactEvents$`+Rp,Up=`__reactListeners$`+Rp,Wp=`__reactHandles$`+Rp,Gp=`__reactResources$`+Rp,Kp=`__reactMarker$`+Rp,qp=new Set,Jp={},Yp={},Xp={button:!0,checkbox:!0,image:!0,hidden:!0,radio:!0,reset:!0,submit:!0},Zp=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]*$`),Qp={},$p={},em=/[\n"\\]/g,tm=!1,nm=!1,rm=!1,im=!1,am=!1,om=!1,sm=[`value`,`defaultValue`],cm=!1,lm=/["'&<>\n\t]|^\s|\s$/,um=`address applet area article aside base basefont bgsound blockquote body br button caption center col colgroup dd details dir div dl dt embed fieldset figcaption figure footer form frame frameset h1 h2 h3 h4 h5 h6 head header hgroup hr html iframe img input isindex li link listing main marquee menu menuitem meta nav noembed noframes noscript object ol p param plaintext pre script section select source style summary table tbody td template textarea tfoot th thead title tr track ul wbr xmp`.split(` `),dm=`applet caption html table td th marquee object template foreignObject desc title`.split(` `),fm=dm.concat([`button`]),pm=`dd dt li option optgroup p rp rt`.split(` `),mm={current:null,formTag:null,aTagInScope:null,buttonTagInScope:null,nobrTagInScope:null,pTagInButtonScope:null,listItemTagAutoclosing:null,dlItemTagAutoclosing:null,containerTagInScope:null,implicitRootScope:!1},hm={},gm={animation:`animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationPlayState animationTimingFunction`.split(` `),background:`backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPositionX backgroundPositionY backgroundRepeat backgroundSize`.split(` `),backgroundPosition:[`backgroundPositionX`,`backgroundPositionY`],border:`borderBottomColor borderBottomStyle borderBottomWidth borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeftColor borderLeftStyle borderLeftWidth borderRightColor borderRightStyle borderRightWidth borderTopColor borderTopStyle borderTopWidth`.split(` `),borderBlockEnd:[`borderBlockEndColor`,`borderBlockEndStyle`,`borderBlockEndWidth`],borderBlockStart:[`borderBlockStartColor`,`borderBlockStartStyle`,`borderBlockStartWidth`],borderBottom:[`borderBottomColor`,`borderBottomStyle`,`borderBottomWidth`],borderColor:[`borderBottomColor`,`borderLeftColor`,`borderRightColor`,`borderTopColor`],borderImage:[`borderImageOutset`,`borderImageRepeat`,`borderImageSlice`,`borderImageSource`,`borderImageWidth`],borderInlineEnd:[`borderInlineEndColor`,`borderInlineEndStyle`,`borderInlineEndWidth`],borderInlineStart:[`borderInlineStartColor`,`borderInlineStartStyle`,`borderInlineStartWidth`],borderLeft:[`borderLeftColor`,`borderLeftStyle`,`borderLeftWidth`],borderRadius:[`borderBottomLeftRadius`,`borderBottomRightRadius`,`borderTopLeftRadius`,`borderTopRightRadius`],borderRight:[`borderRightColor`,`borderRightStyle`,`borderRightWidth`],borderStyle:[`borderBottomStyle`,`borderLeftStyle`,`borderRightStyle`,`borderTopStyle`],borderTop:[`borderTopColor`,`borderTopStyle`,`borderTopWidth`],borderWidth:[`borderBottomWidth`,`borderLeftWidth`,`borderRightWidth`,`borderTopWidth`],columnRule:[`columnRuleColor`,`columnRuleStyle`,`columnRuleWidth`],columns:[`columnCount`,`columnWidth`],flex:[`flexBasis`,`flexGrow`,`flexShrink`],flexFlow:[`flexDirection`,`flexWrap`],font:`fontFamily fontFeatureSettings fontKerning fontLanguageOverride fontSize fontSizeAdjust fontStretch fontStyle fontVariant fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition fontWeight lineHeight`.split(` `),fontVariant:`fontVariantAlternates fontVariantCaps fontVariantEastAsian fontVariantLigatures fontVariantNumeric fontVariantPosition`.split(` `),gap:[`columnGap`,`rowGap`],grid:`gridAutoColumns gridAutoFlow gridAutoRows gridTemplateAreas gridTemplateColumns gridTemplateRows`.split(` `),gridArea:[`gridColumnEnd`,`gridColumnStart`,`gridRowEnd`,`gridRowStart`],gridColumn:[`gridColumnEnd`,`gridColumnStart`],gridColumnGap:[`columnGap`],gridGap:[`columnGap`,`rowGap`],gridRow:[`gridRowEnd`,`gridRowStart`],gridRowGap:[`rowGap`],gridTemplate:[`gridTemplateAreas`,`gridTemplateColumns`,`gridTemplateRows`],listStyle:[`listStyleImage`,`listStylePosition`,`listStyleType`],margin:[`marginBottom`,`marginLeft`,`marginRight`,`marginTop`],marker:[`markerEnd`,`markerMid`,`markerStart`],mask:`maskClip maskComposite maskImage maskMode maskOrigin maskPositionX maskPositionY maskRepeat maskSize`.split(` `),maskPosition:[`maskPositionX`,`maskPositionY`],outline:[`outlineColor`,`outlineStyle`,`outlineWidth`],overflow:[`overflowX`,`overflowY`],padding:[`paddingBottom`,`paddingLeft`,`paddingRight`,`paddingTop`],placeContent:[`alignContent`,`justifyContent`],placeItems:[`alignItems`,`justifyItems`],placeSelf:[`alignSelf`,`justifySelf`],textDecoration:[`textDecorationColor`,`textDecorationLine`,`textDecorationStyle`],textEmphasis:[`textEmphasisColor`,`textEmphasisStyle`],transition:[`transitionDelay`,`transitionDuration`,`transitionProperty`,`transitionTimingFunction`],wordWrap:[`overflowWrap`]},_m=/([A-Z])/g,vm=/^ms-/,ym=/^(?:webkit|moz|o)[A-Z]/,bm=/^-ms-/,xm=/-(.)/g,Sm=/;\s*$/,Cm={},wm={},Tm=!1,Em=!1,Dm=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(` `)),Om=`http://www.w3.org/1998/Math/MathML`,km=`http://www.w3.org/2000/svg`,Am=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`]]),jm={accept:`accept`,acceptcharset:`acceptCharset`,"accept-charset":`acceptCharset`,accesskey:`accessKey`,action:`action`,allowfullscreen:`allowFullScreen`,alt:`alt`,as:`as`,async:`async`,autocapitalize:`autoCapitalize`,autocomplete:`autoComplete`,autocorrect:`autoCorrect`,autofocus:`autoFocus`,autoplay:`autoPlay`,autosave:`autoSave`,capture:`capture`,cellpadding:`cellPadding`,cellspacing:`cellSpacing`,challenge:`challenge`,charset:`charSet`,checked:`checked`,children:`children`,cite:`cite`,class:`className`,classid:`classID`,classname:`className`,cols:`cols`,colspan:`colSpan`,content:`content`,contenteditable:`contentEditable`,contextmenu:`contextMenu`,controls:`controls`,controlslist:`controlsList`,coords:`coords`,crossorigin:`crossOrigin`,dangerouslysetinnerhtml:`dangerouslySetInnerHTML`,data:`data`,datetime:`dateTime`,default:`default`,defaultchecked:`defaultChecked`,defaultvalue:`defaultValue`,defer:`defer`,dir:`dir`,disabled:`disabled`,disablepictureinpicture:`disablePictureInPicture`,disableremoteplayback:`disableRemotePlayback`,download:`download`,draggable:`draggable`,enctype:`encType`,enterkeyhint:`enterKeyHint`,fetchpriority:`fetchPriority`,for:`htmlFor`,form:`form`,formmethod:`formMethod`,formaction:`formAction`,formenctype:`formEncType`,formnovalidate:`formNoValidate`,formtarget:`formTarget`,frameborder:`frameBorder`,headers:`headers`,height:`height`,hidden:`hidden`,high:`high`,href:`href`,hreflang:`hrefLang`,htmlfor:`htmlFor`,httpequiv:`httpEquiv`,"http-equiv":`httpEquiv`,icon:`icon`,id:`id`,imagesizes:`imageSizes`,imagesrcset:`imageSrcSet`,inert:`inert`,innerhtml:`innerHTML`,inputmode:`inputMode`,integrity:`integrity`,is:`is`,itemid:`itemID`,itemprop:`itemProp`,itemref:`itemRef`,itemscope:`itemScope`,itemtype:`itemType`,keyparams:`keyParams`,keytype:`keyType`,kind:`kind`,label:`label`,lang:`lang`,list:`list`,loop:`loop`,low:`low`,manifest:`manifest`,marginwidth:`marginWidth`,marginheight:`marginHeight`,max:`max`,maxlength:`maxLength`,media:`media`,mediagroup:`mediaGroup`,method:`method`,min:`min`,minlength:`minLength`,multiple:`multiple`,muted:`muted`,name:`name`,nomodule:`noModule`,nonce:`nonce`,novalidate:`noValidate`,open:`open`,optimum:`optimum`,pattern:`pattern`,placeholder:`placeholder`,playsinline:`playsInline`,poster:`poster`,preload:`preload`,profile:`profile`,radiogroup:`radioGroup`,readonly:`readOnly`,referrerpolicy:`referrerPolicy`,rel:`rel`,required:`required`,reversed:`reversed`,role:`role`,rows:`rows`,rowspan:`rowSpan`,sandbox:`sandbox`,scope:`scope`,scoped:`scoped`,scrolling:`scrolling`,seamless:`seamless`,selected:`selected`,shape:`shape`,size:`size`,sizes:`sizes`,span:`span`,spellcheck:`spellCheck`,src:`src`,srcdoc:`srcDoc`,srclang:`srcLang`,srcset:`srcSet`,start:`start`,step:`step`,style:`style`,summary:`summary`,tabindex:`tabIndex`,target:`target`,title:`title`,type:`type`,usemap:`useMap`,value:`value`,width:`width`,wmode:`wmode`,wrap:`wrap`,about:`about`,accentheight:`accentHeight`,"accent-height":`accentHeight`,accumulate:`accumulate`,additive:`additive`,alignmentbaseline:`alignmentBaseline`,"alignment-baseline":`alignmentBaseline`,allowreorder:`allowReorder`,alphabetic:`alphabetic`,amplitude:`amplitude`,arabicform:`arabicForm`,"arabic-form":`arabicForm`,ascent:`ascent`,attributename:`attributeName`,attributetype:`attributeType`,autoreverse:`autoReverse`,azimuth:`azimuth`,basefrequency:`baseFrequency`,baselineshift:`baselineShift`,"baseline-shift":`baselineShift`,baseprofile:`baseProfile`,bbox:`bbox`,begin:`begin`,bias:`bias`,by:`by`,calcmode:`calcMode`,capheight:`capHeight`,"cap-height":`capHeight`,clip:`clip`,clippath:`clipPath`,"clip-path":`clipPath`,clippathunits:`clipPathUnits`,cliprule:`clipRule`,"clip-rule":`clipRule`,color:`color`,colorinterpolation:`colorInterpolation`,"color-interpolation":`colorInterpolation`,colorinterpolationfilters:`colorInterpolationFilters`,"color-interpolation-filters":`colorInterpolationFilters`,colorprofile:`colorProfile`,"color-profile":`colorProfile`,colorrendering:`colorRendering`,"color-rendering":`colorRendering`,contentscripttype:`contentScriptType`,contentstyletype:`contentStyleType`,cursor:`cursor`,cx:`cx`,cy:`cy`,d:`d`,datatype:`datatype`,decelerate:`decelerate`,descent:`descent`,diffuseconstant:`diffuseConstant`,direction:`direction`,display:`display`,divisor:`divisor`,dominantbaseline:`dominantBaseline`,"dominant-baseline":`dominantBaseline`,dur:`dur`,dx:`dx`,dy:`dy`,edgemode:`edgeMode`,elevation:`elevation`,enablebackground:`enableBackground`,"enable-background":`enableBackground`,end:`end`,exponent:`exponent`,externalresourcesrequired:`externalResourcesRequired`,fill:`fill`,fillopacity:`fillOpacity`,"fill-opacity":`fillOpacity`,fillrule:`fillRule`,"fill-rule":`fillRule`,filter:`filter`,filterres:`filterRes`,filterunits:`filterUnits`,floodopacity:`floodOpacity`,"flood-opacity":`floodOpacity`,floodcolor:`floodColor`,"flood-color":`floodColor`,focusable:`focusable`,fontfamily:`fontFamily`,"font-family":`fontFamily`,fontsize:`fontSize`,"font-size":`fontSize`,fontsizeadjust:`fontSizeAdjust`,"font-size-adjust":`fontSizeAdjust`,fontstretch:`fontStretch`,"font-stretch":`fontStretch`,fontstyle:`fontStyle`,"font-style":`fontStyle`,fontvariant:`fontVariant`,"font-variant":`fontVariant`,fontweight:`fontWeight`,"font-weight":`fontWeight`,format:`format`,from:`from`,fx:`fx`,fy:`fy`,g1:`g1`,g2:`g2`,glyphname:`glyphName`,"glyph-name":`glyphName`,glyphorientationhorizontal:`glyphOrientationHorizontal`,"glyph-orientation-horizontal":`glyphOrientationHorizontal`,glyphorientationvertical:`glyphOrientationVertical`,"glyph-orientation-vertical":`glyphOrientationVertical`,glyphref:`glyphRef`,gradienttransform:`gradientTransform`,gradientunits:`gradientUnits`,hanging:`hanging`,horizadvx:`horizAdvX`,"horiz-adv-x":`horizAdvX`,horizoriginx:`horizOriginX`,"horiz-origin-x":`horizOriginX`,ideographic:`ideographic`,imagerendering:`imageRendering`,"image-rendering":`imageRendering`,in2:`in2`,in:`in`,inlist:`inlist`,intercept:`intercept`,k1:`k1`,k2:`k2`,k3:`k3`,k4:`k4`,k:`k`,kernelmatrix:`kernelMatrix`,kernelunitlength:`kernelUnitLength`,kerning:`kerning`,keypoints:`keyPoints`,keysplines:`keySplines`,keytimes:`keyTimes`,lengthadjust:`lengthAdjust`,letterspacing:`letterSpacing`,"letter-spacing":`letterSpacing`,lightingcolor:`lightingColor`,"lighting-color":`lightingColor`,limitingconeangle:`limitingConeAngle`,local:`local`,markerend:`markerEnd`,"marker-end":`markerEnd`,markerheight:`markerHeight`,markermid:`markerMid`,"marker-mid":`markerMid`,markerstart:`markerStart`,"marker-start":`markerStart`,markerunits:`markerUnits`,markerwidth:`markerWidth`,mask:`mask`,maskcontentunits:`maskContentUnits`,maskunits:`maskUnits`,mathematical:`mathematical`,mode:`mode`,numoctaves:`numOctaves`,offset:`offset`,opacity:`opacity`,operator:`operator`,order:`order`,orient:`orient`,orientation:`orientation`,origin:`origin`,overflow:`overflow`,overlineposition:`overlinePosition`,"overline-position":`overlinePosition`,overlinethickness:`overlineThickness`,"overline-thickness":`overlineThickness`,paintorder:`paintOrder`,"paint-order":`paintOrder`,panose1:`panose1`,"panose-1":`panose1`,pathlength:`pathLength`,patterncontentunits:`patternContentUnits`,patterntransform:`patternTransform`,patternunits:`patternUnits`,pointerevents:`pointerEvents`,"pointer-events":`pointerEvents`,points:`points`,pointsatx:`pointsAtX`,pointsaty:`pointsAtY`,pointsatz:`pointsAtZ`,popover:`popover`,popovertarget:`popoverTarget`,popovertargetaction:`popoverTargetAction`,prefix:`prefix`,preservealpha:`preserveAlpha`,preserveaspectratio:`preserveAspectRatio`,primitiveunits:`primitiveUnits`,property:`property`,r:`r`,radius:`radius`,refx:`refX`,refy:`refY`,renderingintent:`renderingIntent`,"rendering-intent":`renderingIntent`,repeatcount:`repeatCount`,repeatdur:`repeatDur`,requiredextensions:`requiredExtensions`,requiredfeatures:`requiredFeatures`,resource:`resource`,restart:`restart`,result:`result`,results:`results`,rotate:`rotate`,rx:`rx`,ry:`ry`,scale:`scale`,security:`security`,seed:`seed`,shaperendering:`shapeRendering`,"shape-rendering":`shapeRendering`,slope:`slope`,spacing:`spacing`,specularconstant:`specularConstant`,specularexponent:`specularExponent`,speed:`speed`,spreadmethod:`spreadMethod`,startoffset:`startOffset`,stddeviation:`stdDeviation`,stemh:`stemh`,stemv:`stemv`,stitchtiles:`stitchTiles`,stopcolor:`stopColor`,"stop-color":`stopColor`,stopopacity:`stopOpacity`,"stop-opacity":`stopOpacity`,strikethroughposition:`strikethroughPosition`,"strikethrough-position":`strikethroughPosition`,strikethroughthickness:`strikethroughThickness`,"strikethrough-thickness":`strikethroughThickness`,string:`string`,stroke:`stroke`,strokedasharray:`strokeDasharray`,"stroke-dasharray":`strokeDasharray`,strokedashoffset:`strokeDashoffset`,"stroke-dashoffset":`strokeDashoffset`,strokelinecap:`strokeLinecap`,"stroke-linecap":`strokeLinecap`,strokelinejoin:`strokeLinejoin`,"stroke-linejoin":`strokeLinejoin`,strokemiterlimit:`strokeMiterlimit`,"stroke-miterlimit":`strokeMiterlimit`,strokewidth:`strokeWidth`,"stroke-width":`strokeWidth`,strokeopacity:`strokeOpacity`,"stroke-opacity":`strokeOpacity`,suppresscontenteditablewarning:`suppressContentEditableWarning`,suppresshydrationwarning:`suppressHydrationWarning`,surfacescale:`surfaceScale`,systemlanguage:`systemLanguage`,tablevalues:`tableValues`,targetx:`targetX`,targety:`targetY`,textanchor:`textAnchor`,"text-anchor":`textAnchor`,textdecoration:`textDecoration`,"text-decoration":`textDecoration`,textlength:`textLength`,textrendering:`textRendering`,"text-rendering":`textRendering`,to:`to`,transform:`transform`,transformorigin:`transformOrigin`,"transform-origin":`transformOrigin`,typeof:`typeof`,u1:`u1`,u2:`u2`,underlineposition:`underlinePosition`,"underline-position":`underlinePosition`,underlinethickness:`underlineThickness`,"underline-thickness":`underlineThickness`,unicode:`unicode`,unicodebidi:`unicodeBidi`,"unicode-bidi":`unicodeBidi`,unicoderange:`unicodeRange`,"unicode-range":`unicodeRange`,unitsperem:`unitsPerEm`,"units-per-em":`unitsPerEm`,unselectable:`unselectable`,valphabetic:`vAlphabetic`,"v-alphabetic":`vAlphabetic`,values:`values`,vectoreffect:`vectorEffect`,"vector-effect":`vectorEffect`,version:`version`,vertadvy:`vertAdvY`,"vert-adv-y":`vertAdvY`,vertoriginx:`vertOriginX`,"vert-origin-x":`vertOriginX`,vertoriginy:`vertOriginY`,"vert-origin-y":`vertOriginY`,vhanging:`vHanging`,"v-hanging":`vHanging`,videographic:`vIdeographic`,"v-ideographic":`vIdeographic`,viewbox:`viewBox`,viewtarget:`viewTarget`,visibility:`visibility`,vmathematical:`vMathematical`,"v-mathematical":`vMathematical`,vocab:`vocab`,widths:`widths`,wordspacing:`wordSpacing`,"word-spacing":`wordSpacing`,writingmode:`writingMode`,"writing-mode":`writingMode`,x1:`x1`,x2:`x2`,x:`x`,xchannelselector:`xChannelSelector`,xheight:`xHeight`,"x-height":`xHeight`,xlinkactuate:`xlinkActuate`,"xlink:actuate":`xlinkActuate`,xlinkarcrole:`xlinkArcrole`,"xlink:arcrole":`xlinkArcrole`,xlinkhref:`xlinkHref`,"xlink:href":`xlinkHref`,xlinkrole:`xlinkRole`,"xlink:role":`xlinkRole`,xlinkshow:`xlinkShow`,"xlink:show":`xlinkShow`,xlinktitle:`xlinkTitle`,"xlink:title":`xlinkTitle`,xlinktype:`xlinkType`,"xlink:type":`xlinkType`,xmlbase:`xmlBase`,"xml:base":`xmlBase`,xmllang:`xmlLang`,"xml:lang":`xmlLang`,xmlns:`xmlns`,"xml:space":`xmlSpace`,xmlnsxlink:`xmlnsXlink`,"xmlns:xlink":`xmlnsXlink`,xmlspace:`xmlSpace`,y1:`y1`,y2:`y2`,y:`y`,ychannelselector:`yChannelSelector`,z:`z`,zoomandpan:`zoomAndPan`},Mm={"aria-current":0,"aria-description":0,"aria-details":0,"aria-disabled":0,"aria-hidden":0,"aria-invalid":0,"aria-keyshortcuts":0,"aria-label":0,"aria-roledescription":0,"aria-autocomplete":0,"aria-checked":0,"aria-expanded":0,"aria-haspopup":0,"aria-level":0,"aria-modal":0,"aria-multiline":0,"aria-multiselectable":0,"aria-orientation":0,"aria-placeholder":0,"aria-pressed":0,"aria-readonly":0,"aria-required":0,"aria-selected":0,"aria-sort":0,"aria-valuemax":0,"aria-valuemin":0,"aria-valuenow":0,"aria-valuetext":0,"aria-atomic":0,"aria-busy":0,"aria-live":0,"aria-relevant":0,"aria-dropeffect":0,"aria-grabbed":0,"aria-activedescendant":0,"aria-colcount":0,"aria-colindex":0,"aria-colspan":0,"aria-controls":0,"aria-describedby":0,"aria-errormessage":0,"aria-flowto":0,"aria-labelledby":0,"aria-owns":0,"aria-posinset":0,"aria-rowcount":0,"aria-rowindex":0,"aria-rowspan":0,"aria-setsize":0,"aria-braillelabel":0,"aria-brailleroledescription":0,"aria-colindextext":0,"aria-rowindextext":0},Nm={},Pm=RegExp(`^(aria)-[: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]*$`),Fm=RegExp(`^(aria)[A-Z][: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]*$`),Im=!1,Lm={},Rm=/^on./,zm=/^on[^A-Z]/,Bm=RegExp(`^(aria)-[: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]*$`),Vm=RegExp(`^(aria)[A-Z][: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]*$`),Hm=/^[\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,Um=null,Wm=null,Gm=null,Km=!1,qm=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),Jm=!1;if(qm)try{var Ym={};Object.defineProperty(Ym,"passive",{get:function(){Jm=!0}}),window.addEventListener(`test`,Ym,Ym),window.removeEventListener(`test`,Ym,Ym)}catch{Jm=!1}var Xm=null,Zm=null,Qm=null,$m={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},eh=fn($m),th=Sf({},$m,{view:0,detail:0}),nh=fn(th),rh,ih,ah,oh=Sf({},th,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:mn,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!==ah&&(ah&&e.type===`mousemove`?(rh=e.screenX-ah.screenX,ih=e.screenY-ah.screenY):ih=rh=0,ah=e),rh)},movementY:function(e){return`movementY`in e?e.movementY:ih}}),sh=fn(oh),ch=fn(Sf({},oh,{dataTransfer:0})),lh=fn(Sf({},th,{relatedTarget:0})),uh=fn(Sf({},$m,{animationName:0,elapsedTime:0,pseudoElement:0})),dh=fn(Sf({},$m,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),fh=fn(Sf({},$m,{data:0})),ph=fh,mh={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},hh={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`},gh={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`},_h=fn(Sf({},th,{key:function(e){if(e.key){var t=mh[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=ln(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?hh[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:mn,charCode:function(e){return e.type===`keypress`?ln(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?ln(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),vh=fn(Sf({},oh,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),yh=fn(Sf({},th,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:mn})),bh=fn(Sf({},$m,{propertyName:0,elapsedTime:0,pseudoElement:0})),xh=fn(Sf({},oh,{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})),Sh=fn(Sf({},$m,{newState:0,oldState:0})),Ch=[9,13,27,32],wh=229,Th=qm&&`CompositionEvent`in window,Eh=null;qm&&`documentMode`in document&&(Eh=document.documentMode);var Dh=qm&&`TextEvent`in window&&!Eh,Oh=qm&&(!Th||Eh&&8<Eh&&11>=Eh),kh=32,Ah=String.fromCharCode(kh),jh=!1,Mh=!1,Nh={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},Ph=null,Fh=null,Ih=!1;qm&&(Ih=bn(`input`)&&(!document.documentMode||9<document.documentMode));var Lh=typeof Object.is==`function`?Object.is:jn,Rh=qm&&`documentMode`in document&&11>=document.documentMode,zh=null,Bh=null,Vh=null,Hh=!1,Uh={animationend:zn(`Animation`,`AnimationEnd`),animationiteration:zn(`Animation`,`AnimationIteration`),animationstart:zn(`Animation`,`AnimationStart`),transitionrun:zn(`Transition`,`TransitionRun`),transitionstart:zn(`Transition`,`TransitionStart`),transitioncancel:zn(`Transition`,`TransitionCancel`),transitionend:zn(`Transition`,`TransitionEnd`)},Wh={},Gh={};qm&&(Gh=document.createElement(`div`).style,`AnimationEvent`in window||(delete Uh.animationend.animation,delete Uh.animationiteration.animation,delete Uh.animationstart.animation),`TransitionEvent`in window||delete Uh.transitionend.transition);var Kh=Bn(`animationend`),qh=Bn(`animationiteration`),Jh=Bn(`animationstart`),Yh=Bn(`transitionrun`),Xh=Bn(`transitionstart`),Zh=Bn(`transitioncancel`),Qh=Bn(`transitionend`),$h=new Map,eg=`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(` `);eg.push(`scrollEnd`);var tg=0;if(typeof performance==`object`&&typeof performance.now==`function`)var ng=performance,rg=function(){return ng.now()};else{var ig=Date;rg=function(){return ig.now()}}var ag=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)},og=`This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects.`,sg=0,cg=1,lg=2,ug=3,dg=`–\xA0`,fg=`+\xA0`,pg=` \xA0`,mg=typeof console<`u`&&typeof console.timeStamp==`function`&&typeof performance<`u`&&typeof performance.measure==`function`,hg=`Components ⚛`,gg=`Scheduler ⚛`,_g=`Blocking`,vg=!1,yg={color:`primary`,properties:null,tooltipText:``,track:hg},bg={start:-0,end:-0,detail:{devtools:yg}},xg=[`Changed Props`,``],Sg=`This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner.`,Cg=[`Changed Props`,Sg],wg=1,Tg=2,Eg=[],Dg=0,Og=0,kg={};Object.freeze(kg);var Ag=null,jg=null,Y=0,Mg=1,Ng=2,Pg=8,Fg=16,Ig=32,Lg=!1;try{Object.preventExtensions({})}catch{Lg=!0}var Rg=new WeakMap,zg=[],Bg=0,Vg=null,Hg=0,Ug=[],Wg=0,Gg=null,Kg=1,qg=``,Jg=null,Yg=null,Xg=!1,Zg=!1,Qg=null,$g=null,e_=!1,t_=Error(`Hydration Mismatch Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React.`),n_=E(null),r_=E(null),i_={},a_=null,o_=null,s_=!1,c_=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()})}},l_=yf.unstable_scheduleCallback,u_=yf.unstable_NormalPriority,d_={$$typeof:Af,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0,_currentRenderer:null,_currentRenderer2:null},f_=yf.unstable_now,p_=console.createTask?console.createTask:function(){return null},m_=1,h_=2,g_=-0,__=-0,v_=-0,y_=null,b_=-1.1,x_=-0,S_=-0,X=-1.1,Z=-1.1,C_=null,w_=!1,T_=-0,E_=-1.1,D_=null,O_=0,k_=null,A_=null,j_=-1.1,M_=null,N_=-1.1,P_=-1.1,F_=-0,I_=-1.1,L_=-1.1,R_=0,z_=null,B_=null,V_=null,H_=-1.1,U_=null,W_=-1.1,G_=-1.1,K_=-0,q_=-0,J_=0,Y_=null,X_=0,Z_=-1.1,Q_=!1,$_=!1,ev=null,tv=0,nv=0,rv=null,iv=J.S;J.S=function(e,t){if(_x=hp(),typeof t==`object`&&t&&typeof t.then==`function`){if(0>I_&&0>L_){I_=f_();var n=Lu(),r=Iu();(n!==W_||r!==U_)&&(W_=-1.1),H_=n,U_=r}wi(e,t)}iv!==null&&iv(e,t)};var av=E(null),ov={recordUnsafeLifecycleWarnings:function(){},flushPendingUnsafeLifecycleWarnings:function(){},recordLegacyContextWarning:function(){},flushLegacyContextWarning:function(){},discardPendingWarnings:function(){}},sv=[],cv=[],lv=[],uv=[],dv=[],fv=[],pv=new Set;ov.recordUnsafeLifecycleWarnings=function(e,t){pv.has(e.type)||(typeof t.componentWillMount==`function`&&!0!==t.componentWillMount.__suppressDeprecationWarning&&sv.push(e),e.mode&Pg&&typeof t.UNSAFE_componentWillMount==`function`&&cv.push(e),typeof t.componentWillReceiveProps==`function`&&!0!==t.componentWillReceiveProps.__suppressDeprecationWarning&&lv.push(e),e.mode&Pg&&typeof t.UNSAFE_componentWillReceiveProps==`function`&&uv.push(e),typeof t.componentWillUpdate==`function`&&!0!==t.componentWillUpdate.__suppressDeprecationWarning&&dv.push(e),e.mode&Pg&&typeof t.UNSAFE_componentWillUpdate==`function`&&fv.push(e))},ov.flushPendingUnsafeLifecycleWarnings=function(){var e=new Set;0<sv.length&&(sv.forEach(function(t){e.add(T(t)||`Component`),pv.add(t.type)}),sv=[]);var t=new Set;0<cv.length&&(cv.forEach(function(e){t.add(T(e)||`Component`),pv.add(e.type)}),cv=[]);var n=new Set;0<lv.length&&(lv.forEach(function(e){n.add(T(e)||`Component`),pv.add(e.type)}),lv=[]);var r=new Set;0<uv.length&&(uv.forEach(function(e){r.add(T(e)||`Component`),pv.add(e.type)}),uv=[]);var i=new Set;0<dv.length&&(dv.forEach(function(e){i.add(T(e)||`Component`),pv.add(e.type)}),dv=[]);var a=new Set;if(0<fv.length&&(fv.forEach(function(e){a.add(T(e)||`Component`),pv.add(e.type)}),fv=[]),0<t.size){var o=m(t);console.error(`Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
190
+
191
+ * Move code with side effects to componentDidMount, and set initial state in the constructor.
192
+
193
+ Please update the following components: %s`,o)}0<r.size&&(o=m(r),console.error(`Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
194
+
195
+ * Move data fetching code or side effects to componentDidUpdate.
196
+ * If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
197
+
198
+ Please update the following components: %s`,o)),0<a.size&&(o=m(a),console.error(`Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
199
+
200
+ * Move data fetching code or side effects to componentDidUpdate.
201
+
202
+ Please update the following components: %s`,o)),0<e.size&&(o=m(e),console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
203
+
204
+ * Move code with side effects to componentDidMount, and set initial state in the constructor.
205
+ * Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
206
+
207
+ Please update the following components: %s`,o)),0<n.size&&(o=m(n),console.warn(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
208
+
209
+ * Move data fetching code or side effects to componentDidUpdate.
210
+ * If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
211
+ * Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
212
+
213
+ Please update the following components: %s`,o)),0<i.size&&(o=m(i),console.warn(`componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
214
+
215
+ * Move data fetching code or side effects to componentDidUpdate.
216
+ * Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
217
+
218
+ Please update the following components: %s`,o))};var mv=new Map,hv=new Set;ov.recordLegacyContextWarning=function(e,t){for(var n=null,r=e;r!==null;)r.mode&Pg&&(n=r),r=r.return;n===null?console.error(`Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue.`):!hv.has(e.type)&&(r=mv.get(n),e.type.contextTypes!=null||e.type.childContextTypes!=null||t!==null&&typeof t.getChildContext==`function`)&&(r===void 0&&(r=[],mv.set(n,r)),r.push(e))},ov.flushLegacyContextWarning=function(){mv.forEach(function(e){if(e.length!==0){var t=e[0],n=new Set;e.forEach(function(e){n.add(T(e)||`Component`),hv.add(e.type)});var r=m(n);O(t,function(){console.error(`Legacy context API has been detected within a strict-mode tree.
219
+
220
+ The old API will be supported in all 16.x releases, but applications using it should migrate to the new version.
221
+
222
+ Please update the following components: %s
223
+
224
+ Learn more about this warning here: https://react.dev/link/legacy-context`,r)})}})},ov.discardPendingWarnings=function(){sv=[],cv=[],lv=[],uv=[],dv=[],fv=[],mv=new Map};var gv={react_stack_bottom_frame:function(e,t,n){var r=lp;lp=!0;try{return e(t,n)}finally{lp=r}}},_v=gv.react_stack_bottom_frame.bind(gv),vv={react_stack_bottom_frame:function(e){var t=lp;lp=!0;try{return e.render()}finally{lp=t}}},yv=vv.react_stack_bottom_frame.bind(vv),bv={react_stack_bottom_frame:function(e,t){try{t.componentDidMount()}catch(t){Dl(e,e.return,t)}}},xv=bv.react_stack_bottom_frame.bind(bv),Sv={react_stack_bottom_frame:function(e,t,n,r,i){try{t.componentDidUpdate(n,r,i)}catch(t){Dl(e,e.return,t)}}},Cv=Sv.react_stack_bottom_frame.bind(Sv),wv={react_stack_bottom_frame:function(e,t){var n=t.stack;e.componentDidCatch(t.value,{componentStack:n===null?``:n})}},Tv=wv.react_stack_bottom_frame.bind(wv),Ev={react_stack_bottom_frame:function(e,t,n){try{n.componentWillUnmount()}catch(n){Dl(e,t,n)}}},Dv=Ev.react_stack_bottom_frame.bind(Ev),Ov={react_stack_bottom_frame:function(e){var t=e.create;return e=e.inst,t=t(),e.destroy=t}},kv=Ov.react_stack_bottom_frame.bind(Ov),Av={react_stack_bottom_frame:function(e,t,n){try{n()}catch(n){Dl(e,t,n)}}},jv=Av.react_stack_bottom_frame.bind(Av),Mv={react_stack_bottom_frame:function(e){var t=e._init;return t(e._payload)}},Nv=Mv.react_stack_bottom_frame.bind(Mv),Pv=Error("Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."),Fv=Error(`Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React.`),Iv=Error("Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."),Lv={then:function(){console.error(`Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.`)}},Rv=null,zv=!1,Bv=null,Vv=0,Hv=null,Uv,Wv=Uv=!1,Gv={},Kv={},qv={};f=function(e,t,n){if(typeof n==`object`&&n&&n._store&&(!n._store.validated&&n.key==null||n._store.validated===2)){if(typeof n._store!=`object`)throw Error(`React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.`);n._store.validated=1;var r=T(e),i=r||`null`;if(!Gv[i]){Gv[i]=!0,n=n._owner,e=e._debugOwner;var a=``;e&&typeof e.tag==`number`&&(i=T(e))&&(a=`
225
+
226
+ Check the render method of \``+i+"`."),a||r&&(a=`
227
+
228
+ Check the top-level render call using <`+r+`>.`);var o=``;n!=null&&e!==n&&(r=null,typeof n.tag==`number`?r=T(n):typeof n.name==`string`&&(r=n.name),r&&(o=` It was passed a child from `+r+`.`)),O(t,function(){console.error(`Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.`,a,o)})}}};var Jv=qi(!0),Yv=qi(!1),Xv=0,Zv=1,Qv=2,$v=3,ey=!1,ty=!1,ny=null,ry=!1,iy=E(null),ay=E(0),oy=E(null),sy=null,cy=1,ly=2,uy=E(0),dy=0,fy=1,py=2,my=4,hy=8,gy,_y=new Set,vy=new Set,yy=new Set,by=new Set,xy=0,Q=null,Sy=null,Cy=null,wy=!1,Ty=!1,Ey=!1,Dy=0,Oy=0,ky=null,Ay=0,jy=25,$=null,My=null,Ny=-1,Py=!1,Fy={readContext:$r,use:ka,useCallback:ga,useContext:ga,useEffect:ga,useImperativeHandle:ga,useLayoutEffect:ga,useInsertionEffect:ga,useMemo:ga,useReducer:ga,useRef:ga,useState:ga,useDebugValue:ga,useDeferredValue:ga,useTransition:ga,useSyncExternalStore:ga,useId:ga,useHostTransitionStatus:ga,useFormState:ga,useActionState:ga,useOptimistic:ga,useMemoCache:ga,useCacheRefresh:ga};Fy.useEffectEvent=ga;var Iy=null,Ly=null,Ry=null,zy=null,By=null,Vy=null,Hy=null;Iy={readContext:function(e){return $r(e)},use:ka,useCallback:function(e,t){return $=`useCallback`,L(),ma(t),vo(e,t)},useContext:function(e){return $=`useContext`,L(),$r(e)},useEffect:function(e,t){return $=`useEffect`,L(),ma(t),uo(e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,L(),ma(n),go(e,t,n)},useInsertionEffect:function(e,t){$=`useInsertionEffect`,L(),ma(t),co(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,L(),ma(t),mo(e,t)},useMemo:function(e,t){$=`useMemo`,L(),ma(t);var n=J.H;J.H=By;try{return bo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,L();var r=J.H;J.H=By;try{return Ma(e,t,n)}finally{J.H=r}},useRef:function(e){return $=`useRef`,L(),so(e)},useState:function(e){$=`useState`,L();var t=J.H;J.H=By;try{return Ua(e)}finally{J.H=t}},useDebugValue:function(){$=`useDebugValue`,L()},useDeferredValue:function(e,t){return $=`useDeferredValue`,L(),So(e,t)},useTransition:function(){return $=`useTransition`,L(),Mo()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,L(),Fa(e,t,n)},useId:function(){return $=`useId`,L(),Io()},useFormState:function(e,t){return $=`useFormState`,L(),ha(),to(e,t)},useActionState:function(e,t){return $=`useActionState`,L(),to(e,t)},useOptimistic:function(e){return $=`useOptimistic`,L(),Wa(e)},useHostTransitionStatus:Fo,useMemoCache:Aa,useCacheRefresh:function(){return $=`useCacheRefresh`,L(),Lo()},useEffectEvent:function(e){return $=`useEffectEvent`,L(),fo(e)}},Ly={readContext:function(e){return $r(e)},use:ka,useCallback:function(e,t){return $=`useCallback`,R(),vo(e,t)},useContext:function(e){return $=`useContext`,R(),$r(e)},useEffect:function(e,t){return $=`useEffect`,R(),uo(e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,R(),go(e,t,n)},useInsertionEffect:function(e,t){$=`useInsertionEffect`,R(),co(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,R(),mo(e,t)},useMemo:function(e,t){$=`useMemo`,R();var n=J.H;J.H=By;try{return bo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,R();var r=J.H;J.H=By;try{return Ma(e,t,n)}finally{J.H=r}},useRef:function(e){return $=`useRef`,R(),so(e)},useState:function(e){$=`useState`,R();var t=J.H;J.H=By;try{return Ua(e)}finally{J.H=t}},useDebugValue:function(){$=`useDebugValue`,R()},useDeferredValue:function(e,t){return $=`useDeferredValue`,R(),So(e,t)},useTransition:function(){return $=`useTransition`,R(),Mo()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,R(),Fa(e,t,n)},useId:function(){return $=`useId`,R(),Io()},useActionState:function(e,t){return $=`useActionState`,R(),to(e,t)},useFormState:function(e,t){return $=`useFormState`,R(),ha(),to(e,t)},useOptimistic:function(e){return $=`useOptimistic`,R(),Wa(e)},useHostTransitionStatus:Fo,useMemoCache:Aa,useCacheRefresh:function(){return $=`useCacheRefresh`,R(),Lo()},useEffectEvent:function(e){return $=`useEffectEvent`,R(),fo(e)}},Ry={readContext:function(e){return $r(e)},use:ka,useCallback:function(e,t){return $=`useCallback`,R(),yo(e,t)},useContext:function(e){return $=`useContext`,R(),$r(e)},useEffect:function(e,t){$=`useEffect`,R(),lo(2048,hy,e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,R(),_o(e,t,n)},useInsertionEffect:function(e,t){return $=`useInsertionEffect`,R(),lo(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,R(),lo(4,my,e,t)},useMemo:function(e,t){$=`useMemo`,R();var n=J.H;J.H=Vy;try{return xo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,R();var r=J.H;J.H=Vy;try{return z(e,t,n)}finally{J.H=r}},useRef:function(){return $=`useRef`,R(),Ea().memoizedState},useState:function(){$=`useState`,R();var e=J.H;J.H=Vy;try{return z(ja)}finally{J.H=e}},useDebugValue:function(){$=`useDebugValue`,R()},useDeferredValue:function(e,t){return $=`useDeferredValue`,R(),Co(e,t)},useTransition:function(){return $=`useTransition`,R(),No()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,R(),Ia(e,t,n)},useId:function(){return $=`useId`,R(),Ea().memoizedState},useFormState:function(e){return $=`useFormState`,R(),ha(),no(e)},useActionState:function(e){return $=`useActionState`,R(),no(e)},useOptimistic:function(e,t){return $=`useOptimistic`,R(),Ga(e,t)},useHostTransitionStatus:Fo,useMemoCache:Aa,useCacheRefresh:function(){return $=`useCacheRefresh`,R(),Ea().memoizedState},useEffectEvent:function(e){return $=`useEffectEvent`,R(),po(e)}},zy={readContext:function(e){return $r(e)},use:ka,useCallback:function(e,t){return $=`useCallback`,R(),yo(e,t)},useContext:function(e){return $=`useContext`,R(),$r(e)},useEffect:function(e,t){$=`useEffect`,R(),lo(2048,hy,e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,R(),_o(e,t,n)},useInsertionEffect:function(e,t){return $=`useInsertionEffect`,R(),lo(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,R(),lo(4,my,e,t)},useMemo:function(e,t){$=`useMemo`,R();var n=J.H;J.H=Hy;try{return xo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,R();var r=J.H;J.H=Hy;try{return Pa(e,t,n)}finally{J.H=r}},useRef:function(){return $=`useRef`,R(),Ea().memoizedState},useState:function(){$=`useState`,R();var e=J.H;J.H=Hy;try{return Pa(ja)}finally{J.H=e}},useDebugValue:function(){$=`useDebugValue`,R()},useDeferredValue:function(e,t){return $=`useDeferredValue`,R(),wo(e,t)},useTransition:function(){return $=`useTransition`,R(),Po()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,R(),Ia(e,t,n)},useId:function(){return $=`useId`,R(),Ea().memoizedState},useFormState:function(e){return $=`useFormState`,R(),ha(),ao(e)},useActionState:function(e){return $=`useActionState`,R(),ao(e)},useOptimistic:function(e,t){return $=`useOptimistic`,R(),qa(e,t)},useHostTransitionStatus:Fo,useMemoCache:Aa,useCacheRefresh:function(){return $=`useCacheRefresh`,R(),Ea().memoizedState},useEffectEvent:function(e){return $=`useEffectEvent`,R(),po(e)}},By={readContext:function(e){return l(),$r(e)},use:function(e){return c(),ka(e)},useCallback:function(e,t){return $=`useCallback`,c(),L(),vo(e,t)},useContext:function(e){return $=`useContext`,c(),L(),$r(e)},useEffect:function(e,t){return $=`useEffect`,c(),L(),uo(e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,c(),L(),go(e,t,n)},useInsertionEffect:function(e,t){$=`useInsertionEffect`,c(),L(),co(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,c(),L(),mo(e,t)},useMemo:function(e,t){$=`useMemo`,c(),L();var n=J.H;J.H=By;try{return bo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,c(),L();var r=J.H;J.H=By;try{return Ma(e,t,n)}finally{J.H=r}},useRef:function(e){return $=`useRef`,c(),L(),so(e)},useState:function(e){$=`useState`,c(),L();var t=J.H;J.H=By;try{return Ua(e)}finally{J.H=t}},useDebugValue:function(){$=`useDebugValue`,c(),L()},useDeferredValue:function(e,t){return $=`useDeferredValue`,c(),L(),So(e,t)},useTransition:function(){return $=`useTransition`,c(),L(),Mo()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,c(),L(),Fa(e,t,n)},useId:function(){return $=`useId`,c(),L(),Io()},useFormState:function(e,t){return $=`useFormState`,c(),L(),to(e,t)},useActionState:function(e,t){return $=`useActionState`,c(),L(),to(e,t)},useOptimistic:function(e){return $=`useOptimistic`,c(),L(),Wa(e)},useMemoCache:function(e){return c(),Aa(e)},useHostTransitionStatus:Fo,useCacheRefresh:function(){return $=`useCacheRefresh`,L(),Lo()},useEffectEvent:function(e){return $=`useEffectEvent`,c(),L(),fo(e)}},Vy={readContext:function(e){return l(),$r(e)},use:function(e){return c(),ka(e)},useCallback:function(e,t){return $=`useCallback`,c(),R(),yo(e,t)},useContext:function(e){return $=`useContext`,c(),R(),$r(e)},useEffect:function(e,t){$=`useEffect`,c(),R(),lo(2048,hy,e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,c(),R(),_o(e,t,n)},useInsertionEffect:function(e,t){return $=`useInsertionEffect`,c(),R(),lo(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,c(),R(),lo(4,my,e,t)},useMemo:function(e,t){$=`useMemo`,c(),R();var n=J.H;J.H=Vy;try{return xo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,c(),R();var r=J.H;J.H=Vy;try{return z(e,t,n)}finally{J.H=r}},useRef:function(){return $=`useRef`,c(),R(),Ea().memoizedState},useState:function(){$=`useState`,c(),R();var e=J.H;J.H=Vy;try{return z(ja)}finally{J.H=e}},useDebugValue:function(){$=`useDebugValue`,c(),R()},useDeferredValue:function(e,t){return $=`useDeferredValue`,c(),R(),Co(e,t)},useTransition:function(){return $=`useTransition`,c(),R(),No()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,c(),R(),Ia(e,t,n)},useId:function(){return $=`useId`,c(),R(),Ea().memoizedState},useFormState:function(e){return $=`useFormState`,c(),R(),no(e)},useActionState:function(e){return $=`useActionState`,c(),R(),no(e)},useOptimistic:function(e,t){return $=`useOptimistic`,c(),R(),Ga(e,t)},useMemoCache:function(e){return c(),Aa(e)},useHostTransitionStatus:Fo,useCacheRefresh:function(){return $=`useCacheRefresh`,R(),Ea().memoizedState},useEffectEvent:function(e){return $=`useEffectEvent`,c(),R(),po(e)}},Hy={readContext:function(e){return l(),$r(e)},use:function(e){return c(),ka(e)},useCallback:function(e,t){return $=`useCallback`,c(),R(),yo(e,t)},useContext:function(e){return $=`useContext`,c(),R(),$r(e)},useEffect:function(e,t){$=`useEffect`,c(),R(),lo(2048,hy,e,t)},useImperativeHandle:function(e,t,n){return $=`useImperativeHandle`,c(),R(),_o(e,t,n)},useInsertionEffect:function(e,t){return $=`useInsertionEffect`,c(),R(),lo(4,py,e,t)},useLayoutEffect:function(e,t){return $=`useLayoutEffect`,c(),R(),lo(4,my,e,t)},useMemo:function(e,t){$=`useMemo`,c(),R();var n=J.H;J.H=Vy;try{return xo(e,t)}finally{J.H=n}},useReducer:function(e,t,n){$=`useReducer`,c(),R();var r=J.H;J.H=Vy;try{return Pa(e,t,n)}finally{J.H=r}},useRef:function(){return $=`useRef`,c(),R(),Ea().memoizedState},useState:function(){$=`useState`,c(),R();var e=J.H;J.H=Vy;try{return Pa(ja)}finally{J.H=e}},useDebugValue:function(){$=`useDebugValue`,c(),R()},useDeferredValue:function(e,t){return $=`useDeferredValue`,c(),R(),wo(e,t)},useTransition:function(){return $=`useTransition`,c(),R(),Po()},useSyncExternalStore:function(e,t,n){return $=`useSyncExternalStore`,c(),R(),Ia(e,t,n)},useId:function(){return $=`useId`,c(),R(),Ea().memoizedState},useFormState:function(e){return $=`useFormState`,c(),R(),ao(e)},useActionState:function(e){return $=`useActionState`,c(),R(),ao(e)},useOptimistic:function(e,t){return $=`useOptimistic`,c(),R(),qa(e,t)},useMemoCache:function(e){return c(),Aa(e)},useHostTransitionStatus:Fo,useCacheRefresh:function(){return $=`useCacheRefresh`,R(),Ea().memoizedState},useEffectEvent:function(e){return $=`useEffectEvent`,c(),R(),po(e)}};var Uy={},Wy=new Set,Gy=new Set,Ky=new Set,qy=new Set,Jy=new Set,Yy=new Set,Xy=new Set,Zy=new Set,Qy=new Set,$y=new Set;Object.freeze(Uy);var eb={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Kc(e),i=Zi(r);i.payload=t,n!=null&&(Ko(n),i.callback=n),t=Qi(e,i,r),t!==null&&(ai(r,`this.setState()`,e),Jc(t,e,r),$i(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Kc(e),i=Zi(r);i.tag=Zv,i.payload=t,n!=null&&(Ko(n),i.callback=n),t=Qi(e,i,r),t!==null&&(ai(r,`this.replaceState()`,e),Jc(t,e,r),$i(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Kc(e),r=Zi(n);r.tag=Qv,t!=null&&(Ko(t),r.callback=t),t=Qi(e,r,n),t!==null&&(ai(n,`this.forceUpdate()`,e),Jc(t,e,n),$i(t,e,n))}},tb=null,nb=null,rb=Error(`This is not a real error. It's an implementation detail of React's selective hydration feature. If this leaks into userspace, it's a bug in React. Please file an issue.`),ib=!1,ab={},ob={},sb={},cb={},lb=!1,ub={},db={},fb={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},pb=!1,mb=null;mb=new Set;var hb=!1,gb=!1,_b=!1,vb=typeof WeakSet==`function`?WeakSet:Set,yb=null,bb=null,xb=null,Sb=null,Cb=!1,wb=null,Tb=!1,Eb=8192,Db={getCacheForType:function(e){var t=$r(d_),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return $r(d_).controller.signal},getOwner:function(){return cp}};if(typeof Symbol==`function`&&Symbol.for){var Ob=Symbol.for;Ob(`selector.component`),Ob(`selector.has_pseudo_class`),Ob(`selector.role`),Ob(`selector.test_id`),Ob(`selector.text`)}var kb=[],Ab=typeof WeakMap==`function`?WeakMap:Map,jb=0,Mb=2,Nb=4,Pb=0,Fb=1,Ib=2,Lb=3,Rb=4,zb=6,Bb=5,Vb=jb,Hb=null,Ub=null,Wb=0,Gb=0,Kb=1,qb=2,Jb=3,Yb=4,Xb=5,Zb=6,Qb=7,$b=8,ex=9,tx=Gb,nx=null,rx=!1,ix=!1,ax=!1,ox=0,sx=Pb,cx=0,lx=0,ux=0,dx=0,fx=0,px=null,mx=null,hx=!1,gx=0,_x=0,vx=300,yx=1/0,bx=500,xx=null,Sx=null,Cx=null,wx=0,Tx=1,Ex=2,Dx=3,Ox=0,kx=1,Ax=2,jx=3,Mx=4,Nx=5,Px=0,Fx=null,Ix=null,Lx=0,Rx=0,zx=-0,Bx=null,Vx=null,Hx=null,Ux=wx,Wx=null,Gx=50,Kx=0,qx=null,Jx=!1,Yx=!1,Xx=50,Zx=0,Qx=null,$x=!1,eS=null,tS=!1,nS=new Set,rS={},iS=null,aS=null,oS=!1,sS=!1,cS=!1,lS=!1,uS=0,dS={};(function(){for(var e=0;e<eg.length;e++){var t=eg[e],n=t.toLowerCase();t=t[0].toUpperCase()+t.slice(1),Vn(n,`on`+t)}Vn(Kh,`onAnimationEnd`),Vn(qh,`onAnimationIteration`),Vn(Jh,`onAnimationStart`),Vn(`dblclick`,`onDoubleClick`),Vn(`focusin`,`onFocus`),Vn(`focusout`,`onBlur`),Vn(Yh,`onTransitionRun`),Vn(Xh,`onTransitionStart`),Vn(Zh,`onTransitionCancel`),Vn(Qh,`onTransitionEnd`)})(),j(`onMouseEnter`,[`mouseout`,`mouseover`]),j(`onMouseLeave`,[`mouseout`,`mouseover`]),j(`onPointerEnter`,[`pointerout`,`pointerover`]),j(`onPointerLeave`,[`pointerout`,`pointerover`]),et(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),et(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),et(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),et(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),et(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),et(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var fS=`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(` `),pS=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(fS)),mS=`_reactListening`+Math.random().toString(36).slice(2),hS=!1,gS=!1,_S=!1,vS=!1,yS=!1,bS=!1,xS=!1,SS={},CS=/\r\n?/g,wS=/\u0000|\uFFFD/g,TS=`http://www.w3.org/1999/xlink`,ES=`http://www.w3.org/XML/1998/namespace`,DS=`javascript:throw new Error('React form unexpectedly submitted.')`,OS=`suppressHydrationWarning`,kS=`&`,AS=`/&`,jS=`$`,MS=`/$`,NS=`$?`,PS=`$~`,FS=`$!`,IS=`html`,LS=`body`,RS=`head`,zS=`F!`,BS=`F`,VS=`loading`,HS=`style`,US=0,WS=1,GS=2,KS=null,qS=null,JS={dialog:!0,webview:!0},YS=null,XS=void 0,ZS=typeof setTimeout==`function`?setTimeout:void 0,QS=typeof clearTimeout==`function`?clearTimeout:void 0,$S=-1,eC=typeof Promise==`function`?Promise:void 0,tC=typeof queueMicrotask==`function`?queueMicrotask:eC===void 0?ZS:function(e){return eC.resolve(null).then(e).catch(Ru)},nC=null,rC=0,iC=1,aC=2,oC=3,sC=4,cC=new Map,lC=new Set,uC=Vf.d;Vf.d={f:function(){var e=uC.f(),t=$c();return e||t},r:function(e){var t=Ze(e);t!==null&&t.tag===5&&t.type===`form`?jo(t):uC.r(e)},D:function(e){uC.D(e),xd(`dns-prefetch`,e,null)},C:function(e,t){uC.C(e,t),xd(`preconnect`,e,t)},L:function(e,t,n){uC.L(e,t,n);var r=dC;if(r&&e&&t){var i=`link[rel="preload"][as="`+pt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+pt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+pt(n.imageSizes)+`"]`)):i+=`[href="`+pt(e)+`"]`;var a=i;switch(t){case`style`:a=wd(e);break;case`script`:a=Od(e)}cC.has(a)||(e=Sf({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),cC.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(Td(a))||t===`script`&&r.querySelector(kd(a))||(t=r.createElement(`link`),_u(t,`link`,e),$e(t),r.head.appendChild(t)))}},m:function(e,t){uC.m(e,t);var n=dC;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+pt(r)+`"][href="`+pt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Od(e)}if(!cC.has(a)&&(e=Sf({rel:`modulepreload`,href:e},t),cC.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(kd(a)))return}r=n.createElement(`link`),_u(r,`link`,e),$e(r),n.head.appendChild(r)}}},X:function(e,t){uC.X(e,t);var n=dC;if(n&&e){var r=A(n).hoistableScripts,i=Od(e),a=r.get(i);a||(a=n.querySelector(kd(i)),a||(e=Sf({src:e,async:!0},t),(t=cC.get(i))&&Nd(e,t),a=n.createElement(`script`),$e(a),_u(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}},S:function(e,t,n){uC.S(e,t,n);var r=dC;if(r&&e){var i=A(r).hoistableStyles,a=wd(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:rC,preload:null};if(o=r.querySelector(Td(a)))s.loading=iC|sC;else{e=Sf({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=cC.get(a))&&Md(e,n);var c=o=r.createElement(`link`);$e(c),_u(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=iC}),c.addEventListener(`error`,function(){s.loading|=aC}),s.loading|=sC,jd(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}},M:function(e,t){uC.M(e,t);var n=dC;if(n&&e){var r=A(n).hoistableScripts,i=Od(e),a=r.get(i);a||(a=n.querySelector(kd(i)),a||(e=Sf({src:e,async:!0,type:`module`},t),(t=cC.get(i))&&Nd(e,t),a=n.createElement(`script`),$e(a),_u(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}};var dC=typeof document>`u`?null:document,fC=null,pC=6e4,mC=800,hC=500,gC=0,_C=null,vC=null,yC=Hf,bC={$$typeof:Af,Provider:null,Consumer:null,_currentValue:yC,_currentValue2:yC,_threadCount:0},xC=`%c%s%c`,SC=`background: #e6e6e6;background: light-dark(rgba(0,0,0,0.1), rgba(255,255,255,0.25));color: #000000;color: light-dark(#000000, #ffffff);border-radius: 2px`,CC=``,wC=` `,TC=Function.prototype.bind,EC=!1,DC=null,OC=null,kC=null,AC=null,jC=null,MC=null,NC=null,PC=null,FC=null,IC=null;DC=function(e,r,i,a){r=t(e,r),r!==null&&(i=n(r.memoizedState,i,0,a),r.memoizedState=i,r.baseState=i,e.memoizedProps=Sf({},e.memoizedProps),i=lr(e,2),i!==null&&Jc(i,e,2))},OC=function(e,n,r){n=t(e,n),n!==null&&(r=a(n.memoizedState,r,0),n.memoizedState=r,n.baseState=r,e.memoizedProps=Sf({},e.memoizedProps),r=lr(e,2),r!==null&&Jc(r,e,2))},kC=function(e,n,i,a){n=t(e,n),n!==null&&(i=r(n.memoizedState,i,a),n.memoizedState=i,n.baseState=i,e.memoizedProps=Sf({},e.memoizedProps),i=lr(e,2),i!==null&&Jc(i,e,2))},AC=function(e,t,r){e.pendingProps=n(e.memoizedProps,t,0,r),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=lr(e,2),t!==null&&Jc(t,e,2)},jC=function(e,t){e.pendingProps=a(e.memoizedProps,t,0),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=lr(e,2),t!==null&&Jc(t,e,2)},MC=function(e,t,n){e.pendingProps=r(e.memoizedProps,t,n),e.alternate&&(e.alternate.pendingProps=e.pendingProps),t=lr(e,2),t!==null&&Jc(t,e,2)},NC=function(e){var t=lr(e,2);t!==null&&Jc(t,e,2)},PC=function(e){var t=Ie(),n=lr(e,t);n!==null&&Jc(n,e,t)},FC=function(e){s=e},IC=function(e){o=e};var LC=!0,RC=null,zC=!1,BC=null,VC=null,HC=null,UC=new Map,WC=new Map,GC=[],KC=`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(` `),qC=null;if(_f.prototype.render=gf.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(`Cannot update an unmounted root.`);var n=arguments;typeof n[1]==`function`?console.error(`does not support the second callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().`):b(n[1])?console.error(`You passed a container to the second argument of root.render(...). You don't need to pass it again since you already passed it to create the root.`):n[1]!==void 0&&console.error(`You passed a second argument to root.render(...) but it only accepts one argument.`),n=e;var r=t.current;Kd(r,Kc(r),n,t,null,null)},_f.prototype.unmount=gf.prototype.unmount=function(){var e=arguments;if(typeof e[0]==`function`&&console.error(`does not support a callback argument. To execute a side effect after rendering, declare it in a component body with useEffect().`),e=this._internalRoot,e!==null){this._internalRoot=null;var t=e.containerInfo;(Vb&(Mb|Nb))!==jb&&console.error(`Attempted to synchronously unmount a root while React was already rendering. React cannot finish unmounting the root until the current render has completed, which may lead to a race condition.`),Kd(e.current,2,null,e,null,null),$c(),t[Vp]=null}},_f.prototype.unstable_scheduleHydration=function(e){if(e){var t=qe();e={blockedOn:null,target:e,priority:t};for(var n=0;n<GC.length&&t!==0&&t<GC[n].priority;n++);GC.splice(n,0,e),n===0&&cf(e)}},(function(){var e=bf.version;if(e!==`19.2.8`)throw Error(`Incompatible React versions: The "react" and "react-dom" packages must have the exact same version. Instead got:
229
+ - react: `+(e+`
230
+ - react-dom: 19.2.8
231
+ Learn more: https://react.dev/warnings/version-mismatch`))})(),typeof Map==`function`&&Map.prototype!=null&&typeof Map.prototype.forEach==`function`&&typeof Set==`function`&&Set.prototype!=null&&typeof Set.prototype.clear==`function`&&typeof Set.prototype.forEach==`function`||console.error(`React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://react.dev/link/react-polyfills`),Vf.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(`Unable to find node on an unmounted component.`):(e=Object.keys(e).join(`,`),Error(`Argument appears to not be a ReactComponent. Keys: `+e));return e=ne(t),e=e===null?null:re(e),e=e===null?null:e.stateNode,e},!(function(){var e={bundleType:1,version:`19.2.8`,rendererPackageName:`react-dom`,currentDispatcherRef:J,reconcilerVersion:`19.2.8`};return e.overrideHookState=DC,e.overrideHookStateDeletePath=OC,e.overrideHookStateRenamePath=kC,e.overrideProps=AC,e.overridePropsDeletePath=jC,e.overridePropsRenamePath=MC,e.scheduleUpdate=NC,e.scheduleRetry=PC,e.setErrorHandler=FC,e.setSuspenseHandler=IC,e.scheduleRefresh=v,e.scheduleRoot=_,e.setRefreshHandler=y,e.getCurrentFiber=Zd,ke(e)})()&&qm&&window.top===window.self&&(-1<navigator.userAgent.indexOf(`Chrome`)&&navigator.userAgent.indexOf(`Edge`)===-1||-1<navigator.userAgent.indexOf(`Firefox`))){var JC=window.location.protocol;/^(https?|file):$/.test(JC)&&console.info(`%cDownload the React DevTools for a better development experience: https://react.dev/link/react-devtools`+(JC===`file:`?`
232
+ You might need to use a local HTTP server (instead of file://): https://react.dev/link/react-devtools-faq`:``),`font-weight:bold`)}e.createRoot=function(e,t){if(!b(e))throw Error(`Target container is not a DOM element.`);vf(e);var n=!1,r=``,i=Zo,a=Qo,o=$o;return t!=null&&(t.hydrate?console.warn(`hydrate through createRoot is deprecated. Use ReactDOMClient.hydrateRoot(container, <App />) instead.`):typeof t==`object`&&t&&t.$$typeof===wf&&console.error(`You passed a JSX element to createRoot. You probably meant to call root.render instead. Example usage:
233
+
234
+ let root = createRoot(domContainer);
235
+ root.render(<App />);`),!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(a=t.onCaughtError),t.onRecoverableError!==void 0&&(o=t.onRecoverableError)),t=Wd(e,1,!1,null,null,n,r,null,i,a,o,hf),e[Vp]=t.current,tu(e),new gf(t)},e.hydrateRoot=function(e,t,n){if(!b(e))throw Error(`Target container is not a DOM element.`);vf(e),t===void 0&&console.error(`Must provide initial children as second argument to hydrateRoot. Example usage: hydrateRoot(domContainer, <App />)`);var r=!1,i=``,a=Zo,o=Qo,s=$o,c=null;return n!=null&&(!0===n.unstable_strictMode&&(r=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onUncaughtError!==void 0&&(a=n.onUncaughtError),n.onCaughtError!==void 0&&(o=n.onCaughtError),n.onRecoverableError!==void 0&&(s=n.onRecoverableError),n.formState!==void 0&&(c=n.formState)),t=Wd(e,1,!0,t,n??null,r,i,c,a,o,s,hf),t.context=Gd(null),n=t.current,r=Kc(n),r=Ue(r),i=Zi(r),i.callback=null,Qi(n,i,r),ai(r,`hydrateRoot()`,null),n=r,t.current.lanes=n,Re(t,n),Rl(t),e[Vp]=t.current,tu(e),new _f(t)},e.version=`19.2.8`,typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==`function`&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()})),_=o(((e,t)=>{t.exports=g()})),v=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},y=new class extends v{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},b={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},x=new class{#e=b;#t=!1;setTimeoutProvider(e){this.#t&&e!==this.#e&&console.error(`[timeoutManager]: Switching provider after calls to previous provider might result in unexpected behavior.`,{previous:this.#e,provider:e}),this.#e=e,this.#t=!1}setTimeout(e,t){return this.#t=!0,this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#t=!0,this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function ee(e){setTimeout(e,0)}var te=typeof window>`u`||`Deno`in globalThis;function S(){}function ne(e,t){return typeof e==`function`?e(t):e}function re(e){return typeof e==`number`&&e>=0&&e!==1/0}function ie(e,t){return Math.max(e+(t||0)-Date.now(),0)}function C(e,t){return typeof e==`function`?e(t):e}function w(e,t){return typeof e==`function`?e(t):e}function T(e,t){let{type:n=`all`,exact:r,fetchStatus:i,predicate:a,queryKey:o,stale:s}=e;if(o){if(r){if(t.queryHash!==ae(o,t.options))return!1}else if(!oe(t.queryKey,o))return!1}if(n!==`all`){let e=t.isActive();if(n===`active`&&!e||n===`inactive`&&e)return!1}return!(typeof s==`boolean`&&t.isStale()!==s||i&&i!==t.state.fetchStatus||a&&!a(t))}function E(e,t){let{exact:n,status:r,predicate:i,mutationKey:a}=e;if(a){if(!t.options.mutationKey)return!1;if(n){if(D(t.options.mutationKey)!==D(a))return!1}else if(!oe(t.options.mutationKey,a))return!1}return!(r&&t.state.status!==r||i&&!i(t))}function ae(e,t){return(t?.queryKeyHashFn||D)(e)}function D(e){return JSON.stringify(e,(e,t)=>de(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}function oe(e,t){if(e===t)return!0;if(typeof e!=typeof t)return!1;if(e&&t&&typeof e==`object`&&typeof t==`object`){if(Array.isArray(e)&&Array.isArray(t)){for(let n=0;n<t.length;n++)if(!oe(e[n],t[n]))return!1;return!0}let n=Object.keys(t);for(let r of n)if(!oe(e[r],t[r]))return!1;return!0}return!1}var se=Object.prototype.hasOwnProperty;function ce(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=ue(e)&&ue(t);if(!r&&!(de(e)&&de(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:se.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=ce(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function le(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function ue(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function de(e){if(!fe(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!fe(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function fe(e){return Object.prototype.toString.call(e)===`[object Object]`}function pe(e){return new Promise(t=>{x.setTimeout(t,e)})}function me(e,t,n){if(typeof n.structuralSharing==`function`)return n.structuralSharing(e,t);if(n.structuralSharing!==!1)try{return ce(e,t)}catch(e){throw console.error(`Structural sharing requires data to be JSON serializable. To fix this, turn off structuralSharing or return JSON-serializable data from your queryFn. [${n.queryHash}]: ${e}`),e}return t}function he(e,t,n=0){let r=[...e,t];return n&&r.length>n?r.slice(1):r}function ge(e,t,n=0){let r=[t,...e];return n&&r.length>n?r.slice(0,-1):r}var _e=Symbol();function ve(e,t){return e.queryFn===_e&&console.error(`Attempted to invoke queryFn when set to skipToken. This is likely a configuration error. Query hash: '${e.queryHash}'`),!e.queryFn&&t?.initialPromise?()=>t.initialPromise:!e.queryFn||e.queryFn===_e?()=>Promise.reject(Error(`Missing queryFn: '${e.queryHash}'`)):e.queryFn}function ye(e,t){return typeof e==`function`?e(...t):!!e}function be(e,t,n){let r=!1,i;return Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(i??=t(),r?i:(r=!0,i.aborted?n():i.addEventListener(`abort`,n,{once:!0}),i))}),e}var xe=(()=>{let e=()=>te;return{isServer(){return e()},setIsServer(t){e=t}}})();function Se(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var O=ee;function Ce(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=O,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var we=Ce(),Te=new class extends v{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function Ee(e){return Math.min(1e3*2**e,3e4)}function k(e){return(e??`online`)!==`online`||Te.isOnline()}var De=class extends Error{constructor(e){super(`CancelledError`),this.revert=e?.revert,this.silent=e?.silent}};function Oe(e){let t=!1,n=0,r,i=Se(),a=()=>i.status!==`pending`,o=t=>{if(!a()){let n=new De(t);f(n),e.onCancel?.(n)}},s=()=>{t=!0},c=()=>{t=!1},l=()=>y.isFocused()&&(e.networkMode===`always`||Te.isOnline())&&e.canRun(),u=()=>k(e.networkMode)&&e.canRun(),d=e=>{a()||(r?.(),i.resolve(e))},f=e=>{a()||(r?.(),i.reject(e))},p=()=>new Promise(t=>{r=e=>{(a()||l())&&t(e)},e.onPause?.()}).then(()=>{r=void 0,a()||e.onContinue?.()}),m=()=>{if(a())return;let r,i=n===0?e.initialPromise:void 0;try{r=i??e.fn()}catch(e){r=Promise.reject(e)}Promise.resolve(r).then(d).catch(r=>{if(a())return;let i=e.retry??(xe.isServer()?0:3),o=e.retryDelay??Ee,s=typeof o==`function`?o(n,r):o,c=i===!0||typeof i==`number`&&n<i||typeof i==`function`&&i(n,r);if(t||!c){f(r);return}n++,e.onFail?.(n,r),pe(s).then(()=>l()?void 0:p()).then(()=>{t?f(r):m()})})};return{promise:i,status:()=>i.status,cancel:o,continue:()=>(r?.(),i),cancelRetry:s,continueRetry:c,canStart:u,start:()=>(u()?m():p().then(m),i)}}var ke=class{#e;destroy(){this.clearGcTimeout()}scheduleGc(){this.clearGcTimeout(),re(this.gcTime)&&(this.#e=x.setTimeout(()=>{this.optionalRemove()},this.gcTime))}updateGcTime(e){this.gcTime=Math.max(this.gcTime||0,e??(xe.isServer()?1/0:3e5))}clearGcTimeout(){this.#e!==void 0&&(x.clearTimeout(this.#e),this.#e=void 0)}};function Ae(e){return{onFetch:(t,n)=>{let r=t.options,i=t.fetchOptions?.meta?.fetchMore?.direction,a=t.state.data?.pages||[],o=t.state.data?.pageParams||[],s={pages:[],pageParams:[]},c=0,l=async()=>{let n=!1,l=e=>{be(e,()=>t.signal,()=>n=!0)},u=ve(t.options,t.fetchOptions),d=async(e,r,i)=>{if(n)return Promise.reject(t.signal.reason);if(r==null&&e.pages.length)return Promise.resolve(e);let a=(()=>{let e={client:t.client,queryKey:t.queryKey,pageParam:r,direction:i?`backward`:`forward`,meta:t.options.meta};return l(e),e})(),o=await u(a),{maxPages:s}=t.options,c=i?ge:he;return{pages:c(e.pages,o,s),pageParams:c(e.pageParams,r,s)}};if(i&&a.length){let e=i===`backward`,t=e?Me:je,n={pages:a,pageParams:o};s=await d(n,t(r,n),e)}else{let t=e??a.length;do{let e=c===0?o[0]??r.initialPageParam:je(r,s);if(c>0&&e==null)break;s=await d(s,e),c++}while(c<t)}return s};t.fetchFn=t.options.persister?()=>t.options.persister?.(l,{client:t.client,queryKey:t.queryKey,meta:t.options.meta,signal:t.signal},n):l}}}function je(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function Me(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}var Ne=class extends ke{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e){super(),this.#s=!1,this.#o=e.defaultOptions,this.setOptions(e.options),this.observers=[],this.#i=e.client,this.#r=this.#i.getQueryCache(),this.queryKey=e.queryKey,this.queryHash=e.queryHash,this.#t=Ie(this.options),this.state=e.state??this.#t,this.scheduleGc()}get meta(){return this.options.meta}get queryType(){return this.#e}get promise(){return this.#a?.promise}setOptions(e){if(this.options={...this.#o,...e},e?._type&&(this.#e=e._type),this.updateGcTime(this.options.gcTime),this.state&&this.state.data===void 0){let e=Ie(this.options);e.data!==void 0&&(this.setState(Fe(e.data,e.dataUpdatedAt)),this.#t=e)}}optionalRemove(){!this.observers.length&&this.state.fetchStatus===`idle`&&this.#r.remove(this)}setData(e,t){let n=me(this.state.data,e,this.options);return this.#l({data:n,type:`success`,dataUpdatedAt:t?.updatedAt,manual:t?.manual}),n}setState(e){this.#l({type:`setState`,state:e})}cancel(e){let t=this.#a?.promise;return this.#a?.cancel(e),t?t.then(S).catch(S):Promise.resolve()}destroy(){super.destroy(),this.cancel({silent:!0})}get resetState(){return this.#t}reset(){this.destroy(),this.setState(this.resetState)}isActive(){return this.observers.some(e=>w(e.options.enabled,this)!==!1)}isDisabled(){return this.getObserversCount()>0?!this.isActive():this.options.queryFn===_e||!this.isFetched()}isFetched(){return this.state.dataUpdateCount+this.state.errorUpdateCount>0}isStatic(){return this.getObserversCount()>0&&this.observers.some(e=>C(e.options.staleTime,this)===`static`)}isStale(){return this.getObserversCount()>0?this.observers.some(e=>e.getCurrentResult().isStale):this.state.data===void 0||this.state.isInvalidated}isStaleByTime(e=0){return this.state.data===void 0?!0:e===`static`?!1:this.state.isInvalidated?!0:!ie(this.state.dataUpdatedAt,e)}onFocus(){this.observers.find(e=>e.shouldFetchOnWindowFocus())?.refetch({cancelRefetch:!1}),this.#a?.continue()}onOnline(){this.observers.find(e=>e.shouldFetchOnReconnect())?.refetch({cancelRefetch:!1}),this.#a?.continue()}addObserver(e){this.observers.includes(e)||(this.observers.push(e),this.clearGcTimeout(),this.#r.notify({type:`observerAdded`,query:this,observer:e}))}removeObserver(e){this.observers.includes(e)&&(this.observers=this.observers.filter(t=>t!==e),this.observers.length||(this.#a&&(this.#s||this.#c()?this.#a.cancel({revert:!0}):this.#a.cancelRetry()),this.scheduleGc()),this.#r.notify({type:`observerRemoved`,query:this,observer:e}))}getObserversCount(){return this.observers.length}#c(){return this.state.fetchStatus===`paused`&&this.state.status===`pending`}invalidate(){this.state.isInvalidated||this.#l({type:`invalidate`})}async fetch(e,t){if(this.state.fetchStatus!==`idle`&&this.#a?.status()!==`rejected`){if(this.state.data!==void 0&&t?.cancelRefetch)this.cancel({silent:!0});else if(this.#a)return this.#a.continueRetry(),this.#a.promise}if(e&&this.setOptions(e),!this.options.queryFn){let e=this.observers.find(e=>e.options.queryFn);e&&this.setOptions(e.options)}Array.isArray(this.options.queryKey)||console.error(`As of v4, queryKey needs to be an Array. If you are using a string like 'repoData', please change it to an Array, e.g. ['repoData']`);let n=new AbortController,r=e=>{Object.defineProperty(e,"signal",{enumerable:!0,get:()=>(this.#s=!0,n.signal)})},i=()=>{let e=ve(this.options,t),n=(()=>{let e={client:this.#i,queryKey:this.queryKey,meta:this.meta};return r(e),e})();return this.#s=!1,this.options.persister?this.options.persister(e,n,this):e(n)},a=(()=>{let e={fetchOptions:t,options:this.options,queryKey:this.queryKey,client:this.#i,state:this.state,fetchFn:i};return r(e),e})();(this.#e===`infinite`?Ae(this.options.pages):this.options.behavior)?.onFetch(a,this),this.#n=this.state,(this.state.fetchStatus===`idle`||this.state.fetchMeta!==a.fetchOptions?.meta)&&this.#l({type:`fetch`,meta:a.fetchOptions?.meta}),this.#a=Oe({initialPromise:t?.initialPromise,fn:a.fetchFn,onCancel:e=>{e instanceof De&&e.revert&&this.setState({...this.#n,fetchStatus:`idle`}),n.abort()},onFail:(e,t)=>{this.#l({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#l({type:`pause`})},onContinue:()=>{this.#l({type:`continue`})},retry:a.options.retry,retryDelay:a.options.retryDelay,networkMode:a.options.networkMode,canRun:()=>!0});try{let e=await this.#a.start();if(e===void 0)throw console.error(`Query data cannot be undefined. Please make sure to return a value other than undefined from your query function. Affected query key: ${this.queryHash}`),Error(`${this.queryHash} data is undefined`);return this.setData(e),this.#r.config.onSuccess?.(e,this),this.#r.config.onSettled?.(e,this.state.error,this),e}catch(e){if(e instanceof De){if(e.silent)return this.#a.promise;if(e.revert){if(this.state.data===void 0)throw e;return this.state.data}}throw this.#l({type:`error`,error:e}),this.#r.config.onError?.(e,this),this.#r.config.onSettled?.(this.state.data,e,this),e}finally{this.scheduleGc()}}#l(e){let t=t=>{switch(e.type){case`failed`:return{...t,fetchFailureCount:e.failureCount,fetchFailureReason:e.error};case`pause`:return{...t,fetchStatus:`paused`};case`continue`:return{...t,fetchStatus:`fetching`};case`fetch`:return{...t,...Pe(t.data,this.options),fetchMeta:e.meta??null};case`success`:let n={...t,...Fe(e.data,e.dataUpdatedAt),dataUpdateCount:t.dataUpdateCount+1,...!e.manual&&{fetchStatus:`idle`,fetchFailureCount:0,fetchFailureReason:null}};return this.#n=e.manual?n:void 0,n;case`error`:let r=e.error;return{...t,error:r,errorUpdateCount:t.errorUpdateCount+1,errorUpdatedAt:Date.now(),fetchFailureCount:t.fetchFailureCount+1,fetchFailureReason:r,fetchStatus:`idle`,status:`error`,isInvalidated:!0};case`invalidate`:return{...t,isInvalidated:!0};case`setState`:return{...t,...e.state}}};this.state=t(this.state),we.batch(()=>{this.observers.forEach(e=>{e.onQueryUpdate()}),this.#r.notify({query:this,type:`updated`,action:e})})}};function Pe(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:k(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}function Fe(e,t){return{data:e,dataUpdatedAt:t??Date.now(),error:null,isInvalidated:!1,status:`success`}}function Ie(e){let t=typeof e.initialData==`function`?e.initialData():e.initialData,n=t!==void 0,r=n?typeof e.initialDataUpdatedAt==`function`?e.initialDataUpdatedAt():e.initialDataUpdatedAt:0;return{data:t,dataUpdateCount:0,dataUpdatedAt:n?r??Date.now():0,error:null,errorUpdateCount:0,errorUpdatedAt:0,fetchFailureCount:0,fetchFailureReason:null,fetchMeta:null,isInvalidated:!1,status:n?`success`:`pending`,fetchStatus:`idle`}}var Le=class extends v{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=Se(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),ze(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return Be(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return Be(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof w(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!le(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&Ve(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||w(this.options.enabled,this.#t)!==w(t.enabled,this.#t)||C(this.options.staleTime,this.#t)!==C(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||w(this.options.enabled,this.#t)!==w(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return Ue(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(S)),t}#g(){this.#b();let e=C(this.options.staleTime,this.#t);if(xe.isServer()||this.#r.isStale||!re(e))return;let t=ie(this.#r.dataUpdatedAt,e)+1;this.#d=x.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(xe.isServer()||w(this.options.enabled,this.#t)===!1||!re(this.#p)||this.#p===0)&&(this.#f=x.setInterval(()=>{(this.options.refetchIntervalInBackground||y.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(x.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(x.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&ze(e,t),o=i&&Ve(e,n,t,r);(a||o)&&(l={...l,...Pe(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:m}=l;d=l.data;let h=!1;if(t.placeholderData!==void 0&&d===void 0&&m===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,h=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(m=`success`,d=me(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h){if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=me(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),m=`error`);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0,x={status:m,fetchStatus:l.fetchStatus,isPending:_,isSuccess:m===`success`,isError:v,isInitialLoading:y,isLoading:y,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:g,isRefetching:g&&!_,isLoadingError:v&&!b,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:v&&b,isStale:He(e,t),refetch:this.refetch,promise:this.#o,isEnabled:w(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=x.data!==void 0,r=x.status===`error`&&!t,i=e=>{r?e.reject(x.error):t&&e.resolve(x.data)},a=()=>{let e=this.#o=x.promise=Se();i(e)},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||x.data!==o.value)&&a();break;case`rejected`:(!r||x.error!==o.reason)&&a()}}return x}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!le(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){we.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function Re(e,t){return w(t.enabled,e)!==!1&&e.state.data===void 0&&(e.state.status!==`error`||w(t.retryOnMount,e)!==!1)}function ze(e,t){return Re(e,t)||e.state.data!==void 0&&Be(e,t,t.refetchOnMount)}function Be(e,t,n){if(w(t.enabled,e)!==!1&&C(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&He(e,t)}return!1}function Ve(e,t,n,r){return(e!==t||w(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&He(e,n)}function He(e,t){return w(t.enabled,e)!==!1&&e.isStaleByTime(C(t.staleTime,e))}function Ue(e,t){return!le(e.getCurrentResult(),t)}var We=class extends ke{#e;#t;#n;#r;constructor(e){super(),this.#e=e.client,this.mutationId=e.mutationId,this.#n=e.mutationCache,this.#t=[],this.state=e.state||Ge(),this.setOptions(e.options),this.scheduleGc()}setOptions(e){this.options=e,this.updateGcTime(this.options.gcTime)}get meta(){return this.options.meta}addObserver(e){this.#t.includes(e)||(this.#t.push(e),this.clearGcTimeout(),this.#n.notify({type:`observerAdded`,mutation:this,observer:e}))}removeObserver(e){this.#t=this.#t.filter(t=>t!==e),this.scheduleGc(),this.#n.notify({type:`observerRemoved`,mutation:this,observer:e})}optionalRemove(){this.#t.length||(this.state.status===`pending`?this.scheduleGc():this.#n.remove(this))}continue(){return this.#r?.continue()??this.execute(this.state.variables)}async execute(e){let t=()=>{this.#i({type:`continue`})},n={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};this.#r=Oe({fn:()=>this.options.mutationFn?this.options.mutationFn(e,n):Promise.reject(Error(`No mutationFn found`)),onFail:(e,t)=>{this.#i({type:`failed`,failureCount:e,error:t})},onPause:()=>{this.#i({type:`pause`})},onContinue:t,retry:this.options.retry??0,retryDelay:this.options.retryDelay,networkMode:this.options.networkMode,canRun:()=>this.#n.canRun(this)});let r=this.state.status===`pending`,i=!this.#r.canStart();try{if(r)t();else{this.#i({type:`pending`,variables:e,isPaused:i}),this.#n.config.onMutate&&await this.#n.config.onMutate(e,this,n);let t=await this.options.onMutate?.(e,n);t!==this.state.context&&this.#i({type:`pending`,context:t,variables:e,isPaused:i})}let a=await this.#r.start();return await this.#n.config.onSuccess?.(a,e,this.state.context,this,n),await this.options.onSuccess?.(a,e,this.state.context,n),await this.#n.config.onSettled?.(a,null,this.state.variables,this.state.context,this,n),await this.options.onSettled?.(a,null,e,this.state.context,n),this.#i({type:`success`,data:a}),a}catch(t){try{await this.#n.config.onError?.(t,e,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onError?.(t,e,this.state.context,n)}catch(e){Promise.reject(e)}try{await this.#n.config.onSettled?.(void 0,t,this.state.variables,this.state.context,this,n)}catch(e){Promise.reject(e)}try{await this.options.onSettled?.(void 0,t,e,this.state.context,n)}catch(e){Promise.reject(e)}throw this.#i({type:`error`,error:t}),t}finally{this.#n.runNext(this)}}#i(e){let t=t=>{switch(e.type){case`failed`:return{...t,failureCount:e.failureCount,failureReason:e.error};case`pause`:return{...t,isPaused:!0};case`continue`:return{...t,isPaused:!1};case`pending`:return{...t,context:e.context,data:void 0,failureCount:0,failureReason:null,error:null,isPaused:e.isPaused,status:`pending`,variables:e.variables,submittedAt:Date.now()};case`success`:return{...t,data:e.data,failureCount:0,failureReason:null,error:null,status:`success`,isPaused:!1};case`error`:return{...t,data:void 0,error:e.error,failureCount:t.failureCount+1,failureReason:e.error,isPaused:!1,status:`error`}}};this.state=t(this.state),we.batch(()=>{this.#t.forEach(t=>{t.onMutationUpdate(e)}),this.#n.notify({mutation:this,type:`updated`,action:e})})}};function Ge(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var Ke=class extends v{constructor(e={}){super(),this.config=e,this.#e=new Set,this.#t=new Map,this.#n=0}#e;#t;#n;build(e,t,n){let r=new We({client:e,mutationCache:this,mutationId:++this.#n,options:e.defaultMutationOptions(t),state:n});return this.add(r),r}add(e){this.#e.add(e);let t=qe(e);if(typeof t==`string`){let n=this.#t.get(t);n?n.push(e):this.#t.set(t,[e])}this.notify({type:`added`,mutation:e})}remove(e){if(this.#e.delete(e)){let t=qe(e);if(typeof t==`string`){let n=this.#t.get(t);if(n){if(n.length>1){let t=n.indexOf(e);t!==-1&&n.splice(t,1)}else n[0]===e&&this.#t.delete(t)}}}this.notify({type:`removed`,mutation:e})}canRun(e){let t=qe(e);if(typeof t==`string`){let n=this.#t.get(t)?.find(e=>e.state.status===`pending`);return!n||n===e}return!0}runNext(e){let t=qe(e);return typeof t==`string`?(this.#t.get(t)?.find(t=>t!==e&&t.state.isPaused))?.continue()??Promise.resolve():Promise.resolve()}clear(){we.batch(()=>{this.#e.forEach(e=>{this.notify({type:`removed`,mutation:e})}),this.#e.clear(),this.#t.clear()})}getAll(){return Array.from(this.#e)}find(e){let t={exact:!0,...e};return this.getAll().find(e=>E(t,e))}findAll(e={}){return this.getAll().filter(t=>E(e,t))}notify(e){we.batch(()=>{this.listeners.forEach(t=>{t(e)})})}resumePausedMutations(){let e=this.getAll().filter(e=>e.state.isPaused);return we.batch(()=>Promise.all(e.map(e=>e.continue().catch(S))))}};function qe(e){return e.options.scope?.id}var Je=class extends v{#e;#t=void 0;#n;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),le(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&D(t.mutationKey)!==D(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#a(e)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#a()}mutate(e,t){return this.#r=t,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(e)}#i(){let e=this.#n?.state??Ge();this.#t={...e,isPending:e.status===`pending`,isSuccess:e.status===`success`,isError:e.status===`error`,isIdle:e.status===`idle`,mutate:this.mutate,reset:this.reset}}#a(e){we.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,n=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type===`success`){try{this.#r.onSuccess?.(e.data,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(e.data,null,t,n,r)}catch(e){Promise.reject(e)}}else if(e?.type===`error`){try{this.#r.onError?.(e.error,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(void 0,e.error,t,n,r)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#t)})})}},Ye=class extends v{constructor(e={}){super(),this.config=e,this.#e=new Map}#e;build(e,t,n){let r=t.queryKey,i=t.queryHash??ae(r,t),a=this.get(i);return a||(a=new Ne({client:e,queryKey:r,queryHash:i,options:e.defaultQueryOptions(t),state:n,defaultOptions:e.getQueryDefaults(r)}),this.add(a)),a}add(e){this.#e.has(e.queryHash)||(this.#e.set(e.queryHash,e),this.notify({type:`added`,query:e}))}remove(e){let t=this.#e.get(e.queryHash);t&&(e.destroy(),t===e&&this.#e.delete(e.queryHash),this.notify({type:`removed`,query:e}))}clear(){we.batch(()=>{this.getAll().forEach(e=>{this.remove(e)})})}get(e){return this.#e.get(e)}getAll(){return[...this.#e.values()]}find(e){let t={exact:!0,...e};return this.getAll().find(e=>T(t,e))}findAll(e={}){let t=this.getAll();return Object.keys(e).length>0?t.filter(t=>T(e,t)):t}notify(e){we.batch(()=>{this.listeners.forEach(t=>{t(e)})})}onFocus(){we.batch(()=>{this.getAll().forEach(e=>{e.onFocus()})})}onOnline(){we.batch(()=>{this.getAll().forEach(e=>{e.onOnline()})})}},Xe=class{#e;#t;#n;#r;#i;#a;#o;#s;constructor(e={}){this.#e=e.queryCache||new Ye,this.#t=e.mutationCache||new Ke,this.#n=e.defaultOptions||{},this.#r=new Map,this.#i=new Map,this.#a=0}mount(){this.#a++,this.#a===1&&(this.#o=y.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onFocus())}),this.#s=Te.subscribe(async e=>{e&&(await this.resumePausedMutations(),this.#e.onOnline())}))}unmount(){this.#a--,this.#a===0&&(this.#o?.(),this.#o=void 0,this.#s?.(),this.#s=void 0)}isFetching(e){return this.#e.findAll({...e,fetchStatus:`fetching`}).length}isMutating(e){return this.#t.findAll({...e,status:`pending`}).length}getQueryData(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state.data}ensureQueryData(e){let t=this.defaultQueryOptions(e),n=this.#e.build(this,t),r=n.state.data;return r===void 0?this.fetchQuery(e):(e.revalidateIfStale&&n.isStaleByTime(C(t.staleTime,n))&&this.prefetchQuery(t),Promise.resolve(r))}getQueriesData(e){return this.#e.findAll(e).map(({queryKey:e,state:t})=>[e,t.data])}setQueryData(e,t,n){let r=this.defaultQueryOptions({queryKey:e}),i=this.#e.get(r.queryHash)?.state.data,a=ne(t,i);if(a!==void 0)return this.#e.build(this,r).setData(a,{...n,manual:!0})}setQueriesData(e,t,n){return we.batch(()=>this.#e.findAll(e).map(({queryKey:e})=>[e,this.setQueryData(e,t,n)]))}getQueryState(e){let t=this.defaultQueryOptions({queryKey:e});return this.#e.get(t.queryHash)?.state}removeQueries(e){let t=this.#e;we.batch(()=>{t.findAll(e).forEach(e=>{t.remove(e)})})}resetQueries(e,t){let n=this.#e;return we.batch(()=>(n.findAll(e).forEach(e=>{e.reset()}),this.refetchQueries({type:`active`,...e},t)))}cancelQueries(e,t={}){let n={revert:!0,...t},r=we.batch(()=>this.#e.findAll(e).map(e=>e.cancel(n)));return Promise.all(r).then(S).catch(S)}invalidateQueries(e,t={}){return we.batch(()=>(this.#e.findAll(e).forEach(e=>{e.invalidate()}),e?.refetchType===`none`?Promise.resolve():this.refetchQueries({...e,type:e?.refetchType??e?.type??`active`},t)))}refetchQueries(e,t={}){let n={...t,cancelRefetch:t.cancelRefetch??!0},r=we.batch(()=>this.#e.findAll(e).filter(e=>!e.isDisabled()&&!e.isStatic()).map(e=>{let t=e.fetch(void 0,n);return n.throwOnError||(t=t.catch(S)),e.state.fetchStatus===`paused`?Promise.resolve():t}));return Promise.all(r).then(S)}fetchQuery(e){let t=this.defaultQueryOptions(e);t.retry===void 0&&(t.retry=!1);let n=this.#e.build(this,t);return n.isStaleByTime(C(t.staleTime,n))?n.fetch(t):Promise.resolve(n.state.data)}prefetchQuery(e){return this.fetchQuery(e).then(S).catch(S)}fetchInfiniteQuery(e){return e._type=`infinite`,this.fetchQuery(e)}prefetchInfiniteQuery(e){return this.fetchInfiniteQuery(e).then(S).catch(S)}ensureInfiniteQueryData(e){return e._type=`infinite`,this.ensureQueryData(e)}resumePausedMutations(){return Te.isOnline()?this.#t.resumePausedMutations():Promise.resolve()}getQueryCache(){return this.#e}getMutationCache(){return this.#t}getDefaultOptions(){return this.#n}setDefaultOptions(e){this.#n=e}setQueryDefaults(e,t){this.#r.set(D(e),{queryKey:e,defaultOptions:t})}getQueryDefaults(e){let t=[...this.#r.values()],n={};return t.forEach(t=>{oe(e,t.queryKey)&&Object.assign(n,t.defaultOptions)}),n}setMutationDefaults(e,t){this.#i.set(D(e),{mutationKey:e,defaultOptions:t})}getMutationDefaults(e){let t=[...this.#i.values()],n={};return t.forEach(t=>{oe(e,t.mutationKey)&&Object.assign(n,t.defaultOptions)}),n}defaultQueryOptions(e){if(e._defaulted)return e;let t={...this.#n.queries,...this.getQueryDefaults(e.queryKey),...e,_defaulted:!0};return t.queryHash||=ae(t.queryKey,t),t.refetchOnReconnect===void 0&&(t.refetchOnReconnect=t.networkMode!==`always`),t.throwOnError===void 0&&(t.throwOnError=!!t.suspense),!t.networkMode&&t.persister&&(t.networkMode=`offlineFirst`),t.queryFn===_e&&(t.enabled=!1),t}defaultMutationOptions(e){return e?._defaulted?e:{...this.#n.mutations,...e?.mutationKey&&this.getMutationDefaults(e.mutationKey),...e,_defaulted:!0}}clear(){this.#e.clear(),this.#t.clear()}},Ze=o((e=>{(function(){function t(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===w?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case S:return`Suspense`;case ne:return`SuspenseList`;case C:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case ee:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case te:var n=e.render;return e=e.displayName,e||=(e=n.displayName||n.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return n=e.displayName||null,n===null?t(e.type)||`Memo`:n;case ie:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function n(e){return``+e}function r(e){try{n(e);var t=!1}catch{t=!0}if(t){t=console;var r=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return r.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),n(e)}}function i(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===ie)return`<...>`;try{var n=t(e);return n?`<`+n+`>`:`<...>`}catch{return`<...>`}}function a(){var e=T.A;return e===null?null:e.getOwner()}function o(){return Error(`react-stack-top-frame`)}function s(e){if(E.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function c(e,t){function n(){oe||(oe=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function l(){var e=t(this.type);return se[e]||(se[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function u(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:l}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,n,i,o,l,d){var f=n.children;if(f!==void 0){if(o){if(ae(f)){for(o=0;o<f.length;o++)p(f[o]);Object.freeze&&Object.freeze(f)}else console.error(`React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.`)}else p(f)}if(E.call(n,`key`)){f=t(e);var m=Object.keys(n).filter(function(e){return e!==`key`});o=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,ue[f+o]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}`,console.error(`A props object containing a "key" prop is being spread into JSX:
236
+ let props = %s;
237
+ <%s {...props} />
238
+ React keys must be passed directly to JSX without using spread:
239
+ let props = %s;
240
+ <%s key={someKey} {...props} />`,o,f,m,f),ue[f+o]=!0)}if(f=null,i!==void 0&&(r(i),f=``+i),s(n)&&(r(n.key),f=``+n.key),`key`in n)for(var h in i={},n)h!==`key`&&(i[h]=n[h]);else i=n;return f&&c(i,typeof e==`function`?e.displayName||e.name||`Unknown`:e),u(e,f,i,a(),l,d)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===ie&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=d(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),ee=Symbol.for(`react.context`),te=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),C=Symbol.for(`react.activity`),w=Symbol.for(`react.client.reference`),T=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,E=Object.prototype.hasOwnProperty,ae=Array.isArray,D=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var oe,se={},ce=h.react_stack_bottom_frame.bind(h,o)(),le=D(i(o)),ue={};e.Fragment=v,e.jsx=function(e,t,n){var r=1e4>T.recentlyCreatedOwnerStacks++;return f(e,t,n,!1,r?Error(`react-stack-top-frame`):ce,r?D(i(e)):le)},e.jsxs=function(e,t,n){var r=1e4>T.recentlyCreatedOwnerStacks++;return f(e,t,n,!0,r?Error(`react-stack-top-frame`):ce,r?D(i(e)):le)}})()})),Qe=o(((e,t)=>{t.exports=Ze()})),A=l(d(),1),$e=Qe(),et=A.createContext(void 0),j=e=>{let t=A.useContext(et);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},tt=({client:e,children:t})=>(A.useEffect(()=>(e.mount(),()=>{e.unmount()}),[e]),(0,$e.jsx)(et.Provider,{value:e,children:t})),nt=A.createContext(!1),rt=()=>A.useContext(nt);nt.Provider;function it(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var at=A.createContext(it()),ot=()=>A.useContext(at),st=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?ye(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},ct=e=>{A.useEffect(()=>{e.clearReset()},[e])},lt=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||ye(n,[e.error,r])),ut=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},dt=(e,t)=>e.isLoading&&e.isFetching&&!t,ft=(e,t)=>e?.suspense&&t.isPending,pt=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function mt(e,t,n){if(typeof e!=`object`||Array.isArray(e))throw Error(`Bad argument type. Starting with v5, only the "Object" form is allowed when calling query related functions. Please use the error stack to find the culprit call. More info here: https://tanstack.com/query/latest/docs/react/guides/migrating-to-v5#supports-a-single-signature-one-object`);let r=rt(),i=ot(),a=j(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash);o.queryFn||console.error(`[${o.queryHash}]: No queryFn was passed as an option, and no default queryFn was found. The queryFn parameter is only optional when using a default queryFn. More info here: https://tanstack.com/query/latest/docs/framework/react/guides/default-query-function`);let c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,ut(o),st(o,i,s),ct(i);let l=!a.getQueryCache().get(o.queryHash),[u]=A.useState(()=>new t(a,o)),d=u.getOptimisticResult(o),f=!r&&c;if(A.useSyncExternalStore(A.useCallback(e=>{let t=f?u.subscribe(we.batchCalls(e)):S;return u.updateResult(),t},[u,f]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),A.useEffect(()=>{u.setOptions(o)},[o,u]),ft(o,d))throw pt(o,u,i);if(lt({result:d,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw d.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,d),o.experimental_prefetchInRender&&!xe.isServer()&&dt(d,r)&&(l?pt(o,u,i):s?.promise)?.catch(S).finally(()=>{u.updateResult()}),o.notifyOnChangeProps?d:u.trackResult(d)}function ht(e,t){return mt(e,Le,t)}function gt(e,t){let n=j(t),[r]=A.useState(()=>new Je(n,e));A.useEffect(()=>{r.setOptions(e)},[r,e]);let i=A.useSyncExternalStore(A.useCallback(e=>r.subscribe(we.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),a=A.useCallback((e,t)=>{r.mutate(e,t).catch(S)},[r]);if(i.error&&ye(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:a,mutateAsync:i.mutate}}var _t=_();function vt(){if(typeof document>`u`)return``;let e=document.querySelector(`meta[name="invariant-ui-token"]`)?.content??``;return e.startsWith(`__`)?``:e}var yt=vt(),bt=class extends Error{status;code;detail;constructor(e,t,n,r={code:t,message:n}){super(n),this.status=e,this.code=t,this.detail=r,this.name=`ApiError`}get isConflict(){return this.status===409&&this.code.endsWith(`CONFLICT`)}get isMergeConflict(){return this.code===`SESSION_MERGE_CONFLICT`}get isNotTriaged(){return this.code===`REVIEW_NOT_TRIAGED`}get transcript(){return this.detail.transcript}get commandLine(){return this.detail.commandLine}get openCount(){return this.detail.openCount??0}};async function xt(e,t={}){let n=await fetch(e,{...t,headers:{"Content-Type":`application/json`,Authorization:`Bearer ${yt}`,...t.headers??{}}});if(!n.ok){let e=await n.json().catch(()=>void 0);throw new bt(n.status,e?.error.code??`UNKNOWN`,e?.error.message??`Request failed with ${n.status}.`,e?.error)}if(n.status!==204)return await n.json()}function St(e){return{...e,tags:e.tags??[],issues:e.issues??[],reviewSessionIds:e.reviewSessionIds??[]}}function Ct(e){let t=(t,n={})=>xt(`/api/p/${encodeURIComponent(e)}${t.replace(/^\/api/,``)}`,n);return{projectId:e,listLoops:()=>t(`/api/loops`),getLoop:e=>t(`/api/loops/`+encodeURIComponent(e)),loopTemplates:()=>t(`/api/loop-templates`),createLoop:e=>t(`/api/loops`,{method:`POST`,body:JSON.stringify(e)}),loopAction:(e,n,r={})=>t(`/api/loops/`+encodeURIComponent(e)+`/`+n,{method:`POST`,body:JSON.stringify(r)}),saveLoop:(e,n,r,i)=>t(`/api/loops/`+encodeURIComponent(e),{method:`PUT`,body:JSON.stringify({body:n,expectedEtag:r,baseBody:i})}),archiveLoop:e=>t(`/api/loops/`+encodeURIComponent(e),{method:`DELETE`}),project:()=>t(`/api/project`),listSessions:async()=>{let e=await t(`/api/sessions`);return{...e,sessions:(e.sessions??[]).map(St)}},getSession:async e=>St(await t(`/api/sessions/${e}`)),saveSession:async e=>{let n=await t(`/api/sessions/${e.sessionId}`,{method:`PUT`,headers:e.force?{}:{"If-Match":e.etag},body:JSON.stringify({body:e.body,baseBody:e.baseBody,force:e.force===!0})});return{session:St(n.session),merged:n.merged}},stashSessionBody:e=>t(`/api/sessions/${e.sessionId}/stash`,{method:`POST`,body:JSON.stringify({body:e.body})}),setStatus:async e=>St(await t(`/api/sessions/${e.sessionId}/status`,{method:`PATCH`,body:JSON.stringify({status:e.status,summary:e.summary})})),createSession:async e=>{let n=await t(`/api/sessions`,{method:`POST`,body:JSON.stringify(e)});return{...n,session:St(n.session)}},linkReviewParent:async e=>St(await t(`/api/sessions/${e.sessionId}/parent`,{method:`PATCH`,body:JSON.stringify({parentSessionId:e.parentSessionId})})),archiveSession:e=>t(`/api/sessions/${e}`,{method:`DELETE`}),migrateHeader:async e=>({migrated:((await t(e?`/api/sessions/${e}/migrate-header`:`/api/sessions/migrate-header`,{method:`POST`})).migrated??[]).map(St)}),git:()=>t(`/api/git`),listReviews:()=>t(`/api/reviews`),getReview:e=>t(`/api/reviews/${e}`),archiveReview:e=>t(`/api/reviews/${e}`,{method:`DELETE`}),requestReview:async e=>{let n=await t(`sessionId`in e?`/api/sessions/${e.sessionId}/review`:`/api/reviews`,{method:`POST`,body:JSON.stringify(`sessionId`in e?{base:e.base}:{standalone:!0,base:e.base})});return{...n,session:St(n.session)}},updateComment:e=>t(`/api/reviews/${e.slug}/comments/${e.commentId}`,{method:`PATCH`,headers:{"If-Match":e.etag},body:JSON.stringify({status:e.status,expectedStatus:e.expectedStatus,severity:e.severity,category:e.category,title:e.title,body:e.body})}),bulkUpdateComments:e=>t(`/api/reviews/${e.slug}/comments/bulk`,{method:`POST`,headers:{"If-Match":e.etag},body:JSON.stringify({ids:e.ids,status:e.status,expectedStatus:e.expectedStatus})}),planReviewChanges:async e=>{let n=await t(`/api/reviews/${e}/plan-changes`,{method:`POST`});return{...n,session:St(n.session)}},publishPreflight:(e,n)=>{let r=n?`?mergeRequestIid=${n}`:``;return t(`/api/reviews/${e}/publish/preflight${r}`)},publishReview:async e=>await t(`/api/reviews/${e.slug}/publish`,{method:`POST`,body:JSON.stringify({mergeRequestIid:e.mergeRequestIid,dryRun:e.dryRun,only:e.only})}),publisherSettings:()=>t(`/api/settings/publisher`),savePublisherSettings:e=>t(`/api/settings/publisher`,{method:`PUT`,body:JSON.stringify(e)}),removePublisherSettings:()=>t(`/api/settings/publisher`,{method:`DELETE`}),testPublisherSettings:()=>t(`/api/settings/publisher/test`,{method:`POST`}),integrations:()=>t(`/api/integrations`),linearSettings:()=>t(`/api/integrations/linear`),saveLinearSettings:e=>t(`/api/integrations/linear`,{method:`PUT`,body:JSON.stringify(e)}),removeLinearSettings:()=>t(`/api/integrations/linear`,{method:`DELETE`}),testLinearSettings:()=>t(`/api/integrations/linear/test`,{method:`POST`}),searchIssues:e=>{let n=new URLSearchParams({q:e.query});return e.teamKey&&n.set(`team`,e.teamKey),e.limit!==void 0&&n.set(`limit`,String(e.limit)),t(`/api/integrations/linear/issues?${n.toString()}`)},sessionIssue:e=>t(`/api/sessions/${e}/issue`),linkSessionIssue:async e=>St(await t(`/api/sessions/${e.sessionId}/issue`,{method:`POST`,body:JSON.stringify({reference:e.reference})})),unlinkSessionIssue:async e=>St(await t(`/api/sessions/${e}/issue`,{method:`DELETE`})),pullIssueSpec:async e=>St(await t(`/api/sessions/${e.sessionId}/issue/pull`,{method:`POST`,body:JSON.stringify({force:e.force===!0})})),pushIssueSpec:e=>t(`/api/sessions/${e.sessionId}/issue/push`,{method:`POST`,body:JSON.stringify({force:e.force===!0})}),targetSettings:()=>t(`/api/settings/targets`),saveTargetSettings:e=>t(`/api/settings/targets`,{method:`PUT`,body:JSON.stringify({targets:e})}),source:e=>{let n=new URLSearchParams({path:e.path});return e.line!==void 0&&n.set(`line`,String(e.line)),e.radius!==void 0&&n.set(`radius`,String(e.radius)),t(`/api/source?${n.toString()}`)},packages:()=>t(`/api/packages`),package:e=>t(`/api/packages/${Tt(e)}`),registryPackages:()=>t(`/api/registry/packages`),skillCatalog:(e,n)=>t(`/api/skills?view=${e}&page=${n}`),searchSkills:(e,n)=>{let r=new URLSearchParams({q:e});return n&&r.set(`owner`,n),t(`/api/skills/search?${r.toString()}`)},skillDetail:e=>t(`/api/skills/${encodeURIComponent(e.owner)}/${encodeURIComponent(e.repo)}/${encodeURIComponent(e.slug)}`),installPackage:e=>t(`/api/packages`,{method:`POST`,body:JSON.stringify(e)}),uninstallPackage:e=>t(`/api/packages/${Tt(e)}`,{method:`DELETE`}),applyPackageItems:e=>t(`/api/packages/${Tt(e.packageName)}/items`,{method:`POST`,body:JSON.stringify({add:e.add,remove:e.remove,all:e.all,sync:e.sync})}),sync:(e={})=>t(`/api/sync`,{method:`POST`,body:JSON.stringify(e)})}}var wt={projects:()=>xt(`/api/projects`),preferences:()=>xt(`/api/preferences`),saveTheme:e=>xt(`/api/preferences/appearance`,{method:`PUT`,body:JSON.stringify({theme:e})}),project:(e,t={})=>xt(`/api/projects/${encodeURIComponent(e)}${t.includeGit?`?include=git`:``}`),addProject:e=>xt(`/api/projects`,{method:`POST`,body:JSON.stringify({path:e})}),updateProject:(e,t)=>xt(`/api/projects/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify(t)}),createGroup:(e,t)=>xt(`/api/project-groups`,{method:`POST`,body:JSON.stringify({name:e,color:t})}),updateGroup:(e,t)=>xt(`/api/project-groups/${encodeURIComponent(e)}`,{method:`PATCH`,body:JSON.stringify(t)}),deleteGroup:e=>xt(`/api/project-groups/${encodeURIComponent(e)}`,{method:`DELETE`}),removeProject:e=>xt(`/api/projects/${encodeURIComponent(e)}`,{method:`DELETE`}),markOpened:e=>xt(`/api/projects/${encodeURIComponent(e)}/open`,{method:`POST`}),instance:()=>xt(`/api/instance`),shutdown:()=>xt(`/api/shutdown`,{method:`POST`}),eventsUrl:(e=[])=>{let t=new URLSearchParams({token:yt});return e.length>0&&t.set(`projects`,e.join(`,`)),`/api/events?${t.toString()}`}};function Tt(e){return encodeURIComponent(e)}var Et=o((e=>{(function(){function t(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===w?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case S:return`Suspense`;case ne:return`SuspenseList`;case C:return`Activity`}if(typeof e==`object`)switch(typeof e.tag==`number`&&console.error(`Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.`),e.$$typeof){case _:return`Portal`;case ee:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case te:var n=e.render;return e=e.displayName,e||=(e=n.displayName||n.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return n=e.displayName||null,n===null?t(e.type)||`Memo`:n;case ie:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function n(e){return``+e}function r(e){try{n(e);var t=!1}catch{t=!0}if(t){t=console;var r=t.error,i=typeof Symbol==`function`&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||`Object`;return r.call(t,`The provided key is an unsupported type %s. This value must be coerced to a string before using it here.`,i),n(e)}}function i(e){if(e===v)return`<>`;if(typeof e==`object`&&e&&e.$$typeof===ie)return`<...>`;try{var n=t(e);return n?`<`+n+`>`:`<...>`}catch{return`<...>`}}function a(){var e=T.A;return e===null?null:e.getOwner()}function o(){return Error(`react-stack-top-frame`)}function s(e){if(E.call(e,`key`)){var t=Object.getOwnPropertyDescriptor(e,`key`).get;if(t&&t.isReactWarning)return!1}return e.key!==void 0}function c(e,t){function n(){oe||(oe=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",t))}n.isReactWarning=!0,Object.defineProperty(e,"key",{get:n,configurable:!0})}function l(){var e=t(this.type);return se[e]||(se[e]=!0,console.error(`Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.`)),e=this.props.ref,e===void 0?null:e}function u(e,t,n,r,i,a){var o=n.ref;return e={$$typeof:g,type:e,key:t,props:n,_owner:r},(o===void 0?null:o)===null?Object.defineProperty(e,"ref",{enumerable:!1,value:null}):Object.defineProperty(e,"ref",{enumerable:!1,get:l}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:i}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:a}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function f(e,n,i,o,l,d){var f=n.children;if(f!==void 0){if(o){if(ae(f)){for(o=0;o<f.length;o++)p(f[o]);Object.freeze&&Object.freeze(f)}else console.error(`React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.`)}else p(f)}if(E.call(n,`key`)){f=t(e);var m=Object.keys(n).filter(function(e){return e!==`key`});o=0<m.length?`{key: someKey, `+m.join(`: ..., `)+`: ...}`:`{key: someKey}`,ue[f+o]||(m=0<m.length?`{`+m.join(`: ..., `)+`: ...}`:`{}`,console.error(`A props object containing a "key" prop is being spread into JSX:
241
+ let props = %s;
242
+ <%s {...props} />
243
+ React keys must be passed directly to JSX without using spread:
244
+ let props = %s;
245
+ <%s key={someKey} {...props} />`,o,f,m,f),ue[f+o]=!0)}if(f=null,i!==void 0&&(r(i),f=``+i),s(n)&&(r(n.key),f=``+n.key),`key`in n)for(var h in i={},n)h!==`key`&&(i[h]=n[h]);else i=n;return f&&c(i,typeof e==`function`?e.displayName||e.name||`Unknown`:e),u(e,f,i,a(),l,d)}function p(e){m(e)?e._store&&(e._store.validated=1):typeof e==`object`&&e&&e.$$typeof===ie&&(e._payload.status===`fulfilled`?m(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function m(e){return typeof e==`object`&&!!e&&e.$$typeof===g}var h=d(),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),ee=Symbol.for(`react.context`),te=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),C=Symbol.for(`react.activity`),w=Symbol.for(`react.client.reference`),T=h.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,E=Object.prototype.hasOwnProperty,ae=Array.isArray,D=console.createTask?console.createTask:function(){return null};h={react_stack_bottom_frame:function(e){return e()}};var oe,se={},ce=h.react_stack_bottom_frame.bind(h,o)(),le=D(i(o)),ue={};e.Fragment=v,e.jsxDEV=function(e,t,n,r){var a=1e4>T.recentlyCreatedOwnerStacks++;return f(e,t,n,r,a?Error(`react-stack-top-frame`):ce,a?D(i(e)):le)}})()})),Dt=o(((e,t)=>{t.exports=Et()})),M=Dt(),Ot=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/lib/project-context.tsx`,kt=(0,A.createContext)(void 0);function At({projectId:e,card:t,children:n}){let r=(0,A.useMemo)(()=>({projectId:e,card:t,api:Ct(e)}),[e,t]);return(0,M.jsxDEV)(kt.Provider,{value:r,children:n},void 0,!1,{fileName:Ot,lineNumber:38,columnNumber:10},this)}function jt(){let e=(0,A.useContext)(kt);if(!e)throw Error(`This component must be rendered inside a ProjectProvider.`);return e}function N(){return jt().api}function Mt(){return jt().projectId}var Nt=[`loop.created`,`loop.started`,`loop.advanced`,`loop.check.started`,`loop.check.ran`,`loop.decided`,`loop.waiting`,`loop.extended`,`loop.done`,`loop.stopped`,`loop.saved`,`loop.updated`,`loop.deleted`,`loop.archived`,`loop.recovered`];function Pt(){let e=N();return ht({queryKey:P().loops,queryFn:e.listLoops})}function Ft(e){let t=N();return ht({queryKey:P().loop(e),queryFn:()=>t.getLoop(e)})}function It(){let e=N();return ht({queryKey:P().loopTemplates,queryFn:e.loopTemplates})}function Lt(e){let t=N(),n=P(),r=j();return gt({mutationFn:({action:n,body:r})=>t.loopAction(e,n,r),onSuccess:()=>{r.invalidateQueries({queryKey:n.loops}),r.invalidateQueries({queryKey:n.sessions})}})}var Rt={projects:[`projects`],project:e=>[`projects`,e],instance:[`instance`],preferences:[`preferences`]};function zt(e){let t=[`p`,e];return{root:t,project:[...t,`project`],sessions:[...t,`sessions`],loops:[...t,`loops`],loop:e=>[...t,`loops`,e],loopTemplates:[...t,`loop-templates`],session:e=>[...t,`session`,e],git:[...t,`git`],reviews:[...t,`reviews`],review:e=>[...t,`review`,e],packages:[...t,`packages`],package:e=>[...t,`package`,e],registry:[...t,`registry`],skillCatalog:(e,n)=>[...t,`skills`,e,n],skillSearch:(e,n)=>[...t,`skills`,`search`,e,n??``],skillDetail:(e,n,r)=>[...t,`skills`,`detail`,e,n,r],publisherSettings:[...t,`settings`,`publisher`],integrations:[...t,`integrations`],linearSettings:[...t,`integrations`,`linear`],issueSearch:e=>[...t,`integrations`,`linear`,`search`,e],sessionIssue:e=>[...t,`session`,e,`issue`],targetSettings:[...t,`settings`,`targets`],publishPreflight:(e,n)=>[...t,`publish-preflight`,e,n??0]}}function P(){let e=Mt();return(0,A.useMemo)(()=>zt(e),[e])}function Bt(){let e=N();return ht({queryKey:P().project,queryFn:e.project,staleTime:6e4})}function Vt(){let e=N();return ht({queryKey:P().sessions,queryFn:e.listSessions})}function Ht(e){let t=N();return ht({queryKey:P().session(e??``),queryFn:()=>t.getSession(e),enabled:e!==void 0})}function Ut(){let e=N(),t=P(),n=j();return gt({mutationFn:e.setStatus,onSuccess:e=>{n.setQueryData(t.session(e.id),e),n.invalidateQueries({queryKey:t.sessions})}})}function Wt(){let e=N(),t=P(),n=j();return gt({mutationFn:e.saveSession,onSuccess:({session:e})=>{n.setQueryData(t.session(e.id),e),n.invalidateQueries({queryKey:t.sessions})}})}function Gt(){return gt({mutationFn:N().stashSessionBody})}function Kt(){let e=N(),t=P(),n=j();return gt({mutationFn:e.createSession,onSuccess:()=>n.invalidateQueries({queryKey:t.sessions})})}function qt(){let e=N(),t=P(),n=j();return gt({mutationFn:e.linkReviewParent,onSuccess:e=>{n.setQueryData(t.session(e.id),e),n.invalidateQueries({queryKey:t.sessions})}})}function Jt(){let e=N(),t=P(),n=j();return gt({mutationFn:e.archiveSession,onSuccess:()=>n.invalidateQueries({queryKey:t.sessions})})}function Yt(){let e=N(),t=P(),n=j();return gt({mutationFn:e.archiveReview,onSuccess:()=>{n.invalidateQueries({queryKey:t.reviews}),n.invalidateQueries({queryKey:t.sessions})}})}function Xt(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.migrateHeader(t),onSuccess:()=>n.invalidateQueries({queryKey:t.sessions})})}function Zt(){let e=N();return ht({queryKey:P().git,queryFn:e.git,staleTime:15e3})}function Qt(){let e=N();return ht({queryKey:P().reviews,queryFn:e.listReviews})}function $t(e){let t=N();return ht({queryKey:P().review(e??``),queryFn:()=>t.getReview(e),enabled:e!==void 0})}function en(e,t,n){e.setQueryData(t.review(n.slug),n),e.invalidateQueries({queryKey:t.reviews}),n.sessionId&&e.invalidateQueries({queryKey:t.session(n.sessionId)})}function tn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.updateComment,onSuccess:e=>en(n,t,e)})}function nn(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.bulkUpdateComments(t),onSuccess:e=>en(n,t,e)})}function rn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.requestReview,onSuccess:()=>{n.invalidateQueries({queryKey:t.sessions}),n.invalidateQueries({queryKey:t.reviews})}})}function an(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.planReviewChanges(t),onSuccess:e=>{en(n,t,e.review),n.setQueryData(t.session(e.session.id),e.session),n.invalidateQueries({queryKey:t.sessions})}})}function on(e,t,n=!0){let r=N();return ht({queryKey:P().publishPreflight(e??``,t),queryFn:()=>r.publishPreflight(e,t),enabled:n&&e!==void 0,retry:!1,gcTime:0,staleTime:0})}function sn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.publishReview,onSuccess:e=>{e.dryRun||(en(n,t,e.review),e.session&&(n.setQueryData(t.session(e.session.id),e.session),n.invalidateQueries({queryKey:t.sessions})))}})}function cn(){let e=N();return ht({queryKey:P().publisherSettings,queryFn:e.publisherSettings})}function ln(){let e=N(),t=P(),n=j();return gt({mutationFn:e.savePublisherSettings,onSuccess:e=>n.setQueryData(t.publisherSettings,e)})}function un(){let e=N(),t=P(),n=j();return gt({mutationFn:e.removePublisherSettings,onSuccess:e=>n.setQueryData(t.publisherSettings,e)})}function dn(){return gt({mutationFn:N().testPublisherSettings})}function fn(){let e=N();return ht({queryKey:P().integrations,queryFn:e.integrations,staleTime:6e4})}function pn(e){let{data:t}=fn();return(t?.integrations??[]).some(t=>t.configured&&t.capabilities.includes(e))}function mn(){let e=N();return ht({queryKey:P().linearSettings,queryFn:e.linearSettings})}function hn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.saveLinearSettings,onSuccess:e=>{n.setQueryData(t.linearSettings,e),n.invalidateQueries({queryKey:t.integrations})}})}function gn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.removeLinearSettings,onSuccess:e=>{n.setQueryData(t.linearSettings,e),n.invalidateQueries({queryKey:t.integrations})}})}function _n(){let e=N(),t=P(),n=j();return gt({mutationFn:e.testLinearSettings,onSuccess:()=>void n.invalidateQueries({queryKey:t.linearSettings})})}function vn(e,t=!0){let n=N(),r=P(),i=e.trim();return ht({queryKey:r.issueSearch(i),queryFn:()=>n.searchIssues({query:i}),enabled:t&&i.length>=2,staleTime:3e4,retry:!1})}function yn(e,t=!0){let n=N();return ht({queryKey:P().sessionIssue(e??``),queryFn:()=>n.sessionIssue(e),enabled:t&&e!==void 0,staleTime:15e3,retry:!1})}function bn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.linkSessionIssue,onSuccess:e=>wn(n,t,e)})}function xn(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.unlinkSessionIssue(t),onSuccess:e=>wn(n,t,e)})}function Sn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.pullIssueSpec,onSuccess:e=>wn(n,t,e)})}function Cn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.pushIssueSpec,onSuccess:e=>wn(n,t,e.session)})}function wn(e,t,n){e.setQueryData(t.session(n.id),n),e.invalidateQueries({queryKey:t.sessions}),e.invalidateQueries({queryKey:t.sessionIssue(n.id)})}function Tn(){let e=N();return ht({queryKey:P().targetSettings,queryFn:e.targetSettings})}function En(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.saveTargetSettings(t),onSuccess:e=>{n.setQueryData(t.targetSettings,e.settings),n.invalidateQueries({queryKey:t.project}),n.invalidateQueries({queryKey:t.packages})}})}function Dn(){let e=N();return ht({queryKey:P().packages,queryFn:e.packages})}function On(e,t,n=!0){let r=N();return ht({queryKey:P().skillCatalog(e,t),queryFn:()=>r.skillCatalog(e,t),enabled:n,retry:!1,staleTime:3e5})}function kn(e,t){let n=N(),r=P(),i=e.trim();return ht({queryKey:r.skillSearch(i,t),queryFn:()=>n.searchSkills(i,t),enabled:i.length>=2,retry:!1,staleTime:6e4})}function An(e){let t=N();return ht({queryKey:P().skillDetail(e?.owner??``,e?.repo??``,e?.slug??``),queryFn:()=>t.skillDetail(e),enabled:e!==void 0,retry:!1,staleTime:6e5})}function jn(e,t,n){e.invalidateQueries({queryKey:t.packages}),n&&e.invalidateQueries({queryKey:t.package(n)}),e.invalidateQueries({queryKey:t.project})}function Mn(){let e=N(),t=P(),n=j();return gt({mutationFn:e.installPackage,onSuccess:e=>jn(n,t,e.package?.name)})}function Nn(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.uninstallPackage(t),onSuccess:()=>jn(n,t)})}function Pn(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.applyPackageItems(t),onSuccess:e=>{n.setQueryData(t.package(e.package.name),e.package),jn(n,t,e.package.name)}})}function Fn(){let e=N(),t=P(),n=j();return gt({mutationFn:t=>e.sync(t),onSuccess:e=>{e.checked||n.invalidateQueries({queryKey:t.packages})}})}var In=[`session.created`,`session.updated`,`session.deleted`,`session.status.changed`,`session.title.changed`,`session.harness.changed`,`session.saved`,`session.step.completed`,`session.parent.linked`,`session.issue.linked`,`session.issue.unlinked`,`session.issue.pulled`,`session.issue.pushed`,`session.header.migrated`,`session.archived`],Ln=[`review.created`,`review.updated`,`review.deleted`,`review.comment.decided`,`review.comment.edited`,`review.plan-changes.applied`,`review.published`,`review.archived`];function Rn(){let e=Mt(),t=P(),n=j(),[r,i]=(0,A.useState)(`connecting`);return(0,A.useEffect)(()=>{let r=new EventSource(wt.eventsUrl([e])),a=t=>{try{let n=JSON.parse(t.data);return n.projectId&&n.projectId!==e?void 0:n}catch{return{}}},o=e=>{let r=a(e);r&&(n.invalidateQueries({queryKey:t.loops}),n.invalidateQueries({queryKey:t.sessions}),r.sessionId&&n.invalidateQueries({queryKey:t.session(r.sessionId)}))},s=e=>{let r=a(e);r&&(n.invalidateQueries({queryKey:t.loops}),n.invalidateQueries({queryKey:t.reviews}),n.invalidateQueries({queryKey:t.sessions}),r.slug&&n.invalidateQueries({queryKey:t.review(r.slug)}))};r.onopen=()=>i(`live`);for(let e of Nt)r.addEventListener(e,(e=>{a(e)&&n.invalidateQueries({queryKey:t.loops})}));r.onerror=()=>i(`offline`);for(let e of In)r.addEventListener(e,o);for(let e of Ln)r.addEventListener(e,s);r.addEventListener(`packages.changed`,e=>{a(e)&&(n.invalidateQueries({queryKey:t.packages}),n.invalidateQueries({queryKey:t.project}),n.invalidateQueries({queryKey:[...t.root,`package`]}))}),r.addEventListener(`projects.changed`,()=>{n.invalidateQueries({queryKey:Rt.projects})});let c=()=>{n.invalidateQueries({queryKey:t.loops}),n.invalidateQueries({queryKey:t.sessions}),n.invalidateQueries({queryKey:t.reviews}),n.invalidateQueries({queryKey:t.packages})};return window.addEventListener(`focus`,c),()=>{r.close(),window.removeEventListener(`focus`,c)}},[n,t,e]),r}function zn(e={}){return ht({queryKey:Rt.projects,queryFn:wt.projects,staleTime:3e3,refetchInterval:e.poll!==!1&&15e3})}function Bn(){return ht({queryKey:Rt.preferences,queryFn:wt.preferences,staleTime:3e4,refetchOnWindowFocus:!0})}function Vn(){let e=j();return gt({mutationFn:e=>wt.saveTheme(e),onSuccess:t=>e.setQueryData(Rt.preferences,e=>e&&{...e,...t})})}function Hn(){return ht({queryKey:Rt.instance,queryFn:wt.instance,staleTime:3e4})}function Un(){let e=j();return gt({mutationFn:e=>wt.addProject(e),onSuccess:()=>e.invalidateQueries({queryKey:Rt.projects})})}function Wn(){let e=j();return gt({mutationFn:e=>wt.removeProject(e),onSuccess:(t,n)=>{e.invalidateQueries({queryKey:Rt.projects}),e.removeQueries({queryKey:[`p`,n]})}})}function Gn(){let e=j();return gt({mutationFn:e=>wt.updateProject(e.projectId,{displayName:e.displayName,groupId:e.groupId,color:e.color}),onSuccess:()=>e.invalidateQueries({queryKey:Rt.projects})})}function Kn(){let e=j();return gt({mutationFn:e=>wt.createGroup(e.name,e.color),onSuccess:()=>e.invalidateQueries({queryKey:Rt.projects})})}function qn(){let e=j();return gt({mutationFn:e=>wt.deleteGroup(e),onSuccess:()=>e.invalidateQueries({queryKey:Rt.projects})})}function Jn(){let e=j();return gt({mutationFn:e=>wt.updateGroup(e.groupId,{name:e.name,color:e.color,collapsed:e.collapsed,order:e.order}),onMutate:async t=>{await e.cancelQueries({queryKey:Rt.projects});let n=e.getQueryData(Rt.projects);return n&&e.setQueryData(Rt.projects,{...n,groups:n.groups.map(e=>e.id===t.groupId?{...e,name:t.name??e.name,color:t.color??e.color,collapsed:t.collapsed??e.collapsed}:e)}),{previous:n}},onError:(t,n,r)=>{r?.previous&&e.setQueryData(Rt.projects,r.previous)},onSettled:()=>e.invalidateQueries({queryKey:Rt.projects})})}var Yn=3e4;function Xn(){let e=j();return(0,A.useCallback)((t,n)=>{wt.markOpened(t).catch(()=>void 0),!(!n||n===t)&&(e.cancelQueries({queryKey:[`p`,n]}),window.setTimeout(()=>{e.removeQueries({queryKey:[`p`,n]})},Yn))},[e])}function Zn(e){let t=e.split(/[^A-Za-z0-9]+/).filter(e=>e.length>0);return t.length===0?`??`:t.length===1?t[0].slice(0,2).toUpperCase():`${t[0][0]}${t[1][0]}`.toUpperCase()}function Qn(e){if(!e)return;let t=Date.parse(e);if(Number.isNaN(t))return;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<60)return`just now`;let r=Math.round(n/60);if(r<60)return`${r}m ago`;let i=Math.round(r/60);if(i<24)return`${i}h ago`;let a=Math.round(i/24);if(a<30)return`${a}d ago`;let o=Math.round(a/30);return o<12?`${o}mo ago`:`${Math.round(o/12)}y ago`}var $n=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/shell/Rail.tsx`;function er(e){return[{key:`loops`,label:`Loops`,route:{name:`loops`,projectId:e},icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`circle`,{cx:`5`,cy:`5`,r:`2`},void 0,!1,{fileName:$n,lineNumber:32,columnNumber:55},this),(0,M.jsxDEV)(`circle`,{cx:`15`,cy:`10`,r:`2`},void 0,!1,{fileName:$n,lineNumber:32,columnNumber:85},this),(0,M.jsxDEV)(`circle`,{cx:`5`,cy:`15`,r:`2`},void 0,!1,{fileName:$n,lineNumber:32,columnNumber:117},this),(0,M.jsxDEV)(`path`,{d:`M7 5h5q3 0 3 3M13 10H8q-3 0-3 3M5 13V7`},void 0,!1,{fileName:$n,lineNumber:32,columnNumber:148},this)]},void 0,!0,{fileName:$n,lineNumber:32,columnNumber:11},this)},{key:`sessions`,label:`Sessions`,route:{name:`sessions`,projectId:e},icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`3`,y:`3.5`,width:`14`,height:`13`,rx:`2.5`},void 0,!1,{fileName:$n,lineNumber:40,columnNumber:9},this),(0,M.jsxDEV)(`path`,{d:`M6.5 8h7M6.5 11.5h4.5`},void 0,!1,{fileName:$n,lineNumber:41,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:39,columnNumber:7},this)},{key:`reviews`,label:`Reviews`,route:{name:`reviews`,projectId:e},icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`path`,{d:`M3.5 4.5h13v9h-7.5L6 16.5v-3H3.5z`},void 0,!1,{fileName:$n,lineNumber:51,columnNumber:9},this),(0,M.jsxDEV)(`path`,{d:`M7 8h6M7 10.75h3.5`},void 0,!1,{fileName:$n,lineNumber:52,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:50,columnNumber:7},this)},{key:`packages`,label:`Packages`,route:{name:`packages`,projectId:e},icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`path`,{d:`M10 2.8 16.5 6v8L10 17.2 3.5 14V6z`},void 0,!1,{fileName:$n,lineNumber:62,columnNumber:9},this),(0,M.jsxDEV)(`path`,{d:`M3.5 6 10 9.4 16.5 6M10 9.4v7.8`},void 0,!1,{fileName:$n,lineNumber:63,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:61,columnNumber:7},this)},{key:`settings`,label:`Settings`,route:{name:`settings`,projectId:e},icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`circle`,{cx:`10`,cy:`10`,r:`2.6`},void 0,!1,{fileName:$n,lineNumber:73,columnNumber:9},this),(0,M.jsxDEV)(`path`,{d:`M10 2.6v2M10 15.4v2M2.6 10h2M15.4 10h2M4.8 4.8l1.4 1.4M13.8 13.8l1.4 1.4M15.2 4.8l-1.4 1.4M6.2 13.8l-1.4 1.4`},void 0,!1,{fileName:$n,lineNumber:74,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:72,columnNumber:7},this)}]}function tr({route:e,projectId:t,card:n,onNavigate:r,onOpenPalette:i,onOpenHub:a,onSwitchProject:o,live:s,loopAttention:c=0}){let l=n?.name??`Project`;return(0,M.jsxDEV)(`nav`,{className:`rail`,"aria-label":`Primary`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`rail__hub`,onClick:a,title:`All projects (⇧⌘H)`,children:[(0,M.jsxDEV)(`svg`,{viewBox:`0 0 24 24`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`path`,{d:`M12 3.2 20 7.6v8.8L12 20.8 4 16.4V7.6z`},void 0,!1,{fileName:$n,lineNumber:106,columnNumber:11},this),(0,M.jsxDEV)(`path`,{d:`M12 8.4v7.2`},void 0,!1,{fileName:$n,lineNumber:107,columnNumber:11},this)]},void 0,!0,{fileName:$n,lineNumber:105,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`visually-hidden`,children:`All projects`},void 0,!1,{fileName:$n,lineNumber:109,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:104,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`rail__project rail__project--${n?.color??`indigo`}`,onClick:o,title:`${l}${n?` — ${n.directory}`:``}\nSwitch project (⌘P)`,children:[(0,M.jsxDEV)(`span`,{className:`rail__monogram`,children:Zn(l)},void 0,!1,{fileName:$n,lineNumber:118,columnNumber:9},this),(0,M.jsxDEV)(`svg`,{className:`rail__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M3 4.5 6 7.5 9 4.5`},void 0,!1,{fileName:$n,lineNumber:120,columnNumber:11},this)},void 0,!1,{fileName:$n,lineNumber:119,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`visually-hidden`,children:[`Switch project — currently `,l]},void 0,!0,{fileName:$n,lineNumber:122,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:112,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`rail__items`,children:er(t).map(t=>{let n=t.route.name===e.name||t.key===`loops`&&e.name===`loop`||t.key===`reviews`&&e.name===`review`||t.key===`sessions`&&e.name===`session`;return(0,M.jsxDEV)(`button`,{type:`button`,className:`rail__item${n?` is-active`:``}`,onClick:()=>r(t.route),title:t.label,"aria-current":n?`page`:void 0,children:[t.icon,t.key===`loops`&&c>0&&(0,M.jsxDEV)(`span`,{className:`loops__badge`,children:c},void 0,!1,{fileName:$n,lineNumber:144,columnNumber:61},this),(0,M.jsxDEV)(`span`,{className:`visually-hidden`,children:t.label},void 0,!1,{fileName:$n,lineNumber:145,columnNumber:15},this)]},t.key,!0,{fileName:$n,lineNumber:135,columnNumber:13},this)})},void 0,!1,{fileName:$n,lineNumber:125,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`rail__foot`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`rail__item`,onClick:i,title:`Command palette (⌘K)`,children:[(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`3`,y:`4.5`,width:`14`,height:`11`,rx:`2.5`},void 0,!1,{fileName:$n,lineNumber:154,columnNumber:13},this),(0,M.jsxDEV)(`path`,{d:`M6.5 9 8.6 11 6.5 13M11 13h3`},void 0,!1,{fileName:$n,lineNumber:155,columnNumber:13},this)]},void 0,!0,{fileName:$n,lineNumber:153,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`visually-hidden`,children:`Command palette`},void 0,!1,{fileName:$n,lineNumber:157,columnNumber:11},this)]},void 0,!0,{fileName:$n,lineNumber:152,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`rail__live rail__live--${s}`,title:s===`live`?`Live — watching for changes`:s===`connecting`?`Connecting…`:`Disconnected — retrying`},void 0,!1,{fileName:$n,lineNumber:159,columnNumber:9},this)]},void 0,!0,{fileName:$n,lineNumber:151,columnNumber:7},this)]},void 0,!0,{fileName:$n,lineNumber:103,columnNumber:5},this)}var nr=[[60,1,`s`],[3600,60,`m`],[86400,3600,`h`],[2592e3,86400,`d`]];function rr(e){let t=new Date(e).getTime();if(Number.isNaN(t))return`—`;let n=Math.max(0,Math.round((Date.now()-t)/1e3));if(n<10)return`just now`;for(let[e,t,r]of nr)if(n<e)return`${Math.floor(n/t)}${r} ago`;return new Date(t).toLocaleDateString(void 0,{month:`short`,day:`numeric`})}function ir(e){let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function ar(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function or(e,t){if(t.length===0)return 0;let n=e.toLowerCase(),r=t.toLowerCase(),i=0,a=0,o=0;for(let e of r){let t=n.indexOf(e,a);if(t===-1)return null;o=t===a?o+1:0,i+=10+o*6,(t===0||/[\s\-_/.]/.test(n[t-1]))&&(i+=8),i-=Math.min(t-a,12),a=t+1}return i-n.length*.05}async function sr(e){try{return await navigator.clipboard.writeText(e),!0}catch{return!1}}function cr(e,t=46){if(e.length<=t)return e;let n=e.split(`/`),r=[],i=1;for(let e=n.length-1;e>=0;--e){let a=i+n[e].length+1;if(a>t&&r.length>0)break;r.unshift(n[e]),i=a}return`…/${r.join(`/`)}`}var lr=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/Toasts.tsx`,ur=(0,A.createContext)(()=>void 0);function dr(){return(0,A.useContext)(ur)}var fr=3400;function pr({children:e}){let[t,n]=(0,A.useState)([]),r=(0,A.useCallback)((e,t=`info`)=>{let r=Date.now()+Math.random();n(n=>[...n,{id:r,message:e,tone:t}]),setTimeout(()=>n(e=>e.filter(e=>e.id!==r)),fr)},[]),i=(0,A.useMemo)(()=>r,[r]);return(0,M.jsxDEV)(ur.Provider,{value:i,children:[e,(0,M.jsxDEV)(`div`,{className:`toasts`,role:`status`,"aria-live":`polite`,children:t.map(e=>(0,M.jsxDEV)(`div`,{className:`toast toast--${e.tone}`,children:e.message},e.id,!1,{fileName:lr,lineNumber:35,columnNumber:11},this))},void 0,!1,{fileName:lr,lineNumber:33,columnNumber:7},this)]},void 0,!0,{fileName:lr,lineNumber:31,columnNumber:5},this)}var mr=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/shell/ProjectHeaderIdentity.tsx`;function hr({title:e,projectName:t,projectDirectory:n,onSwitchProject:r}){let i=dr(),a=n?cr(n):``,o=a.lastIndexOf(`/`),s=o>0?a.slice(0,o):``,c=o>=0?a.slice(o):a;return(0,M.jsxDEV)(`div`,{className:`project-header`,children:[(0,M.jsxDEV)(`div`,{className:`project-header__line`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`project-header__switch`,onClick:r,title:`Switch project — ${t}`,"aria-label":`Switch project — currently ${t}`,"aria-haspopup":`dialog`,children:[(0,M.jsxDEV)(`span`,{className:`project-header__name`,children:t},void 0,!1,{fileName:mr,lineNumber:35,columnNumber:11},this),(0,M.jsxDEV)(`svg`,{viewBox:`0 0 16 16`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`m5 6.5 3 3 3-3`},void 0,!1,{fileName:mr,lineNumber:37,columnNumber:13},this)},void 0,!1,{fileName:mr,lineNumber:36,columnNumber:11},this)]},void 0,!0,{fileName:mr,lineNumber:27,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`project-header__separator`,"aria-hidden":`true`,children:`/`},void 0,!1,{fileName:mr,lineNumber:40,columnNumber:9},this),(0,M.jsxDEV)(`h1`,{className:`topbar__title`,children:e},void 0,!1,{fileName:mr,lineNumber:41,columnNumber:9},this)]},void 0,!0,{fileName:mr,lineNumber:26,columnNumber:7},this),n&&(0,M.jsxDEV)(`button`,{type:`button`,className:`project-header__path`,title:`${n} — click to copy`,"aria-label":`Copy project path: ${n}`,onClick:async()=>{let e=await sr(n);i(e?`Path copied`:`Could not copy path`,e?`success`:`danger`)},children:[(0,M.jsxDEV)(`span`,{className:`project-header__path-text`,children:[s&&(0,M.jsxDEV)(`span`,{className:`project-header__path-parent`,children:s},void 0,!1,{fileName:mr,lineNumber:56,columnNumber:28},this),(0,M.jsxDEV)(`span`,{className:`project-header__path-name`,children:c},void 0,!1,{fileName:mr,lineNumber:57,columnNumber:13},this)]},void 0,!0,{fileName:mr,lineNumber:55,columnNumber:11},this),(0,M.jsxDEV)(`svg`,{viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`5.5`,y:`5.5`,width:`7`,height:`7`,rx:`1.5`},void 0,!1,{fileName:mr,lineNumber:60,columnNumber:13},this),(0,M.jsxDEV)(`path`,{d:`M9.5 3.5v-1h-7v7h1`},void 0,!1,{fileName:mr,lineNumber:61,columnNumber:13},this)]},void 0,!0,{fileName:mr,lineNumber:59,columnNumber:11},this)]},void 0,!0,{fileName:mr,lineNumber:45,columnNumber:9},this)]},void 0,!0,{fileName:mr,lineNumber:25,columnNumber:5},this)}var gr=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/ConfirmDialog.tsx`;function _r({title:e,body:t,confirmLabel:n=`Discard`,cancelLabel:r=`Cancel`,tone:i=`danger`,onConfirm:a,onCancel:o}){let s=(0,A.useRef)(null),c=(0,A.useId)(),l=(0,A.useId)();return(0,A.useEffect)(()=>{s.current?.focus()},[]),(0,M.jsxDEV)(`div`,{className:`modal__confirm`,role:`alertdialog`,"aria-modal":`true`,"aria-labelledby":c,"aria-describedby":l,onKeyDown:e=>{e.key===`Escape`&&(e.stopPropagation(),e.preventDefault(),o())},children:(0,M.jsxDEV)(`div`,{className:`modal__confirm-card`,children:[(0,M.jsxDEV)(`h3`,{id:c,className:`modal__confirm-title`,children:e},void 0,!1,{fileName:gr,lineNumber:60,columnNumber:9},this),(0,M.jsxDEV)(`p`,{id:l,className:`modal__text`,children:t},void 0,!1,{fileName:gr,lineNumber:61,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`modal__confirm-actions`,children:[(0,M.jsxDEV)(`button`,{ref:s,type:`button`,className:`button button--ghost`,onClick:o,children:r},void 0,!1,{fileName:gr,lineNumber:63,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--${i}`,onClick:a,children:n},void 0,!1,{fileName:gr,lineNumber:66,columnNumber:11},this)]},void 0,!0,{fileName:gr,lineNumber:62,columnNumber:9},this)]},void 0,!0,{fileName:gr,lineNumber:59,columnNumber:7},this)},void 0,!1,{fileName:gr,lineNumber:44,columnNumber:5},this)}var vr=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/Modal.tsx`,yr=(0,A.createContext)(void 0);function br(){let e=(0,A.useContext)(yr);if(!e)throw Error(`useModalClose must be used inside a <Modal>`);return e}var xr=`a[href], button, input, select, textarea, [tabindex]`;function Sr(e){return Array.from(e.querySelectorAll(xr)).filter(e=>e.hasAttribute(`disabled`)||e.getAttribute(`aria-hidden`)===`true`||e.getAttribute(`tabindex`)===`-1`?!1:!(e instanceof HTMLInputElement&&e.type===`hidden`))}function Cr(e){let t=e.querySelector(`[data-autofocus]`);if(t)return t;let n=e.querySelector(`.modal__body`);return(n?Sr(n)[0]:void 0)??e}function wr({title:e,onClose:t,children:n,footer:r,width:i=560,dirty:a=!1,confirmClose:o,closeOnOverlayClick:s=!0}){let c=(0,A.useRef)(null),[l,u]=(0,A.useState)(!1),d=(0,A.useId)(),f=(0,A.useRef)(t),p=(0,A.useRef)(a),m=(0,A.useRef)(l);(0,A.useEffect)(()=>{f.current=t,p.current=a,m.current=l});let h=(0,A.useRef)(null),g=(0,A.useRef)(!1),_=(0,A.useCallback)(e=>{if(!p.current){f.current();return}e!==`overlay`&&u(!0)},[]);(0,A.useEffect)(()=>{let e=c.current;if(!e)return;let t=document.activeElement instanceof HTMLElement?document.activeElement:null,n=Cr(e);n.focus(),h.current=n;let r=e=>{if(e.key===`Escape`){if(e.stopPropagation(),m.current){u(!1);return}_(`escape`)}},i=t=>{let n=t.target instanceof HTMLElement?t.target:null;if(n&&e.contains(n)){n.closest(`.modal__confirm`)||(h.current=n);return}g.current||(t.relatedTarget===null||n===document.body)&&(g.current=!0,(h.current?.isConnected?h.current:Cr(e)).focus(),g.current=!1)},a=()=>{document.activeElement instanceof HTMLElement&&e.contains(document.activeElement)||(h.current?.isConnected?h.current:Cr(e)).focus()};return document.addEventListener(`keydown`,r),document.addEventListener(`focusin`,i),window.addEventListener(`focus`,a),()=>{document.removeEventListener(`keydown`,r),document.removeEventListener(`focusin`,i),window.removeEventListener(`focus`,a),t?.isConnected&&t.focus()}},[_]);let v=e=>{if(e.key!==`Tab`||!c.current)return;let t=Sr(c.current);if(t.length===0)return;let n=t[0],r=t[t.length-1],i=document.activeElement;if(e.shiftKey&&(i===n||i===c.current)){e.preventDefault(),r.focus();return}!e.shiftKey&&i===r&&(e.preventDefault(),n.focus())},y=()=>{u(!1),h.current?.isConnected&&h.current.focus()},b=(0,A.useCallback)(()=>_(`button`),[_]);return(0,M.jsxDEV)(yr.Provider,{value:b,children:(0,M.jsxDEV)(`div`,{className:`overlay`,onMouseDown:e=>{e.target===e.currentTarget&&s&&_(`overlay`)},children:(0,M.jsxDEV)(`div`,{className:`modal`,style:{maxWidth:i},role:`dialog`,"aria-modal":`true`,"aria-labelledby":d,tabIndex:-1,ref:c,onKeyDown:v,children:[(0,M.jsxDEV)(`header`,{className:`modal__header`,children:[(0,M.jsxDEV)(`h2`,{className:`modal__title`,id:d,children:e},void 0,!1,{fileName:vr,lineNumber:235,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,onClick:b,"aria-label":`Close`,children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 14 14`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M3.5 3.5l7 7M10.5 3.5l-7 7`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`},void 0,!1,{fileName:vr,lineNumber:238,columnNumber:17},this)},void 0,!1,{fileName:vr,lineNumber:237,columnNumber:15},this)},void 0,!1,{fileName:vr,lineNumber:236,columnNumber:13},this)]},void 0,!0,{fileName:vr,lineNumber:234,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`modal__body`,children:n},void 0,!1,{fileName:vr,lineNumber:242,columnNumber:11},this),r&&(0,M.jsxDEV)(`footer`,{className:`modal__footer`,children:r},void 0,!1,{fileName:vr,lineNumber:243,columnNumber:22},this),l&&(0,M.jsxDEV)(_r,{title:o?.title??`Discard what you typed?`,body:o?.body??`This dialog holds text that has not been submitted. Closing it loses that text.`,confirmLabel:o?.confirmLabel??`Discard`,cancelLabel:o?.cancelLabel??`Keep editing`,onConfirm:()=>{u(!1),f.current()},onCancel:y},void 0,!1,{fileName:vr,lineNumber:246,columnNumber:13},this)]},void 0,!0,{fileName:vr,lineNumber:224,columnNumber:9},this)},void 0,!1,{fileName:vr,lineNumber:216,columnNumber:7},this)},void 0,!1,{fileName:vr,lineNumber:215,columnNumber:5},this)}var Tr=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/NewLoopModal.tsx`;function Er({busy:e,created:t=!1,error:n,onClose:r,onSubmit:i}){let a=It(),o=Vt(),s=`invariant.loop-draft.`+Mt(),[c,l]=(0,A.useState)(`feature`),[u,d]=(0,A.useState)(()=>{try{return localStorage.getItem(s)??``}catch{return``}}),[f,p]=(0,A.useState)(`yarn test`),[m,h]=(0,A.useState)(``),[g,_]=(0,A.useState)(!1);return(0,A.useEffect)(()=>{try{localStorage.setItem(s,u)}catch{}},[u,s]),(0,M.jsxDEV)(wr,{title:`New loop`,onClose:r,dirty:u.trim().length>0,width:760,footer:(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:e||!u.trim()||!f.trim()||c===`review-cycle`&&!m,onClick:()=>i({template:c,goal:u,vars:{check:f},sessionId:m||void 0,advance:g?`manual`:`auto`}),children:e?`Preparing…`:t?`Retry starting the saved loop`:`Create and start loop`},void 0,!1,{fileName:Tr,lineNumber:14,columnNumber:103},this),children:[n&&(0,M.jsxDEV)(`p`,{role:`alert`,children:n},void 0,!1,{fileName:Tr,lineNumber:15,columnNumber:15},this),a.error&&(0,M.jsxDEV)(`p`,{role:`alert`,children:a.error.message},void 0,!1,{fileName:Tr,lineNumber:16,columnNumber:25},this),(0,M.jsxDEV)(`fieldset`,{className:`loops__form`,disabled:t||e,children:[(0,M.jsxDEV)(`div`,{className:`loops__templates`,role:`group`,"aria-label":`Loop template`,children:a.data?.templates.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`loops__template`+(e.name===c?` is-selected`:``),"aria-pressed":e.name===c,onClick:()=>l(e.name),children:[(0,M.jsxDEV)(`svg`,{viewBox:`0 0 200 38`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`path`,{d:e.name===`tdd`?`M20 19H180M120 19V5H20V19`:e.name===`review-cycle`?`M20 19H180M180 19V5H70V19`:`M20 19H180M155 19V5H80V19`},void 0,!1,{fileName:Tr,lineNumber:20,columnNumber:54},this),[20,70,120,180].map(e=>(0,M.jsxDEV)(`circle`,{cx:e,cy:`19`,r:`6`},e,!1,{fileName:Tr,lineNumber:20,columnNumber:236},this))]},void 0,!0,{fileName:Tr,lineNumber:20,columnNumber:9},this),(0,M.jsxDEV)(`strong`,{children:e.title},void 0,!1,{fileName:Tr,lineNumber:21,columnNumber:9},this),(0,M.jsxDEV)(`span`,{children:e.description},void 0,!1,{fileName:Tr,lineNumber:21,columnNumber:38},this)]},e.name,!0,{fileName:Tr,lineNumber:19,columnNumber:46},this))},void 0,!1,{fileName:Tr,lineNumber:18,columnNumber:5},this),(0,M.jsxDEV)(`label`,{className:`loops__field`,children:[`What should this loop achieve?`,(0,M.jsxDEV)(`textarea`,{"data-autofocus":!0,rows:4,value:u,onChange:e=>d(e.target.value),placeholder:`Describe the result and what makes it acceptable.`,maxLength:8e3},void 0,!1,{fileName:Tr,lineNumber:24,columnNumber:67},this)]},void 0,!0,{fileName:Tr,lineNumber:24,columnNumber:5},this),(0,M.jsxDEV)(`label`,{className:`loops__field`,children:[`Check command`,(0,M.jsxDEV)(`input`,{value:f,onChange:e=>p(e.target.value)},void 0,!1,{fileName:Tr,lineNumber:25,columnNumber:50},this),(0,M.jsxDEV)(`small`,{children:`Runs in this project when the loop reaches a check.`},void 0,!1,{fileName:Tr,lineNumber:25,columnNumber:122},this)]},void 0,!0,{fileName:Tr,lineNumber:25,columnNumber:5},this),(0,M.jsxDEV)(`label`,{className:`loops__field`,children:[`Existing session `,c!==`review-cycle`&&`(optional)`,(0,M.jsxDEV)(`select`,{value:m,onChange:e=>h(e.target.value),children:[(0,M.jsxDEV)(`option`,{value:``,children:`Create a new session`},void 0,!1,{fileName:Tr,lineNumber:26,columnNumber:174},this),o.data?.sessions.filter(e=>e.kind===`plan`).map(e=>(0,M.jsxDEV)(`option`,{value:e.id,children:e.title},e.id,!1,{fileName:Tr,lineNumber:26,columnNumber:285},this))]},void 0,!0,{fileName:Tr,lineNumber:26,columnNumber:99},this)]},void 0,!0,{fileName:Tr,lineNumber:26,columnNumber:5},this),(0,M.jsxDEV)(`label`,{children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:g,onChange:e=>_(e.target.checked)},void 0,!1,{fileName:Tr,lineNumber:27,columnNumber:12},this),` Advance each step manually`]},void 0,!0,{fileName:Tr,lineNumber:27,columnNumber:5},this)]},void 0,!0,{fileName:Tr,lineNumber:17,columnNumber:5},this),(0,M.jsxDEV)(`p`,{className:`loops__muted`,children:`Each agent step gives you a line to paste into your harness. Reviews ask for a new conversation.`},void 0,!1,{fileName:Tr,lineNumber:29,columnNumber:5},this)]},void 0,!0,{fileName:Tr,lineNumber:14,columnNumber:10},this)}var F=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/LoopsPage.tsx`;function Dr({onOpen:e}){let t=Pt(),n=N(),r=P(),i=j(),a=Mt(),[o,s]=(0,A.useState)(!1),[c,l]=(0,A.useState)(!1),[u,d]=(0,A.useState)(``),[f,p]=(0,A.useState)(``),[m,h]=(0,A.useState)(),g=async t=>{l(!0),d(``);try{let o=m??(await n.createLoop(t)).id;h(o),await n.loopAction(o,`start`);try{localStorage.removeItem(`invariant.loop-draft.`+a)}catch{}i.invalidateQueries({queryKey:r.loops}),s(!1),h(void 0),e(o)}catch(e){d(e instanceof Error?e.message:String(e))}finally{l(!1)}},_=t.data?.loops.filter(e=>(e.title+` `+e.next.stage).toLowerCase().includes(f.toLowerCase()))??[];return(0,M.jsxDEV)(`div`,{className:`loops`,children:[(0,M.jsxDEV)(`header`,{className:`loops__header`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`span`,{className:`loops__eyebrow`,children:`Sessions, connected`},void 0,!1,{fileName:F,lineNumber:23,columnNumber:44},this),(0,M.jsxDEV)(`h1`,{children:`Loops`},void 0,!1,{fileName:F,lineNumber:23,columnNumber:103},this),(0,M.jsxDEV)(`p`,{children:`One goal. Recorded checks. A clear next move.`},void 0,!1,{fileName:F,lineNumber:23,columnNumber:117},this)]},void 0,!0,{fileName:F,lineNumber:23,columnNumber:39},this),(0,M.jsxDEV)(`button`,{className:`button button--solid`,onClick:()=>s(!0),children:`New loop`},void 0,!1,{fileName:F,lineNumber:23,columnNumber:175},this)]},void 0,!0,{fileName:F,lineNumber:23,columnNumber:5},this),(0,M.jsxDEV)(`div`,{className:`loops__toolbar`,children:[(0,M.jsxDEV)(`label`,{children:[`Find a loop`,(0,M.jsxDEV)(`input`,{type:`search`,value:f,onChange:e=>p(e.target.value),placeholder:`Title or stage`},void 0,!1,{fileName:F,lineNumber:24,columnNumber:55},this)]},void 0,!0,{fileName:F,lineNumber:24,columnNumber:37},this),(0,M.jsxDEV)(`span`,{children:[t.data?.waitingOnYou??0,` waiting on you · `,t.data?.counts.active??0,` active`]},void 0,!0,{fileName:F,lineNumber:24,columnNumber:180},this)]},void 0,!0,{fileName:F,lineNumber:24,columnNumber:5},this),t.error&&(0,M.jsxDEV)(`p`,{role:`alert`,children:t.error.message},void 0,!1,{fileName:F,lineNumber:25,columnNumber:21},this),t.isLoading?(0,M.jsxDEV)(`p`,{children:`Loading loops…`},void 0,!1,{fileName:F,lineNumber:26,columnNumber:24},this):_.length===0?(0,M.jsxDEV)(`div`,{className:`loops__empty`,children:[(0,M.jsxDEV)(`span`,{"aria-hidden":`true`,children:`⟳`},void 0,!1,{fileName:F,lineNumber:26,columnNumber:99},this),(0,M.jsxDEV)(`h2`,{children:f?`No matching loops`:`Give the next step a place to go`},void 0,!1,{fileName:F,lineNumber:26,columnNumber:132},this),(0,M.jsxDEV)(`p`,{children:`Create a loop to connect building, checks, review and your final decision.`},void 0,!1,{fileName:F,lineNumber:26,columnNumber:208},this),(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>s(!0),children:`Choose a template`},void 0,!1,{fileName:F,lineNumber:26,columnNumber:289},this)]},void 0,!0,{fileName:F,lineNumber:26,columnNumber:69},this):(0,M.jsxDEV)(`table`,{className:`loops__table`,children:[(0,M.jsxDEV)(`thead`,{children:(0,M.jsxDEV)(`tr`,{children:[(0,M.jsxDEV)(`th`,{children:`Loop`},void 0,!1,{fileName:F,lineNumber:27,columnNumber:50},this),(0,M.jsxDEV)(`th`,{children:`Current step`},void 0,!1,{fileName:F,lineNumber:27,columnNumber:63},this),(0,M.jsxDEV)(`th`,{children:`Waiting on`},void 0,!1,{fileName:F,lineNumber:27,columnNumber:84},this),(0,M.jsxDEV)(`th`,{children:`Progress`},void 0,!1,{fileName:F,lineNumber:27,columnNumber:103},this)]},void 0,!0,{fileName:F,lineNumber:27,columnNumber:46},this)},void 0,!1,{fileName:F,lineNumber:27,columnNumber:39},this),(0,M.jsxDEV)(`tbody`,{children:_.map(t=>(0,M.jsxDEV)(`tr`,{children:[(0,M.jsxDEV)(`td`,{children:[(0,M.jsxDEV)(`button`,{className:`crumbs__link`,onClick:()=>e(t.id),children:t.title},void 0,!1,{fileName:F,lineNumber:27,columnNumber:181},this),(0,M.jsxDEV)(`small`,{children:[t.template,` · `,t.status]},void 0,!0,{fileName:F,lineNumber:27,columnNumber:267},this)]},void 0,!0,{fileName:F,lineNumber:27,columnNumber:177},this),(0,M.jsxDEV)(`td`,{children:t.next.stage},void 0,!1,{fileName:F,lineNumber:27,columnNumber:318},this),(0,M.jsxDEV)(`td`,{children:t.next.waitingOn===`human`?`You`:t.next.waitingOn},void 0,!1,{fileName:F,lineNumber:27,columnNumber:344},this),(0,M.jsxDEV)(`td`,{children:[t.next.iterations.used,`/`,t.next.iterations.max]},void 0,!0,{fileName:F,lineNumber:27,columnNumber:416},this)]},t.id,!0,{fileName:F,lineNumber:27,columnNumber:159},this))},void 0,!1,{fileName:F,lineNumber:27,columnNumber:133},this)]},void 0,!0,{fileName:F,lineNumber:27,columnNumber:7},this),o&&(0,M.jsxDEV)(Er,{created:!!m,busy:c,error:u,onClose:()=>{s(!1),m&&(e(m),h(void 0))},onSubmit:e=>void g(e)},void 0,!1,{fileName:F,lineNumber:28,columnNumber:18},this)]},void 0,!0,{fileName:F,lineNumber:22,columnNumber:10},this)}var Or=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/NextBar.tsx`;function kr({next:e,busy:t,onAction:n,onOpenSession:r}){let[i,a]=(0,A.useState)(``),[o,s]=(0,A.useState)(!1),[c,l]=(0,A.useState)(!1),[u,d]=(0,A.useState)(``),f=e.node,p=async e=>{try{await navigator.clipboard.writeText(e),l(!0),d(``)}catch{d(`Copy was unavailable. Select and copy the line below.`)}};return(0,M.jsxDEV)(`section`,{className:`loops__next is-`+e.waitingOn,"aria-label":`Next action`,children:[(0,M.jsxDEV)(`div`,{className:`loops__next-heading`,children:[(0,M.jsxDEV)(`span`,{className:`loops__eyebrow`,children:e.waitingOn===`human`?`Your move`:e.waitingOn===`agent`?`Agent’s move`:`Loop status`},void 0,!1,{fileName:Or,lineNumber:14,columnNumber:42},this),(0,M.jsxDEV)(`strong`,{"aria-live":`polite`,children:e.stage},void 0,!1,{fileName:Or,lineNumber:14,columnNumber:186},this)]},void 0,!0,{fileName:Or,lineNumber:14,columnNumber:5},this),(0,M.jsxDEV)(`div`,{className:`loops__next-main`,children:[(0,M.jsxDEV)(`p`,{children:e.instruction},void 0,!1,{fileName:Or,lineNumber:16,columnNumber:7},this),e.paste&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`loops__guidance`,children:e.paste.guidance},void 0,!1,{fileName:Or,lineNumber:17,columnNumber:24},this),(0,M.jsxDEV)(`div`,{className:`loops__paste`,children:[(0,M.jsxDEV)(`code`,{children:e.paste.line},void 0,!1,{fileName:Or,lineNumber:17,columnNumber:110},this),(0,M.jsxDEV)(`button`,{className:`button button--solid`,onClick:()=>void p(e.paste.line),children:c?`Copied`:`Copy handoff`},void 0,!1,{fileName:Or,lineNumber:17,columnNumber:140},this)]},void 0,!0,{fileName:Or,lineNumber:17,columnNumber:80},this)]},void 0,!0,{fileName:Or,lineNumber:17,columnNumber:22},this),e.after&&(0,M.jsxDEV)(`p`,{className:`loops__after`,children:[`After this: `,e.after.on,` → `,e.after.to]},void 0,!0,{fileName:Or,lineNumber:18,columnNumber:22},this),u&&(0,M.jsxDEV)(`p`,{role:`alert`,children:u},void 0,!1,{fileName:Or,lineNumber:19,columnNumber:21},this),(0,M.jsxDEV)(`div`,{className:`loops__actions`,children:[e.stage===`Draft`&&(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:t,onClick:()=>n(`start`),children:`Start loop`},void 0,!1,{fileName:Or,lineNumber:21,columnNumber:36},this),e.stage===`Advance`&&(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:t,onClick:()=>n(`advance`),children:`Advance loop`},void 0,!1,{fileName:Or,lineNumber:22,columnNumber:38},this),e.stage===`Refused`&&(0,M.jsxDEV)(`button`,{className:`button`,disabled:t,onClick:()=>n(`advance`),children:`Retry preparation`},void 0,!1,{fileName:Or,lineNumber:23,columnNumber:38},this),(e.stage===`Check`||e.stage===`Check interrupted`||e.stage===`Checking`)&&f&&(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:t,onClick:()=>n(`checks/`+f.key+`/run`,{retry:e.stage!==`Check`}),children:e.stage===`Checking`?`Recover interrupted check`:`Run check`},void 0,!1,{fileName:Or,lineNumber:24,columnNumber:113},this),e.stage===`Approval`&&f&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:t,onClick:()=>n(`decisions`,{node:f.key,visit:f.visit,outcome:`approved`}),children:`Accept result`},void 0,!1,{fileName:Or,lineNumber:26,columnNumber:11},this),(0,M.jsxDEV)(`button`,{className:`button`,disabled:t,onClick:()=>s(!o),children:`Request another pass`},void 0,!1,{fileName:Or,lineNumber:27,columnNumber:11},this)]},void 0,!0,{fileName:Or,lineNumber:25,columnNumber:47},this),e.stage===`Exhausted`&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:t,onClick:()=>n(`extend`,{iterations:2,edge:e.iterations.edge?.key}),children:`Extend by 2`},void 0,!1,{fileName:Or,lineNumber:30,columnNumber:11},this),(0,M.jsxDEV)(`button`,{className:`button`,disabled:t,onClick:()=>s(!o),children:`Take over or stop`},void 0,!1,{fileName:Or,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:Or,lineNumber:29,columnNumber:40},this),f?.sessionId&&!e.paste&&(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>r(f.sessionId),children:`Open session`},void 0,!1,{fileName:Or,lineNumber:33,columnNumber:44},this),e.nextCommand&&![`Draft`,`Advance`,`Refused`,`Approval`,`Exhausted`].includes(e.stage)&&(0,M.jsxDEV)(`button`,{className:`button button--quiet`,onClick:()=>void p(`invariant `+e.nextCommand),children:`Copy next command`},void 0,!1,{fileName:Or,lineNumber:34,columnNumber:112},this)]},void 0,!0,{fileName:Or,lineNumber:20,columnNumber:7},this),o&&(0,M.jsxDEV)(`div`,{className:`loops__reason`,children:[(0,M.jsxDEV)(`label`,{children:[`What should happen next?`,(0,M.jsxDEV)(`textarea`,{value:i,onChange:e=>a(e.target.value),maxLength:8e3},void 0,!1,{fileName:Or,lineNumber:37,columnNumber:40},this)]},void 0,!0,{fileName:Or,lineNumber:37,columnNumber:9},this),e.stage===`Approval`?(0,M.jsxDEV)(`button`,{className:`button`,disabled:t||!i.trim(),onClick:()=>n(`decisions`,{node:f?.key,visit:f?.visit,outcome:`rejected`,note:i}),children:`Request changes`},void 0,!1,{fileName:Or,lineNumber:39,columnNumber:13},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`button`,{className:`button`,disabled:t||!i.trim(),onClick:()=>n(`decisions`,{node:f?.key,visit:f?.visit,outcome:`approved`,override:!0,note:i}),children:`Accept with override`},void 0,!1,{fileName:Or,lineNumber:40,columnNumber:15},this),(0,M.jsxDEV)(`button`,{className:`button`,disabled:t||!i.trim(),onClick:()=>n(`stop`,{reason:i.slice(0,160)}),children:`Stop loop`},void 0,!1,{fileName:Or,lineNumber:40,columnNumber:235},this)]},void 0,!0,{fileName:Or,lineNumber:40,columnNumber:13},this)]},void 0,!0,{fileName:Or,lineNumber:36,columnNumber:21},this)]},void 0,!0,{fileName:Or,lineNumber:15,columnNumber:5},this)]},void 0,!0,{fileName:Or,lineNumber:13,columnNumber:10},this)}var Ar=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/LoopInspector.tsx`;function jr({detail:e,selected:t,onOpenSession:n}){let r=e.graph.nodes.find(e=>e.key===t)??e.graph.nodes.find(t=>t.key===e.next.node?.key)??e.graph.nodes[0];if(!r)return(0,M.jsxDEV)(`aside`,{className:`loops__inspector`,children:`Add a valid graph to inspect its steps.`},void 0,!1,{fileName:Ar,lineNumber:4,columnNumber:21},this);let i=e.run.filter(e=>e.node===r.key).slice().reverse(),a=i.find(e=>e.type===`binding`);return(0,M.jsxDEV)(`aside`,{className:`loops__inspector`,"aria-label":`Selected step`,children:[(0,M.jsxDEV)(`span`,{className:`loops__eyebrow`,children:r.kind},void 0,!1,{fileName:Ar,lineNumber:8,columnNumber:5},this),(0,M.jsxDEV)(`h2`,{children:r.title},void 0,!1,{fileName:Ar,lineNumber:8,columnNumber:56},this),a?.session&&(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>n(a.session),children:[`Open session · visit `,a.iteration]},void 0,!0,{fileName:Ar,lineNumber:9,columnNumber:26},this),r.run&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`h3`,{children:`Check command`},void 0,!1,{fileName:Ar,lineNumber:10,columnNumber:20},this),(0,M.jsxDEV)(`code`,{children:r.run},void 0,!1,{fileName:Ar,lineNumber:10,columnNumber:42},this),(0,M.jsxDEV)(`p`,{children:[`Timeout `,r.timeout,`s · expects `,r.expect]},void 0,!0,{fileName:Ar,lineNumber:10,columnNumber:65},this)]},void 0,!0,{fileName:Ar,lineNumber:10,columnNumber:18},this),r.prompt&&(0,M.jsxDEV)(`details`,{className:`brief`,children:[(0,M.jsxDEV)(`summary`,{children:`Step instructions`},void 0,!1,{fileName:Ar,lineNumber:11,columnNumber:48},this),(0,M.jsxDEV)(`pre`,{children:r.prompt},void 0,!1,{fileName:Ar,lineNumber:11,columnNumber:84},this)]},void 0,!0,{fileName:Ar,lineNumber:11,columnNumber:21},this),(0,M.jsxDEV)(`h3`,{children:`Recorded evidence`},void 0,!1,{fileName:Ar,lineNumber:12,columnNumber:5},this),i.filter(e=>[`evidence`,`decision`,`refused`].includes(e.type)).length===0&&(0,M.jsxDEV)(`p`,{className:`loops__muted`,children:`No evidence recorded for this step yet.`},void 0,!1,{fileName:Ar,lineNumber:13,columnNumber:96},this),i.filter(e=>[`evidence`,`decision`,`refused`].includes(e.type)).map(e=>(0,M.jsxDEV)(`details`,{className:`loops__record`,open:e.id===i[0]?.id,children:[(0,M.jsxDEV)(`summary`,{children:[e.outcome??e.type,` · visit `,e.iteration]},void 0,!0,{fileName:Ar,lineNumber:15,columnNumber:7},this),(0,M.jsxDEV)(`small`,{children:[e.at,e.by&&` · `+e.by]},void 0,!0,{fileName:Ar,lineNumber:16,columnNumber:7},this),e.exit!==void 0&&(0,M.jsxDEV)(`p`,{children:[`Exit `,e.exit,` · `,Math.round((e.duration??0)/1e3),`s`]},void 0,!0,{fileName:Ar,lineNumber:17,columnNumber:37},this),e.text&&(0,M.jsxDEV)(`pre`,{children:e.text},void 0,!1,{fileName:Ar,lineNumber:18,columnNumber:23},this)]},e.id,!0,{fileName:Ar,lineNumber:14,columnNumber:94},this))]},void 0,!0,{fileName:Ar,lineNumber:7,columnNumber:10},this)}var Mr=`modulepreload`,Nr=function(e){return`/`+e},Pr={},Fr=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}function s(e){return import.meta.resolve?import.meta.resolve(e):new URL(e,import.meta.url).href}r=o(t.map(t=>{if(t=Nr(t,n),t=s(t),t in Pr)return;Pr[t]=!0;let r=t.endsWith(`.css`);for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}let i=document.createElement(`link`);if(i.rel=r?`stylesheet`:Mr,r||(i.as=`script`),i.crossOrigin=``,i.href=t,a&&i.setAttribute(`nonce`,a),document.head.appendChild(i),r)return new Promise((e,n)=>{i.addEventListener(`load`,e),i.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},Ir=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/LoopPage.tsx`,Lr=(0,A.lazy)(()=>Fr(()=>import(`./LoopGraph-DHwsLYLI.js`).then(e=>({default:e.LoopGraph})),__vite__mapDeps([0,1]))),Rr=(0,A.lazy)(()=>Fr(()=>import(`./Editor-Cmu6OATc.js`).then(e=>({default:e.Editor})),[]));function zr({loopId:e,onBack:t,onOpenSession:n}){let r=Ft(e),i=Lt(e),a=N(),o=j(),s=P(),c=`invariant.loop-editor.`+Mt()+`.`+e,[l]=(0,A.useState)(()=>{try{let e=localStorage.getItem(c);return e?JSON.parse(e):void 0}catch{return}}),[u,d]=(0,A.useState)(),[f,p]=(0,A.useState)(l?`file`:`graph`),[m,h]=(0,A.useState)(l?.buffer),[g,_]=(0,A.useState)(l),[v,y]=(0,A.useState)(``),[b,x]=(0,A.useState)(!1),[ee,te]=(0,A.useState)(),S=r.data,ne=m!==void 0&&g!==void 0&&m!==g.body;if((0,A.useEffect)(()=>{try{ne&&g?localStorage.setItem(c,JSON.stringify({...g,buffer:m})):localStorage.removeItem(c)}catch{}},[c,ne,g,m]),(0,A.useEffect)(()=>{if(!ne)return;let e=e=>{e.preventDefault(),e.returnValue=``};return window.addEventListener(`beforeunload`,e),()=>window.removeEventListener(`beforeunload`,e)},[ne]),r.isLoading)return(0,M.jsxDEV)(`div`,{className:`loops`,children:`Loading loop…`},void 0,!1,{fileName:Ir,lineNumber:28,columnNumber:31},this);if(!S)return(0,M.jsxDEV)(`div`,{className:`loops`,children:[(0,M.jsxDEV)(`button`,{className:`button`,onClick:t,children:`Back to loops`},void 0,!1,{fileName:Ir,lineNumber:29,columnNumber:46},this),(0,M.jsxDEV)(`p`,{role:`alert`,children:r.error?.message??`Loop unavailable.`},void 0,!1,{fileName:Ir,lineNumber:29,columnNumber:112},this)]},void 0,!0,{fileName:Ir,lineNumber:29,columnNumber:23},this);let re=(e,t)=>{y(``),i.mutate({action:e,body:t},{onError:e=>y(e.message)})},ie=async()=>{if(!(m===void 0||!g)){x(!0),y(``);try{let t=await a.saveLoop(e,m,g.etag,g.body);_({body:t.body,etag:t.etag}),h(t.body),o.setQueryData(s.loop(e),t),o.invalidateQueries({queryKey:s.loops})}catch(e){y(e instanceof Error?e.message:String(e))}finally{x(!1)}}};return(0,M.jsxDEV)(`div`,{className:`loops`,children:[(0,M.jsxDEV)(`header`,{className:`loops__header`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`button`,{className:`crumbs__link`,onClick:t,children:`← Loops`},void 0,!1,{fileName:Ir,lineNumber:47,columnNumber:12},this),(0,M.jsxDEV)(`h1`,{children:S.title},void 0,!1,{fileName:Ir,lineNumber:47,columnNumber:78},this),(0,M.jsxDEV)(`p`,{children:S.goal},void 0,!1,{fileName:Ir,lineNumber:47,columnNumber:101},this)]},void 0,!0,{fileName:Ir,lineNumber:47,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`loops__actions`,children:[(0,M.jsxDEV)(`span`,{className:`loops__muted`,children:[S.next.iterations.used,`/`,S.next.iterations.max,` transitions`]},void 0,!0,{fileName:Ir,lineNumber:48,columnNumber:39},this),(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>{f===`graph`?(ne||(h(S.body),_({body:S.body,etag:S.etag})),p(`file`)):p(`graph`)},children:f===`graph`?`Edit file`:`Show graph`},void 0,!1,{fileName:Ir,lineNumber:49,columnNumber:9},this),S.status===`active`&&(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>te(ee===void 0?``:void 0),children:`Stop`},void 0,!1,{fileName:Ir,lineNumber:50,columnNumber:40},this),S.status!==`active`&&(0,M.jsxDEV)(`button`,{className:`button`,onClick:()=>{a.archiveLoop(e).then(()=>{o.invalidateQueries({queryKey:s.loops}),t()}).catch(e=>y(String(e)))},children:`Archive`},void 0,!1,{fileName:Ir,lineNumber:51,columnNumber:40},this)]},void 0,!0,{fileName:Ir,lineNumber:48,columnNumber:7},this)]},void 0,!0,{fileName:Ir,lineNumber:46,columnNumber:5},this),ee!==void 0&&(0,M.jsxDEV)(`div`,{className:`loops__reason`,children:[(0,M.jsxDEV)(`label`,{children:[`Reason for stopping`,(0,M.jsxDEV)(`input`,{value:ee,onChange:e=>te(e.target.value),maxLength:160},void 0,!1,{fileName:Ir,lineNumber:54,columnNumber:91},this)]},void 0,!0,{fileName:Ir,lineNumber:54,columnNumber:65},this),(0,M.jsxDEV)(`button`,{className:`button`,disabled:!ee.trim()||i.isPending,onClick:()=>re(`stop`,{reason:ee}),children:`Stop loop`},void 0,!1,{fileName:Ir,lineNumber:54,columnNumber:197},this)]},void 0,!0,{fileName:Ir,lineNumber:54,columnNumber:34},this),(v||S.issues.length>0||S.findings.length>0)&&(0,M.jsxDEV)(`div`,{className:`banner banner--error`,role:`alert`,children:v||[...S.issues,...S.findings.map(e=>e.message)].join(`
246
+ `)},void 0,!1,{fileName:Ir,lineNumber:55,columnNumber:75},this),(0,M.jsxDEV)(kr,{next:S.next,busy:i.isPending,onAction:re,onOpenSession:n},S.next.node?.visit??S.status,!1,{fileName:Ir,lineNumber:56,columnNumber:5},this),f===`graph`?(0,M.jsxDEV)(`div`,{className:`loops__workspace`,children:[(0,M.jsxDEV)(A.Suspense,{fallback:(0,M.jsxDEV)(`div`,{className:`loops__canvas`,children:`Loading graph…`},void 0,!1,{fileName:Ir,lineNumber:58,columnNumber:27},this),children:(0,M.jsxDEV)(Lr,{detail:S,selected:u??S.next.node?.key,onSelect:d,onOpenSession:n},void 0,!1,{fileName:Ir,lineNumber:58,columnNumber:80},this)},void 0,!1,{fileName:Ir,lineNumber:58,columnNumber:7},this),(0,M.jsxDEV)(jr,{detail:S,selected:u,onOpenSession:n},void 0,!1,{fileName:Ir,lineNumber:59,columnNumber:7},this)]},void 0,!0,{fileName:Ir,lineNumber:57,columnNumber:25},this):(0,M.jsxDEV)(`section`,{className:`loops__editor`,children:[(0,M.jsxDEV)(`div`,{className:`loops__actions`,children:[(0,M.jsxDEV)(`span`,{children:`Edits are kept in this browser until saved. Header and run history are managed by invariant.`},void 0,!1,{fileName:Ir,lineNumber:60,columnNumber:81},this),(0,M.jsxDEV)(`button`,{className:`button button--solid`,disabled:b||!ne,onClick:()=>void ie(),children:b?`Saving…`:`Save file`},void 0,!1,{fileName:Ir,lineNumber:60,columnNumber:186},this)]},void 0,!0,{fileName:Ir,lineNumber:60,columnNumber:49},this),(0,M.jsxDEV)(A.Suspense,{fallback:(0,M.jsxDEV)(`p`,{children:`Loading editor…`},void 0,!1,{fileName:Ir,lineNumber:60,columnNumber:352},this),children:(0,M.jsxDEV)(Rr,{value:m??S.body,onChange:h,onSave:()=>void ie()},void 0,!1,{fileName:Ir,lineNumber:60,columnNumber:376},this)},void 0,!1,{fileName:Ir,lineNumber:60,columnNumber:332},this)]},void 0,!0,{fileName:Ir,lineNumber:60,columnNumber:14},this),(0,M.jsxDEV)(`details`,{className:`loops__history`,children:[(0,M.jsxDEV)(`summary`,{children:[`Run history · `,S.run.length,` records`]},void 0,!0,{fileName:Ir,lineNumber:61,columnNumber:41},this),(0,M.jsxDEV)(`ol`,{children:S.run.map(e=>(0,M.jsxDEV)(`li`,{children:[(0,M.jsxDEV)(`time`,{children:e.at},void 0,!1,{fileName:Ir,lineNumber:61,columnNumber:151},this),` · `,e.node,` #`,e.iteration,` · `,e.type,e.outcome&&` · `+e.outcome]},e.id,!0,{fileName:Ir,lineNumber:61,columnNumber:131},this))},void 0,!1,{fileName:Ir,lineNumber:61,columnNumber:101},this)]},void 0,!0,{fileName:Ir,lineNumber:61,columnNumber:5},this)]},void 0,!0,{fileName:Ir,lineNumber:45,columnNumber:10},this)}var Br=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/SelectCheckbox.tsx`;function Vr({checked:e,label:t,disabled:n,onChange:r}){return(0,M.jsxDEV)(`input`,{type:`checkbox`,className:`select-box`,"aria-label":t,checked:e,disabled:n,onClick:e=>e.stopPropagation(),onChange:e=>{let t=e.nativeEvent;r(e.target.checked,{range:t.shiftKey===!0})}},void 0,!1,{fileName:Br,lineNumber:20,columnNumber:5},this)}function Hr({state:e,label:t,disabled:n,onChange:r}){let i=(0,A.useRef)(null);return(0,A.useEffect)(()=>{i.current&&(i.current.indeterminate=e===`some`)},[e]),(0,M.jsxDEV)(`input`,{ref:i,type:`checkbox`,className:`select-box`,"aria-label":t,"aria-checked":e===`some`?`mixed`:e===`all`,checked:e===`all`,disabled:n,onClick:e=>e.stopPropagation(),onChange:()=>r(e!==`all`)},void 0,!1,{fileName:Br,lineNumber:55,columnNumber:5},this)}var Ur=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/StatusGlyph.tsx`;function Wr({status:e,kind:t=`plan`,size:n=10}){return(0,M.jsxDEV)(`span`,{className:`glyph glyph--${e}${t===`review`?` glyph--kind-review`:``}`,style:{width:n,height:n},"aria-hidden":`true`,children:[(e===`in-progress`||e===`planning`)&&(0,M.jsxDEV)(`span`,{className:`glyph__pulse`},void 0,!1,{fileName:Ur,lineNumber:41,columnNumber:63},this),e===`review`&&(0,M.jsxDEV)(`span`,{className:`glyph__ring`},void 0,!1,{fileName:Ur,lineNumber:42,columnNumber:31},this),e===`executed`&&(0,M.jsxDEV)(`svg`,{className:`glyph__check`,viewBox:`0 0 10 10`,focusable:`false`,children:(0,M.jsxDEV)(`path`,{d:`M2.2 5.2 4.1 7 7.8 3.2`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:Ur,lineNumber:45,columnNumber:11},this)},void 0,!1,{fileName:Ur,lineNumber:44,columnNumber:9},this)]},void 0,!0,{fileName:Ur,lineNumber:36,columnNumber:5},this)}var Gr=[`reviewing`,`triage`,`fixes`,`done`],Kr={reviewing:`Reviewing`,triage:`Triage`,fixes:`Fixes`,done:`Done`};function qr(e,t){return e.kind===`review`?Yr(e.status,t):Jr(e.status)}function Jr(e){switch(e){case`draft`:return{label:`Draft`,holder:`you`,hint:`No plan yet — paste the execute line to have an agent write one.`,action:{kind:`copy-execute`}};case`planning`:return{label:`Planning`,holder:`agent`,hint:`An agent is reading the task and writing the plan.`,action:{kind:`none`}};case`planned`:return{label:`Planned`,holder:`you`,hint:`A plan is written and waiting for your go-ahead.`,action:{kind:`write-plan`}};case`in-progress`:return{label:`Building`,holder:`agent`,hint:`An agent is implementing this plan.`,action:{kind:`none`}};case`executed`:return{label:`Done`,holder:`you`,hint:`The work is finished — this is the moment a review is worth asking for.`,action:{kind:`request-review`}};default:return{label:`Review`,holder:`you`,hint:`This plan session claims the review status, which only a review session may hold.`,action:{kind:`none`}}}}function Yr(e,t){let n=t?.counts,r=t?.status===`published`;switch(e){case`draft`:return{label:`Awaiting reviewer`,holder:`agent`,hint:`Paste the execute line into a NEW conversation — a fresh agent has not seen the plan.`,action:{kind:`copy-execute`},step:`reviewing`};case`planning`:return{label:`Reviewing`,holder:`agent`,hint:`An agent is reading the diff and writing the review document.`,action:{kind:`none`},step:`reviewing`};case`in-progress`:return{label:`Fixing`,holder:`agent`,hint:`An agent is implementing the comments you staged.`,action:{kind:`none`},step:`fixes`};case`review`:return n&&n.open===0?{label:`Triaged`,holder:`you`,hint:`Every comment is decided — plan the changes, or publish them to GitLab.`,action:{kind:`triage`,openCount:0},step:`triage`}:{label:n?`Triage · ${n.open}`:`Triage`,holder:`you`,hint:n?`${n.open} of ${n.total} comment(s) still need a decision.`:`Every comment is waiting for a decision.`,action:{kind:`triage`,openCount:n?.open??0},step:`triage`};case`planned`:return{label:`Fixes planned`,holder:`you`,hint:`The comments you staged are written into the Plan — paste the execute line to implement them.`,action:{kind:`copy-execute`},step:`fixes`};case`executed`:return r?{label:`Published`,holder:`you`,hint:`The staged comments are on the merge request — nothing left to implement here.`,action:{kind:`none`},step:`done`}:n&&n.staged===0&&n.total>0?{label:`Closed`,holder:`you`,hint:`Every comment was discarded, so there was nothing to implement.`,action:{kind:`none`},step:`done`}:{label:`Fixed`,holder:`you`,hint:`The staged comments have been implemented.`,action:{kind:`none`},step:`done`};default:return{label:`Review`,holder:`you`,hint:`Unknown review stage.`,action:{kind:`none`},step:`reviewing`}}}function Xr(e,t){let n=Gr.indexOf(e),r=Gr.indexOf(t);return n===r?0:n<r?-1:1}var Zr=[`in-progress`,`planning`,`review`,`draft`,`planned`,`executed`],Qr=Zr.filter(e=>e!==`review`),$r="`Review` is set by writing a review, and cleared by planning its changes or publishing them.",ei=[`blocker`,`major`,`minor`,`nit`,`praise`],ti={blocker:`Blocker`,major:`Major`,minor:`Minor`,nit:`Nit`,praise:`Praise`},ni=[`correctness`,`security`,`performance`,`architecture`,`test`,`docs`,`style`],ri=[`agents`,`skills`,`commands`,`rules`,`contexts`,`instructions`],ii=[`claude`,`codex`,`cursor`,`aider`,`copilot`],ai=[`indigo`,`violet`,`plum`,`teal`,`sand`,`rose`,`sky`,`moss`],oi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/StatusPill.tsx`;function si({status:e,kind:t=`plan`,review:n,onChange:r,onTriage:i,disabled:a}){let[o,s]=(0,A.useState)(!1),c=(0,A.useRef)(null);(0,A.useEffect)(()=>{if(!o)return;let e=e=>{c.current?.contains(e.target)||s(!1)},t=e=>{e.key===`Escape`&&s(!1)};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[o]);let l=qr({kind:t,status:e},n),u=`pill pill--${e}${t===`review`?` pill--kind-review`:``}`;if(e===`review`&&i)return(0,M.jsxDEV)(`button`,{type:`button`,className:`${u} pill--interactive`,onClick:i,disabled:a,title:l.hint,children:[(0,M.jsxDEV)(Wr,{status:e,kind:t},void 0,!1,{fileName:oi,lineNumber:69,columnNumber:9},this),l.label]},void 0,!0,{fileName:oi,lineNumber:62,columnNumber:7},this);if(!r)return(0,M.jsxDEV)(`span`,{className:u,title:l.hint,children:[(0,M.jsxDEV)(Wr,{status:e,kind:t},void 0,!1,{fileName:oi,lineNumber:78,columnNumber:9},this),l.label]},void 0,!0,{fileName:oi,lineNumber:77,columnNumber:7},this);let d=t===`review`?Zr:Qr;return(0,M.jsxDEV)(`div`,{className:`pill-menu`,ref:c,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`${u} pill--interactive`,onClick:()=>s(e=>!e),disabled:a,title:l.hint,"aria-haspopup":`menu`,"aria-expanded":o,children:[(0,M.jsxDEV)(Wr,{status:e,kind:t},void 0,!1,{fileName:oi,lineNumber:99,columnNumber:9},this),l.label,(0,M.jsxDEV)(`svg`,{className:`pill__caret`,viewBox:`0 0 10 10`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M2.5 4 5 6.5 7.5 4`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:oi,lineNumber:102,columnNumber:11},this)},void 0,!1,{fileName:oi,lineNumber:101,columnNumber:9},this)]},void 0,!0,{fileName:oi,lineNumber:90,columnNumber:7},this),o&&(0,M.jsxDEV)(`div`,{className:`pill-menu__list`,role:`menu`,children:[d.map(i=>{let a=i===`review`,o=qr({kind:t,status:i},n).label;return(0,M.jsxDEV)(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":i===e,"aria-disabled":a||void 0,title:a?"`Review` is set by writing a review, and cleared by planning its changes or publishing them.":void 0,className:`pill-menu__item${i===e?` is-active`:``}${a?` is-locked`:``}`,onClick:()=>{a||(s(!1),i!==e&&r(i))},children:[(0,M.jsxDEV)(Wr,{status:i,kind:t},void 0,!1,{fileName:oi,lineNumber:129,columnNumber:17},this),o,a&&(0,M.jsxDEV)(`span`,{className:`pill-menu__lock`,"aria-hidden":`true`,title:"`Review` is set by writing a review, and cleared by planning its changes or publishing them.",children:`🔒`},void 0,!1,{fileName:oi,lineNumber:132,columnNumber:19},this)]},i,!0,{fileName:oi,lineNumber:113,columnNumber:15},this)}),t===`review`&&(0,M.jsxDEV)(`p`,{className:`pill-menu__note`,children:"`Review` is set by writing a review, and cleared by planning its changes or publishing them."},void 0,!1,{fileName:oi,lineNumber:140,columnNumber:33},this)]},void 0,!0,{fileName:oi,lineNumber:108,columnNumber:9},this)]},void 0,!0,{fileName:oi,lineNumber:89,columnNumber:5},this)}var ci={claude:`Claude`,codex:`Codex`,cursor:`Cursor`,copilot:`Copilot`,aider:`Aider`,gemini:`Gemini`,windsurf:`Windsurf`};function li(e){return Object.prototype.hasOwnProperty.call(ci,e)?ci[e]:e}function ui(e){return e===`planning`||e===`in-progress`}function di(e,t){let n=li(e);return ui(t)?`${n} is driving this session`:`Last driven by ${n}`}var fi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/HarnessBadge.tsx`;function pi({harness:e,status:t}){if(!e)return null;let n=ui(t);return(0,M.jsxDEV)(`span`,{className:`harness harness--${n?`live`:`idle`}`,title:di(e,t),children:[n&&(0,M.jsxDEV)(`span`,{className:`harness__dot`,"aria-hidden":`true`},void 0,!1,{fileName:fi,lineNumber:9,columnNumber:16},this),(0,M.jsxDEV)(`span`,{className:`harness__label`,children:li(e)},void 0,!1,{fileName:fi,lineNumber:10,columnNumber:7},this)]},void 0,!0,{fileName:fi,lineNumber:8,columnNumber:5},this)}var mi=[`.xml`,`.md`];function hi(e){let t=e.split(`/`).pop()??e,n=mi.find(e=>t.toLowerCase().endsWith(e));return n?t.slice(0,-n.length):t}function gi(e,t,n){return e.filter(e=>(t===`all`||e.status===t)&&(n===`all`||e.severity===n))}function _i(e,t){let n=e.findIndex(e=>e.id===t);return(n===-1?e:[...e.slice(n+1),...e.slice(0,n)]).find(e=>e.id!==t&&e.status===`open`)}function vi(e,t){let n={},r=t.title.trim();return r!==e.title&&(n.title=r),t.body!==e.body&&(n.body=t.body),t.severity!==e.severity&&(n.severity=t.severity),t.category!==e.category&&(n.category=t.category),n}function yi(e){if(e.total===0)return{kind:`empty`,label:`This review has no comments.`};if(e.open>0)return{kind:`blocked`,openCount:e.open,label:`${e.open} still need${e.open===1?`s`:``} a decision`};let t=`Ready · ${e.staged} staged · ${e.discarded} discarded`;return e.staged===0?{kind:`ready`,action:`close`,label:t}:{kind:`ready`,action:`plan`,label:t}}function bi(e,t,n,r){if(!(e===`none`||!t))return`${e}://file/${t}/${n}:${r??1}`}function xi(e,t){if(e.reviewFile){let n=hi(e.reviewFile),r=t.find(e=>e.slug===n);if(r)return r}return t.find(t=>t.sessionId===e.id)}function Si(e,t){return xi(e,t)?.counts}function Ci(e,t=[]){let n=new Map;for(let r of e)n.set(r.id,{session:r,review:xi(r,t),children:[],contextOnly:!1});let r=[],i=[],a=[];for(let t of e){let e=n.get(t.id);if(t.kind!==`review`){r.push(e);continue}if(!t.parent){i.push(e);continue}let o=n.get(t.parent);if(o){o.children.push(e);continue}a.push(e)}return{roots:r,standalone:i,orphaned:a}}function wi(e,t){let n=e=>{let n=e.children.filter(e=>t.has(e.session.id)),r=t.has(e.session.id);if(!(!r&&n.length===0))return{...e,contextOnly:!r,children:r?e.children:n}};return{roots:e.roots.map(n).filter(Ti),standalone:e.standalone.map(n).filter(Ti),orphaned:e.orphaned.map(n).filter(Ti)}}function Ti(e){return e!==void 0}function Ei(e,t){let n=[];for(let r of e.roots){let e=r.children.length,i=e>0,a=i&&!t.has(r.session.id);if(n.push({kind:`session`,node:r,depth:0,hasChildren:i,expanded:a,childCount:e}),a)for(let e of r.children)n.push({kind:`session`,node:e,depth:1,hasChildren:!1,expanded:!1,childCount:0})}for(let t of[{id:`standalone`,nodes:e.standalone},{id:`orphaned`,nodes:e.orphaned}])if(t.nodes.length!==0){n.push({kind:`group`,id:t.id,count:t.nodes.length});for(let e of t.nodes)n.push({kind:`session`,node:e,depth:1,hasChildren:!1,expanded:!1,childCount:0})}return n}var Di=new Set;function Oi(e,t,n,r){let i=Ci(e,n);return t?Ei(wi(i,t),Di):Ei(i,r)}function ki(e){return e.filter(e=>e.kind===`session`).map(e=>e.node.session)}var Ai=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/SessionTree.tsx`;function ji({sessions:e,allSessions:t,reviews:n,focusedId:r,onFocus:i,onOpen:a,onStatusChange:o,filter:s,collapsed:c,onToggleCollapsed:l,selection:u}){let d=(0,A.useRef)(null),f=s.trim().length>0,p=(0,A.useMemo)(()=>f?new Set(e.map(e=>e.id)):void 0,[f,e]),m=(0,A.useMemo)(()=>Oi(t,p,n,c),[t,p,n,c]);(0,A.useEffect)(()=>{d.current?.scrollIntoView({block:`nearest`})},[r]);let h=(0,A.useCallback)(e=>l(e),[l]),g=(0,A.useMemo)(()=>{let e=Ci(t,n);return new Set(e.roots.filter(e=>e.children.length>0).map(e=>e.session.id))},[t,n]);return(0,A.useEffect)(()=>{let e=e=>{if(!r||!g.has(r))return;let t=e.target;if(t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`)||e.key!==`ArrowLeft`&&e.key!==`ArrowRight`)return;let n=!c.has(r);(e.key===`ArrowRight`&&!n||e.key===`ArrowLeft`&&n)&&(e.preventDefault(),h(r))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[r,g,c,h]),m.length===0?(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Nothing matches this filter.`},void 0,!1,{fileName:Ai,lineNumber:105,columnNumber:12},this):(0,M.jsxDEV)(`div`,{className:`list${u.count>0?` is-selecting`:``}`,children:(0,M.jsxDEV)(`table`,{className:`list__table tree`,role:`treegrid`,"aria-label":`Sessions and their reviews`,children:[(0,M.jsxDEV)(`thead`,{children:(0,M.jsxDEV)(`tr`,{children:[(0,M.jsxDEV)(`th`,{scope:`col`,className:`list__select`,children:(0,M.jsxDEV)(Hr,{state:u.headerState,label:`Select every session on screen`,onChange:e=>e?u.selectAll():u.clear()},void 0,!1,{fileName:Ai,lineNumber:114,columnNumber:15},this)},void 0,!1,{fileName:Ai,lineNumber:113,columnNumber:13},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Session`},void 0,!1,{fileName:Ai,lineNumber:120,columnNumber:13},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Stage`},void 0,!1,{fileName:Ai,lineNumber:121,columnNumber:13},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Updated`},void 0,!1,{fileName:Ai,lineNumber:122,columnNumber:13},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Size`},void 0,!1,{fileName:Ai,lineNumber:123,columnNumber:13},this)]},void 0,!0,{fileName:Ai,lineNumber:112,columnNumber:11},this)},void 0,!1,{fileName:Ai,lineNumber:111,columnNumber:9},this),(0,M.jsxDEV)(`tbody`,{children:m.map(e=>{if(e.kind===`group`){let t=e.id===`standalone`;return(0,M.jsxDEV)(`tr`,{className:`tree__group tree__group--${e.id}`,children:(0,M.jsxDEV)(`td`,{colSpan:5,children:[(0,M.jsxDEV)(`span`,{className:`tree__group-title`,children:[t?`Standalone reviews`:`Orphaned reviews`,` (`,e.count,`)`]},void 0,!0,{fileName:Ai,lineNumber:133,columnNumber:21},this),(0,M.jsxDEV)(`span`,{className:`tree__group-hint`,children:t?`Reviews of a branch on its own — deliberately tied to no session.`:`The session these reviewed is gone. Open one to link it to another.`},void 0,!1,{fileName:Ai,lineNumber:136,columnNumber:21},this)]},void 0,!0,{fileName:Ai,lineNumber:132,columnNumber:19},this)},e.id,!1,{fileName:Ai,lineNumber:131,columnNumber:17},this)}let{node:t,depth:n,hasChildren:s,expanded:c,childCount:l}=e,f=t.session,p=u.isSelected(f.id),m=f.kind===`review`&&f.status===`executed`;return(0,M.jsxDEV)(`tr`,{ref:f.id===r?d:void 0,role:`row`,"aria-level":n+1,"aria-expanded":s?c:void 0,className:[n===1?`tree__row--child`:`tree__row--root`,f.kind===`review`?`tree__row--review`:``,m?`is-settled`:``,t.contextOnly?`is-context`:``,f.id===r?`is-focused`:``,p?`is-selected`:``].filter(Boolean).join(` `),"aria-selected":p,onClick:()=>{i(f.id),a(f.id)},children:[(0,M.jsxDEV)(`td`,{className:`list__select`,onClick:e=>e.stopPropagation(),children:(0,M.jsxDEV)(Vr,{checked:p,label:`Select ${f.title}`,onChange:(e,t)=>{i(f.id),u.toggle(f.id,t)}},void 0,!1,{fileName:Ai,lineNumber:174,columnNumber:19},this)},void 0,!1,{fileName:Ai,lineNumber:173,columnNumber:17},this),(0,M.jsxDEV)(`td`,{children:(0,M.jsxDEV)(`div`,{className:`tree__cell`,children:[n===0?(0,M.jsxDEV)(`button`,{type:`button`,className:`tree__twisty${s?``:` is-empty`}`,"aria-label":c?`Collapse`:`Expand`,tabIndex:s?0:-1,onClick:e=>{e.stopPropagation(),s&&h(f.id)},children:s?c?`▾`:`▸`:``},void 0,!1,{fileName:Ai,lineNumber:189,columnNumber:23},this):(0,M.jsxDEV)(`span`,{className:`tree__elbow`,"aria-hidden":`true`,children:`└─`},void 0,!1,{fileName:Ai,lineNumber:202,columnNumber:23},this),(0,M.jsxDEV)(`div`,{className:`tree__identity`,children:[f.loop&&(0,M.jsxDEV)(`span`,{className:`loops__chip`,title:f.loop.id,children:[`⟳ `,f.loop.node,` · `,f.loop.iteration]},void 0,!0,{fileName:Ai,lineNumber:206,columnNumber:40},this),(0,M.jsxDEV)(`div`,{className:`list__title`,children:[f.kind===`review`&&(0,M.jsxDEV)(`span`,{className:`tree__kicker`,children:[`Review`,f.branch&&(0,M.jsxDEV)(`span`,{className:`tree__branch`,children:f.branch},void 0,!1,{fileName:Ai,lineNumber:211,columnNumber:48},this)]},void 0,!0,{fileName:Ai,lineNumber:209,columnNumber:27},this),f.title,s&&!c&&(0,M.jsxDEV)(`span`,{className:`tree__child-count`,title:`Show the reviews of this session`,children:[l,` review`,l===1?``:`s`]},void 0,!0,{fileName:Ai,lineNumber:219,columnNumber:27},this),f.issue&&(0,M.jsxDEV)(`a`,{className:`tree__issue`,href:f.issue.url,target:`_blank`,rel:`noreferrer`,title:`Open ${f.issue.key} in Linear`,onClick:e=>e.stopPropagation(),children:f.issue.key},void 0,!1,{fileName:Ai,lineNumber:230,columnNumber:27},this)]},void 0,!0,{fileName:Ai,lineNumber:207,columnNumber:23},this),f.excerpt.length>0&&!f.excerpt.startsWith(f.title.replace(/…$/,``).trim())&&(0,M.jsxDEV)(`div`,{className:`list__excerpt`,children:f.excerpt},void 0,!1,{fileName:Ai,lineNumber:244,columnNumber:27},this)]},void 0,!0,{fileName:Ai,lineNumber:205,columnNumber:21},this)]},void 0,!0,{fileName:Ai,lineNumber:187,columnNumber:19},this)},void 0,!1,{fileName:Ai,lineNumber:186,columnNumber:17},this),(0,M.jsxDEV)(`td`,{onClick:e=>e.stopPropagation(),children:(0,M.jsxDEV)(`div`,{className:`tree__stage`,children:[(0,M.jsxDEV)(si,{status:f.status,kind:f.kind,review:t.review,onChange:e=>o(f.id,e),onTriage:()=>{i(f.id),a(f.id)}},void 0,!1,{fileName:Ai,lineNumber:251,columnNumber:21},this),(0,M.jsxDEV)(pi,{harness:f.harness,status:f.status},void 0,!1,{fileName:Ai,lineNumber:258,columnNumber:21},this)]},void 0,!0,{fileName:Ai,lineNumber:250,columnNumber:19},this)},void 0,!1,{fileName:Ai,lineNumber:249,columnNumber:17},this),(0,M.jsxDEV)(`td`,{className:`list__meta`,title:f.updated,children:rr(f.updated)},void 0,!1,{fileName:Ai,lineNumber:261,columnNumber:17},this),(0,M.jsxDEV)(`td`,{className:`list__meta`,children:ar(f.sizeBytes)},void 0,!1,{fileName:Ai,lineNumber:262,columnNumber:17},this)]},f.id,!0,{fileName:Ai,lineNumber:154,columnNumber:15},this)})},void 0,!1,{fileName:Ai,lineNumber:126,columnNumber:9},this)]},void 0,!0,{fileName:Ai,lineNumber:110,columnNumber:7},this)},void 0,!1,{fileName:Ai,lineNumber:109,columnNumber:5},this)}var Mi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/BulkBar.tsx`;function Ni({count:e,hiddenCount:t,noun:n,busy:r,onClear:i,children:a}){return(0,M.jsxDEV)(`div`,{className:`bulkbar`,role:`region`,"aria-label":`Bulk actions`,children:[(0,M.jsxDEV)(`div`,{className:`bulkbar__summary`,children:[(0,M.jsxDEV)(`span`,{className:`bulkbar__count`,"aria-live":`polite`,children:[(0,M.jsxDEV)(`strong`,{children:e},void 0,!1,{fileName:Mi,lineNumber:27,columnNumber:11},this),` `,n,e===1?``:`s`,` selected`]},void 0,!0,{fileName:Mi,lineNumber:26,columnNumber:9},this),t>0&&(0,M.jsxDEV)(`span`,{className:`bulkbar__hint`,title:`These stay selected — the filter is only hiding them.`,children:[t,` hidden by filter`]},void 0,!0,{fileName:Mi,lineNumber:31,columnNumber:11},this)]},void 0,!0,{fileName:Mi,lineNumber:25,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`bulkbar__actions`,children:a},void 0,!1,{fileName:Mi,lineNumber:40,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,disabled:r,onClick:i,children:[`Clear `,(0,M.jsxDEV)(`kbd`,{className:`bulkbar__key`,children:`esc`},void 0,!1,{fileName:Mi,lineNumber:43,columnNumber:15},this)]},void 0,!0,{fileName:Mi,lineNumber:42,columnNumber:7},this)]},void 0,!0,{fileName:Mi,lineNumber:24,columnNumber:5},this)}async function Pi(e,t,n={}){let r=Math.max(1,n.concurrency??4),i={ok:[],failed:[]},a=0;return await Promise.all(Array.from({length:Math.min(r,e.length)},async()=>{for(;a<e.length;){let n=e[a++];try{i.ok.push({id:n,value:await t(n)})}catch(e){i.failed.push({id:n,error:e instanceof Error?e:Error(String(e))})}}})),i}function Fi(e,t){let n=e.ok.length+e.failed.length,r=`${t.noun}${n===1?``:`s`}`;if(e.failed.length===0)return{message:`${t.done} ${n} ${r}`,tone:`success`};let i=e.failed[0].error.message;if(e.ok.length===0){let e=n===1?`the ${r}`:`any of the ${n} ${r}`;return{message:`Could not ${t.doing} ${e} — ${i}`,tone:`danger`}}return{message:`${t.done} ${e.ok.length} of ${n} — ${e.failed.length} failed: ${i}`,tone:`danger`}}function Ii(e,t){let n={eligible:[],locked:[],unchanged:[]};for(let r of e)r.status===`review`?n.locked.push(r):r.status===t?n.unchanged.push(r):n.eligible.push(r);return n}function Li(e){let t=new Set(e.map(e=>e.id));return e.filter(e=>e.kind===`plan`).reduce((e,n)=>e+n.reviewSessionIds.filter(e=>!t.has(e)).length,0)}var Ri=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/SessionBulkBar.tsx`;function zi({sessions:e,count:t,hiddenCount:n,onClear:r,onNarrow:i,pendingStatus:a,onPendingStatusHandled:o,archiveRequested:s,onArchiveRequestHandled:c}){let l=dr(),u=Ut(),d=Jt(),[f,p]=(0,A.useState)(!1),[m,h]=(0,A.useState)(!1),[g,_]=(0,A.useState)(!1),v=(0,A.useRef)(null),y=e.filter(e=>e.status!==`review`).length,b=Li(e);(0,A.useEffect)(()=>{if(!f)return;let e=e=>{v.current?.contains(e.target)||p(!1)},t=e=>{e.key===`Escape`&&(e.stopPropagation(),p(!1))};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[f]);let x=async n=>{p(!1);let a=Ii(e,n),o=qr({kind:`plan`,status:n}).label;if(a.eligible.length===0){l(a.locked.length>0?`Nothing to change — ${a.locked.length===t?`every`:`the rest of the`} selected session is in Review. ${$r}`:`Already ${o.toLowerCase()}.`,`info`);return}_(!0);let s=await Pi(a.eligible.map(e=>e.id),e=>u.mutateAsync({sessionId:e,status:n}));if(s.failed.length===0){let e=a.locked.length;l(`Moved ${s.ok.length} to ${o}`+(e>0?` · ${e} left in Review`:``),e>0?`info`:`success`),r()}else{let{message:e,tone:t}=Fi(s,{done:`Moved`,doing:`move`,noun:`session`});l(e,t),i(s.failed.map(e=>e.id))}_(!1)},ee=async()=>{h(!1),_(!0);let t=await Pi(e.map(e=>e.id),e=>d.mutateAsync(e)),{message:n,tone:a}=Fi(t,{done:`Archived`,doing:`archive`,noun:`session`});l(n,a),t.failed.length===0?r():i(t.failed.map(e=>e.id)),_(!1)},te=(0,A.useRef)(x);return te.current=x,(0,A.useEffect)(()=>{a&&(o(),te.current(a))},[a,o]),(0,A.useEffect)(()=>{s&&(c(),h(!0))},[s,c]),(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(Ni,{count:t,hiddenCount:n,noun:`session`,busy:g,onClear:r,children:[(0,M.jsxDEV)(`div`,{className:`pill-menu bulkbar__menu`,ref:v,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:g||y===0,title:y===0?$r:void 0,"aria-haspopup":`menu`,"aria-expanded":f,onClick:()=>p(e=>!e),children:g?`Moving…`:`Set status`},void 0,!1,{fileName:Ri,lineNumber:159,columnNumber:11},this),f&&(0,M.jsxDEV)(`div`,{className:`pill-menu__list pill-menu__list--up`,role:`menu`,children:[Qr.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`menuitem`,className:`pill-menu__item`,onClick:()=>void x(e),children:[(0,M.jsxDEV)(Wr,{status:e},void 0,!1,{fileName:Ri,lineNumber:181,columnNumber:19},this),qr({kind:`plan`,status:e}).label]},e,!0,{fileName:Ri,lineNumber:174,columnNumber:17},this)),y<t&&(0,M.jsxDEV)(`p`,{className:`pill-menu__note`,children:[t-y,` of these sit in Review. `,"`Review` is set by writing a review, and cleared by planning its changes or publishing them."]},void 0,!0,{fileName:Ri,lineNumber:186,columnNumber:17},this)]},void 0,!0,{fileName:Ri,lineNumber:172,columnNumber:13},this)]},void 0,!0,{fileName:Ri,lineNumber:158,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,disabled:g||t===0,onClick:()=>h(!0),children:g?`Working…`:`Archive`},void 0,!1,{fileName:Ri,lineNumber:194,columnNumber:9},this)]},void 0,!0,{fileName:Ri,lineNumber:157,columnNumber:7},this),m&&(0,M.jsxDEV)(wr,{title:`Archive ${t} session${t===1?``:`s`}?`,onClose:()=>h(!1),footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>h(!1),children:`Cancel`},void 0,!1,{fileName:Ri,lineNumber:210,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,onClick:()=>void ee(),children:`Archive`},void 0,!1,{fileName:Ri,lineNumber:217,columnNumber:15},this)]},void 0,!0,{fileName:Ri,lineNumber:209,columnNumber:13},this),children:[(0,M.jsxDEV)(`p`,{className:`modal__text`,children:[`The files move to `,(0,M.jsxDEV)(`code`,{children:`.invariant/sessions/.archive/`},void 0,!1,{fileName:Ri,lineNumber:224,columnNumber:31},this),` and stay readable on disk.`]},void 0,!0,{fileName:Ri,lineNumber:223,columnNumber:11},this),b>0&&(0,M.jsxDEV)(`p`,{className:`modal__text modal__text--muted`,children:[b,` review`,b===1?``:`s`,` of this work `,b===1?`is`:`are`,` `,`not in the selection, and will be left orphaned on the Reviews page.`]},void 0,!0,{fileName:Ri,lineNumber:227,columnNumber:13},this)]},void 0,!0,{fileName:Ri,lineNumber:205,columnNumber:9},this)]},void 0,!0,{fileName:Ri,lineNumber:156,columnNumber:5},this)}var Bi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/ConflictBanner.tsx`;function Vi({conflictCount:e,onOpenMerge:t,onKeepMine:n,onTakeTheirs:r}){return(0,M.jsxDEV)(`div`,{className:`banner banner--warning`,role:`alert`,children:[(0,M.jsxDEV)(`div`,{className:`banner__text`,children:[(0,M.jsxDEV)(`strong`,{children:`The agent changed the same lines you did.`},void 0,!1,{fileName:Bi,lineNumber:33,columnNumber:9},this),` `,e===1?`1 spot needs`:`${e} spots need`,` your call — everything else was merged.`]},void 0,!0,{fileName:Bi,lineNumber:32,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`banner__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:t,children:`Open the merge`},void 0,!1,{fileName:Bi,lineNumber:38,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:n,children:`Keep mine`},void 0,!1,{fileName:Bi,lineNumber:41,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>{window.confirm(`Discard your edits and take the version on disk?`)&&r()},children:`Take theirs`},void 0,!1,{fileName:Bi,lineNumber:44,columnNumber:9},this)]},void 0,!0,{fileName:Bi,lineNumber:37,columnNumber:7},this)]},void 0,!0,{fileName:Bi,lineNumber:31,columnNumber:5},this)}var Hi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/ReviewPanel.tsx`;function Ui({session:e,onOpenSession:t,onToast:n}){let{data:r}=Zt(),{data:i}=Vt(),{data:a}=Qt(),o=rn(),s=(i?.sessions??[]).filter(t=>t.parent===e.id),c=a?.reviews??[];if(s.length>0){let e=s.reduce((e,t)=>e+(Si(t,c)?.open??0),0);return(0,M.jsxDEV)(`div`,{className:`banner banner--review`,children:(0,M.jsxDEV)(`div`,{className:`banner__text`,children:[(0,M.jsxDEV)(`strong`,{children:e>0?`${e} comment${e===1?``:`s`} waiting on you.`:`Reviewed.`},void 0,!1,{fileName:Hi,lineNumber:44,columnNumber:11},this),` `,s.length===1?`One review session points at this work.`:`${s.length} review sessions point at this work.`,(0,M.jsxDEV)(`ul`,{className:`review-links`,children:s.map(e=>(0,M.jsxDEV)(`li`,{className:`review-links__item`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>t(e.id),children:e.branch??e.title},void 0,!1,{fileName:Hi,lineNumber:56,columnNumber:17},this),(0,M.jsxDEV)(si,{status:e.status,kind:e.kind,review:xi(e,c)},void 0,!1,{fileName:Hi,lineNumber:63,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`review-links__time`,title:e.updated,children:rr(e.updated)},void 0,!1,{fileName:Hi,lineNumber:68,columnNumber:17},this)]},e.id,!0,{fileName:Hi,lineNumber:55,columnNumber:15},this))},void 0,!1,{fileName:Hi,lineNumber:53,columnNumber:11},this)]},void 0,!0,{fileName:Hi,lineNumber:43,columnNumber:9},this)},void 0,!1,{fileName:Hi,lineNumber:42,columnNumber:7},this)}let l=r!==void 0&&!r.canReview;return(0,M.jsxDEV)(`div`,{className:`banner banner--review`,children:[(0,M.jsxDEV)(`div`,{className:`banner__text`,children:[(0,M.jsxDEV)(`strong`,{children:`No review yet.`},void 0,!1,{fileName:Hi,lineNumber:84,columnNumber:9},this),` `,l?r?.reason:r?.branch?`A fresh agent can read the ${r.changedFileCount}-file diff on ${r.branch} without seeing this plan.`:`A fresh agent can read the diff without seeing this plan.`]},void 0,!0,{fileName:Hi,lineNumber:83,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`banner__actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:l||o.isPending,title:l?r?.reason:void 0,onClick:()=>o.mutate({sessionId:e.id},{onSuccess:async e=>{await sr(e.executeLine),n(e.guidance,`success`),t(e.session.id)},onError:e=>n(e instanceof Error?e.message:`Could not create the review.`,`danger`)}),children:o.isPending?`Creating…`:`Request review`},void 0,!1,{fileName:Hi,lineNumber:92,columnNumber:9},this)},void 0,!1,{fileName:Hi,lineNumber:91,columnNumber:7},this)]},void 0,!0,{fileName:Hi,lineNumber:82,columnNumber:5},this)}var Wi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/ReviewStageStrip.tsx`;function Gi({status:e,review:t,onTriage:n,onCopyExecuteLine:r}){let i=qr({kind:`review`,status:e},t),a=t?.counts,o=i.step??`reviewing`;return(0,M.jsxDEV)(`div`,{className:`stage`,children:[(0,M.jsxDEV)(`ol`,{className:`stage__steps`,children:Gr.map((e,t)=>{let n=Xr(e,o);return(0,M.jsxDEV)(`li`,{className:`stage__step${n===0?` is-current`:n<0?` is-done`:``}`,"aria-current":n===0?`step`:void 0,children:[(0,M.jsxDEV)(`span`,{className:`stage__index`,"aria-hidden":`true`,children:t+1},void 0,!1,{fileName:Wi,lineNumber:46,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`stage__label`,children:[Kr[e],e===`triage`&&a&&a.open>0&&(0,M.jsxDEV)(`span`,{className:`stage__badge`,children:a.open},void 0,!1,{fileName:Wi,lineNumber:50,columnNumber:19},this)]},void 0,!0,{fileName:Wi,lineNumber:47,columnNumber:15},this)]},e,!0,{fileName:Wi,lineNumber:41,columnNumber:13},this)})},void 0,!1,{fileName:Wi,lineNumber:37,columnNumber:7},this),(0,M.jsxDEV)(`p`,{className:`stage__hint`,children:[(0,M.jsxDEV)(`span`,{className:`stage__holder stage__holder--${i.holder}`,children:i.holder===`you`?`Waiting on you`:`Agent working`},void 0,!1,{fileName:Wi,lineNumber:59,columnNumber:9},this),i.hint]},void 0,!0,{fileName:Wi,lineNumber:58,columnNumber:7},this),i.action.kind===`triage`&&n&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:n,children:i.action.openCount===0?`Open the comments`:`Triage ${i.action.openCount} comment${i.action.openCount===1?``:`s`}`},void 0,!1,{fileName:Wi,lineNumber:66,columnNumber:9},this),i.action.kind===`copy-execute`&&r&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:r,children:`Copy execute line`},void 0,!1,{fileName:Wi,lineNumber:76,columnNumber:9},this)]},void 0,!0,{fileName:Wi,lineNumber:36,columnNumber:5},this)}var Ki=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/LinkParentModal.tsx`;function qi({review:e,candidates:t,busy:n,onClose:r,onLink:i}){let[a,o]=(0,A.useState)(``),[s,c]=(0,A.useState)(),l=(0,A.useMemo)(()=>{let e=a.trim().toLowerCase(),n=t.filter(e=>e.kind!==`review`);return e.length===0?n:n.filter(t=>`${t.title} ${t.excerpt} ${t.tags.join(` `)}`.toLowerCase().includes(e))},[t,a]);return(0,M.jsxDEV)(wr,{title:`Link this review to a session`,onClose:r,dirty:s!==void 0,confirmClose:{title:`Discard this pick?`,body:`You chose a session but have not linked it yet. Closing forgets the choice.`},footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:e.branch??e.title},void 0,!1,{fileName:Ki,lineNumber:48,columnNumber:11},this),(0,M.jsxDEV)(Ji,{},void 0,!1,{fileName:Ki,lineNumber:49,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:!s||n,onClick:()=>{s&&i(s)},children:n?`Linking…`:`Link`},void 0,!1,{fileName:Ki,lineNumber:50,columnNumber:11},this)]},void 0,!0,{fileName:Ki,lineNumber:47,columnNumber:9},this),children:[(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`A review is a verdict on a session's work. Pick the session this one judges — it moves under it in the tree, and its `,(0,M.jsxDEV)(`code`,{children:`<parent>`},void 0,!1,{fileName:Ki,lineNumber:63,columnNumber:30},this),` is written into the file.`]},void 0,!0,{fileName:Ki,lineNumber:61,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`field`,children:[(0,M.jsxDEV)(`label`,{className:`field__label`,htmlFor:`link-parent-filter`,children:`Find a session`},void 0,!1,{fileName:Ki,lineNumber:67,columnNumber:9},this),(0,M.jsxDEV)(`input`,{id:`link-parent-filter`,className:`field__input`,"data-autofocus":!0,value:a,placeholder:`Filter by title…`,onChange:e=>o(e.target.value)},void 0,!1,{fileName:Ki,lineNumber:68,columnNumber:9},this)]},void 0,!0,{fileName:Ki,lineNumber:66,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`picker`,children:l.length===0?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:`No session matches.`},void 0,!1,{fileName:Ki,lineNumber:80,columnNumber:11},this):l.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`picker__item${s===e.id?` is-active`:``}`,onClick:()=>c(e.id),children:[(0,M.jsxDEV)(`span`,{className:`picker__title`,children:e.title},void 0,!1,{fileName:Ki,lineNumber:89,columnNumber:15},this),(0,M.jsxDEV)(si,{status:e.status,kind:e.kind},void 0,!1,{fileName:Ki,lineNumber:90,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`picker__meta`,children:rr(e.updated)},void 0,!1,{fileName:Ki,lineNumber:91,columnNumber:15},this)]},e.id,!0,{fileName:Ki,lineNumber:83,columnNumber:13},this))},void 0,!1,{fileName:Ki,lineNumber:78,columnNumber:7},this)]},void 0,!0,{fileName:Ki,lineNumber:38,columnNumber:5},this)}function Ji(){let e=br();return(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:e,children:`Cancel`},void 0,!1,{fileName:Ki,lineNumber:104,columnNumber:5},this)}var Yi=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/LinkIssueModal.tsx`,Xi=/^(https?:\/\/|[A-Za-z][A-Za-z0-9]{0,9}-\d{1,7}$)/;function Zi({sessionTitle:e,busy:t,onClose:n,onLink:r}){let[i,a]=(0,A.useState)(``),[o,s]=(0,A.useState)(),c=i.trim(),l=Xi.test(c),u=vn(c,!l),d=(0,A.useMemo)(()=>u.data?.issues??[],[u.data]);(0,A.useEffect)(()=>{o&&!d.some(e=>e.id===o.id)&&s(void 0)},[d,o]);let f=o?.url??(l?c:``),p=f.length>0&&!t;return(0,M.jsxDEV)(wr,{title:`Link this session to a Linear issue`,onClose:n,dirty:c.length>0,confirmClose:{title:`Discard this?`,body:`You have typed something but have not linked it yet. Closing forgets it.`},footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:e},void 0,!1,{fileName:Yi,lineNumber:61,columnNumber:11},this),(0,M.jsxDEV)(Qi,{},void 0,!1,{fileName:Yi,lineNumber:62,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:!p,onClick:()=>r(f),children:t?`Linking…`:`Link`},void 0,!1,{fileName:Yi,lineNumber:63,columnNumber:11},this)]},void 0,!0,{fileName:Yi,lineNumber:60,columnNumber:9},this),children:[(0,M.jsxDEV)(`p`,{className:`empty__text`,children:`The issue's description becomes this session's spec block — whatever a colleague already wrote is what you start from. Nothing else about the issue is touched, and nothing else about the session is sent.`},void 0,!1,{fileName:Yi,lineNumber:74,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`field`,children:[(0,M.jsxDEV)(`label`,{className:`field__label`,htmlFor:`link-issue-input`,children:`Issue URL, key, or something to search for`},void 0,!1,{fileName:Yi,lineNumber:81,columnNumber:9},this),(0,M.jsxDEV)(`input`,{id:`link-issue-input`,className:`field__input`,"data-autofocus":!0,value:i,placeholder:`https://linear.app/acme/issue/ENG-123 — or ENG-123 — or “cache invalidation”`,onChange:e=>{a(e.target.value),s(void 0)}},void 0,!1,{fileName:Yi,lineNumber:84,columnNumber:9},this),l&&(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`That looks like an issue. Press `,(0,M.jsxDEV)(`strong`,{children:`Link`},void 0,!1,{fileName:Yi,lineNumber:97,columnNumber:45},this),` — it is resolved before anything is written, and you will be told if there is no such issue.`]},void 0,!0,{fileName:Yi,lineNumber:96,columnNumber:11},this)]},void 0,!0,{fileName:Yi,lineNumber:80,columnNumber:7},this),!l&&c.length>=2&&(0,M.jsxDEV)(`div`,{className:`picker`,children:u.isPending?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:`Searching…`},void 0,!1,{fileName:Yi,lineNumber:106,columnNumber:13},this):u.isError?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:u.error instanceof Error?u.error.message:`Linear could not be reached.`},void 0,!1,{fileName:Yi,lineNumber:108,columnNumber:13},this):d.length===0?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:`No issue matches.`},void 0,!1,{fileName:Yi,lineNumber:112,columnNumber:13},this):d.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`picker__item${o?.id===e.id?` is-active`:``}`,onClick:()=>s(e),children:[(0,M.jsxDEV)(`span`,{className:`picker__key`,children:e.key},void 0,!1,{fileName:Yi,lineNumber:121,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`picker__title`,children:e.title},void 0,!1,{fileName:Yi,lineNumber:122,columnNumber:17},this),e.state&&(0,M.jsxDEV)(`span`,{className:`picker__meta`,children:e.state},void 0,!1,{fileName:Yi,lineNumber:123,columnNumber:33},this),(0,M.jsxDEV)(`span`,{className:`picker__meta`,children:rr(e.updatedAt)},void 0,!1,{fileName:Yi,lineNumber:124,columnNumber:17},this)]},e.id,!0,{fileName:Yi,lineNumber:115,columnNumber:15},this))},void 0,!1,{fileName:Yi,lineNumber:104,columnNumber:9},this)]},void 0,!0,{fileName:Yi,lineNumber:51,columnNumber:5},this)}function Qi(){let e=br();return(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:e,children:`Cancel`},void 0,!1,{fileName:Yi,lineNumber:138,columnNumber:5},this)}var $i=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ui/Markdown.tsx`,ea=(0,A.lazy)(()=>Fr(()=>import(`./MarkdownBody-D1FGeowJ.js`).then(e=>({default:e.MarkdownBody})),[]));function ta({source:e,compact:t=!1}){if(e.trim().length===0)return null;let n=`markdown${t?` markdown--compact`:``}`;return(0,M.jsxDEV)(A.Suspense,{fallback:(0,M.jsxDEV)(`div`,{className:`${n} markdown--pending`,children:e},void 0,!1,{fileName:$i,lineNumber:29,columnNumber:25},this),children:(0,M.jsxDEV)(ea,{source:e,className:n},void 0,!1,{fileName:$i,lineNumber:30,columnNumber:7},this)},void 0,!1,{fileName:$i,lineNumber:29,columnNumber:5},this)}var I=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/IssueSpecPanel.tsx`;function na({session:e,spec:t}){let n=dr(),r=e.issue,{data:i}=yn(e.id,r!==void 0),{data:a}=mn(),o=Sn(),s=Cn(),c=xn(),[l,u]=(0,A.useState)(!1),[d,f]=(0,A.useState)(),[p,m]=(0,A.useState)(!1);if(!r)return null;let h=o.isPending||s.isPending||c.isPending,g=(t?.content??``).trim().length===0,_=(e,t)=>{if(e instanceof bt&&e.code===`ISSUE_SYNC_CONFLICT`){f({direction:t,local:String(e.detail.local??``),remote:String(e.detail.remote??``),message:e.message});return}n(e instanceof Error?e.message:`That did not work.`,`danger`)},v=(t=!1)=>o.mutate({sessionId:e.id,force:t},{onSuccess:()=>{f(void 0),n(`Pulled ${r.key} into the spec`,`success`)},onError:e=>_(e,`pull`)}),y=(t=!1)=>s.mutate({sessionId:e.id,force:t},{onSuccess:e=>{f(void 0),n(`Sent ${Math.max(1,Math.round(e.bytes/100)/10)} KB to ${e.issueKey}`,`success`)},onError:e=>_(e,`push`)});return(0,M.jsxDEV)(`section`,{className:`spec${i?.remote?.changed||i?.local.changed?` spec--drifted`:``}`,children:[(0,M.jsxDEV)(`header`,{className:`spec__head`,children:[(0,M.jsxDEV)(`a`,{className:`spec__key`,href:r.url,target:`_blank`,rel:`noreferrer`,children:r.key},void 0,!1,{fileName:I,lineNumber:101,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`spec__title`,children:i?.remote?.title??`Linear issue`},void 0,!1,{fileName:I,lineNumber:104,columnNumber:9},this),i?.remote?.state&&(0,M.jsxDEV)(`span`,{className:`spec__state`,children:i.remote.state},void 0,!1,{fileName:I,lineNumber:105,columnNumber:34},this),(0,M.jsxDEV)(`span`,{className:`spec__stamp`,children:ia(i,t)},void 0,!1,{fileName:I,lineNumber:106,columnNumber:9},this)]},void 0,!0,{fileName:I,lineNumber:100,columnNumber:7},this),i?.remoteError&&(0,M.jsxDEV)(`p`,{className:`spec__note`,children:i.remoteError},void 0,!1,{fileName:I,lineNumber:109,columnNumber:30},this),g?(0,M.jsxDEV)(`div`,{className:`spec__empty`,children:[(0,M.jsxDEV)(`p`,{className:`spec__empty-lead`,children:`This issue has no description yet — in Linear or here. Ask an agent to write one, or type it in the editor.`},void 0,!1,{fileName:I,lineNumber:113,columnNumber:11},this),(0,M.jsxDEV)(`pre`,{className:`spec__ghost`,"aria-hidden":`true`,children:a?.issueTemplate??``},void 0,!1,{fileName:I,lineNumber:119,columnNumber:11},this)]},void 0,!0,{fileName:I,lineNumber:112,columnNumber:9},this):(0,M.jsxDEV)(`div`,{className:`spec__body`,children:(0,M.jsxDEV)(ta,{source:t?.content??``,compact:!0},void 0,!1,{fileName:I,lineNumber:123,columnNumber:11},this)},void 0,!1,{fileName:I,lineNumber:122,columnNumber:9},this),(0,M.jsxDEV)(`footer`,{className:`spec__foot`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:async()=>{let t=`synthesise the plan of ${e.path} into its <issue-spec> block, following the project issue template`;n(await sr(t)?`Synthesis line copied`:`Could not copy`,`success`)},children:`Copy synthesis line`},void 0,!1,{fileName:I,lineNumber:128,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`split`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid split__main`,disabled:h||g,title:g?`There is nothing to send yet.`:`Replace ${r.key}'s description`,onClick:()=>y(),children:s.isPending?`Sending…`:`Push to ${r.key}`},void 0,!1,{fileName:I,lineNumber:140,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid split__toggle`,"aria-haspopup":`menu`,"aria-expanded":l,"aria-label":`Other sync actions`,onClick:()=>u(e=>!e),children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 12 12`,"aria-hidden":`true`,width:`12`,height:`12`,children:(0,M.jsxDEV)(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:I,lineNumber:158,columnNumber:15},this)},void 0,!1,{fileName:I,lineNumber:157,columnNumber:13},this)},void 0,!1,{fileName:I,lineNumber:149,columnNumber:11},this),l&&(0,M.jsxDEV)(`div`,{className:`split__menu`,role:`menu`,children:[(0,M.jsxDEV)(`button`,{type:`button`,role:`menuitem`,className:`split__item`,disabled:h,onClick:()=>{u(!1),v()},children:(0,M.jsxDEV)(`span`,{className:`split__body`,children:[(0,M.jsxDEV)(`span`,{className:`split__label`,children:[`Pull from `,r.key]},void 0,!0,{fileName:I,lineNumber:173,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`split__detail`,children:`Replace this block with the issue's description`},void 0,!1,{fileName:I,lineNumber:174,columnNumber:19},this)]},void 0,!0,{fileName:I,lineNumber:172,columnNumber:17},this)},void 0,!1,{fileName:I,lineNumber:165,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,role:`menuitem`,className:`split__item`,disabled:h,onClick:()=>{u(!1),m(!0)},children:(0,M.jsxDEV)(`span`,{className:`split__body`,children:[(0,M.jsxDEV)(`span`,{className:`split__label`,children:`Unlink`},void 0,!1,{fileName:I,lineNumber:185,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`split__detail`,children:`Keep the text, stop syncing it`},void 0,!1,{fileName:I,lineNumber:186,columnNumber:19},this)]},void 0,!0,{fileName:I,lineNumber:184,columnNumber:17},this)},void 0,!1,{fileName:I,lineNumber:177,columnNumber:15},this)]},void 0,!0,{fileName:I,lineNumber:164,columnNumber:13},this)]},void 0,!0,{fileName:I,lineNumber:139,columnNumber:9},this)]},void 0,!0,{fileName:I,lineNumber:127,columnNumber:7},this),d&&(0,M.jsxDEV)(ra,{conflict:d,issueKey:r.key,busy:h,onClose:()=>f(void 0),onTakeRemote:()=>v(!0),onKeepLocal:()=>y(!0)},void 0,!1,{fileName:I,lineNumber:195,columnNumber:9},this),p&&(0,M.jsxDEV)(_r,{title:`Unlink ${r.key}?`,body:`The spec stays in this session. It just stops syncing, and nothing changes in Linear.`,confirmLabel:`Unlink`,onCancel:()=>m(!1),onConfirm:()=>{m(!1),c.mutate(e.id,{onSuccess:()=>n(`Session unlinked`,`success`),onError:e=>n(e instanceof Error?e.message:`Could not unlink.`,`danger`)})}},void 0,!1,{fileName:I,lineNumber:206,columnNumber:9},this)]},void 0,!0,{fileName:I,lineNumber:99,columnNumber:5},this)}function ra({conflict:e,issueKey:t,busy:n,onClose:r,onTakeRemote:i,onKeepLocal:a}){return(0,M.jsxDEV)(`div`,{className:`spec__conflict`,children:[(0,M.jsxDEV)(`p`,{className:`spec__conflict-lead`,children:e.message},void 0,!1,{fileName:I,lineNumber:249,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`spec__conflict-pair`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`h4`,{className:`spec__conflict-heading`,children:`This session`},void 0,!1,{fileName:I,lineNumber:253,columnNumber:11},this),(0,M.jsxDEV)(`pre`,{className:`spec__conflict-text`,children:e.local},void 0,!1,{fileName:I,lineNumber:254,columnNumber:11},this)]},void 0,!0,{fileName:I,lineNumber:252,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`h4`,{className:`spec__conflict-heading`,children:[t,` in Linear`]},void 0,!0,{fileName:I,lineNumber:257,columnNumber:11},this),(0,M.jsxDEV)(`pre`,{className:`spec__conflict-text`,children:e.remote},void 0,!1,{fileName:I,lineNumber:258,columnNumber:11},this)]},void 0,!0,{fileName:I,lineNumber:256,columnNumber:9},this)]},void 0,!0,{fileName:I,lineNumber:251,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`spec__conflict-actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:r,children:`Leave both alone`},void 0,!1,{fileName:I,lineNumber:263,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:n,onClick:i,children:`Take Linear's`},void 0,!1,{fileName:I,lineNumber:266,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:n,onClick:a,children:`Keep mine`},void 0,!1,{fileName:I,lineNumber:269,columnNumber:9},this)]},void 0,!0,{fileName:I,lineNumber:262,columnNumber:7},this)]},void 0,!0,{fileName:I,lineNumber:248,columnNumber:5},this)}function ia(e,t){if(e?.remote?.changed)return`Linear changed`;if(e?.local.changed)return`local edits`;let n=e?.local.syncedAt??t?.syncedAt;return n?`synced ${rr(n)}`:`never synced`}var aa=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/loops/LoopBanner.tsx`;function oa({loopId:e,onOpen:t}){let{data:n,error:r}=Ft(e);return(0,M.jsxDEV)(`aside`,{className:`loops__banner`,children:[(0,M.jsxDEV)(`button`,{className:`crumbs__link`,onClick:t,children:[`⟳ `,n?.title??`Open loop`]},void 0,!0,{fileName:aa,lineNumber:4,columnNumber:43},this),(0,M.jsxDEV)(`span`,{children:n?.next.stage??r?.message??`Loading next step…`},void 0,!1,{fileName:aa,lineNumber:4,columnNumber:132},this),n&&(0,M.jsxDEV)(`span`,{children:n.next.instruction},void 0,!1,{fileName:aa,lineNumber:4,columnNumber:214},this)]},void 0,!0,{fileName:aa,lineNumber:4,columnNumber:10},this)}var sa=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/AgentBriefPanel.tsx`;function ca({brief:e}){let{projectId:t}=jt(),[n,r]=(0,A.useState)(()=>fa(t)),[i,a]=(0,A.useState)(!1),o=(0,A.useCallback)(()=>{r(e=>(pa(t,!e),!e))},[t]);if(!e)return null;let s=`agent-brief-header`,c=`agent-brief-body`;return(0,M.jsxDEV)(`section`,{className:`brief${n?` is-open`:``}`,"aria-labelledby":s,children:[(0,M.jsxDEV)(`button`,{type:`button`,id:s,className:`brief__header`,"aria-expanded":n,"aria-controls":c,onClick:o,children:[(0,M.jsxDEV)(`svg`,{className:`brief__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M4.5 2.5 8 6l-3.5 3.5`},void 0,!1,{fileName:sa,lineNumber:52,columnNumber:11},this)},void 0,!1,{fileName:sa,lineNumber:51,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`brief__label`,children:`Agent instructions`},void 0,!1,{fileName:sa,lineNumber:54,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`brief__summary`,children:la(e)},void 0,!1,{fileName:sa,lineNumber:55,columnNumber:9},this)]},void 0,!0,{fileName:sa,lineNumber:43,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`brief__panel`,id:c,role:`region`,"aria-labelledby":s,inert:!n,children:(0,M.jsxDEV)(`div`,{className:`brief__panel-inner`,children:[e.protocol&&(0,M.jsxDEV)(`pre`,{className:`brief__protocol`,children:e.protocol},void 0,!1,{fileName:sa,lineNumber:68,columnNumber:13},this),e.loop&&(0,M.jsxDEV)(`section`,{className:`brief__part`,children:[(0,M.jsxDEV)(`h3`,{children:`Loop handoff`},void 0,!1,{fileName:sa,lineNumber:71,columnNumber:59},this),(0,M.jsxDEV)(ta,{source:e.loop,compact:!0},void 0,!1,{fileName:sa,lineNumber:71,columnNumber:80},this)]},void 0,!0,{fileName:sa,lineNumber:71,columnNumber:26},this),e.context&&(0,M.jsxDEV)(`div`,{className:`brief__part`,children:[(0,M.jsxDEV)(`h3`,{className:`brief__part-title`,children:`Context`},void 0,!1,{fileName:sa,lineNumber:74,columnNumber:15},this),(0,M.jsxDEV)(ta,{source:e.context,compact:!0},void 0,!1,{fileName:sa,lineNumber:75,columnNumber:15},this)]},void 0,!0,{fileName:sa,lineNumber:73,columnNumber:13},this),e.included&&(0,M.jsxDEV)(`div`,{className:`brief__part${i?` is-open`:``}`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`brief__part-toggle`,"aria-expanded":i,onClick:()=>a(e=>!e),children:[(0,M.jsxDEV)(`svg`,{className:`brief__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M4.5 2.5 8 6l-3.5 3.5`},void 0,!1,{fileName:sa,lineNumber:92,columnNumber:19},this)},void 0,!1,{fileName:sa,lineNumber:91,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`brief__part-title`,children:`Included instructions`},void 0,!1,{fileName:sa,lineNumber:94,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`brief__part-size`,children:ua(e.included)},void 0,!1,{fileName:sa,lineNumber:95,columnNumber:17},this)]},void 0,!0,{fileName:sa,lineNumber:85,columnNumber:15},this),i&&(0,M.jsxDEV)(ta,{source:e.included,compact:!0},void 0,!1,{fileName:sa,lineNumber:97,columnNumber:32},this)]},void 0,!0,{fileName:sa,lineNumber:80,columnNumber:13},this),e.other&&(0,M.jsxDEV)(`pre`,{className:`brief__protocol`,children:e.other},void 0,!1,{fileName:sa,lineNumber:101,columnNumber:27},this)]},void 0,!0,{fileName:sa,lineNumber:62,columnNumber:9},this)},void 0,!1,{fileName:sa,lineNumber:61,columnNumber:7},this)]},void 0,!0,{fileName:sa,lineNumber:42,columnNumber:5},this)}function la(e){let t=[];return e.protocol&&t.push(`status protocol`),e.loop&&t.push(`loop handoff`),e.context&&t.push(`context`),e.included&&t.push(`included instructions`),t.length===0&&t.push(`preamble`),t.push(`${e.lines} lines`),t.join(` · `)}function ua(e){return`${Math.max(1,Math.round(e.length/100)/10)} KB`}function da(e){return`invariant.ui.agent-brief-open:${e}`}function fa(e){try{return window.localStorage.getItem(da(e))===`true`}catch{return!1}}function pa(e,t){try{t?window.localStorage.setItem(da(e),`true`):window.localStorage.removeItem(da(e))}catch{}}var L=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/SourcePeek.tsx`,R=12;function ma({file:e,line:t,endLine:n}){let r=N(),{data:i,isLoading:a,error:o}=ht({queryKey:[`p`,r.projectId,`source`,e,t??0],queryFn:()=>r.source({path:e,line:t,radius:R}),staleTime:3e4});if(a)return(0,M.jsxDEV)(`div`,{className:`peek peek--state`,children:`Loading…`},void 0,!1,{fileName:L,lineNumber:29,columnNumber:25},this);if(o||!i)return(0,M.jsxDEV)(`div`,{className:`peek peek--state`,children:`This file is not readable from here — it may have moved since the review was written.`},void 0,!1,{fileName:L,lineNumber:32,columnNumber:7},this);let s=t??i.startLine,c=n??s;return(0,M.jsxDEV)(`div`,{className:`peek`,children:[(0,M.jsxDEV)(`div`,{className:`peek__head`,children:[i.path,` · lines `,i.startLine,`–`,i.endLine,` of `,i.totalLines]},void 0,!0,{fileName:L,lineNumber:43,columnNumber:7},this),(0,M.jsxDEV)(`pre`,{className:`peek__code`,children:i.lines.map((e,t)=>{let n=i.startLine+t;return(0,M.jsxDEV)(`div`,{className:`peek__line${n>=s&&n<=c?` is-highlighted`:``}`,children:[(0,M.jsxDEV)(`span`,{className:`peek__number`,children:n},void 0,!1,{fileName:L,lineNumber:52,columnNumber:15},this),(0,M.jsxDEV)(`code`,{children:e.length>0?e:` `},void 0,!1,{fileName:L,lineNumber:53,columnNumber:15},this)]},n,!0,{fileName:L,lineNumber:51,columnNumber:13},this)})},void 0,!1,{fileName:L,lineNumber:46,columnNumber:7},this)]},void 0,!0,{fileName:L,lineNumber:42,columnNumber:5},this)}var ha=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/CommentEditor.tsx`;function ga({title:e,body:t,severity:n,category:r,busy:i,onCancel:a,onSave:o}){let[s,c]=(0,A.useState)(e),[l,u]=(0,A.useState)(t),[d,f]=(0,A.useState)(n),[p,m]=(0,A.useState)(r),h={title:s.trim(),body:l,severity:d,category:p},g=h.title.length>0;return(0,M.jsxDEV)(`div`,{className:`comment-editor`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Title`},void 0,!1,{fileName:ha,lineNumber:57,columnNumber:9},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:s,maxLength:120,autoFocus:!0,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Escape`&&a()}},void 0,!1,{fileName:ha,lineNumber:58,columnNumber:9},this)]},void 0,!0,{fileName:ha,lineNumber:56,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`comment-editor__classification`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Severity`},void 0,!1,{fileName:ha,lineNumber:72,columnNumber:11},this),(0,M.jsxDEV)(`select`,{className:`select select--${d}`,value:d,onChange:e=>f(e.target.value),onKeyDown:e=>{e.key===`Escape`&&a()},children:ei.map(e=>(0,M.jsxDEV)(`option`,{value:e,children:ti[e]},e,!1,{fileName:ha,lineNumber:80,columnNumber:15},this))},void 0,!1,{fileName:ha,lineNumber:73,columnNumber:11},this)]},void 0,!0,{fileName:ha,lineNumber:71,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Category`},void 0,!1,{fileName:ha,lineNumber:86,columnNumber:11},this),(0,M.jsxDEV)(`select`,{className:`select`,value:p,onChange:e=>m(e.target.value),onKeyDown:e=>{e.key===`Escape`&&a()},children:ni.map(e=>(0,M.jsxDEV)(`option`,{value:e,children:e},e,!1,{fileName:ha,lineNumber:94,columnNumber:15},this))},void 0,!1,{fileName:ha,lineNumber:87,columnNumber:11},this)]},void 0,!0,{fileName:ha,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:ha,lineNumber:70,columnNumber:7},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Detail`},void 0,!1,{fileName:ha,lineNumber:101,columnNumber:9},this),(0,M.jsxDEV)(`textarea`,{className:`field__input field__input--area`,value:l,rows:6,onChange:e=>u(e.target.value),onKeyDown:e=>{e.key===`Escape`&&a()}},void 0,!1,{fileName:ha,lineNumber:102,columnNumber:9},this)]},void 0,!0,{fileName:ha,lineNumber:100,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`comment-editor__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:a,children:`Cancel`},void 0,!1,{fileName:ha,lineNumber:112,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:i||!g,onClick:()=>o(h,!1),children:`Save`},void 0,!1,{fileName:ha,lineNumber:113,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:i||!g,onClick:()=>o(h,!0),children:`Save & stage`},void 0,!1,{fileName:ha,lineNumber:121,columnNumber:9},this)]},void 0,!0,{fileName:ha,lineNumber:111,columnNumber:7},this)]},void 0,!0,{fileName:ha,lineNumber:55,columnNumber:5},this)}function _a(e){return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-+|-+$/g,``)}function va(e){let t=[],n=!1;for(let r of e.split(`
247
+ `)){if(r.trimStart().startsWith("```")){n=!n;continue}if(n)continue;let e=r.match(/^(#{1,3})\s+(.+?)\s*$/);if(!e)continue;let i=e[2].replace(/[*_`]/g,``);t.push({level:e[1].length,text:i,slug:_a(i)})}return t}function ya(e,t){let n=[...e.matchAll(/`+/g)].reduce((e,t)=>Math.max(e,t[0].length),0),r="`".repeat(Math.max(3,n+1));return`${r}${t??``}\n${e}\n${r}`}var ba=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/CommentCard.tsx`,xa={open:`○`,staged:`✓`,discarded:`✗`};function Sa(e){let{comment:t}=e,[n,r]=(0,A.useState)(!1),[i,a]=(0,A.useState)(!1),o=t.status!==`open`;return(0,M.jsxDEV)(`article`,{className:`comment comment--${t.status} comment--${t.severity}${e.focused?` is-focused`:``}`,"aria-label":`${t.severity} — ${t.title}`,onClick:e.onFocus,children:[(0,M.jsxDEV)(`header`,{className:`comment__head`,onClick:e.onToggle,role:`button`,tabIndex:-1,children:[(0,M.jsxDEV)(`span`,{className:`comment__glyph`,"aria-hidden":`true`,children:xa[t.status]},void 0,!1,{fileName:ba,lineNumber:56,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`comment__severity comment__severity--${t.severity}`,children:ti[t.severity]},void 0,!1,{fileName:ba,lineNumber:57,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`comment__category`,children:t.category},void 0,!1,{fileName:ba,lineNumber:60,columnNumber:9},this),t.location&&(0,M.jsxDEV)(`span`,{className:`comment__location`,children:t.location},void 0,!1,{fileName:ba,lineNumber:61,columnNumber:30},this),(0,M.jsxDEV)(`h3`,{className:`comment__title`,children:t.title},void 0,!1,{fileName:ba,lineNumber:62,columnNumber:9},this),t.edited&&(0,M.jsxDEV)(`span`,{className:`chip`,title:`Edited ${t.edited}`,children:`edited`},void 0,!1,{fileName:ba,lineNumber:63,columnNumber:28},this)]},void 0,!0,{fileName:ba,lineNumber:55,columnNumber:7},this),e.expanded&&(0,M.jsxDEV)(`div`,{className:`comment__body`,children:n?(0,M.jsxDEV)(ga,{title:t.title,body:t.body,severity:t.severity,category:t.category,busy:e.busy,onCancel:()=>r(!1),onSave:(t,n)=>{r(!1),e.onEdit(t,n)}},void 0,!1,{fileName:ba,lineNumber:69,columnNumber:13},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`div`,{className:`comment__prose`,children:(0,M.jsxDEV)(ta,{source:t.body,compact:!0},void 0,!1,{fileName:ba,lineNumber:86,columnNumber:17},this)},void 0,!1,{fileName:ba,lineNumber:85,columnNumber:15},this),t.discussion&&(0,M.jsxDEV)(`div`,{className:`comment__discussion`,children:(0,M.jsxDEV)(ta,{source:t.discussion,compact:!0},void 0,!1,{fileName:ba,lineNumber:91,columnNumber:19},this)},void 0,!1,{fileName:ba,lineNumber:90,columnNumber:17},this),t.suggestion&&(0,M.jsxDEV)(`div`,{className:`comment__suggestion`,children:[(0,M.jsxDEV)(`div`,{className:`comment__suggestion-head`,children:[(0,M.jsxDEV)(`span`,{className:`comment__suggestion-label`,children:[`Suggestion`,t.suggestionLang?` · ${t.suggestionLang}`:``]},void 0,!0,{fileName:ba,lineNumber:98,columnNumber:21},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:async()=>{let n=await sr(t.suggestion);e.onToast(n?`Suggestion copied`:`Could not copy`,`success`)},children:`Copy`},void 0,!1,{fileName:ba,lineNumber:101,columnNumber:21},this)]},void 0,!0,{fileName:ba,lineNumber:97,columnNumber:19},this),(0,M.jsxDEV)(ta,{source:ya(t.suggestion,t.suggestionLang),compact:!0},void 0,!1,{fileName:ba,lineNumber:112,columnNumber:19},this)]},void 0,!0,{fileName:ba,lineNumber:96,columnNumber:17},this),t.file&&(0,M.jsxDEV)(`div`,{className:`comment__location-row`,children:[(0,M.jsxDEV)(`span`,{className:`comment__path`,children:t.location},void 0,!1,{fileName:ba,lineNumber:121,columnNumber:19},this),bi(e.editorScheme,e.projectDirectory,t.file,t.line)&&(0,M.jsxDEV)(`a`,{className:`link-button`,href:bi(e.editorScheme,e.projectDirectory,t.file,t.line),children:`Open in editor`},void 0,!1,{fileName:ba,lineNumber:123,columnNumber:21},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:async()=>{let n=await sr(t.location);e.onToast(n?`Location copied`:`Could not copy`,`success`)},children:`Copy`},void 0,!1,{fileName:ba,lineNumber:135,columnNumber:19},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>a(e=>!e),children:i?`Hide code`:`Peek`},void 0,!1,{fileName:ba,lineNumber:145,columnNumber:19},this)]},void 0,!0,{fileName:ba,lineNumber:120,columnNumber:17},this),i&&t.file&&(0,M.jsxDEV)(ma,{file:t.file,line:t.line,endLine:t.endLine},void 0,!1,{fileName:ba,lineNumber:156,columnNumber:17},this)]},void 0,!0,{fileName:ba,lineNumber:82,columnNumber:13},this)},void 0,!1,{fileName:ba,lineNumber:67,columnNumber:9},this),e.expanded&&!n&&(0,M.jsxDEV)(`footer`,{className:`comment__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost${t.status===`discarded`?` is-active`:``}`,disabled:e.busy,onClick:()=>e.onDecide(`discarded`),children:`Discard`},void 0,!1,{fileName:ba,lineNumber:165,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:e.busy,onClick:()=>r(!0),children:`Edit`},void 0,!1,{fileName:ba,lineNumber:173,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid${t.status===`staged`?` is-active`:``}`,disabled:e.busy,onClick:()=>e.onDecide(`staged`),children:`Stage`},void 0,!1,{fileName:ba,lineNumber:181,columnNumber:11},this),o&&(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,disabled:e.busy,onClick:()=>e.onDecide(`open`),children:`Undo`},void 0,!1,{fileName:ba,lineNumber:190,columnNumber:13},this)]},void 0,!0,{fileName:ba,lineNumber:164,columnNumber:9},this)]},void 0,!0,{fileName:ba,lineNumber:48,columnNumber:5},this)}var Ca=`plan-changes`;function wa(e){return`invariant.ui.review-cta:${e??`unknown`}`}function Ta(e){try{return window.localStorage.getItem(wa(e))===`publish`?`publish`:Ca}catch{return Ca}}function Ea(e,t){try{window.localStorage.setItem(wa(t),e)}catch{}}function Da(e){return e?[`plan-changes`,`publish`]:[`plan-changes`]}function Oa(e,t){return Da(t).includes(e)?e:Ca}function ka(e,t){let{counts:n}=t,r=n.open===0,i=n.staged===0;if(e===`plan-changes`){let e=r&&i?`Close review`:`Plan changes →`;return r?t.sessionId?{label:e,enabled:!0}:{label:e,enabled:!1,hint:`This review is tied to no session, so there is nothing to plan into.`}:{label:e,enabled:!1,hint:`Stage or discard every comment first.`}}let a=`Publish to ${t.publisherName}…`;return r?i?{label:a,enabled:!1,hint:`Every comment was discarded — there is nothing to publish.`}:t.canPublish?t.publishAvailable?{label:a,enabled:!0,hint:`${n.staged} staged comment(s) will be sent as drafts.`}:{label:a,enabled:!1,hint:`${t.publisherName} is not connected for this project.`}:{label:a,enabled:!1,hint:`This review is missing the commit shas a discussion needs to anchor to.`}:{label:a,enabled:!1,hint:`Stage or discard every comment first.`}}var Aa=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewActions.tsx`,ja=[{mode:`plan-changes`,label:`Plan changes`,detail:`Staged comments become the session’s Plan`},{mode:`publish`,label:`Publish to GitLab`,detail:`Staged comments become draft comments on the merge request`}];function Ma({review:e,projectDirectory:t,publishAvailable:n,publisherName:r,busy:i,onPlanChanges:a,onPublish:o}){let[s,c]=(0,A.useState)(Ca),[l,u]=(0,A.useState)(!1),d=(0,A.useRef)(null);(0,A.useEffect)(()=>c(Oa(Ta(t),n)),[t,n]),(0,A.useEffect)(()=>{if(!l)return;let e=e=>{d.current?.contains(e.target)||u(!1)},t=e=>{e.key===`Escape`&&u(!1)};return document.addEventListener(`mousedown`,e),document.addEventListener(`keydown`,t),()=>{document.removeEventListener(`mousedown`,e),document.removeEventListener(`keydown`,t)}},[l]);let f=Da(n),p=ja.filter(e=>f.includes(e.mode)),m=ka(s,{counts:e.counts,canPublish:e.canPublish,sessionId:e.sessionId,publishAvailable:n,publisherName:r}),h=e=>{c(e),Ea(e,t),u(!1)},g=()=>{s===`publish`?o():a()};return p.length<2?(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:i||!m.enabled,title:m.hint,onClick:g,children:m.label},void 0,!1,{fileName:Aa,lineNumber:115,columnNumber:7},this):(0,M.jsxDEV)(`div`,{className:`split`,ref:d,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid split__main`,disabled:i||!m.enabled,title:m.hint,onClick:g,children:m.label},void 0,!1,{fileName:Aa,lineNumber:129,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid split__toggle`,"aria-haspopup":`menu`,"aria-expanded":l,"aria-label":`Choose what this button does`,onClick:()=>u(e=>!e),children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 12 12`,"aria-hidden":`true`,width:`12`,height:`12`,children:(0,M.jsxDEV)(`path`,{d:`M2.5 4.5 6 8l3.5-3.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:Aa,lineNumber:148,columnNumber:11},this)},void 0,!1,{fileName:Aa,lineNumber:147,columnNumber:9},this)},void 0,!1,{fileName:Aa,lineNumber:139,columnNumber:7},this),l&&(0,M.jsxDEV)(`div`,{className:`split__menu`,role:`menu`,children:p.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":s===e.mode,className:`split__item${s===e.mode?` is-active`:``}`,onClick:()=>h(e.mode),children:[(0,M.jsxDEV)(`span`,{className:`split__check`,"aria-hidden":`true`,children:s===e.mode?`✓`:``},void 0,!1,{fileName:Aa,lineNumber:165,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`split__body`,children:[(0,M.jsxDEV)(`span`,{className:`split__label`,children:e.label},void 0,!1,{fileName:Aa,lineNumber:167,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`split__detail`,children:e.detail},void 0,!1,{fileName:Aa,lineNumber:168,columnNumber:19},this)]},void 0,!0,{fileName:Aa,lineNumber:166,columnNumber:17},this)]},e.mode,!0,{fileName:Aa,lineNumber:157,columnNumber:15},this))},void 0,!1,{fileName:Aa,lineNumber:154,columnNumber:9},this)]},void 0,!0,{fileName:Aa,lineNumber:128,columnNumber:5},this)}var z=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/PublishModal.tsx`,Na={exact:`on its line`,snapped:`snapped to the nearest changed line`,file:`on the whole file`,general:`as a general comment`};function Pa({review:e,onClose:t,onOpenSettings:n}){let r=dr(),[i,a]=(0,A.useState)(),[o,s]=(0,A.useState)(!1),[c,l]=(0,A.useState)(),u=on(e.slug,i,c===void 0),d=sn(),f=c?.failures.map(e=>e.commentId)??[],p=t=>{d.mutate({slug:e.slug,mergeRequestIid:i,only:t},{onSuccess:e=>{l(e),e.failures.length===0&&r(`${e.created.length+e.updated.length} draft comment(s) created`,`success`)},onError:e=>r(Ra(e),`danger`)})};return c?(0,M.jsxDEV)(wr,{title:`Published as drafts`,width:640,onClose:t,footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:[`Nobody is notified until you press `,(0,M.jsxDEV)(`strong`,{children:`Submit review`},void 0,!1,{fileName:z,lineNumber:65,columnNumber:50},this),` in GitLab.`]},void 0,!0,{fileName:z,lineNumber:64,columnNumber:13},this),f.length>0&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:d.isPending,onClick:()=>p(f),children:[`Retry `,f.length,` failed`]},void 0,!0,{fileName:z,lineNumber:68,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:t,children:`Done`},void 0,!1,{fileName:z,lineNumber:77,columnNumber:13},this)]},void 0,!0,{fileName:z,lineNumber:63,columnNumber:11},this),children:(0,M.jsxDEV)(Ia,{result:c},void 0,!1,{fileName:z,lineNumber:81,columnNumber:9},this)},void 0,!1,{fileName:z,lineNumber:58,columnNumber:7},this):(0,M.jsxDEV)(wr,{title:`Publish to GitLab`,width:640,onClose:t,footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:[`These are created as `,(0,M.jsxDEV)(`strong`,{children:`pending`},void 0,!1,{fileName:z,lineNumber:94,columnNumber:34},this),` comments. You submit the review yourself.`]},void 0,!0,{fileName:z,lineNumber:93,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:t,children:`Cancel`},void 0,!1,{fileName:z,lineNumber:96,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:d.isPending||u.isLoading||u.data===void 0,onClick:()=>p(),children:d.isPending?`Creating…`:`Create ${u.data?.targets.length??e.counts.staged} draft comment(s)`},void 0,!1,{fileName:z,lineNumber:97,columnNumber:11},this)]},void 0,!0,{fileName:z,lineNumber:92,columnNumber:9},this),children:[u.isLoading&&(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Resolving the merge request…`},void 0,!1,{fileName:z,lineNumber:110,columnNumber:31},this),u.error&&(0,M.jsxDEV)(La,{error:u.error,onOpenSettings:n},void 0,!1,{fileName:z,lineNumber:112,columnNumber:27},this),u.data&&(0,M.jsxDEV)(`div`,{className:`publish`,children:[(0,M.jsxDEV)(`dl`,{className:`publish__facts`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Project`},void 0,!1,{fileName:z,lineNumber:118,columnNumber:15},this),(0,M.jsxDEV)(`dd`,{children:[(0,M.jsxDEV)(`a`,{href:u.data.projectUrl,target:`_blank`,rel:`noreferrer`,children:u.data.projectPath},void 0,!1,{fileName:z,lineNumber:120,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`publish__source`,children:u.data.projectPathSource===`origin`?`from origin`:`overridden`},void 0,!1,{fileName:z,lineNumber:123,columnNumber:17},this)]},void 0,!0,{fileName:z,lineNumber:119,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:117,columnNumber:13},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Merge request`},void 0,!1,{fileName:z,lineNumber:129,columnNumber:15},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`a`,{href:u.data.mergeRequest.url,target:`_blank`,rel:`noreferrer`,children:[`!`,u.data.mergeRequest.iid,` `,u.data.mergeRequest.title]},void 0,!0,{fileName:z,lineNumber:131,columnNumber:17},this)},void 0,!1,{fileName:z,lineNumber:130,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:128,columnNumber:13},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Diff`},void 0,!1,{fileName:z,lineNumber:137,columnNumber:15},this),(0,M.jsxDEV)(`dd`,{children:[u.data.changedFileCount,` file(s) · head`,` `,(0,M.jsxDEV)(`code`,{children:u.data.mergeRequest.headSha.slice(0,7)},void 0,!1,{fileName:z,lineNumber:140,columnNumber:17},this)]},void 0,!0,{fileName:z,lineNumber:138,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:136,columnNumber:13},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Sending`},void 0,!1,{fileName:z,lineNumber:144,columnNumber:15},this),(0,M.jsxDEV)(`dd`,{children:[u.data.targets.length,` staged comment(s)`,u.data.alreadyPublished>0&&` · ${u.data.alreadyPublished} already on GitLab (they will be updated)`]},void 0,!0,{fileName:z,lineNumber:145,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:143,columnNumber:13},this),u.data.username&&(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Acting as`},void 0,!1,{fileName:z,lineNumber:153,columnNumber:17},this),(0,M.jsxDEV)(`dd`,{children:[`@`,u.data.username]},void 0,!0,{fileName:z,lineNumber:154,columnNumber:17},this)]},void 0,!0,{fileName:z,lineNumber:152,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:116,columnNumber:11},this),u.data.originProjectPath&&(0,M.jsxDEV)(`p`,{className:`publish__warning`,children:[`Publishing to `,(0,M.jsxDEV)(`strong`,{children:u.data.projectPath},void 0,!1,{fileName:z,lineNumber:161,columnNumber:29},this),`, which is not this repository’s origin (`,u.data.originProjectPath,`).`]},void 0,!0,{fileName:z,lineNumber:160,columnNumber:13},this),u.data.drift&&(0,M.jsxDEV)(`p`,{className:`publish__warning`,children:[`This review was written against`,` `,(0,M.jsxDEV)(`code`,{children:u.data.drift.reviewHeadSha.slice(0,7)},void 0,!1,{fileName:z,lineNumber:169,columnNumber:15},this),`; the merge request is now at`,` `,(0,M.jsxDEV)(`code`,{children:u.data.drift.mergeRequestHeadSha.slice(0,7)},void 0,!1,{fileName:z,lineNumber:170,columnNumber:15},this),` — line numbers may have moved.`]},void 0,!0,{fileName:z,lineNumber:167,columnNumber:13},this),u.data.candidates.length>1&&(0,M.jsxDEV)(`label`,{className:`publish__picker`,children:[(0,M.jsxDEV)(`span`,{children:`Merge request`},void 0,!1,{fileName:z,lineNumber:177,columnNumber:15},this),(0,M.jsxDEV)(`select`,{className:`select`,value:i??u.data.mergeRequest.iid,onChange:e=>a(Number(e.target.value)),children:u.data.candidates.map(e=>(0,M.jsxDEV)(`option`,{value:e.iid,children:[`!`,e.iid,` — `,e.title]},e.iid,!0,{fileName:z,lineNumber:184,columnNumber:19},this))},void 0,!1,{fileName:z,lineNumber:178,columnNumber:15},this)]},void 0,!0,{fileName:z,lineNumber:176,columnNumber:13},this),(0,M.jsxDEV)(Fa,{targets:u.data.targets},void 0,!1,{fileName:z,lineNumber:192,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>s(e=>!e),children:o?`▾ hide every target`:`▸ show every target`},void 0,!1,{fileName:z,lineNumber:194,columnNumber:11},this),o&&(0,M.jsxDEV)(`ul`,{className:`publish__targets`,children:u.data.targets.map(e=>(0,M.jsxDEV)(`li`,{className:`publish__target is-${e.kind}`,children:[(0,M.jsxDEV)(`span`,{className:`comment__severity comment__severity--${e.severity}`,children:e.severity},void 0,!1,{fileName:z,lineNumber:206,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`publish__target-title`,title:e.title,children:e.title},void 0,!1,{fileName:z,lineNumber:209,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`publish__target-where`,title:e.detail,children:[e.file?`${e.file}${e.line?`:${e.line}`:``}`:`general`,` — `,Na[e.kind]]},void 0,!0,{fileName:z,lineNumber:210,columnNumber:19},this)]},e.commentId,!0,{fileName:z,lineNumber:205,columnNumber:17},this))},void 0,!1,{fileName:z,lineNumber:203,columnNumber:13},this)]},void 0,!0,{fileName:z,lineNumber:115,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:87,columnNumber:5},this)}function Fa({targets:e}){let t=t=>e.filter(e=>e.kind===t).length,n=[t(`exact`)>0&&`${t(`exact`)} exact`,t(`snapped`)>0&&`${t(`snapped`)} snapped`,t(`file`)>0&&`${t(`file`)} file-level`,t(`general`)>0&&`${t(`general`)} general`].filter(Boolean);return(0,M.jsxDEV)(`p`,{className:`publish__summary`,children:n.join(` · `)||`Nothing to send.`},void 0,!1,{fileName:z,lineNumber:235,columnNumber:10},this)}function Ia({result:e}){let t=dr(),n=e.created.length+e.updated.length;return(0,M.jsxDEV)(`div`,{className:`publish`,children:[(0,M.jsxDEV)(`p`,{className:`publish__result`,children:[(0,M.jsxDEV)(`strong`,{children:n},void 0,!1,{fileName:z,lineNumber:245,columnNumber:9},this),` draft comment(s) on`,` `,(0,M.jsxDEV)(`a`,{href:e.url,target:`_blank`,rel:`noreferrer`,children:[`!`,e.mergeRequestIid]},void 0,!0,{fileName:z,lineNumber:246,columnNumber:9},this),e.skipped.length>0&&` · ${e.skipped.length} already submitted, left alone`]},void 0,!0,{fileName:z,lineNumber:244,columnNumber:7},this),e.session&&(0,M.jsxDEV)(`p`,{className:`publish__closed`,children:[`This review is closed — its session moved to `,(0,M.jsxDEV)(`strong`,{children:`Done`},void 0,!1,{fileName:z,lineNumber:255,columnNumber:56},this),`.`]},void 0,!0,{fileName:z,lineNumber:254,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`publish__links`,children:[(0,M.jsxDEV)(`a`,{className:`button button--subtle`,href:e.url,target:`_blank`,rel:`noreferrer`,children:`Open merge request ↗`},void 0,!1,{fileName:z,lineNumber:260,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,title:`Copy the merge request link`,"aria-label":`Copy the merge request link`,onClick:async()=>{t(await sr(e.url)?`Link copied`:`Could not copy`,`success`)},children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 16 16`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`5.5`,y:`5.5`,width:`8`,height:`8`,rx:`2`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.4`},void 0,!1,{fileName:z,lineNumber:273,columnNumber:13},this),(0,M.jsxDEV)(`path`,{d:`M10.5 5.5v-1a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h1`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.4`,strokeLinecap:`round`},void 0,!1,{fileName:z,lineNumber:275,columnNumber:13},this)]},void 0,!0,{fileName:z,lineNumber:272,columnNumber:11},this)},void 0,!1,{fileName:z,lineNumber:263,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:259,columnNumber:7},this),e.failures.length>0&&(0,M.jsxDEV)(`ul`,{className:`publish__failures`,children:e.failures.map(e=>(0,M.jsxDEV)(`li`,{children:[(0,M.jsxDEV)(`code`,{children:e.commentId},void 0,!1,{fileName:z,lineNumber:285,columnNumber:15},this),` — `,e.message]},e.commentId,!0,{fileName:z,lineNumber:284,columnNumber:13},this))},void 0,!1,{fileName:z,lineNumber:282,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:243,columnNumber:5},this)}function La({error:e,onOpenSettings:t}){let n=e instanceof bt?e.code:``,r=n===`PUBLISHER_NOT_CONFIGURED`||n===`PUBLISHER_PROJECT_MISMATCH`;return(0,M.jsxDEV)(`div`,{className:`publish__error`,children:[(0,M.jsxDEV)(`p`,{children:Ra(e)},void 0,!1,{fileName:z,lineNumber:304,columnNumber:7},this),r&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:t,children:`Open publishing settings`},void 0,!1,{fileName:z,lineNumber:306,columnNumber:9},this)]},void 0,!0,{fileName:z,lineNumber:303,columnNumber:5},this)}function Ra(e){return e instanceof bt||e instanceof Error?e.message:`That did not work.`}var za=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewPane.tsx`,Ba=[`all`,`open`,`staged`,`discarded`];function Va({review:e,projectDirectory:t,editorScheme:n=`vscode`,onPlanned:r,onOpenSettings:i}){let a=dr(),o=tn(),s=nn(),c=an(),l=pn(`review.publish`),[u,d]=(0,A.useState)(!1),[f,p]=(0,A.useState)(`all`),[m,h]=(0,A.useState)(`all`),[g,_]=(0,A.useState)(),[v,y]=(0,A.useState)(),b=(0,A.useMemo)(()=>e.runs.flatMap(e=>e.comments),[e]),x=(0,A.useMemo)(()=>gi(b,f,m),[b,f,m]);(0,A.useEffect)(()=>{if(x.length===0){_(void 0);return}(!g||!x.some(e=>e.id===g))&&_(x[0].id)},[x,g]);let ee=o.isPending||s.isPending,te=(t,n)=>{o.mutate({slug:e.slug,commentId:t.id,etag:e.etag,expectedStatus:t.status,status:n},{onError:e=>Ua(e,a),onSuccess:()=>{if(n===`open`)return;let e=_i(x,t.id);e&&(_(e.id),y(e.id))}})},S=(t,n,r)=>{let i=vi(t,n);Object.keys(i).length===0&&!r||o.mutate({slug:e.slug,commentId:t.id,etag:e.etag,expectedStatus:t.status,...i,status:r?`staged`:void 0},{onError:e=>Ua(e,a),onSuccess:()=>{i.severity&&m!==`all`&&i.severity!==m&&a(`Reclassified as ${ti[i.severity].toLowerCase()} — hidden by the current filter.`,`info`)}})},ne=()=>{let t=x.filter(e=>e.status!==`staged`).map(e=>e.id);t.length!==0&&s.mutate({slug:e.slug,ids:t,status:`staged`,etag:e.etag,expectedStatus:`open`},{onSuccess:()=>a(`Staged ${t.length} comment(s)`,`success`),onError:e=>Ua(e,a)})};Wa({enabled:!ee,comments:x,focusedId:g,onFocus:_,onToggle:e=>y(t=>t===e?void 0:e),onDecide:(e,t)=>{let n=x.find(t=>t.id===e);n&&te(n,t)},onExpand:y,onStageAll:ne});let re=e.counts,ie=yi(re);return(0,M.jsxDEV)(`div`,{className:`review`,children:[(0,M.jsxDEV)(`div`,{className:`review__scroll`,children:[(0,M.jsxDEV)(`div`,{className:`review__summary`,children:e.runs.map((t,n)=>(0,M.jsxDEV)(`section`,{className:`review__run`,children:[(0,M.jsxDEV)(`header`,{className:`review__run-head`,children:[(0,M.jsxDEV)(`span`,{className:`review__run-label`,children:e.runs.length>1?`Run ${n+1}`:`Summary`},void 0,!1,{fileName:za,lineNumber:195,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`chip`,title:t.headSha,children:t.headSha.slice(0,7)},void 0,!1,{fileName:za,lineNumber:198,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`review__run-counts`,children:[t.counts.total,` comment`,t.counts.total===1?``:`s`]},void 0,!0,{fileName:za,lineNumber:199,columnNumber:17},this),t.status===`published`&&(0,M.jsxDEV)(`span`,{className:`chip`,title:`Every staged comment in this run reached the code host`,children:`published`},void 0,!1,{fileName:za,lineNumber:203,columnNumber:19},this)]},void 0,!0,{fileName:za,lineNumber:194,columnNumber:15},this),(0,M.jsxDEV)(ta,{source:t.summary,compact:!0},void 0,!1,{fileName:za,lineNumber:210,columnNumber:15},this)]},t.id,!0,{fileName:za,lineNumber:193,columnNumber:13},this))},void 0,!1,{fileName:za,lineNumber:191,columnNumber:9},this),(0,M.jsxDEV)(`header`,{className:`review__toolbar`,children:[(0,M.jsxDEV)(`div`,{className:`segmented`,role:`tablist`,"aria-label":`Filter by decision`,children:Ba.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`tab`,"aria-selected":f===e,className:`segmented__item${f===e?` is-active`:``}`,onClick:()=>p(e),children:e===`all`?`All ${re.total}`:`${Ha(e)} ${re[e]}`},e,!1,{fileName:za,lineNumber:218,columnNumber:15},this))},void 0,!1,{fileName:za,lineNumber:216,columnNumber:11},this),(0,M.jsxDEV)(`select`,{className:`select`,value:m,"aria-label":`Filter by severity`,onChange:e=>h(e.target.value),children:[(0,M.jsxDEV)(`option`,{value:`all`,children:`Any severity`},void 0,!1,{fileName:za,lineNumber:237,columnNumber:13},this),ei.map(e=>(0,M.jsxDEV)(`option`,{value:e,children:e},e,!1,{fileName:za,lineNumber:239,columnNumber:15},this))]},void 0,!0,{fileName:za,lineNumber:231,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:ee||x.every(e=>e.status===`staged`),onClick:ne,title:`Stage every comment matching the current filter (⇧S)`,children:`Stage all shown`},void 0,!1,{fileName:za,lineNumber:243,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:async()=>{a(await sr(e.path)?`Path copied`:`Could not copy`,`success`)},children:e.path},void 0,!1,{fileName:za,lineNumber:253,columnNumber:11},this)]},void 0,!0,{fileName:za,lineNumber:215,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`review__list`,children:x.length===0?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:`Nothing matches this filter.`},void 0,!1,{fileName:za,lineNumber:266,columnNumber:13},this):x.map(e=>(0,M.jsxDEV)(Sa,{comment:e,projectDirectory:t,editorScheme:n,focused:e.id===g,expanded:e.id===v,busy:ee,onFocus:()=>_(e.id),onToggle:()=>y(t=>t===e.id?void 0:e.id),onDecide:t=>te(e,t),onEdit:(t,n)=>S(e,t,n),onToast:a},e.id,!1,{fileName:za,lineNumber:269,columnNumber:15},this))},void 0,!1,{fileName:za,lineNumber:264,columnNumber:9},this)]},void 0,!0,{fileName:za,lineNumber:190,columnNumber:7},this),(0,M.jsxDEV)(`footer`,{className:`review__foot`,children:[(0,M.jsxDEV)(`span`,{className:`review__gate${ie.kind===`ready`?` is-ready`:``}`,children:ie.label},void 0,!1,{fileName:za,lineNumber:289,columnNumber:9},this),(0,M.jsxDEV)(Ma,{review:e,projectDirectory:t,publishAvailable:l,publisherName:`GitLab`,busy:c.isPending,onPublish:()=>d(!0),onPlanChanges:()=>c.mutate(e.slug,{onSuccess:e=>{a(e.guidance,`success`),sr(e.executeLine),r?.(e.session.id)},onError:e=>Ua(e,a)})},void 0,!1,{fileName:za,lineNumber:296,columnNumber:9},this)]},void 0,!0,{fileName:za,lineNumber:288,columnNumber:7},this),u&&(0,M.jsxDEV)(Pa,{review:e,onClose:()=>d(!1),onOpenSettings:()=>{d(!1),i?.()}},void 0,!1,{fileName:za,lineNumber:317,columnNumber:9},this)]},void 0,!0,{fileName:za,lineNumber:182,columnNumber:5},this)}function Ha(e){return e[0].toUpperCase()+e.slice(1)}function Ua(e,t){if(e instanceof bt&&e.isNotTriaged){t(`${e.openCount} comment(s) still need a decision.`,`danger`);return}if(e instanceof bt&&e.isConflict){t(`That comment changed on disk — reload before deciding on it again.`,`danger`);return}t(e instanceof Error?e.message:`That did not work.`,`danger`)}function Wa(e){(0,A.useEffect)(()=>{let t=t=>{if(!e.enabled)return;let n=t.target;if(n&&(n.tagName===`INPUT`||n.tagName===`TEXTAREA`||n.isContentEditable))return;let r=e.comments.findIndex(t=>t.id===e.focusedId),i=t=>{if(e.comments.length===0)return;let n=Math.min(Math.max(r+t,0),e.comments.length-1);e.onFocus(e.comments[n].id)};if(t.shiftKey&&t.key.toLowerCase()===`s`){t.preventDefault(),e.onStageAll();return}if(!(t.metaKey||t.ctrlKey||t.altKey))switch(t.key){case`j`:i(1);return;case`k`:i(-1);return;case`Enter`:e.focusedId&&(t.preventDefault(),e.onToggle(e.focusedId));return;case`s`:e.focusedId&&(t.preventDefault(),e.onDecide(e.focusedId,`staged`));return;case`d`:e.focusedId&&(t.preventDefault(),e.onDecide(e.focusedId,`discarded`));return;case`e`:e.focusedId&&(t.preventDefault(),e.onExpand(e.focusedId));return}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e])}var Ga=/^##[ \t]+Task[ \t]*\r?$/,Ka=/^#[ \t]+Session:[ \t]+session-[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}[ \t]*\r?$/,qa=/^<Instructions>[ \t]*\r?$/,Ja=/^<\/Instructions>[ \t]*\r?$/,Ya=/^##[ \t]+Context[ \t]*\r?$/,Xa=/^##[ \t]+Loop[ \t]*\r?$/,Za=/^##[ \t]+Included Instructions[ \t]*\r?$/,Qa=/^[ \t]*(```|~~~)/;function $a(e){return Xa.test(e)||qa.test(e)||Ya.test(e)||Za.test(e)}function eo(e){let t=e.split(`
248
+ `),n=t.findIndex(e=>Ga.test(e));if(n===-1)return{body:e};let r=t.slice(0,n),i=t.slice(n).join(`
249
+ `);return r.filter(e=>e.trim().length>0&&!Ka.test(e)).length===0?{body:i}:{body:i,brief:to(r)}}function to(e){let t=[],n,r,i,a,o=0;for(;o<e.length;){let s=e[o];if(Ka.test(s)){o+=1;continue}if(qa.test(s)){let t=no(e,o+1,Ja);if(t!==-1){n=io(e.slice(o+1,t)).join(`
250
+ `),o=t+1;continue}}if(Ya.test(s)||Za.test(s)||Xa.test(s)){let t=ro(e,o+1),n=io(e.slice(o+1,t)).join(`
251
+ `);Ya.test(s)?r=n:Xa.test(s)?i=n:a=n,o=t;continue}t.push(s),o+=1}let s=io(t).join(`
252
+ `);return{protocol:n,context:r,loop:i,included:a,other:s.length>0?s:void 0,lines:io(e).length}}function no(e,t,n){for(let r=t;r<e.length;r+=1)if(n.test(e[r]))return r;return-1}function ro(e,t){for(let n=t;n<e.length;n+=1)if($a(e[n]))return n;return e.length}function io(e){let t=0,n=e.length;for(;t<n&&e[t].trim().length===0;)t+=1;for(;n>t&&e[n-1].trim().length===0;)--n;return e.slice(t,n)}function ao(e){let t=e.split(`
253
+ `),n=[],r=!1,i=0;for(;i<t.length;){let e=t[i];if(Qa.test(e)){r=!r,n.push(e),i+=1;continue}if(!r&&e.trim().startsWith(`<!--`)){let e=no(t,i,/-->[ \t]*\r?$/);if(e!==-1){i=e+1;continue}}n.push(e),i+=1}return n.join(`
254
+ `)}var oo=/^[ \t]*<issue-spec\b([^>]*)>[ \t]*$/,so=/^[ \t]*<\/issue-spec>[ \t]*$/,co=/^[ \t]*<!--[ \t]*issue-spec:/;function lo(e){let t=e.split(`
255
+ `);for(let n=0;n<t.length;n+=1){let r=t[n].match(oo);if(!r)continue;let i=t.findIndex((e,t)=>t>n&&so.test(e));if(i===-1)return{body:e};let a=n>0&&co.test(t[n-1])?n-1:n;return{body:[t.slice(0,a).join(`
256
+ `).replace(/\s+$/,``),t.slice(i+1).join(`
257
+ `).replace(/^\s+/,``)].filter(e=>e.length>0).join(`
258
+
259
+ `),spec:{content:t.slice(n+1,i).join(`
260
+ `).replace(/^\n+|\n+$/g,``),syncedAt:uo(r[1]??``,`synced-at`)}}}return{body:e}}function uo(e,t){let n=e.match(RegExp(`${t}="([^"]*)"`))?.[1]?.trim();return n&&n.length>0?n:void 0}var B=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/SessionPage.tsx`,fo=(0,A.lazy)(()=>Fr(()=>import(`./Editor-Cmu6OATc.js`).then(e=>({default:e.Editor})),[])),po=(0,A.lazy)(()=>Fr(()=>import(`./Preview-GmEy6X9-.js`).then(e=>({default:e.Preview})),[])),mo=1200,ho=/^<{7} yours\r?$/m;function go({sessionId:e,mode:t,onModeChange:n,onBack:r,onArchived:i,onOpenSession:a,onOpenLoop:o,onOpenSettings:s}){let c=dr(),{data:l,isLoading:u,error:d}=Ht(e),{data:f}=Bt(),{data:p}=Vt(),m=Wt(),h=Ut(),g=Jt(),_=pn(`issue.link`),v=bn(),y=Xt(),b=qt(),x=Gt(),{data:ee}=$t((0,A.useMemo)(()=>l?.reviewFile?hi(l.reviewFile):void 0,[l?.reviewFile])),[te,S]=(0,A.useState)(`review`),[ne,re]=(0,A.useState)(!1),[ie,C]=(0,A.useState)(!1),[w,T]=(0,A.useState)(),[E,ae]=(0,A.useState)(),D=(0,A.useRef)(``),oe=(0,A.useRef)(``),se=(0,A.useRef)(null),ce=w!==void 0&&w!==oe.current;(0,A.useEffect)(()=>{l&&D.current!==l.etag&&(w===void 0||w===oe.current)&&(D.current=l.etag,oe.current=l.body,T(l.body),ae(void 0))},[l,w]);let le=(0,A.useCallback)((t,n=!1)=>{l&&m.mutate({sessionId:e,body:t,etag:D.current,baseBody:oe.current,force:n},{onSuccess:({session:e,merged:t})=>{D.current=e.etag,oe.current=e.body,T(e.body),ae(void 0),t&&c(`Merged the agent’s changes into yours.`,`info`)},onError:e=>{if(e instanceof bt&&e.isMergeConflict){ae({merged:e.detail.mergedPreview??``,theirs:e.detail.currentContent??``,etag:e.detail.actualEtag??``,count:e.detail.conflictCount??1});return}c(e instanceof Error?e.message:`Could not save.`,`danger`)}})},[m,l,e,c]),ue=(0,A.useCallback)((e,t,n)=>{D.current=e,oe.current=t,T(n),ae(void 0)},[]),de=(0,A.useCallback)(()=>{w!==void 0&&ce&&le(w)},[w,ce,le]);(0,A.useEffect)(()=>{if(!(!ce||w===void 0||E)&&!ho.test(w))return se.current&&clearTimeout(se.current),se.current=setTimeout(()=>le(w),mo),()=>{se.current&&clearTimeout(se.current)}},[w,ce,E,le]);let fe=(0,A.useMemo)(()=>p?.sessions??[],[p]),pe=(0,A.useMemo)(()=>l?.parent?fe.find(e=>e.id===l.parent):void 0,[fe,l?.parent]),me=(0,A.useMemo)(()=>l?`execute instructions from ${l.path}`:``,[l]);if((0,A.useEffect)(()=>{!l||l.kind!==`review`||S(l.status===`review`?`review`:`plan`)},[l?.id,l?.status,l?.kind]),u)return(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading session…`},void 0,!1,{fileName:B,lineNumber:227,columnNumber:25},this);if(d||!l)return(0,M.jsxDEV)(`div`,{className:`page-state`,children:[(0,M.jsxDEV)(`p`,{children:`This session could not be loaded.`},void 0,!1,{fileName:B,lineNumber:231,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:r,children:`Back to sessions`},void 0,!1,{fileName:B,lineNumber:232,columnNumber:9},this)]},void 0,!0,{fileName:B,lineNumber:230,columnNumber:7},this);let he=w??l.body,{body:ge,brief:_e}=eo(he),{body:ve,spec:ye}=lo(ge),be=ao(ve),xe=l.kind===`review`,Se=!xe||te===`plan`;return(0,M.jsxDEV)(`div`,{className:`session`,children:[l.loop&&o&&(0,M.jsxDEV)(oa,{loopId:l.loop.id,onOpen:()=>o(l.loop.id)},void 0,!1,{fileName:B,lineNumber:253,columnNumber:38},this),(0,M.jsxDEV)(`header`,{className:`session__head`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,onClick:r,title:`Back (Esc)`,"aria-label":`Back`,children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 16 16`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M9.5 3.5 5 8l4.5 4.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:B,lineNumber:257,columnNumber:13},this)},void 0,!1,{fileName:B,lineNumber:256,columnNumber:11},this)},void 0,!1,{fileName:B,lineNumber:255,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`session__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`session__title`,children:l.title},void 0,!1,{fileName:B,lineNumber:263,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`session__meta`,children:[(0,M.jsxDEV)(`span`,{className:`session__stamp session__stamp--created`,title:ir(l.created),children:[`created `,rr(l.created)]},void 0,!0,{fileName:B,lineNumber:265,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`session__stamp session__stamp--created`,"aria-hidden":`true`,children:`·`},void 0,!1,{fileName:B,lineNumber:268,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`session__stamp`,title:ir(l.updated),children:[`updated `,rr(l.updated)]},void 0,!0,{fileName:B,lineNumber:269,columnNumber:13},this),ce&&(0,M.jsxDEV)(`span`,{className:`session__dirty`,children:w!==void 0&&ho.test(w)?`unsaved — resolve the conflict markers`:`unsaved`},void 0,!1,{fileName:B,lineNumber:273,columnNumber:15},this),m.isPending&&(0,M.jsxDEV)(`span`,{className:`session__saving`,children:`saving…`},void 0,!1,{fileName:B,lineNumber:279,columnNumber:32},this)]},void 0,!0,{fileName:B,lineNumber:264,columnNumber:11},this),xe&&(0,M.jsxDEV)(`div`,{className:`session__lineage`,children:[(0,M.jsxDEV)(`span`,{className:`session__kicker`,children:`Review`},void 0,!1,{fileName:B,lineNumber:284,columnNumber:15},this),l.branch&&(0,M.jsxDEV)(`span`,{className:`session__branch`,children:l.branch},void 0,!1,{fileName:B,lineNumber:285,columnNumber:34},this),pe?(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>a(pe.id),title:`Open the session under review`,children:[`↳ `,pe.title]},void 0,!0,{fileName:B,lineNumber:287,columnNumber:17},this):l.parent?(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button link-button--danger`,onClick:()=>re(!0),children:`↳ unlinked — the session this reviewed is gone`},void 0,!1,{fileName:B,lineNumber:298,columnNumber:17},this):(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>re(!0),children:`↳ standalone — link to a session`},void 0,!1,{fileName:B,lineNumber:306,columnNumber:17},this)]},void 0,!0,{fileName:B,lineNumber:283,columnNumber:13},this)]},void 0,!0,{fileName:B,lineNumber:262,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`session__controls`,children:[(0,M.jsxDEV)(si,{status:l.status,kind:l.kind,review:ee,onTriage:()=>S(`review`),onChange:t=>h.mutate({sessionId:e,status:t},{onError:()=>c(`Could not change the status.`,`danger`)})},void 0,!1,{fileName:B,lineNumber:315,columnNumber:11},this),(0,M.jsxDEV)(pi,{harness:l.harness,status:l.status},void 0,!1,{fileName:B,lineNumber:327,columnNumber:11},this),xe&&(0,M.jsxDEV)(`div`,{className:`segmented`,role:`tablist`,"aria-label":`Session view`,children:[`review`,`plan`].map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`tab`,"aria-selected":te===e,className:`segmented__item${te===e?` is-active`:``}`,onClick:()=>S(e),children:[e===`review`?`Comments`:`Fix plan`,e===`review`&&ee&&ee.counts.open>0&&(0,M.jsxDEV)(`span`,{className:`segmented__badge`,children:ee.counts.open},void 0,!1,{fileName:B,lineNumber:342,columnNumber:21},this)]},e,!0,{fileName:B,lineNumber:332,columnNumber:17},this))},void 0,!1,{fileName:B,lineNumber:330,columnNumber:13},this),Se&&(0,M.jsxDEV)(`div`,{className:`segmented`,role:`tablist`,"aria-label":`View mode`,children:[`preview`,`edit`,`split`].map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`tab`,"aria-selected":t===e,className:`segmented__item${t===e?` is-active`:``}`,onClick:()=>n(e),title:e===`preview`?`Preview (⇧⌘V)`:e===`edit`?`Edit (⇧⌘V)`:`Split`,children:e[0].toUpperCase()+e.slice(1)},e,!1,{fileName:B,lineNumber:352,columnNumber:17},this))},void 0,!1,{fileName:B,lineNumber:350,columnNumber:13},this),(0,M.jsxDEV)(`div`,{className:`session__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:async()=>{c(await sr(me)?`Execute line copied`:`Could not copy`,`success`)},children:`Copy execute line`},void 0,!1,{fileName:B,lineNumber:368,columnNumber:13},this),_&&!l.issue&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>C(!0),title:`Give this session a counterpart in Linear`,children:`Link to Linear`},void 0,!1,{fileName:B,lineNumber:378,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>{window.confirm(`Archive this session? The file moves to .invariant/sessions/.archive/`)&&g.mutate(e,{onSuccess:()=>{c(`Session archived`,`success`),i()},onError:()=>c(`Could not archive the session.`,`danger`)})},children:`Archive`},void 0,!1,{fileName:B,lineNumber:387,columnNumber:13},this)]},void 0,!0,{fileName:B,lineNumber:367,columnNumber:11},this)]},void 0,!0,{fileName:B,lineNumber:314,columnNumber:9},this)]},void 0,!0,{fileName:B,lineNumber:254,columnNumber:7},this),xe&&(0,M.jsxDEV)(Gi,{status:l.status,review:ee,onTriage:()=>S(`review`),onCopyExecuteLine:async()=>{c(await sr(me)?`Execute line copied`:`Could not copy`,`success`)}},void 0,!1,{fileName:B,lineNumber:405,columnNumber:9},this),E&&(0,M.jsxDEV)(Vi,{conflictCount:E.count,onOpenMerge:()=>{ue(E.etag,E.theirs,E.merged)},onKeepMine:()=>{w!==void 0&&le(w,!0)},onTakeTheirs:async()=>{w!==void 0&&await x.mutateAsync({sessionId:e,body:w}),ue(E.etag,E.theirs,E.theirs),c(`Your version was parked in .invariant/sessions/.conflicts/`,`info`)}},void 0,!1,{fileName:B,lineNumber:416,columnNumber:9},this),l.needsMigration&&(0,M.jsxDEV)(`div`,{className:`banner banner--warning`,children:[(0,M.jsxDEV)(`div`,{className:`banner__text`,children:[(0,M.jsxDEV)(`strong`,{children:`This session has no canonical header.`},void 0,!1,{fileName:B,lineNumber:440,columnNumber:13},this),` `,l.issues[0]]},void 0,!0,{fileName:B,lineNumber:439,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`banner__actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:()=>y.mutate(e,{onSuccess:()=>c(`Header migrated`,`success`),onError:()=>c(`Could not migrate the header.`,`danger`)}),children:`Fix header`},void 0,!1,{fileName:B,lineNumber:443,columnNumber:13},this)},void 0,!1,{fileName:B,lineNumber:442,columnNumber:11},this)]},void 0,!0,{fileName:B,lineNumber:438,columnNumber:9},this),!xe&&l.status===`executed`&&(0,M.jsxDEV)(Ui,{session:l,onOpenSession:a,onToast:c},void 0,!1,{fileName:B,lineNumber:460,columnNumber:9},this),xe&&te===`review`?ee?(0,M.jsxDEV)(Va,{review:ee,projectDirectory:f?.directory,onPlanned:()=>S(`plan`),onOpenSettings:s},void 0,!1,{fileName:B,lineNumber:469,columnNumber:11},this):(0,M.jsxDEV)(`div`,{className:`page-state`,children:`The review document has not been written yet. Paste the execute line into a new agent conversation, and the comments will appear here as soon as it saves them.`},void 0,!1,{fileName:B,lineNumber:476,columnNumber:11},this):(0,M.jsxDEV)(M.Fragment,{children:[t!==`edit`&&(0,M.jsxDEV)(ca,{brief:_e},void 0,!1,{fileName:B,lineNumber:483,columnNumber:31},this),l.issue&&t!==`edit`&&(0,M.jsxDEV)(na,{session:l,spec:ye},void 0,!1,{fileName:B,lineNumber:485,columnNumber:48},this),(0,M.jsxDEV)(`div`,{className:`session__body session__body--${t}`,children:(0,M.jsxDEV)(A.Suspense,{fallback:(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:B,lineNumber:488,columnNumber:33},this),children:[t!==`preview`&&(0,M.jsxDEV)(fo,{value:he,onChange:T,onSave:de},void 0,!1,{fileName:B,lineNumber:489,columnNumber:38},this),t!==`edit`&&(0,M.jsxDEV)(po,{body:be,withToc:t===`preview`},void 0,!1,{fileName:B,lineNumber:491,columnNumber:17},this)]},void 0,!0,{fileName:B,lineNumber:488,columnNumber:13},this)},void 0,!1,{fileName:B,lineNumber:487,columnNumber:11},this)]},void 0,!0,{fileName:B,lineNumber:482,columnNumber:9},this),ie&&(0,M.jsxDEV)(Zi,{sessionTitle:l.title,busy:v.isPending,onClose:()=>C(!1),onLink:t=>v.mutate({sessionId:e,reference:t},{onSuccess:e=>{C(!1),c(`Linked to ${e.issue?.key??`Linear`}`,`success`)},onError:e=>c(e instanceof Error?e.message:`Could not link.`,`danger`)})},void 0,!1,{fileName:B,lineNumber:499,columnNumber:9},this),ne&&(0,M.jsxDEV)(qi,{review:l,candidates:fe,busy:b.isPending,onClose:()=>re(!1),onLink:t=>b.mutate({sessionId:e,parentSessionId:t},{onSuccess:()=>{re(!1),c(`Review linked`,`success`)},onError:e=>c(e instanceof Error?e.message:`Could not link the review.`,`danger`)})},void 0,!1,{fileName:B,lineNumber:520,columnNumber:9},this)]},void 0,!0,{fileName:B,lineNumber:252,columnNumber:5},this)}var _o={prompt:``,context:``,full:!1};function vo(e){return`invariant.ui.session-draft:${e??`unknown`}`}function yo(e){return e.prompt.trim().length===0&&e.context.trim().length===0&&!e.full}function bo(e){try{let t=window.localStorage.getItem(vo(e));if(!t)return _o;let n=JSON.parse(t);if(typeof n!=`object`||!n)return _o;let r=n;return{prompt:typeof r.prompt==`string`?r.prompt:``,context:typeof r.context==`string`?r.context:``,full:r.full===!0}}catch{return _o}}function xo(e,t){try{if(yo(e)){window.localStorage.removeItem(vo(t));return}window.localStorage.setItem(vo(t),JSON.stringify(e))}catch{}}function So(e){try{window.localStorage.removeItem(vo(e))}catch{}}var Co=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/sessions/NewSessionModal.tsx`;function wo({busy:e,projectDirectory:t,onClose:n,onSubmit:r}){let[i]=(0,A.useState)(()=>bo(t)),[a,o]=(0,A.useState)(i.prompt),[s,c]=(0,A.useState)(i.context),[l,u]=(0,A.useState)(i.full),d=(0,A.useRef)(!yo(i)),f=!yo({prompt:a,context:s,full:l});(0,A.useEffect)(()=>{let e=window.setTimeout(()=>xo({prompt:a,context:s,full:l},t),300);return()=>window.clearTimeout(e)},[a,s,l,t]);let p=()=>{let n=a.trim();n.length===0||e||(So(t),r({prompt:n,context:s.trim()||void 0,full:l||void 0}))};return(0,M.jsxDEV)(wr,{title:`New session`,onClose:()=>{So(t),n()},width:620,dirty:f,confirmClose:{title:`Discard this session?`,body:"Your task description has not been sent to `invariant plan`. Closing loses what you typed.",confirmLabel:`Discard`,cancelLabel:`Keep editing`},footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:d.current?`Restored your last draft`:(0,M.jsxDEV)(M.Fragment,{children:[`Runs `,(0,M.jsxDEV)(`code`,{children:`invariant plan`},void 0,!1,{fileName:Co,lineNumber:64,columnNumber:72},this),` in this project`]},void 0,!0,{fileName:Co,lineNumber:64,columnNumber:65},this)},void 0,!1,{fileName:Co,lineNumber:63,columnNumber:11},this),(0,M.jsxDEV)(To,{},void 0,!1,{fileName:Co,lineNumber:66,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:p,disabled:e||a.trim().length===0,children:e?`Creating…`:`Create session ⌘↵`},void 0,!1,{fileName:Co,lineNumber:67,columnNumber:11},this)]},void 0,!0,{fileName:Co,lineNumber:62,columnNumber:9},this),children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Task`},void 0,!1,{fileName:Co,lineNumber:74,columnNumber:9},this),(0,M.jsxDEV)(`textarea`,{className:`field__input field__input--area`,"data-autofocus":!0,rows:6,value:a,placeholder:`Describe what should be planned and built…`,onChange:e=>o(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`Enter`&&(e.preventDefault(),p())}},void 0,!1,{fileName:Co,lineNumber:75,columnNumber:9},this)]},void 0,!0,{fileName:Co,lineNumber:73,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`field-row`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Context `,(0,M.jsxDEV)(`span`,{className:`field__optional`,children:`optional`},void 0,!1,{fileName:Co,lineNumber:90,columnNumber:50},this)]},void 0,!0,{fileName:Co,lineNumber:90,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:s,placeholder:`package/context-name`,onChange:e=>c(e.target.value)},void 0,!1,{fileName:Co,lineNumber:91,columnNumber:11},this)]},void 0,!0,{fileName:Co,lineNumber:89,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:l,onChange:e=>u(e.target.checked)},void 0,!1,{fileName:Co,lineNumber:100,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[`Inline full instructions (`,(0,M.jsxDEV)(`code`,{children:`--full`},void 0,!1,{fileName:Co,lineNumber:101,columnNumber:43},this),`)`]},void 0,!0,{fileName:Co,lineNumber:101,columnNumber:11},this)]},void 0,!0,{fileName:Co,lineNumber:99,columnNumber:9},this)]},void 0,!0,{fileName:Co,lineNumber:88,columnNumber:7},this)]},void 0,!0,{fileName:Co,lineNumber:46,columnNumber:5},this)}function To(){let e=br();return(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:e,children:`Cancel`},void 0,!1,{fileName:Co,lineNumber:112,columnNumber:5},this)}function Eo(e){let t={slugs:[],sessionIds:[],skipped:0};for(let n of e)n.document&&n.slug?t.slugs.push(n.slug):n.reviewSession?t.sessionIds.push(n.reviewSession.id):t.skipped+=1;return t}function Do(e){return e.slugs.length+e.sessionIds.length}function Oo(e){let t=[];return e.slugs.length>0&&t.push(`${e.slugs.length} document${e.slugs.length===1?``:`s`} move to the review directory’s .archive/, along with the review sessions that wrote them`),e.sessionIds.length>0&&t.push(`${e.sessionIds.length} review${e.sessionIds.length===1?``:`s`} not written yet move to .invariant/sessions/.archive/`),`${t.length>0?`${t.join(`. `)}.`:`Nothing to move.`} The sessions under review are not touched.`}var ko=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewBulkBar.tsx`;function Ao({entries:e,count:t,hiddenCount:n,onClear:r,onNarrow:i}){let a=dr(),o=Yt(),s=Jt(),[c,l]=(0,A.useState)(!1),[u,d]=(0,A.useState)(!1),f=Eo(e),p=async()=>{d(!0),l(!1);let[t,n]=await Promise.all([Pi(f.slugs,e=>o.mutateAsync(e)),Pi(f.sessionIds,e=>s.mutateAsync(e))]),c={ok:[...t.ok,...n.ok],failed:[...t.failed,...n.failed]},{message:u,tone:p}=Fi(c,{done:`Archived`,doing:`archive`,noun:`review`});if(a(u,p),c.failed.length===0)r();else{let t=new Set(c.failed.map(e=>e.id));i(e.filter(e=>e.slug!==void 0&&t.has(e.slug)||e.reviewSession!==void 0&&t.has(e.reviewSession.id)).map(e=>e.key))}d(!1)};return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(Ni,{count:t,hiddenCount:n,noun:`review`,busy:u,onClear:r,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,disabled:u||Do(f)===0,title:Do(f)===0?`Nothing in this selection can be archived.`:void 0,onClick:()=>l(!0),children:u?`Archiving…`:`Archive`},void 0,!1,{fileName:ko,lineNumber:80,columnNumber:9},this)},void 0,!1,{fileName:ko,lineNumber:79,columnNumber:7},this),c&&(0,M.jsxDEV)(wr,{title:`Archive ${Do(f)} review${Do(f)===1?``:`s`}?`,onClose:()=>l(!1),footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>l(!1),children:`Cancel`},void 0,!1,{fileName:ko,lineNumber:97,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,onClick:()=>void p(),children:`Archive`},void 0,!1,{fileName:ko,lineNumber:104,columnNumber:15},this)]},void 0,!0,{fileName:ko,lineNumber:96,columnNumber:13},this),children:[(0,M.jsxDEV)(`p`,{className:`modal__text`,children:Oo(f)},void 0,!1,{fileName:ko,lineNumber:110,columnNumber:11},this),(0,M.jsxDEV)(`p`,{className:`modal__text modal__text--muted`,children:`Nothing is deleted — every file stays readable on disk.`},void 0,!1,{fileName:ko,lineNumber:111,columnNumber:11},this)]},void 0,!0,{fileName:ko,lineNumber:92,columnNumber:9},this)]},void 0,!0,{fileName:ko,lineNumber:78,columnNumber:5},this)}var jo={hub:{key:`hub`,title:`Projects`,summary:`What a project is here, how to add one, and how to move between them.`,version:1},sessions:{key:`sessions`,title:`Sessions`,summary:`Writing a session, handing it to an agent, and reading the status back.`,version:1},reviews:{key:`reviews`,title:`Reviews`,summary:`Asking for a review, triaging the comments, and turning them into work.`,version:1},packages:{key:`packages`,title:`Packages`,summary:`Installing a package, choosing which items are active, and syncing your agents.`,version:1}},Mo=[`hub`,`sessions`,`reviews`,`packages`];function No(){return Mo.map(e=>jo[e]).filter(e=>e.loomId!==void 0)}function Po(e){switch(e.name){case`hub`:return`hub`;case`sessions`:case`session`:return`sessions`;case`reviews`:case`review`:return`reviews`;case`packages`:case`skills`:return`packages`;default:return}}var Fo=`invariant.tutorial.watched`,Io=`invariant.tutorial.auto-open`,Lo=[`hub`];function Ro(){try{let e=window.localStorage.getItem(Fo);if(!e)return{};let t=JSON.parse(e);if(typeof t!=`object`||!t)return{};let n={};for(let e of Mo){let r=t[e];typeof r==`number`&&(n[e]=r)}return n}catch{return{}}}function zo(e){let t={...Ro(),[e]:jo[e].version};return Go(Fo,JSON.stringify(t)),t}function Bo(){return Go(Fo,JSON.stringify({})),{}}function Vo(){try{return window.localStorage.getItem(Io)!==`off`}catch{return!0}}function Ho(e){Go(Io,e?`on`:`off`)}function Uo(e,t){if(t.loomId===void 0)return!1;let n=e[t.key];return n===void 0||n<t.version}function Wo({tutorial:e,watched:t,autoOpen:n,overlayPresent:r,playerOpen:i}){return!n||!Lo.includes(e.key)||r||i?!1:Uo(t,e)}function Go(e,t){try{window.localStorage.setItem(e,t)}catch{}}var Ko=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/tutorials/TutorialProvider.tsx`,qo=(0,A.createContext)(void 0);function Jo(){let e=(0,A.useContext)(qo);if(!e)throw Error(`useTutorials must be used inside a <TutorialProvider>`);return e}function Yo(e){let{watched:t}=Jo(),n=jo[e];if(n.loomId!==void 0)return{tutorial:n,unwatched:Uo(t,n)}}var Xo=600;function Zo({activeKey:e,children:t}){let[n,r]=(0,A.useState)(),[i,a]=(0,A.useState)(()=>Ro()),[o,s]=(0,A.useState)(()=>Vo()),c=(0,A.useRef)(1),l=(0,A.useRef)(void 0);l.current=n;let u=(0,A.useCallback)(e=>{jo[e].loomId!==void 0&&(r({key:e,state:`expanded`,session:c.current++}),a(zo(e)))},[]),d=(0,A.useCallback)(()=>r(e=>e&&{...e,state:`expanded`}),[]),f=(0,A.useCallback)(()=>r(e=>e&&{...e,state:`mini`}),[]),p=(0,A.useCallback)(()=>r(void 0),[]),m=(0,A.useCallback)(e=>{Ho(e),s(e)},[]),h=(0,A.useCallback)(()=>a(Bo()),[]),g=(0,A.useRef)(!1);(0,A.useEffect)(()=>{if(!e||g.current)return;let t=window.setTimeout(()=>{Wo({tutorial:jo[e],watched:Ro(),autoOpen:Vo(),overlayPresent:document.querySelector(`.overlay`)!==null,playerOpen:l.current!==void 0})&&(g.current=!0,u(e))},Xo);return()=>window.clearTimeout(t)},[e,u]);let _=(0,A.useMemo)(()=>({viewing:n,watched:i,autoOpen:o,open:u,expand:d,minimise:f,close:p,setAutoOpen:m,forgetWatched:h}),[n,i,o,u,d,f,p,m,h]);return(0,M.jsxDEV)(qo.Provider,{value:_,children:t},void 0,!1,{fileName:Ko,lineNumber:162,columnNumber:10},this)}var Qo=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/tutorials/TutorialButton.tsx`;function $o({surface:e}){let t=Yo(e),{open:n}=Jo();return t?(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle tutorial-button`,onClick:()=>n(e),title:`Watch the ${t.tutorial.title} intro — ${t.tutorial.summary}`,"aria-label":t.unwatched?`Watch intro — not watched yet`:`Watch intro`,children:[(0,M.jsxDEV)(`svg`,{className:`tutorial-button__glyph`,viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`circle`,{cx:`10`,cy:`10`,r:`7`},void 0,!1,{fileName:Qo,lineNumber:35,columnNumber:9},this),(0,M.jsxDEV)(`path`,{d:`M8.5 7.2 13 10l-4.5 2.8z`},void 0,!1,{fileName:Qo,lineNumber:36,columnNumber:9},this)]},void 0,!0,{fileName:Qo,lineNumber:34,columnNumber:7},this),`Watch intro`,t.unwatched&&(0,M.jsxDEV)(`span`,{className:`tutorial-button__dot`,"aria-hidden":`true`},void 0,!1,{fileName:Qo,lineNumber:39,columnNumber:27},this)]},void 0,!0,{fileName:Qo,lineNumber:27,columnNumber:5},this):null}function es(e,t){let n=new Map(t.map(e=>[e.id,e])),r=t.filter(e=>e.kind===`review`),i=new Map;for(let e of r){if(!e.reviewFile)continue;let t=hi(e.reviewFile);i.set(t,[...i.get(t)??[],e])}let a=new Set,o=[];for(let t of e){let e=i.get(t.slug)??[],r=t.sessionId?n.get(t.sessionId):void 0,s=r??ns(e);for(let t of e)a.add(t.id);r&&a.add(r.id);let c=s?.parent?n.get(s.parent):void 0;o.push({key:t.slug,slug:t.slug,branch:t.branch,path:t.path,document:t,reviewSession:s,subject:c,link:ts(s,c),state:t.counts.open>0?`triage`:`settled`,updated:rs(t.updated,s?.updated)})}for(let e of r){if(a.has(e.id))continue;let t=e.parent?n.get(e.parent):void 0;o.push({key:e.id,slug:e.reviewFile?hi(e.reviewFile):void 0,branch:e.branch??e.title,path:e.reviewFile,reviewSession:e,subject:t,link:ts(e,t),state:`pending`,updated:e.updated})}return o.sort((e,t)=>e.state===`triage`==(t.state===`triage`)?t.updated.localeCompare(e.updated):e.state===`triage`?-1:1)}function ts(e,t){return e?t?`attached`:e.parent?`orphaned`:`standalone`:`unowned`}function ns(e){return e.reduce((e,t)=>!e||t.updated.localeCompare(e.updated)>0?t:e,void 0)}function rs(e,t){return t&&t.localeCompare(e)>0?t:e}var is={selected:new Set};function as(e,t,n,r={}){let i=new Set(e.selected);if(r.range&&e.anchor!==void 0){let r=t.indexOf(e.anchor),a=t.indexOf(n);if(r!==-1&&a!==-1){let[n,o]=r<=a?[r,a]:[a,r];for(let e of t.slice(n,o+1))i.add(e);return{selected:i,anchor:e.anchor}}}return i.has(n)?i.delete(n):i.add(n),{selected:i,anchor:n}}function os(e,t){return{selected:new Set([...e.selected,...t]),anchor:e.anchor}}function ss(e,t){if(e.selected.size===0)return e;let n=[...e.selected].filter(e=>t.has(e));return n.length===e.selected.size?e:{selected:new Set(n),anchor:e.anchor!==void 0&&t.has(e.anchor)?e.anchor:void 0}}function cs(e,t){let n=us(e,t);return t.length>0&&n===t.length?`all`:n>0?`some`:`none`}function ls(e,t){return e.size-us(e,t)}function us(e,t){return t.reduce((t,n)=>e.has(n)?t+1:t,0)}function ds(e,t=e){let[n,r]=(0,A.useState)(is),i=(0,A.useRef)(e);i.current=e;let a=(0,A.useMemo)(()=>new Set(t),[t]);(0,A.useEffect)(()=>{r(e=>ss(e,a))},[a]);let o=(0,A.useCallback)((e,t)=>{r(n=>as(n,i.current,e,t))},[]),s=(0,A.useCallback)(()=>{r(e=>os(e,i.current))},[]),c=(0,A.useCallback)(()=>r(is),[]),l=(0,A.useCallback)(e=>{r({selected:new Set(e)})},[]),{selected:u}=n;return{selected:u,count:u.size,isSelected:(0,A.useCallback)(e=>u.has(e),[u]),toggle:o,selectAll:s,clear:c,replace:l,headerState:cs(u,e),hiddenCount:ls(u,e)}}var V=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewsPage.tsx`;function fs({onOpen:e,onOpenSession:t,onReviewBranch:n,onSwitchProject:r}){let{data:i,isLoading:a}=Qt(),{data:o}=Bt(),{card:s}=jt(),{data:c,isLoading:l}=Vt(),u=(0,A.useMemo)(()=>es(i?.reviews??[],c?.sessions??[]),[i,c]),d=ds((0,A.useMemo)(()=>u.map(e=>e.key),[u])),f=(0,A.useMemo)(()=>u.filter(e=>d.isSelected(e.key)),[u,d]);(0,A.useEffect)(()=>{let e=e=>{let t=e.target;if(!(t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`))){if((e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`a`){e.preventDefault(),d.selectAll();return}e.key===`Escape`&&d.count>0&&(e.stopPropagation(),d.clear())}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[d]);let p=(0,M.jsxDEV)(`header`,{className:`topbar topbar--project`,children:[(0,M.jsxDEV)(hr,{title:`Reviews`,projectName:s?.name??o?.name??`Project`,projectDirectory:o?.directory??s?.directory,onSwitchProject:r},void 0,!1,{fileName:V,lineNumber:73,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`topbar__controls`,children:[(0,M.jsxDEV)($o,{surface:`reviews`},void 0,!1,{fileName:V,lineNumber:80,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:n,children:`Review a branch`},void 0,!1,{fileName:V,lineNumber:81,columnNumber:9},this)]},void 0,!0,{fileName:V,lineNumber:79,columnNumber:7},this)]},void 0,!0,{fileName:V,lineNumber:72,columnNumber:5},this);return a||l?(0,M.jsxDEV)(M.Fragment,{children:[p,(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading reviews…`},void 0,!1,{fileName:V,lineNumber:89,columnNumber:22},this)]},void 0,!0,{fileName:V,lineNumber:89,columnNumber:12},this):u.length===0?(0,M.jsxDEV)(M.Fragment,{children:[p,(0,M.jsxDEV)(`div`,{className:`empty`,children:[(0,M.jsxDEV)(`h2`,{className:`empty__title`,children:`No reviews yet`},void 0,!1,{fileName:V,lineNumber:97,columnNumber:11},this),(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`A review is an XML file in `,(0,M.jsxDEV)(`code`,{children:i?.directory??`doc/review`},void 0,!1,{fileName:V,lineNumber:99,columnNumber:40},this),` holding one pass over a branch, read by a fresh agent that has not seen the plan. There are two ways in: finish a session and use `,(0,M.jsxDEV)(`strong`,{children:`Request review`},void 0,!1,{fileName:V,lineNumber:101,columnNumber:38},this),` there, or review the branch you are on right now — for work no session of yours covers.`]},void 0,!0,{fileName:V,lineNumber:98,columnNumber:11},this)]},void 0,!0,{fileName:V,lineNumber:96,columnNumber:9},this)]},void 0,!0,{fileName:V,lineNumber:94,columnNumber:7},this):(0,M.jsxDEV)(M.Fragment,{children:[p,(0,M.jsxDEV)(`div`,{className:`list${d.count>0?` is-selecting`:``}`,children:(0,M.jsxDEV)(`table`,{className:`list__table list__table--reviews`,children:[(0,M.jsxDEV)(`colgroup`,{children:[(0,M.jsxDEV)(`col`,{className:`col--select`},void 0,!1,{fileName:V,lineNumber:121,columnNumber:13},this),(0,M.jsxDEV)(`col`,{className:`col--branch`},void 0,!1,{fileName:V,lineNumber:122,columnNumber:13},this),(0,M.jsxDEV)(`col`,{className:`col--work`},void 0,!1,{fileName:V,lineNumber:123,columnNumber:13},this),(0,M.jsxDEV)(`col`,{className:`col--triage`},void 0,!1,{fileName:V,lineNumber:124,columnNumber:13},this),(0,M.jsxDEV)(`col`,{className:`col--runs`},void 0,!1,{fileName:V,lineNumber:125,columnNumber:13},this),(0,M.jsxDEV)(`col`,{className:`col--updated`},void 0,!1,{fileName:V,lineNumber:126,columnNumber:13},this)]},void 0,!0,{fileName:V,lineNumber:120,columnNumber:11},this),(0,M.jsxDEV)(`thead`,{children:(0,M.jsxDEV)(`tr`,{children:[(0,M.jsxDEV)(`th`,{scope:`col`,className:`list__select`,children:(0,M.jsxDEV)(Hr,{state:d.headerState,label:`Select every review`,onChange:e=>e?d.selectAll():d.clear()},void 0,!1,{fileName:V,lineNumber:131,columnNumber:17},this)},void 0,!1,{fileName:V,lineNumber:130,columnNumber:15},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Branch`},void 0,!1,{fileName:V,lineNumber:137,columnNumber:15},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Work under review`},void 0,!1,{fileName:V,lineNumber:138,columnNumber:15},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Triage`},void 0,!1,{fileName:V,lineNumber:139,columnNumber:15},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Runs`},void 0,!1,{fileName:V,lineNumber:140,columnNumber:15},this),(0,M.jsxDEV)(`th`,{scope:`col`,children:`Updated`},void 0,!1,{fileName:V,lineNumber:141,columnNumber:15},this)]},void 0,!0,{fileName:V,lineNumber:129,columnNumber:13},this)},void 0,!1,{fileName:V,lineNumber:128,columnNumber:11},this),(0,M.jsxDEV)(`tbody`,{children:u.map(n=>{let r=n.state===`pending`,i=d.isSelected(n.key);return(0,M.jsxDEV)(`tr`,{className:[r?`reviews__row--pending`:``,i?`is-selected`:``].filter(Boolean).join(` `)||void 0,"aria-selected":i,onClick:()=>n.slug&&n.document?e(n.slug):n.reviewSession&&t(n.reviewSession.id),children:[(0,M.jsxDEV)(`td`,{className:`list__select`,onClick:e=>e.stopPropagation(),children:(0,M.jsxDEV)(Vr,{checked:i,label:`Select the review of ${n.branch}`,onChange:(e,t)=>d.toggle(n.key,t)},void 0,!1,{fileName:V,lineNumber:164,columnNumber:21},this)},void 0,!1,{fileName:V,lineNumber:163,columnNumber:19},this),(0,M.jsxDEV)(`td`,{children:[(0,M.jsxDEV)(`div`,{className:`list__title cell-clip`,title:n.branch,children:n.branch},void 0,!1,{fileName:V,lineNumber:171,columnNumber:21},this),(0,M.jsxDEV)(`div`,{className:`list__excerpt cell-clip`,title:r?`Not written yet — the agent writes it to ${n.path??`the review directory`}`:n.path,children:n.path??`—`},void 0,!1,{fileName:V,lineNumber:172,columnNumber:21},this)]},void 0,!0,{fileName:V,lineNumber:170,columnNumber:19},this),(0,M.jsxDEV)(`td`,{onClick:e=>e.stopPropagation(),children:(0,M.jsxDEV)(ps,{entry:n,onOpenSession:t},void 0,!1,{fileName:V,lineNumber:184,columnNumber:21},this)},void 0,!1,{fileName:V,lineNumber:183,columnNumber:19},this),(0,M.jsxDEV)(`td`,{onClick:e=>e.stopPropagation(),children:(0,M.jsxDEV)(ms,{entry:n},void 0,!1,{fileName:V,lineNumber:187,columnNumber:21},this)},void 0,!1,{fileName:V,lineNumber:186,columnNumber:19},this),(0,M.jsxDEV)(`td`,{className:`list__meta`,children:n.document?.runCount??`—`},void 0,!1,{fileName:V,lineNumber:189,columnNumber:19},this),(0,M.jsxDEV)(`td`,{className:`list__meta`,title:n.updated,children:rr(n.updated)},void 0,!1,{fileName:V,lineNumber:190,columnNumber:19},this)]},n.key,!0,{fileName:V,lineNumber:149,columnNumber:17},this)})},void 0,!1,{fileName:V,lineNumber:144,columnNumber:11},this)]},void 0,!0,{fileName:V,lineNumber:114,columnNumber:9},this)},void 0,!1,{fileName:V,lineNumber:113,columnNumber:7},this),d.count>0&&(0,M.jsxDEV)(Ao,{entries:f,count:d.count,hiddenCount:d.hiddenCount,onClear:d.clear,onNarrow:d.replace},void 0,!1,{fileName:V,lineNumber:199,columnNumber:9},this)]},void 0,!0,{fileName:V,lineNumber:110,columnNumber:5},this)}function ps({entry:e,onOpenSession:t}){return e.subject?(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button cell-clip`,title:e.subject.title,onClick:()=>t(e.subject?.id),children:e.subject.title},void 0,!1,{fileName:V,lineNumber:227,columnNumber:7},this):e.link===`unowned`?(0,M.jsxDEV)(`span`,{className:`reviews__standalone`,title:`No review session in this project owns this file`,children:`—`},void 0,!1,{fileName:V,lineNumber:240,columnNumber:7},this):(0,M.jsxDEV)(`span`,{className:`reviews__standalone`,title:e.link===`orphaned`?`The session this reviewed is no longer listed`:`This review covers a branch on its own`,children:e.link},void 0,!1,{fileName:V,lineNumber:247,columnNumber:5},this)}function ms({entry:e}){if(!e.document){let t=e.reviewSession?qr(e.reviewSession):void 0;return(0,M.jsxDEV)(`span`,{className:`pill pill--pending`,title:t?.hint??`No review document yet.`,children:t?.label??`Not written yet`},void 0,!1,{fileName:V,lineNumber:268,columnNumber:7},this)}return(0,M.jsxDEV)(hs,{review:e.document},void 0,!1,{fileName:V,lineNumber:273,columnNumber:10},this)}function hs({review:e}){return e.counts.open>0?(0,M.jsxDEV)(`span`,{className:`pill pill--review`,title:`${e.counts.total} comment(s) in this review`,children:[e.counts.open,` of `,e.counts.total,` awaiting`]},void 0,!0,{fileName:V,lineNumber:279,columnNumber:7},this):e.status===`published`?(0,M.jsxDEV)(`span`,{className:`pill pill--executed`,title:`Staged comments were sent to the code host`,children:[`Published · `,e.counts.staged,` sent`]},void 0,!0,{fileName:V,lineNumber:288,columnNumber:7},this):(0,M.jsxDEV)(`span`,{className:`pill pill--executed`,children:[e.counts.staged,` staged · `,e.counts.discarded,` discarded`]},void 0,!0,{fileName:V,lineNumber:294,columnNumber:5},this)}var gs=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewPage.tsx`;function _s({slug:e,onBack:t,onOpenSession:n,onOpenSettings:r}){let{data:i,isLoading:a,error:o}=$t(e),{data:s}=Bt();return a?(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading review…`},void 0,!1,{fileName:gs,lineNumber:22,columnNumber:25},this):o||!i?(0,M.jsxDEV)(`div`,{className:`page-state`,children:[(0,M.jsxDEV)(`p`,{children:`This review could not be loaded.`},void 0,!1,{fileName:gs,lineNumber:26,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:t,children:`Back to reviews`},void 0,!1,{fileName:gs,lineNumber:27,columnNumber:9},this)]},void 0,!0,{fileName:gs,lineNumber:25,columnNumber:7},this):(0,M.jsxDEV)(`div`,{className:`session`,children:[(0,M.jsxDEV)(`header`,{className:`session__head`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,onClick:t,title:`Back (Esc)`,"aria-label":`Back`,children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 16 16`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M9.5 3.5 5 8l4.5 4.5`,fill:`none`,stroke:`currentColor`,strokeWidth:`1.6`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:gs,lineNumber:37,columnNumber:13},this)},void 0,!1,{fileName:gs,lineNumber:36,columnNumber:11},this)},void 0,!1,{fileName:gs,lineNumber:35,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`session__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`session__title`,children:i.branch},void 0,!1,{fileName:gs,lineNumber:43,columnNumber:11},this),(0,M.jsxDEV)(vs,{review:i,project:s},void 0,!1,{fileName:gs,lineNumber:44,columnNumber:11},this)]},void 0,!0,{fileName:gs,lineNumber:42,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`session__controls`,children:i.sessionId&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>n(i.sessionId),children:`Open session`},void 0,!1,{fileName:gs,lineNumber:49,columnNumber:13},this)},void 0,!1,{fileName:gs,lineNumber:47,columnNumber:9},this)]},void 0,!0,{fileName:gs,lineNumber:34,columnNumber:7},this),(0,M.jsxDEV)(Va,{review:i,projectDirectory:s?.directory,onPlanned:n,onOpenSettings:r},void 0,!1,{fileName:gs,lineNumber:60,columnNumber:7},this)]},void 0,!0,{fileName:gs,lineNumber:33,columnNumber:5},this)}function vs({review:e,project:t}){return(0,M.jsxDEV)(`div`,{className:`session__meta`,children:[(0,M.jsxDEV)(`span`,{children:[`base `,e.base]},void 0,!0,{fileName:gs,lineNumber:79,columnNumber:7},this),(0,M.jsxDEV)(`span`,{"aria-hidden":`true`,children:`·`},void 0,!1,{fileName:gs,lineNumber:80,columnNumber:7},this),(0,M.jsxDEV)(`span`,{title:e.scope.baseSha,children:e.scope.baseSha.slice(0,7)},void 0,!1,{fileName:gs,lineNumber:81,columnNumber:7},this),(0,M.jsxDEV)(`span`,{"aria-hidden":`true`,children:`→`},void 0,!1,{fileName:gs,lineNumber:82,columnNumber:7},this),(0,M.jsxDEV)(`span`,{title:e.scope.headSha,children:e.scope.headSha.slice(0,7)},void 0,!1,{fileName:gs,lineNumber:83,columnNumber:7},this),e.runCount>1&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{"aria-hidden":`true`,children:`·`},void 0,!1,{fileName:gs,lineNumber:86,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[e.runCount,` runs`]},void 0,!0,{fileName:gs,lineNumber:87,columnNumber:11},this)]},void 0,!0,{fileName:gs,lineNumber:85,columnNumber:9},this),t&&(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{"aria-hidden":`true`,children:`·`},void 0,!1,{fileName:gs,lineNumber:92,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:t.name},void 0,!1,{fileName:gs,lineNumber:93,columnNumber:11},this)]},void 0,!0,{fileName:gs,lineNumber:91,columnNumber:9},this)]},void 0,!0,{fileName:gs,lineNumber:78,columnNumber:5},this)}var ys=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/reviews/ReviewBranchModal.tsx`;function bs({busy:e,onClose:t,onSubmit:n}){let{data:r,isLoading:i}=Zt(),[a,o]=(0,A.useState)(``),[s,c]=(0,A.useState)(!1);(0,A.useEffect)(()=>{s||!r?.baseBranch||o(r.baseBranch)},[r?.baseBranch,s]);let l=r!==void 0&&!r.canReview,u=a.trim();return(0,M.jsxDEV)(wr,{title:`Review a branch`,onClose:t,dirty:s&&u!==(r?.baseBranch??``),confirmClose:{title:`Discard this base ref?`,body:`You changed the ref the diff is measured from. Closing goes back to the project default.`},footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:`This review will not be tied to any session.`},void 0,!1,{fileName:ys,lineNumber:48,columnNumber:11},this),(0,M.jsxDEV)(xs,{},void 0,!1,{fileName:ys,lineNumber:49,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:e||l||i,title:l?r?.reason:void 0,onClick:()=>n({base:u.length>0&&u!==r?.baseBranch?u:void 0}),children:e?`Creating…`:`Create review session`},void 0,!1,{fileName:ys,lineNumber:50,columnNumber:11},this)]},void 0,!0,{fileName:ys,lineNumber:47,columnNumber:9},this),children:[(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`A fresh agent reads this branch's diff and writes its findings into`,` `,(0,M.jsxDEV)(`code`,{children:`doc/review/<branch>.xml`},void 0,!1,{fileName:ys,lineNumber:70,columnNumber:9},this),`. Use this for work no session of yours covers — a branch you pulled from someone else.`]},void 0,!0,{fileName:ys,lineNumber:68,columnNumber:7},this),i?(0,M.jsxDEV)(`p`,{className:`panel__empty`,children:`Reading the branch…`},void 0,!1,{fileName:ys,lineNumber:75,columnNumber:9},this):l?(0,M.jsxDEV)(`div`,{className:`banner banner--warning`,children:(0,M.jsxDEV)(`div`,{className:`banner__text`,children:r?.reason},void 0,!1,{fileName:ys,lineNumber:78,columnNumber:11},this)},void 0,!1,{fileName:ys,lineNumber:77,columnNumber:9},this):(0,M.jsxDEV)(`dl`,{className:`scope`,children:[(0,M.jsxDEV)(`div`,{className:`scope__row`,children:[(0,M.jsxDEV)(`dt`,{className:`scope__term`,children:`Branch`},void 0,!1,{fileName:ys,lineNumber:83,columnNumber:13},this),(0,M.jsxDEV)(`dd`,{className:`scope__value`,children:r?.branch},void 0,!1,{fileName:ys,lineNumber:84,columnNumber:13},this)]},void 0,!0,{fileName:ys,lineNumber:82,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`scope__row`,children:[(0,M.jsxDEV)(`dt`,{className:`scope__term`,children:`Diff`},void 0,!1,{fileName:ys,lineNumber:87,columnNumber:13},this),(0,M.jsxDEV)(`dd`,{className:`scope__value`,children:[r?.changedFileCount,` file`,r?.changedFileCount===1?``:`s`,r?.hasStagedChanges?` · staged changes included`:` · nothing staged`]},void 0,!0,{fileName:ys,lineNumber:88,columnNumber:13},this)]},void 0,!0,{fileName:ys,lineNumber:86,columnNumber:11},this),r?.headSha&&(0,M.jsxDEV)(`div`,{className:`scope__row`,children:[(0,M.jsxDEV)(`dt`,{className:`scope__term`,children:`Head`},void 0,!1,{fileName:ys,lineNumber:95,columnNumber:15},this),(0,M.jsxDEV)(`dd`,{className:`scope__value scope__value--mono`,title:r.headSha,children:r.headSha.slice(0,7)},void 0,!1,{fileName:ys,lineNumber:96,columnNumber:15},this)]},void 0,!0,{fileName:ys,lineNumber:94,columnNumber:13},this)]},void 0,!0,{fileName:ys,lineNumber:81,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`field`,children:[(0,M.jsxDEV)(`label`,{className:`field__label`,htmlFor:`review-base`,children:[`Base ref `,(0,M.jsxDEV)(`span`,{className:`field__optional`,children:`— what the diff is measured from`},void 0,!1,{fileName:ys,lineNumber:106,columnNumber:20},this)]},void 0,!0,{fileName:ys,lineNumber:105,columnNumber:9},this),(0,M.jsxDEV)(`input`,{id:`review-base`,className:`field__input`,"data-autofocus":!0,value:a,placeholder:`origin/main`,onChange:e=>{c(!0),o(e.target.value)}},void 0,!1,{fileName:ys,lineNumber:108,columnNumber:9},this)]},void 0,!0,{fileName:ys,lineNumber:104,columnNumber:7},this)]},void 0,!0,{fileName:ys,lineNumber:38,columnNumber:5},this)}function xs(){let e=br();return(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:e,children:`Cancel`},void 0,!1,{fileName:ys,lineNumber:125,columnNumber:5},this)}var Ss=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/PackageList.tsx`;function Cs({packages:e,selected:t,filter:n,onFilter:r,onSelect:i,dirty:a}){let o=n.trim().toLowerCase(),s=e.filter(e=>o.length===0||e.name.toLowerCase().includes(o)).sort((e,t)=>e.activeCount>0==t.activeCount>0?e.name.localeCompare(t.name):e.activeCount>0?-1:1);return(0,M.jsxDEV)(`div`,{className:`packages__list`,children:[(0,M.jsxDEV)(`div`,{className:`packages__filter`,children:(0,M.jsxDEV)(`input`,{className:`filter__input`,value:n,placeholder:`Filter packages…`,"aria-label":`Filter packages`,spellCheck:!1,onChange:e=>r(e.target.value)},void 0,!1,{fileName:Ss,lineNumber:38,columnNumber:9},this)},void 0,!1,{fileName:Ss,lineNumber:37,columnNumber:7},this),s.length===0?(0,M.jsxDEV)(`p`,{className:`packages__list-empty`,children:[`No package matches “`,n,`”.`]},void 0,!0,{fileName:Ss,lineNumber:49,columnNumber:9},this):(0,M.jsxDEV)(`ul`,{className:`packages__rows`,children:s.map(e=>(0,M.jsxDEV)(`li`,{children:(0,M.jsxDEV)(`button`,{type:`button`,className:`packages__row${e.name===t?` is-selected`:``}`,onClick:()=>i(e.name),"aria-current":e.name===t?`true`:void 0,children:[(0,M.jsxDEV)(`span`,{className:`packages__dot packages__dot--${e.activeCount>0?`on`:`off`}`},void 0,!1,{fileName:Ss,lineNumber:60,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`packages__row-body`,children:[(0,M.jsxDEV)(`span`,{className:`packages__row-name`,children:[e.name,a.has(e.name)&&(0,M.jsxDEV)(`span`,{className:`packages__row-dirty`,title:`Unapplied changes`,children:`•`},void 0,!1,{fileName:Ss,lineNumber:65,columnNumber:23},this)]},void 0,!0,{fileName:Ss,lineNumber:62,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`packages__row-meta`,children:[(0,M.jsxDEV)(`span`,{className:`chip`,children:e.source},void 0,!1,{fileName:Ss,lineNumber:71,columnNumber:21},this),(0,M.jsxDEV)(ws,{pkg:e},void 0,!1,{fileName:Ss,lineNumber:72,columnNumber:21},this)]},void 0,!0,{fileName:Ss,lineNumber:70,columnNumber:19},this)]},void 0,!0,{fileName:Ss,lineNumber:61,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`packages__row-count`,children:[e.activeCount,`/`,e.totalCount]},void 0,!0,{fileName:Ss,lineNumber:75,columnNumber:17},this)]},void 0,!0,{fileName:Ss,lineNumber:54,columnNumber:15},this)},e.name,!1,{fileName:Ss,lineNumber:53,columnNumber:13},this))},void 0,!1,{fileName:Ss,lineNumber:51,columnNumber:9},this)]},void 0,!0,{fileName:Ss,lineNumber:36,columnNumber:5},this)}function ws({pkg:e}){return e.presence===`cached-only`?(0,M.jsxDEV)(`span`,{className:`chip`,title:`Installed in the cache but not listed in invariant.json`,children:`not declared`},void 0,!1,{fileName:Ss,lineNumber:94,columnNumber:7},this):e.presence===`declared-only`?(0,M.jsxDEV)(`span`,{className:`chip chip--warning`,title:`Listed in invariant.json but not installed here`,children:`not installed`},void 0,!1,{fileName:Ss,lineNumber:101,columnNumber:7},this):null}var Ts={add:[],remove:[]};function Es(e){return`${e.type}/${e.name}`}function Ds(e,t){let n=Es(t);return e.filter(e=>Es(e)!==n)}function Os(e,t){let n=Es(t);return e.some(e=>Es(e)===n)}function ks(e,t,n){let r={type:t.type,name:t.name},i={add:Ds(e.add,r),remove:Ds(e.remove,r)};return n===t.active?i:n?{...i,add:[...i.add,r]}:{...i,remove:[...i.remove,r]}}function As(e,t,n,r){return t.filter(e=>e.type===n).reduce((e,t)=>ks(e,t,r),e)}function js(e,t,n){return t.reduce((e,t)=>ks(e,t,n),e)}function Ms(e,t){let n={type:t.type,name:t.name};return Os(e.add,n)?`adding`:Os(e.remove,n)?`removing`:`unchanged`}function Ns(e,t){let n=Ms(e,t);return n===`adding`||n!==`removing`&&t.active}function Ps(e,t,n){let r=t.filter(e=>e.type===n);if(r.length===0)return`none`;let i=r.filter(t=>Ns(e,t)).length;return i===0?`none`:i===r.length?`all`:`some`}function Fs(e){return e.add.length+e.remove.length}function Is(e){return Fs(e)===0}function Ls(e){return ri.filter(t=>e.some(e=>e.type===t))}var Rs={agents:`agent`,skills:`skill`,commands:`command`,rules:`rule`,contexts:`context`,instructions:`instruction`};function zs(e,t){return`${Rs[t.type]}:${e}/${t.name}`}function Bs(e,t,n={}){let r=[];return t.remove.length>0&&r.push(`invariant remove ${t.remove.map(t=>zs(e,t)).join(` `)}`),t.add.length>0&&r.push(`invariant add ${t.add.map(t=>zs(e,t)).join(` `)}`),n.sync&&r.length>0&&r.push(`invariant sync`),r}function Vs(e,t={}){return`invariant install ${[Hs(e),...[t.activate===!1?`--no-add`:void 0,t.sync?`--sync`:void 0].filter(Boolean)].join(` `)}`}function Hs(e){if(e.kind===`github`)return`github:${e.owner}/${e.repo}${e.ref?`#${e.ref}`:``}`;if(e.kind===`skills`){let t=e.slug?`/${e.slug}`:``;return`skills:${e.owner}/${e.repo}${t}${e.ref?`#${e.ref}`:``}`}return`${e.name}${e.version?`@${e.version}`:``}`}function Us(e){let[t,n,r]=e.trim().replace(/^https?:\/\/(www\.)?skills\.sh\//i,``).replace(/^skills:/i,``).replace(/[?#].*$/,``).replace(/^\/+|\/+$/g,``).split(`/`);return{owner:t||void 0,repo:n||void 0,slug:r||void 0}}function Ws(e){let[t,n]=e.trim().replace(/^https?:\/\/(www\.)?github\.com\//i,``).replace(/^git@github\.com:/i,``).replace(/\.git$/i,``).replace(/^\/+|\/+$/g,``).split(`/`);return{owner:t||void 0,repo:n||void 0}}function Gs(e){if(e.source===`skills`&&e.sourceUrl){let{owner:t,repo:n}=Us(e.sourceUrl);if(t&&n)return{kind:`skills`,owner:t,repo:n}}if(e.source===`github`&&e.sourceUrl){let{owner:t,repo:n}=Ws(e.sourceUrl);if(t&&n)return{kind:`github`,owner:t,repo:n}}return{kind:`registry`,name:e.name}}var Ks=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/ItemTypeGroup.tsx`,qs="invariant.json activates this whole type at once. `invariant remove` cannot undo that entry, so edit invariant.json to change it.";function Js({type:e,items:t,pending:n,locked:r,disabled:i,onToggleItem:a,onToggleType:o}){let s=t.filter(t=>t.type===e),c=Ps(n,t,e),l=s.filter(e=>Ns(n,e)).length;return(0,M.jsxDEV)(`section`,{className:`packages__group`,children:[(0,M.jsxDEV)(`header`,{className:`packages__group-head`,children:[(0,M.jsxDEV)(`label`,{className:`packages__group-toggle`,children:[(0,M.jsxDEV)(Hr,{state:c,disabled:i||r,onChange:t=>o(e,t),label:`All ${e}`},void 0,!1,{fileName:Ks,lineNumber:37,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`packages__group-name`,children:e},void 0,!1,{fileName:Ks,lineNumber:43,columnNumber:11},this)]},void 0,!0,{fileName:Ks,lineNumber:36,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`packages__group-count`,children:[l,`/`,s.length]},void 0,!0,{fileName:Ks,lineNumber:46,columnNumber:9},this),r&&(0,M.jsxDEV)(`span`,{className:`chip chip--warning`,title:qs,children:`declared type-wide`},void 0,!1,{fileName:Ks,lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:Ks,lineNumber:35,columnNumber:7},this),(0,M.jsxDEV)(`ul`,{className:`packages__items`,children:s.map(e=>{let t=Ms(n,e);return(0,M.jsxDEV)(`li`,{className:`packages__item${t===`unchanged`?``:` is-staged-${t===`adding`?`add`:`remove`}`}`,children:[(0,M.jsxDEV)(`label`,{className:`packages__item-label`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:Ns(n,e),disabled:i||r,onChange:t=>a(e,t.target.checked),title:r?qs:void 0},void 0,!1,{fileName:Ks,lineNumber:66,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`packages__item-name`,title:e.canonicalPath,children:e.name},void 0,!1,{fileName:Ks,lineNumber:73,columnNumber:17},this),e.qualifiedName!==e.name&&(0,M.jsxDEV)(`span`,{className:`packages__item-installed`,title:e.canonicalPath,children:e.qualifiedName},void 0,!1,{fileName:Ks,lineNumber:79,columnNumber:19},this)]},void 0,!0,{fileName:Ks,lineNumber:65,columnNumber:15},this),t!==`unchanged`&&(0,M.jsxDEV)(`span`,{className:`packages__item-flag`,children:t===`adding`?`will add`:`will remove`},void 0,!1,{fileName:Ks,lineNumber:85,columnNumber:17},this)]},e.name,!0,{fileName:Ks,lineNumber:61,columnNumber:13},this)})},void 0,!1,{fileName:Ks,lineNumber:57,columnNumber:7},this)]},void 0,!0,{fileName:Ks,lineNumber:34,columnNumber:5},this)}var Ys=/\u001b\[[0-9;]*m/g;function Xs(e){return e.replace(Ys,``)}var Zs=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/Transcript.tsx`;function Qs({output:e,commandLine:t}){let n=Xs(e).trim();return n.length===0&&!t?null:(0,M.jsxDEV)(`div`,{className:`transcript`,children:[t&&(0,M.jsxDEV)(`div`,{className:`transcript__command`,children:[`$ `,t]},void 0,!0,{fileName:Zs,lineNumber:22,columnNumber:23},this),n.length>0&&(0,M.jsxDEV)(`pre`,{className:`transcript__body`,children:n},void 0,!1,{fileName:Zs,lineNumber:23,columnNumber:27},this)]},void 0,!0,{fileName:Zs,lineNumber:21,columnNumber:5},this)}var $s=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/PackageDetail.tsx`;function ec({pkg:e,pending:t,busy:n,failure:r,onToggleItem:i,onToggleType:a,onStageAll:o,onUninstall:s,onInstallMissing:c,onDismissFailure:l}){let u=Ls(e.items),d=new Set(e.typeWideActive);return(0,M.jsxDEV)(`section`,{className:`packages__detail`,"aria-label":`${e.name} contents`,children:[(0,M.jsxDEV)(`header`,{className:`packages__detail-head`,children:[(0,M.jsxDEV)(`div`,{className:`packages__identity`,children:[(0,M.jsxDEV)(`h2`,{className:`packages__title`,children:[e.name,(0,M.jsxDEV)(`span`,{className:`packages__version`,children:[`@`,e.version]},void 0,!0,{fileName:$s,lineNumber:48,columnNumber:13},this)]},void 0,!0,{fileName:$s,lineNumber:46,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`packages__meta`,children:[(0,M.jsxDEV)(tc,{pkg:e},void 0,!1,{fileName:$s,lineNumber:51,columnNumber:13},this),e.author&&(0,M.jsxDEV)(`span`,{className:`packages__author`,children:e.author},void 0,!1,{fileName:$s,lineNumber:52,columnNumber:28},this)]},void 0,!0,{fileName:$s,lineNumber:50,columnNumber:11},this),e.description&&(0,M.jsxDEV)(`p`,{className:`packages__description`,children:e.description},void 0,!1,{fileName:$s,lineNumber:54,columnNumber:31},this)]},void 0,!0,{fileName:$s,lineNumber:45,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`packages__detail-actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:n||e.totalCount===0||e.activeCount===e.totalCount,onClick:()=>o(!0),children:`Add all`},void 0,!1,{fileName:$s,lineNumber:58,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:n||e.activeCount===0,onClick:()=>o(!1),children:`Remove all`},void 0,!1,{fileName:$s,lineNumber:66,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,disabled:n,onClick:s,children:`Uninstall`},void 0,!1,{fileName:$s,lineNumber:74,columnNumber:11},this)]},void 0,!0,{fileName:$s,lineNumber:57,columnNumber:9},this)]},void 0,!0,{fileName:$s,lineNumber:44,columnNumber:7},this),r&&(0,M.jsxDEV)(`div`,{className:`packages__failure`,role:`alert`,children:[(0,M.jsxDEV)(`div`,{className:`packages__failure-head`,children:[(0,M.jsxDEV)(`strong`,{children:r.message},void 0,!1,{fileName:$s,lineNumber:83,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:l,children:`Dismiss`},void 0,!1,{fileName:$s,lineNumber:84,columnNumber:13},this)]},void 0,!0,{fileName:$s,lineNumber:82,columnNumber:11},this),(0,M.jsxDEV)(Qs,{output:r.transcript??``,commandLine:r.commandLine},void 0,!1,{fileName:$s,lineNumber:88,columnNumber:11},this)]},void 0,!0,{fileName:$s,lineNumber:81,columnNumber:9},this),e.presence===`declared-only`?(0,M.jsxDEV)(`div`,{className:`packages__notice`,children:[(0,M.jsxDEV)(`p`,{children:[(0,M.jsxDEV)(`strong`,{children:e.name},void 0,!1,{fileName:$s,lineNumber:95,columnNumber:13},this),` is declared in `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:$s,lineNumber:95,columnNumber:56},this),` but is not installed in this checkout — the usual cause is a colleague adding it and this working copy never fetching it.`]},void 0,!0,{fileName:$s,lineNumber:94,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:n,onClick:c,children:`Install it`},void 0,!1,{fileName:$s,lineNumber:99,columnNumber:11},this)]},void 0,!0,{fileName:$s,lineNumber:93,columnNumber:9},this):e.totalCount===0?(0,M.jsxDEV)(`p`,{className:`packages__empty-note`,children:`This package ships no items.`},void 0,!1,{fileName:$s,lineNumber:104,columnNumber:9},this):(0,M.jsxDEV)(`div`,{className:`packages__tree`,children:u.map(r=>(0,M.jsxDEV)(Js,{type:r,items:e.items,pending:t,locked:d.has(r),disabled:n,onToggleItem:i,onToggleType:a},r,!1,{fileName:$s,lineNumber:108,columnNumber:13},this))},void 0,!1,{fileName:$s,lineNumber:106,columnNumber:9},this)]},void 0,!0,{fileName:$s,lineNumber:43,columnNumber:5},this)}function tc({pkg:e}){let t=e.source===`github`?`github`:e.source===`skills`?`skills.sh`:`registry`;return e.sourceUrl?(0,M.jsxDEV)(`a`,{className:`chip chip--link`,href:e.sourceUrl,target:`_blank`,rel:`noreferrer`,children:[t,` ↗`]},void 0,!0,{fileName:$s,lineNumber:131,columnNumber:7},this):(0,M.jsxDEV)(`span`,{className:`chip`,children:t},void 0,!1,{fileName:$s,lineNumber:136,columnNumber:10},this)}var nc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/PendingChangesBar.tsx`;function rc({packageName:e,pending:t,sync:n,busy:r,running:i,onSyncChange:a,onDiscard:o,onApply:s}){let c=Bs(e,t,{sync:n});return(0,M.jsxDEV)(`div`,{className:`packages__bar`,role:`region`,"aria-live":`polite`,"aria-label":`Pending changes`,children:[(0,M.jsxDEV)(`div`,{className:`packages__bar-summary`,children:[(0,M.jsxDEV)(`span`,{className:`packages__bar-counts`,children:[t.add.length>0&&(0,M.jsxDEV)(`strong`,{children:[t.add.length,` to add`]},void 0,!0,{fileName:nc,lineNumber:39,columnNumber:38},this),t.add.length>0&&t.remove.length>0&&` · `,t.remove.length>0&&(0,M.jsxDEV)(`strong`,{children:[t.remove.length,` to remove`]},void 0,!0,{fileName:nc,lineNumber:41,columnNumber:41},this)]},void 0,!0,{fileName:nc,lineNumber:38,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__bar-preview`,title:c.join(`
261
+ `),children:i??c.join(` · `)},void 0,!1,{fileName:nc,lineNumber:43,columnNumber:9},this)]},void 0,!0,{fileName:nc,lineNumber:37,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`packages__bar-actions`,children:[(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:n,disabled:r,onChange:e=>a(e.target.checked)},void 0,!1,{fileName:nc,lineNumber:50,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[`Run `,(0,M.jsxDEV)(`code`,{children:`sync`},void 0,!1,{fileName:nc,lineNumber:57,columnNumber:17},this),` after`]},void 0,!0,{fileName:nc,lineNumber:56,columnNumber:11},this)]},void 0,!0,{fileName:nc,lineNumber:49,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,disabled:r,onClick:o,children:`Discard`},void 0,!1,{fileName:nc,lineNumber:60,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:r,onClick:s,children:r?`Applying…`:`Apply`},void 0,!1,{fileName:nc,lineNumber:63,columnNumber:9},this)]},void 0,!0,{fileName:nc,lineNumber:48,columnNumber:7},this)]},void 0,!0,{fileName:nc,lineNumber:36,columnNumber:5},this)}function ic(e){return e.toLowerCase().replace(/[^a-z0-9._-]/g,`-`).replace(/-+/g,`-`).replace(/^[-.]+|[-.]+$/g,``)}function ac(e){return e.replace(/^@/,``).replace(/\//g,`-`).toLowerCase().replace(/[^a-z0-9._-]/g,`-`).replace(/-+/g,`-`).replace(/^[-.]+|[-.]+$/g,``)}function oc(e,t){let n=ac(e);return!n||t===n||t.startsWith(`${n}-`)?t:`${n}-${t}`}function sc(e,t){return`@${ic(e)}/${ic(t)}`}function cc(e,t,n,r=`.agents`){return`${r}/skills/${oc(sc(e,t),ic(n))}`}function lc(e,t,n,r=`.claude`){return`${r}/skills/${oc(sc(e,t),ic(n))}`}function uc(e){return!Number.isFinite(e)||e<=0?`0`:e>=1e6?`${dc(e/1e6)}M`:e>=1e3?`${dc(e/1e3)}K`:String(Math.round(e))}function dc(e){return e.toFixed(1).replace(/\.0$/,``)}function fc(e){return`${new Intl.NumberFormat(`en-US`).format(Math.max(0,Math.round(e)))} installs`}function pc(e){return e<1024?`${e} B`:e<1048576?`${dc(e/1024)} KB`:`${dc(e/1048576)} MB`}function mc(e){if(!e)return;let t=Date.parse(e);if(Number.isNaN(t))return;let n=Math.floor((Date.now()-t)/864e5);return n<=0?`today`:n===1?`yesterday`:n<30?`${n}d ago`:n<365?`${Math.floor(n/30)}mo ago`:`${Math.floor(n/365)}y ago`}var H=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/InstallPackageModal.tsx`;function hc({busy:e,error:t,onClose:n,onSubmit:r,onBrowseSkills:i}){let[a,o]=(0,A.useState)(`github`),[s,c]=(0,A.useState)(``),[l,u]=(0,A.useState)(``),[d,f]=(0,A.useState)(``),[p,m]=(0,A.useState)(!0),[h,g]=(0,A.useState)(!1),_=(0,A.useMemo)(()=>Us(d),[d]),v=a===`skills`&&!_.repo?d:``,y=kn(v),b=(0,A.useMemo)(()=>{if(a===`github`){let{owner:e,repo:t}=Ws(s);return!e||!t?void 0:{kind:`github`,owner:e,repo:t,ref:l.trim()||void 0}}let{owner:e,repo:t,slug:n}=_;if(!(!e||!t))return{kind:`skills`,owner:e,repo:t,slug:n}},[a,s,l,_]),x=b?.kind===`skills`&&b.slug?lc(b.owner,b.repo,b.slug):void 0,ee=()=>{!b||e||r({source:b,activate:p,sync:h})},te=e=>{e.key===`Enter`&&(e.preventDefault(),ee())};return(0,M.jsxDEV)(wr,{title:`Install package`,onClose:n,width:640,dirty:[s,l,d].some(e=>e.trim().length>0),confirmClose:{title:`Discard this package?`,body:`Nothing has been installed yet. Closing loses what you typed.`},footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:[`Runs in `,a===`github`?`GitHub`:`Skills.sh`,` mode`]},void 0,!0,{fileName:H,lineNumber:96,columnNumber:11},this),(0,M.jsxDEV)(_c,{},void 0,!1,{fileName:H,lineNumber:97,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:e||!b,onClick:ee,children:e?`Installing…`:`Install`},void 0,!1,{fileName:H,lineNumber:98,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:95,columnNumber:9},this),children:[(0,M.jsxDEV)(`div`,{className:`segmented`,role:`tablist`,"aria-label":`Package source`,children:[`github`,`skills`].map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`tab`,"aria-selected":a===e,className:`segmented__item${a===e?` is-active`:``}`,onClick:()=>o(e),children:e===`github`?`GitHub`:`Skills.sh`},e,!1,{fileName:H,lineNumber:111,columnNumber:11},this))},void 0,!1,{fileName:H,lineNumber:109,columnNumber:7},this),a===`github`?(0,M.jsxDEV)(`div`,{className:`field-row`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Repository`},void 0,!1,{fileName:H,lineNumber:127,columnNumber:13},this),(0,M.jsxDEV)(`input`,{className:`field__input`,"data-autofocus":!0,value:s,placeholder:`owner/repo`,onChange:e=>c(e.target.value),onKeyDown:te},void 0,!1,{fileName:H,lineNumber:128,columnNumber:13},this)]},void 0,!0,{fileName:H,lineNumber:126,columnNumber:11},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Ref `,(0,M.jsxDEV)(`span`,{className:`field__optional`,children:`optional`},void 0,!1,{fileName:H,lineNumber:139,columnNumber:19},this)]},void 0,!0,{fileName:H,lineNumber:138,columnNumber:13},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:l,placeholder:`branch, tag or commit`,onChange:e=>u(e.target.value),onKeyDown:te},void 0,!1,{fileName:H,lineNumber:141,columnNumber:13},this)]},void 0,!0,{fileName:H,lineNumber:137,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:125,columnNumber:9},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Skill`},void 0,!1,{fileName:H,lineNumber:153,columnNumber:13},this),(0,M.jsxDEV)(`input`,{className:`field__input`,"data-autofocus":!0,value:d,placeholder:`search, or paste owner/repo/skill`,spellCheck:!1,onChange:e=>f(e.target.value),onKeyDown:te},void 0,!1,{fileName:H,lineNumber:154,columnNumber:13},this)]},void 0,!0,{fileName:H,lineNumber:152,columnNumber:11},this),(0,M.jsxDEV)(gc,{loading:y.isLoading&&v.length>=2,unavailable:y.isError||y.data?.unavailable===!0,query:v,skills:y.data?.skills??[],selected:b?.kind===`skills`?`${b.owner}/${b.repo}/${b.slug??``}`:``,onPick:e=>{f(`${e.owner}/${e.repo}/${e.slug}`)}},void 0,!1,{fileName:H,lineNumber:165,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:i,children:`Browse all skills →`},void 0,!1,{fileName:H,lineNumber:174,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:151,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`packages__install-options`,children:[(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:p,onChange:e=>m(e.target.checked)},void 0,!1,{fileName:H,lineNumber:182,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:a===`skills`?`Activate now`:`Activate all items now`},void 0,!1,{fileName:H,lineNumber:183,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:181,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:h,onChange:e=>g(e.target.checked)},void 0,!1,{fileName:H,lineNumber:186,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[`Run `,(0,M.jsxDEV)(`code`,{children:`sync`},void 0,!1,{fileName:H,lineNumber:188,columnNumber:17},this),` after`]},void 0,!0,{fileName:H,lineNumber:187,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:185,columnNumber:9},this)]},void 0,!0,{fileName:H,lineNumber:180,columnNumber:7},this),x&&(0,M.jsxDEV)(`div`,{className:`packages__preview`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Installs as`},void 0,!1,{fileName:H,lineNumber:195,columnNumber:11},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:x},void 0,!1,{fileName:H,lineNumber:196,columnNumber:11},this)]},void 0,!0,{fileName:H,lineNumber:194,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`packages__preview`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Command`},void 0,!1,{fileName:H,lineNumber:201,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:b?Vs(b,{activate:p,sync:h}):`invariant install …`},void 0,!1,{fileName:H,lineNumber:202,columnNumber:9},this)]},void 0,!0,{fileName:H,lineNumber:200,columnNumber:7},this),t&&(0,M.jsxDEV)(`p`,{className:`packages__inline-error`,role:`alert`,children:t},void 0,!1,{fileName:H,lineNumber:208,columnNumber:9},this)]},void 0,!0,{fileName:H,lineNumber:85,columnNumber:5},this)}function gc({loading:e,unavailable:t,query:n,skills:r,selected:i,onPick:a}){return n.length<2?(0,M.jsxDEV)(`p`,{className:`packages__picker-note`,children:[`Type two characters to search skills.sh, or paste `,(0,M.jsxDEV)(`code`,{children:`owner/repo/skill`},void 0,!1,{fileName:H,lineNumber:240,columnNumber:59},this),`.`]},void 0,!0,{fileName:H,lineNumber:239,columnNumber:7},this):e?(0,M.jsxDEV)(`p`,{className:`packages__picker-note`,children:`Searching skills.sh…`},void 0,!1,{fileName:H,lineNumber:244,columnNumber:23},this):t?(0,M.jsxDEV)(`p`,{className:`packages__picker-note`,children:[`skills.sh is unreachable — paste `,(0,M.jsxDEV)(`code`,{children:`owner/repo/skill`},void 0,!1,{fileName:H,lineNumber:248,columnNumber:42},this),` to install anyway.`]},void 0,!0,{fileName:H,lineNumber:247,columnNumber:7},this):r.length===0?(0,M.jsxDEV)(`p`,{className:`packages__picker-note`,children:[`No skill matches “`,n,`”.`]},void 0,!0,{fileName:H,lineNumber:253,columnNumber:12},this):(0,M.jsxDEV)(`ul`,{className:`packages__picker`,children:r.slice(0,20).map(e=>{let t=`${e.owner}/${e.repo}/${e.slug}`;return(0,M.jsxDEV)(`li`,{children:(0,M.jsxDEV)(`button`,{type:`button`,className:`packages__picker-item${i===t?` is-selected`:``}`,onClick:()=>a(e),children:[(0,M.jsxDEV)(`span`,{className:`packages__picker-name`,children:[e.name,e.isOfficial&&(0,M.jsxDEV)(`span`,{className:`chip chip--official`,children:`official`},void 0,!1,{fileName:H,lineNumber:269,columnNumber:38},this)]},void 0,!0,{fileName:H,lineNumber:267,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`packages__picker-text`,children:[e.source,(0,M.jsxDEV)(`span`,{className:`skills__installs`,title:fc(e.installs),children:[uc(e.installs),` installs`]},void 0,!0,{fileName:H,lineNumber:273,columnNumber:17},this)]},void 0,!0,{fileName:H,lineNumber:271,columnNumber:15},this)]},void 0,!0,{fileName:H,lineNumber:262,columnNumber:13},this)},t,!1,{fileName:H,lineNumber:261,columnNumber:11},this)})},void 0,!1,{fileName:H,lineNumber:257,columnNumber:5},this)}function _c(){let e=br();return(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:e,children:`Cancel`},void 0,!1,{fileName:H,lineNumber:289,columnNumber:5},this)}var vc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/UninstallConfirm.tsx`;function yc({packageName:e,busy:t,onClose:n,onConfirm:r}){return(0,M.jsxDEV)(wr,{title:`Uninstall ${e}?`,onClose:n,width:520,footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:[`Runs `,(0,M.jsxDEV)(`code`,{children:[`invariant uninstall `,e]},void 0,!0,{fileName:vc,lineNumber:19,columnNumber:18},this)]},void 0,!0,{fileName:vc,lineNumber:18,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:n,children:`Cancel`},void 0,!1,{fileName:vc,lineNumber:21,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,disabled:t,onClick:r,children:t?`Uninstalling…`:`Uninstall`},void 0,!1,{fileName:vc,lineNumber:24,columnNumber:11},this)]},void 0,!0,{fileName:vc,lineNumber:17,columnNumber:9},this),children:[(0,M.jsxDEV)(`p`,{className:`modal__text`,children:[`This removes the cached package, its entry in `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:vc,lineNumber:31,columnNumber:55},this),`, and every item it added to your target folders.`]},void 0,!0,{fileName:vc,lineNumber:30,columnNumber:7},this),(0,M.jsxDEV)(`p`,{className:`modal__text modal__text--muted`,children:`Reinstalling brings it all back. Files you wrote yourself are not touched.`},void 0,!1,{fileName:vc,lineNumber:34,columnNumber:7},this)]},void 0,!0,{fileName:vc,lineNumber:12,columnNumber:5},this)}var bc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/SyncPanel.tsx`;function xc({busy:e,result:t,error:n,targets:r,onClose:i,onRun:a}){let[o,s]=(0,A.useState)(``),[c,l]=(0,A.useState)(!1),u=e=>a({target:o===``?void 0:o,check:e,force:c||void 0}),d=ii.filter(e=>r.includes(e));return(0,M.jsxDEV)(wr,{title:`Sync`,onClose:i,width:680,footer:(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`modal__hint`,children:`Regenerates target folders from the active items`},void 0,!1,{fileName:bc,lineNumber:40,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:e,onClick:()=>u(!0),children:`Check only`},void 0,!1,{fileName:bc,lineNumber:41,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:e,onClick:()=>u(!1),children:e?`Syncing…`:`Sync`},void 0,!1,{fileName:bc,lineNumber:44,columnNumber:11},this)]},void 0,!0,{fileName:bc,lineNumber:39,columnNumber:9},this),children:[(0,M.jsxDEV)(`div`,{className:`field-row`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Target `,(0,M.jsxDEV)(`span`,{className:`field__optional`,children:`all configured`},void 0,!1,{fileName:bc,lineNumber:53,columnNumber:20},this)]},void 0,!0,{fileName:bc,lineNumber:52,columnNumber:11},this),(0,M.jsxDEV)(`select`,{className:`field__input`,value:o,disabled:e||d.length===0,onChange:e=>s(e.target.value),children:[(0,M.jsxDEV)(`option`,{value:``,children:`Every configured target`},void 0,!1,{fileName:bc,lineNumber:61,columnNumber:13},this),d.map(e=>(0,M.jsxDEV)(`option`,{value:e,children:e},e,!1,{fileName:bc,lineNumber:63,columnNumber:15},this))]},void 0,!0,{fileName:bc,lineNumber:55,columnNumber:11},this)]},void 0,!0,{fileName:bc,lineNumber:51,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:c,disabled:e,onChange:e=>l(e.target.checked)},void 0,!1,{fileName:bc,lineNumber:71,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[`Replace hand-edited files (`,(0,M.jsxDEV)(`code`,{children:`--force`},void 0,!1,{fileName:bc,lineNumber:78,columnNumber:40},this),`)`]},void 0,!0,{fileName:bc,lineNumber:77,columnNumber:11},this)]},void 0,!0,{fileName:bc,lineNumber:70,columnNumber:9},this)]},void 0,!0,{fileName:bc,lineNumber:50,columnNumber:7},this),n?(0,M.jsxDEV)(`div`,{className:`packages__result packages__result--danger`,role:`alert`,children:[(0,M.jsxDEV)(`strong`,{children:n.message},void 0,!1,{fileName:bc,lineNumber:85,columnNumber:11},this),(0,M.jsxDEV)(Qs,{output:n.transcript??``,commandLine:n.commandLine},void 0,!1,{fileName:bc,lineNumber:86,columnNumber:11},this)]},void 0,!0,{fileName:bc,lineNumber:84,columnNumber:9},this):t?(0,M.jsxDEV)(`div`,{className:`packages__result packages__result--${Cc(t)}`,role:`status`,children:[(0,M.jsxDEV)(`strong`,{children:Sc(t)},void 0,!1,{fileName:bc,lineNumber:90,columnNumber:11},this),t.checked&&t.drift&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid packages__result-action`,disabled:e,onClick:()=>u(!1),children:`Sync now`},void 0,!1,{fileName:bc,lineNumber:92,columnNumber:13},this),(0,M.jsxDEV)(Qs,{output:t.run.output,commandLine:t.run.commandLine},void 0,!1,{fileName:bc,lineNumber:101,columnNumber:11},this)]},void 0,!0,{fileName:bc,lineNumber:89,columnNumber:9},this):(0,M.jsxDEV)(`p`,{className:`packages__picker-note`,children:[(0,M.jsxDEV)(`strong`,{children:`Check only`},void 0,!1,{fileName:bc,lineNumber:105,columnNumber:11},this),` reports drift without writing anything — the same thing CI runs.`]},void 0,!0,{fileName:bc,lineNumber:104,columnNumber:9},this)]},void 0,!0,{fileName:bc,lineNumber:34,columnNumber:5},this)}function Sc(e){return e.checked?e.drift?`Out of sync`:`Everything is in sync`:e.ok?`Synced`:`Sync failed`}function Cc(e){return e.checked?e.drift?`warning`:`success`:e.ok?`success`:`danger`}var U=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/packages/PackagesPage.tsx`;function wc({installOpen:e,syncOpen:t,onInstallOpenChange:n,onSyncOpenChange:r,onBrowseSkills:i}){let a=dr(),{data:o,isLoading:s}=Dn(),[c,l]=(0,A.useState)(),[u,d]=(0,A.useState)(``),[f,p]=(0,A.useState)(Ts),[m,h]=(0,A.useState)(!1),[g,_]=(0,A.useState)(),[v,y]=(0,A.useState)(!1),[b,x]=(0,A.useState)(),[ee,te]=(0,A.useState)(),[S,ne]=(0,A.useState)(),re=Mn(),ie=Nn(),C=Pn(),w=Fn(),T=(0,A.useMemo)(()=>o?.packages??[],[o]),E=(0,A.useMemo)(()=>T.find(e=>e.name===c),[T,c]);(0,A.useEffect)(()=>{if(T.length===0){l(void 0);return}(!c||!T.some(e=>e.name===c))&&l(T[0].name)},[T,c]);let ae=e=>{e!==c&&(l(e),p(Ts),_(void 0))},D=C.isPending||ie.isPending||re.isPending,oe=async()=>{if(!(!E||Is(f))){_(void 0);try{let e=await C.mutateAsync({packageName:E.name,add:f.add,remove:f.remove,sync:m||void 0});p(Ts),a(`Applied ${e.runs.length} command${e.runs.length===1?``:`s`}`,`success`)}catch(e){_(Tc(e))}}},se=e=>{E&&p(t=>js(t,E.items,e))},ce=async()=>{if(E)try{await ie.mutateAsync(E.name),y(!1),p(Ts),a(`Uninstalled ${E.name}`,`success`)}catch(e){y(!1),_(Tc(e))}},le=async e=>{ne(void 0);try{let t=await re.mutateAsync(e);n(!1),t.package?(l(t.package.name),p(Ts),a(`Installed ${t.package.name}@${t.package.version}`,`success`)):a(`Installed`,`success`)}catch(e){ne(Tc(e).message)}},ue=async e=>{te(void 0),x(void 0);try{x(await w.mutateAsync(e))}catch(e){te(Tc(e))}},de=e&&(0,M.jsxDEV)(hc,{busy:re.isPending,error:S,onClose:()=>{n(!1),ne(void 0)},onSubmit:e=>void le(e),onBrowseSkills:()=>{n(!1),i()}},void 0,!1,{fileName:U,lineNumber:178,columnNumber:5},this),fe=t&&(0,M.jsxDEV)(xc,{busy:w.isPending,result:b,error:ee,targets:o?.targets??[],onClose:()=>{r(!1),x(void 0),te(void 0)},onRun:e=>void ue(e)},void 0,!1,{fileName:U,lineNumber:194,columnNumber:5},this);return s?(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading packages…`},void 0,!1,{fileName:U,lineNumber:208,columnNumber:25},this):o&&!o.initialized?(0,M.jsxDEV)(`div`,{className:`empty`,children:[(0,M.jsxDEV)(`h2`,{className:`empty__title`,children:`This directory is not an Invariant project`},void 0,!1,{fileName:U,lineNumber:213,columnNumber:9},this),(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`Packages live in `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:U,lineNumber:215,columnNumber:28},this),`, and there is none in`,` `,(0,M.jsxDEV)(`code`,{children:o.directory},void 0,!1,{fileName:U,lineNumber:216,columnNumber:11},this),` yet. Initializing picks which assistants to sync to, so it is a terminal step rather than a button here:`]},void 0,!0,{fileName:U,lineNumber:214,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:`invariant init claude`},void 0,!1,{fileName:U,lineNumber:219,columnNumber:9},this)]},void 0,!0,{fileName:U,lineNumber:212,columnNumber:7},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`header`,{className:`topbar`,children:[(0,M.jsxDEV)(`div`,{className:`topbar__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`topbar__title`,children:`Packages`},void 0,!1,{fileName:U,lineNumber:228,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`topbar__path`,title:o?.directory,children:o?.name??o?.directory},void 0,!1,{fileName:U,lineNumber:229,columnNumber:11},this)]},void 0,!0,{fileName:U,lineNumber:227,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`topbar__controls`,children:[(0,M.jsxDEV)(`div`,{className:`topbar__counts`,children:[(0,M.jsxDEV)(`span`,{className:`count`,title:`Installed packages`,children:[(0,M.jsxDEV)(`span`,{className:`count__value`,children:o?.totals.packages??0},void 0,!1,{fileName:U,lineNumber:237,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`count__label`,children:`Packages`},void 0,!1,{fileName:U,lineNumber:238,columnNumber:15},this)]},void 0,!0,{fileName:U,lineNumber:236,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`count count--in-progress`,title:`Active items across every package`,children:[(0,M.jsxDEV)(`span`,{className:`count__value`,children:o?.totals.activeItems??0},void 0,!1,{fileName:U,lineNumber:241,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`count__label`,children:[`of `,o?.totals.totalItems??0,` items active`]},void 0,!0,{fileName:U,lineNumber:242,columnNumber:15},this)]},void 0,!0,{fileName:U,lineNumber:240,columnNumber:13},this)]},void 0,!0,{fileName:U,lineNumber:235,columnNumber:11},this),(0,M.jsxDEV)($o,{surface:`packages`},void 0,!1,{fileName:U,lineNumber:246,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:i,children:`Browse skills`},void 0,!1,{fileName:U,lineNumber:248,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>r(!0),children:`Sync`},void 0,!1,{fileName:U,lineNumber:251,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:()=>n(!0),children:`Install package`},void 0,!1,{fileName:U,lineNumber:254,columnNumber:11},this)]},void 0,!0,{fileName:U,lineNumber:234,columnNumber:9},this)]},void 0,!0,{fileName:U,lineNumber:226,columnNumber:7},this),T.length===0?(0,M.jsxDEV)(`div`,{className:`empty`,children:[(0,M.jsxDEV)(`h2`,{className:`empty__title`,children:`No packages yet`},void 0,!1,{fileName:U,lineNumber:262,columnNumber:11},this),(0,M.jsxDEV)(`p`,{className:`empty__text`,children:`A package bundles agents, skills, commands, rules, contexts and instructions that this project can activate. Install one from a GitHub repository, or browse the skills.sh catalogue, then choose which of its items your assistants actually see.`},void 0,!1,{fileName:U,lineNumber:263,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`empty__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:()=>n(!0),children:`Install package`},void 0,!1,{fileName:U,lineNumber:269,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:i,children:`Browse skills`},void 0,!1,{fileName:U,lineNumber:272,columnNumber:13},this)]},void 0,!0,{fileName:U,lineNumber:268,columnNumber:11},this)]},void 0,!0,{fileName:U,lineNumber:261,columnNumber:9},this):(0,M.jsxDEV)(`div`,{className:`packages`,children:[(0,M.jsxDEV)(Cs,{packages:T,selected:c,filter:u,onFilter:d,onSelect:ae,dirty:new Set(c&&!Is(f)?[c]:[])},void 0,!1,{fileName:U,lineNumber:279,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`packages__pane`,children:E?(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(ec,{pkg:E,pending:f,busy:D,failure:g,onToggleItem:(e,t)=>p(n=>ks(n,e,t)),onToggleType:(e,t)=>p(n=>As(n,E.items,e,t)),onStageAll:se,onUninstall:()=>y(!0),onInstallMissing:()=>void le({source:Gs(E)}),onDismissFailure:()=>_(void 0)},void 0,!1,{fileName:U,lineNumber:291,columnNumber:17},this),!Is(f)&&(0,M.jsxDEV)(rc,{packageName:E.name,pending:f,sync:m,busy:C.isPending,running:C.isPending?Bs(E.name,f,{sync:m})[0]:void 0,onSyncChange:h,onDiscard:()=>p(Ts),onApply:()=>void oe()},void 0,!1,{fileName:U,lineNumber:309,columnNumber:19},this)]},void 0,!0,{fileName:U,lineNumber:290,columnNumber:15},this):(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Select a package.`},void 0,!1,{fileName:U,lineNumber:326,columnNumber:15},this)},void 0,!1,{fileName:U,lineNumber:288,columnNumber:11},this)]},void 0,!0,{fileName:U,lineNumber:278,columnNumber:9},this),v&&E&&(0,M.jsxDEV)(yc,{packageName:E.name,busy:ie.isPending,onClose:()=>y(!1),onConfirm:()=>void ce()},void 0,!1,{fileName:U,lineNumber:333,columnNumber:9},this),de,fe]},void 0,!0,{fileName:U,lineNumber:225,columnNumber:5},this)}function Tc(e){return e instanceof bt?{message:e.message,commandLine:e.commandLine,transcript:e.transcript}:{message:e instanceof Error?e.message:String(e)}}var Ec=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/skills/Sparkline.tsx`;function Dc({values:e,title:t}){if(e.length<2)return null;let n=Math.max(...e),r=Math.min(...e),i=n-r,a=e.map((t,n)=>{let a=n/(e.length-1)*46+1,o=i===0?7:13-(t-r)/i*12;return`${a.toFixed(1)},${o.toFixed(1)}`});return(0,M.jsxDEV)(`svg`,{className:`skills__sparkline`,viewBox:`0 0 48 14`,width:48,height:14,"aria-hidden":`true`,focusable:`false`,children:[t&&(0,M.jsxDEV)(`title`,{children:t},void 0,!1,{fileName:Ec,lineNumber:40,columnNumber:17},this),(0,M.jsxDEV)(`polyline`,{points:a.join(` `),fill:`none`,stroke:`currentColor`,strokeWidth:`1.25`,strokeLinecap:`round`,strokeLinejoin:`round`},void 0,!1,{fileName:Ec,lineNumber:41,columnNumber:7},this)]},void 0,!0,{fileName:Ec,lineNumber:32,columnNumber:5},this)}var Oc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/skills/SkillList.tsx`;function kc(e){return`${e.owner}/${e.repo}/${e.slug}`}function Ac({skills:e,selected:t,installedSources:n,onSelect:r}){return(0,M.jsxDEV)(`ul`,{className:`skills__rows`,role:`listbox`,"aria-label":`Skills`,children:e.map(e=>{let i=kc(e),a=i===t;return(0,M.jsxDEV)(`li`,{children:(0,M.jsxDEV)(`button`,{type:`button`,role:`option`,"aria-selected":a,className:`skills__row${a?` is-selected`:``}`,onClick:()=>r(e),children:[(0,M.jsxDEV)(`span`,{className:`skills__row-body`,children:[(0,M.jsxDEV)(`span`,{className:`skills__row-name`,children:[(0,M.jsxDEV)(`span`,{className:`skills__row-label`,children:e.name},void 0,!1,{fileName:Oc,lineNumber:43,columnNumber:19},this),e.isOfficial&&(0,M.jsxDEV)(`span`,{className:`chip chip--official`,children:`official`},void 0,!1,{fileName:Oc,lineNumber:44,columnNumber:40},this),n.has(e.source)&&(0,M.jsxDEV)(`span`,{className:`chip`,children:`installed`},void 0,!1,{fileName:Oc,lineNumber:45,columnNumber:58},this)]},void 0,!0,{fileName:Oc,lineNumber:42,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`skills__row-source`,children:e.source},void 0,!1,{fileName:Oc,lineNumber:47,columnNumber:17},this)]},void 0,!0,{fileName:Oc,lineNumber:41,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`skills__row-meta`,children:[(0,M.jsxDEV)(`span`,{className:`skills__installs`,title:fc(e.installs),children:uc(e.installs)},void 0,!1,{fileName:Oc,lineNumber:51,columnNumber:17},this),e.installsYesterday!==void 0&&(0,M.jsxDEV)(`span`,{className:`skills__delta`,title:`Installs yesterday`,children:[`+`,uc(e.installsYesterday),`/d`]},void 0,!0,{fileName:Oc,lineNumber:55,columnNumber:19},this),(0,M.jsxDEV)(Dc,{values:e.weeklyInstalls,title:e.weeklyInstalls.join(` · `)},void 0,!1,{fileName:Oc,lineNumber:59,columnNumber:17},this)]},void 0,!0,{fileName:Oc,lineNumber:50,columnNumber:15},this)]},void 0,!0,{fileName:Oc,lineNumber:34,columnNumber:13},this)},i,!1,{fileName:Oc,lineNumber:33,columnNumber:11},this)})},void 0,!1,{fileName:Oc,lineNumber:27,columnNumber:5},this)}var W=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/skills/SkillPreview.tsx`;function jc({listing:e,detail:t,loading:n,failed:r,installed:i,busy:a,onInstall:o}){let[s,c]=(0,A.useState)(!0),[l,u]=(0,A.useState)(!1),d=cc(e.owner,e.repo,e.slug),f=lc(e.owner,e.repo,e.slug),p=Vs({kind:`skills`,owner:e.owner,repo:e.repo,slug:e.slug},{activate:s,sync:l});return(0,M.jsxDEV)(`section`,{className:`skills__preview`,children:[(0,M.jsxDEV)(`header`,{className:`skills__preview-head`,children:[(0,M.jsxDEV)(`h2`,{className:`skills__preview-title`,children:[e.name,e.isOfficial&&(0,M.jsxDEV)(`span`,{className:`chip chip--official`,children:`official`},void 0,!1,{fileName:W,lineNumber:55,columnNumber:34},this),i&&(0,M.jsxDEV)(`span`,{className:`chip`,children:`installed`},void 0,!1,{fileName:W,lineNumber:56,columnNumber:25},this)]},void 0,!0,{fileName:W,lineNumber:53,columnNumber:9},this),(0,M.jsxDEV)(`p`,{className:`skills__preview-source`,children:e.source},void 0,!1,{fileName:W,lineNumber:58,columnNumber:9},this),(0,M.jsxDEV)(`p`,{className:`skills__preview-links`,children:[(0,M.jsxDEV)(`a`,{className:`chip chip--link`,href:t?.catalogUrl??`https://www.skills.sh/${e.source}/${e.slug}`,target:`_blank`,rel:`noreferrer`,children:`skills.sh ↗`},void 0,!1,{fileName:W,lineNumber:61,columnNumber:11},this),(0,M.jsxDEV)(`a`,{className:`chip chip--link`,href:t?.repository.url??`https://github.com/${e.source}`,target:`_blank`,rel:`noreferrer`,children:`GitHub ↗`},void 0,!1,{fileName:W,lineNumber:69,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:60,columnNumber:9},this)]},void 0,!0,{fileName:W,lineNumber:52,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`skills__stats`,children:[(0,M.jsxDEV)(Mc,{label:`Installs`,value:uc(e.installs),title:fc(e.installs)},void 0,!1,{fileName:W,lineNumber:81,columnNumber:9},this),(0,M.jsxDEV)(Mc,{label:`This week`,value:Nc(e)},void 0,!1,{fileName:W,lineNumber:82,columnNumber:9},this),(0,M.jsxDEV)(Mc,{label:`Stars`,value:t?.repository.stars===void 0?`—`:uc(t.repository.stars)},void 0,!1,{fileName:W,lineNumber:83,columnNumber:9},this),(0,M.jsxDEV)(Mc,{label:`License`,value:t?.repository.license??`—`},void 0,!1,{fileName:W,lineNumber:84,columnNumber:9},this),(0,M.jsxDEV)(Mc,{label:`Pushed`,value:mc(t?.repository.pushedAt)??`—`},void 0,!1,{fileName:W,lineNumber:85,columnNumber:9},this)]},void 0,!0,{fileName:W,lineNumber:80,columnNumber:7},this),r?(0,M.jsxDEV)(`p`,{className:`skills__note`,children:`skills.sh could not describe this skill. Installing still works — the files come from GitHub.`},void 0,!1,{fileName:W,lineNumber:89,columnNumber:9},this):n?(0,M.jsxDEV)(`p`,{className:`skills__note`,children:`Loading the skill…`},void 0,!1,{fileName:W,lineNumber:94,columnNumber:9},this):(0,M.jsxDEV)(M.Fragment,{children:[t?.description&&(0,M.jsxDEV)(`p`,{className:`skills__description`,children:t.description},void 0,!1,{fileName:W,lineNumber:97,columnNumber:35},this),(0,M.jsxDEV)(`div`,{className:`skills__files`,children:[(0,M.jsxDEV)(`p`,{className:`field__label`,children:[`Files (`,t?.files.length??0,`)`]},void 0,!0,{fileName:W,lineNumber:100,columnNumber:13},this),(0,M.jsxDEV)(`ul`,{className:`skills__file-list`,children:t?.files.map(e=>(0,M.jsxDEV)(`li`,{children:[(0,M.jsxDEV)(`code`,{children:e.path},void 0,!1,{fileName:W,lineNumber:104,columnNumber:19},this),(0,M.jsxDEV)(`span`,{className:`skills__file-size`,children:pc(e.bytes)},void 0,!1,{fileName:W,lineNumber:105,columnNumber:19},this)]},e.path,!0,{fileName:W,lineNumber:103,columnNumber:17},this))},void 0,!1,{fileName:W,lineNumber:101,columnNumber:13},this)]},void 0,!0,{fileName:W,lineNumber:99,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:96,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`skills__install-as`,children:[(0,M.jsxDEV)(`p`,{className:`field__label`,children:`Installs as`},void 0,!1,{fileName:W,lineNumber:114,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:d},void 0,!1,{fileName:W,lineNumber:115,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:f},void 0,!1,{fileName:W,lineNumber:116,columnNumber:9},this),(0,M.jsxDEV)(`p`,{className:`skills__note`,children:[`The whole `,(0,M.jsxDEV)(`code`,{children:e.source},void 0,!1,{fileName:W,lineNumber:118,columnNumber:21},this),` repository is cached as one package`,t&&(0,M.jsxDEV)(M.Fragment,{children:[` (`,(0,M.jsxDEV)(`code`,{children:t.install.packageName},void 0,!1,{fileName:W,lineNumber:119,columnNumber:26},this),`)`]},void 0,!0,{fileName:W,lineNumber:119,columnNumber:22},this),`; only this skill is activated. The name carries its package, which is why it is not just`,` `,(0,M.jsxDEV)(`code`,{children:e.slug},void 0,!1,{fileName:W,lineNumber:121,columnNumber:11},this),`.`]},void 0,!0,{fileName:W,lineNumber:117,columnNumber:9},this)]},void 0,!0,{fileName:W,lineNumber:113,columnNumber:7},this),(0,M.jsxDEV)(`p`,{className:`skills__note`,children:[`Installing copies files into `,(0,M.jsxDEV)(`code`,{children:`.invariant/cache`},void 0,!1,{fileName:W,lineNumber:126,columnNumber:38},this),`. Nothing runs. Security audits live on`,` `,(0,M.jsxDEV)(`a`,{href:t?.catalogUrl??`https://www.skills.sh`,target:`_blank`,rel:`noreferrer`,children:`skills.sh ↗`},void 0,!1,{fileName:W,lineNumber:128,columnNumber:9},this),`.`]},void 0,!0,{fileName:W,lineNumber:125,columnNumber:7},this),t?.skillMarkdown&&(0,M.jsxDEV)(`details`,{className:`skills__skill-md`,children:[(0,M.jsxDEV)(`summary`,{children:`SKILL.md`},void 0,!1,{fileName:W,lineNumber:136,columnNumber:11},this),(0,M.jsxDEV)(ta,{source:t.skillMarkdown,compact:!0},void 0,!1,{fileName:W,lineNumber:137,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:135,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`skills__actions`,children:[(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:s,onChange:e=>c(e.target.checked)},void 0,!1,{fileName:W,lineNumber:143,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:`Activate now`},void 0,!1,{fileName:W,lineNumber:144,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:142,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`checkbox`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:l,onChange:e=>u(e.target.checked)},void 0,!1,{fileName:W,lineNumber:147,columnNumber:11},this),(0,M.jsxDEV)(`span`,{children:[`Run `,(0,M.jsxDEV)(`code`,{children:`sync`},void 0,!1,{fileName:W,lineNumber:149,columnNumber:17},this),` after`]},void 0,!0,{fileName:W,lineNumber:148,columnNumber:11},this)]},void 0,!0,{fileName:W,lineNumber:146,columnNumber:9},this)]},void 0,!0,{fileName:W,lineNumber:141,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`packages__preview`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Command`},void 0,!1,{fileName:W,lineNumber:155,columnNumber:9},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:p},void 0,!1,{fileName:W,lineNumber:156,columnNumber:9},this)]},void 0,!0,{fileName:W,lineNumber:154,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:a,onClick:()=>o({activate:s,sync:l}),children:a?`Installing…`:i?`Reinstall skill`:`Install skill`},void 0,!1,{fileName:W,lineNumber:159,columnNumber:7},this)]},void 0,!0,{fileName:W,lineNumber:51,columnNumber:5},this)}function Mc({label:e,value:t,title:n}){return(0,M.jsxDEV)(`div`,{className:`skills__stat`,children:[(0,M.jsxDEV)(`dt`,{className:`skills__stat-label`,children:e},void 0,!1,{fileName:W,lineNumber:174,columnNumber:7},this),(0,M.jsxDEV)(`dd`,{className:`skills__stat-value`,title:n,children:t},void 0,!1,{fileName:W,lineNumber:175,columnNumber:7},this)]},void 0,!0,{fileName:W,lineNumber:173,columnNumber:5},this)}function Nc(e){let t=e.weeklyInstalls[e.weeklyInstalls.length-1];return t===void 0?`—`:uc(t)}var Pc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/skills/SkillsBrowserPage.tsx`,Fc=[{value:`all-time`,label:`Popular`},{value:`trending`,label:`Trending`},{value:`hot`,label:`Hot`}];function Ic({onBack:e}){let t=dr(),[n,r]=(0,A.useState)(()=>Lc()),[i,a]=(0,A.useState)(0),[o,s]=(0,A.useState)(``),[c,l]=(0,A.useState)(``),[u,d]=(0,A.useState)(),[f,p]=(0,A.useState)([]),m=(0,A.useRef)(null),h=On(n,i),g=kn(c),_=Dn(),v=Mn(),y=An(u?{owner:u.owner,repo:u.repo,slug:u.slug}:void 0);(0,A.useEffect)(()=>{let e=setTimeout(()=>l(o.trim()),200);return()=>clearTimeout(e)},[o]),(0,A.useEffect)(()=>{localStorage.setItem(`invariant.skills.view`,n),a(0),p([])},[n]),(0,A.useEffect)(()=>{h.data&&p(e=>h.data.page===0?h.data.skills:[...e,...h.data.skills])},[h.data]);let b=c.length>=2,x=b?g.data?.skills??[]:f,ee=(0,A.useMemo)(()=>{let e=new Set;for(let t of _.data?.packages??[]){let n=t.sourceUrl?.match(/^(?:skills|github):([^/#]+)\/([^/#]+)/);n&&e.add(`${n[1]}/${n[2]}`)}return e},[_.data]);(0,A.useEffect)(()=>{let t=t=>{let r=t.target instanceof HTMLElement&&[`INPUT`,`TEXTAREA`].includes(t.target.tagName);if(t.key===`/`&&!r){t.preventDefault(),m.current?.focus();return}r||(t.key===`ArrowDown`||t.key===`j`?n(1):t.key===`ArrowUp`||t.key===`k`?n(-1):t.key===`Escape`&&e())},n=e=>{if(x.length===0)return;let t=u?x.findIndex(e=>kc(e)===kc(u)):-1,n=Math.min(Math.max(t+e,0),x.length-1);d(x[n])};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[x,u,e]);let te=b?g.isError||g.data?.unavailable===!0:h.isError||h.data?.unavailable===!0,S=async e=>{if(u)try{let n=await v.mutateAsync({source:{kind:`skills`,owner:u.owner,repo:u.repo,slug:u.slug},activate:e.activate,sync:e.sync});t(`Installed ${n.package?.name??u.name}`,`success`)}catch(e){t(e instanceof bt?e.message:String(e),`danger`)}};return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`header`,{className:`topbar`,children:[(0,M.jsxDEV)(`div`,{className:`topbar__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`topbar__title`,children:`Browse skills`},void 0,!1,{fileName:Pc,lineNumber:144,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`topbar__path`,children:[`skills.sh`,h.data&&h.data.total>0&&(0,M.jsxDEV)(M.Fragment,{children:[` · `,new Intl.NumberFormat(`en-US`).format(h.data.total),` indexed`]},void 0,!0,{fileName:Pc,lineNumber:148,columnNumber:15},this)]},void 0,!0,{fileName:Pc,lineNumber:145,columnNumber:11},this)]},void 0,!0,{fileName:Pc,lineNumber:143,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`topbar__controls`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:e,children:`Back to packages`},void 0,!1,{fileName:Pc,lineNumber:154,columnNumber:11},this)},void 0,!1,{fileName:Pc,lineNumber:153,columnNumber:9},this)]},void 0,!0,{fileName:Pc,lineNumber:142,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`skills`,children:[(0,M.jsxDEV)(`div`,{className:`skills__list`,children:[(0,M.jsxDEV)(`div`,{className:`skills__filters`,children:[(0,M.jsxDEV)(`input`,{ref:m,className:`filter__input`,value:o,placeholder:`Search skills… ( / )`,"aria-label":`Search skills`,spellCheck:!1,onChange:e=>s(e.target.value)},void 0,!1,{fileName:Pc,lineNumber:163,columnNumber:13},this),(0,M.jsxDEV)(`div`,{className:`segmented`,role:`tablist`,"aria-label":`Ranking`,children:Fc.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,role:`tab`,"aria-selected":n===e.value,className:`segmented__item${n===e.value?` is-active`:``}`,disabled:b,onClick:()=>r(e.value),children:e.label},e.value,!1,{fileName:Pc,lineNumber:175,columnNumber:17},this))},void 0,!1,{fileName:Pc,lineNumber:173,columnNumber:13},this)]},void 0,!0,{fileName:Pc,lineNumber:162,columnNumber:11},this),te?(0,M.jsxDEV)(`div`,{className:`skills__empty`,children:[(0,M.jsxDEV)(`p`,{className:`skills__note`,children:`skills.sh is unreachable. Installing by identifier still works:`},void 0,!1,{fileName:Pc,lineNumber:192,columnNumber:15},this),(0,M.jsxDEV)(`code`,{className:`packages__preview-line`,children:`invariant install skills:owner/repo/skill`},void 0,!1,{fileName:Pc,lineNumber:195,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>b?g.refetch():h.refetch(),children:`Retry`},void 0,!1,{fileName:Pc,lineNumber:198,columnNumber:15},this)]},void 0,!0,{fileName:Pc,lineNumber:191,columnNumber:13},this):x.length===0?(0,M.jsxDEV)(`p`,{className:`skills__note`,children:h.isLoading||g.isLoading?`Loading the catalogue…`:`No skill matches “${c}”.`},void 0,!1,{fileName:Pc,lineNumber:207,columnNumber:13},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(Ac,{skills:x,selected:u?kc(u):void 0,installedSources:ee,onSelect:d},void 0,!1,{fileName:Pc,lineNumber:214,columnNumber:15},this),!b&&h.data?.hasMore&&(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle skills__more`,disabled:h.isFetching,onClick:()=>a(e=>e+1),children:h.isFetching?`Loading…`:`Load more`},void 0,!1,{fileName:Pc,lineNumber:222,columnNumber:17},this)]},void 0,!0,{fileName:Pc,lineNumber:213,columnNumber:13},this)]},void 0,!0,{fileName:Pc,lineNumber:161,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`skills__pane`,children:u?(0,M.jsxDEV)(jc,{listing:u,detail:y.data,loading:y.isLoading,failed:y.isError,installed:ee.has(u.source),busy:v.isPending,onInstall:e=>void S(e)},void 0,!1,{fileName:Pc,lineNumber:237,columnNumber:13},this):(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Select a skill.`},void 0,!1,{fileName:Pc,lineNumber:247,columnNumber:13},this)},void 0,!1,{fileName:Pc,lineNumber:235,columnNumber:9},this)]},void 0,!0,{fileName:Pc,lineNumber:160,columnNumber:7},this)]},void 0,!0,{fileName:Pc,lineNumber:141,columnNumber:5},this)}function Lc(){let e=localStorage.getItem(`invariant.skills.view`);return e===`trending`||e===`hot`?e:`all-time`}var Rc={project:`project`,machine:`this machine`,browser:`this browser`},zc={project:`Written into this repository — everyone who clones it gets this.`,machine:`Held by the daemon on this machine, for every project it serves.`,browser:`Remembered by this browser only. Never leaves it.`},Bc=[`project`,`machine`,`browser`],Vc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/SectionRow.tsx`,Hc={configured:`configured`,"not-configured":`not set up`,attention:`needs attention`,"read-only":``};function Uc({section:e,summary:t,open:n,dirty:r,focused:i,linked:a,onToggle:o,onFocus:s,children:c}){let l=(0,A.useRef)(null),u=`settings-${e.id}-header`,d=`settings-${e.id}-body`;(0,A.useEffect)(()=>{a&&l.current?.scrollIntoView?.({block:`start`,behavior:`smooth`})},[a]);let f=r?`attention`:t.state;return(0,M.jsxDEV)(`section`,{ref:l,id:`settings-${e.id}`,className:[`config-row`,n?`is-open`:``,i?`is-focused`:``,a?`is-linked`:``,`config-row--${f}`].filter(Boolean).join(` `),"aria-labelledby":u,children:[(0,M.jsxDEV)(`button`,{type:`button`,id:u,className:`config-row__header`,"aria-expanded":n,"aria-controls":d,onClick:()=>{s(),o()},children:[(0,M.jsxDEV)(`span`,{className:`config-row__icon`,"aria-hidden":`true`,children:e.icon},void 0,!1,{fileName:Vc,lineNumber:87,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`config-row__identity`,children:[(0,M.jsxDEV)(`span`,{className:`config-row__title`,children:[e.title,r&&(0,M.jsxDEV)(`span`,{className:`config-row__dirty`,children:`unsaved`},void 0,!1,{fileName:Vc,lineNumber:94,columnNumber:23},this)]},void 0,!0,{fileName:Vc,lineNumber:92,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`config-row__summary${t.loading?` is-loading`:``}`,title:t.headline,children:t.headline},void 0,!1,{fileName:Vc,lineNumber:96,columnNumber:11},this)]},void 0,!0,{fileName:Vc,lineNumber:91,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`config-row__meta`,children:[Hc[f]&&(0,M.jsxDEV)(`span`,{className:`config-state config-state--${f}`,children:[(0,M.jsxDEV)(`span`,{className:`config-state__dot`,"aria-hidden":`true`},void 0,!1,{fileName:Vc,lineNumber:104,columnNumber:15},this),Hc[f]]},void 0,!0,{fileName:Vc,lineNumber:103,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`chip config-row__scope`,title:zc[e.scope],children:Rc[e.scope]},void 0,!1,{fileName:Vc,lineNumber:108,columnNumber:11},this)]},void 0,!0,{fileName:Vc,lineNumber:101,columnNumber:9},this),(0,M.jsxDEV)(`svg`,{className:`config-row__chevron`,viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M4.5 2.5 8 6l-3.5 3.5`},void 0,!1,{fileName:Vc,lineNumber:114,columnNumber:11},this)},void 0,!1,{fileName:Vc,lineNumber:113,columnNumber:9},this)]},void 0,!0,{fileName:Vc,lineNumber:76,columnNumber:7},this),t.alert&&(0,M.jsxDEV)(`p`,{className:`config-row__alert`,children:t.alert},void 0,!1,{fileName:Vc,lineNumber:120,columnNumber:25},this),(0,M.jsxDEV)(`div`,{className:`config-row__panel`,id:d,role:`region`,"aria-labelledby":u,inert:!n,children:(0,M.jsxDEV)(`div`,{className:`config-row__panel-inner`,children:c},void 0,!1,{fileName:Vc,lineNumber:132,columnNumber:9},this)},void 0,!1,{fileName:Vc,lineNumber:125,columnNumber:7},this)]},void 0,!0,{fileName:Vc,lineNumber:62,columnNumber:5},this)}var Wc=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/SectionSpine.tsx`;function Gc({sections:e,summaries:t,dirty:n,activeId:r,onSelect:i}){let a=Bc.map(t=>({scope:t,sections:e.filter(e=>e.scope===t)})).filter(e=>e.sections.length>0);return(0,M.jsxDEV)(`nav`,{className:`config-spine`,"aria-label":`Configuration sections`,children:a.map(e=>(0,M.jsxDEV)(`div`,{className:`config-spine__group`,children:[(0,M.jsxDEV)(`h2`,{className:`config-spine__scope`,children:Kc(e.scope)},void 0,!1,{fileName:Wc,lineNumber:36,columnNumber:11},this),(0,M.jsxDEV)(`ul`,{className:`config-spine__list`,children:e.sections.map(e=>{let a=t[e.id],o=n.has(e.id)?`attention`:a?.state??`read-only`;return(0,M.jsxDEV)(`li`,{children:(0,M.jsxDEV)(`button`,{type:`button`,className:`config-spine__item${r===e.id?` is-active`:``}`,"aria-current":r===e.id?`true`:void 0,onClick:()=>i(e.id),children:[(0,M.jsxDEV)(`span`,{className:`config-state__dot config-state__dot--${o}`,"aria-hidden":`true`},void 0,!1,{fileName:Wc,lineNumber:49,columnNumber:21},this),(0,M.jsxDEV)(`span`,{className:`config-spine__label`,children:e.title},void 0,!1,{fileName:Wc,lineNumber:50,columnNumber:21},this)]},void 0,!0,{fileName:Wc,lineNumber:43,columnNumber:19},this)},e.id,!1,{fileName:Wc,lineNumber:42,columnNumber:17},this)})},void 0,!1,{fileName:Wc,lineNumber:37,columnNumber:11},this)]},e.scope,!0,{fileName:Wc,lineNumber:35,columnNumber:9},this))},void 0,!1,{fileName:Wc,lineNumber:33,columnNumber:5},this)}function Kc(e){return Rc[e]===`project`?`this project`:Rc[e]}var qc=[{id:`indigo`,label:`Indigo`,description:`The original. Dark indigo and periwinkle.`,colorScheme:`dark`},{id:`graphite`,label:`Graphite`,description:`Dark and near-neutral. The hue drains out of the chrome so status is the only colour on screen.`,colorScheme:`dark`},{id:`paper`,label:`Paper`,description:`Light. White surfaces and ink text, with the status colours darkened to hold their meaning.`,colorScheme:`light`}],Jc=`indigo`,Yc=`invariant.theme`;function Xc(e){return qc.some(t=>t.id===e)}function Zc(e){return qc.find(t=>t.id===e)??qc[0]}function Qc(){try{let e=window.localStorage.getItem(Yc);return Xc(e)?e:Jc}catch{return Jc}}function $c(e){if(typeof document>`u`)return;document.documentElement.dataset.dsTheme=e;let t=document.querySelector(`meta[name="color-scheme"]`);t&&(t.content=Zc(e).colorScheme);try{window.localStorage.setItem(Yc,e)}catch{}}function el(){return(0,A.useSyncExternalStore)(tl,nl,()=>Jc)}function tl(e){if(typeof document>`u`)return()=>{};let t=new MutationObserver(e);return t.observe(document.documentElement,{attributeFilter:[`data-ds-theme`]}),()=>t.disconnect()}function nl(){if(typeof document>`u`)return Jc;let e=document.documentElement.dataset.dsTheme;return Xc(e)?e:Jc}var rl={state:`read-only`,headline:`…`,loading:!0};function il(e){return e?{state:`read-only`,headline:`${e.name} · ${cr(e.directory)}`,searchText:`${e.directory} ${e.sessionsDirectory}`}:rl}function al(e){if(!e)return rl;let t=e.options.filter(e=>e.enabled),n=`${t.map(e=>e.displayName).join(`, `)||`none`} · ${t.length} of ${e.options.length}`,r=e.options.map(e=>`${e.name} ${e.displayName}`).join(` `),i=t.filter(e=>!e.present);return i.length>0?{state:`attention`,headline:n,alert:`${i.map(e=>e.displayName).join(`, `)} ${i.length===1?`is`:`are`} configured but nothing has been written for ${i.length===1?`it`:`them`} yet. Sync to create the folders.`,searchText:r}:{state:`configured`,headline:n,searchText:r}}function ol(e){if(!e)return rl;let t=e.projectPath??e.remote?.projectPath,n=e.tokenHint?`····${e.tokenHint}`:void 0,r=e.source===`environment`?`GITLAB_TOKEN from the environment`:n,i=e.configured?[t,r].filter(Boolean).join(` · `):`no token — publishing a review will ask for one`,a=`gitlab ${e.host??``} ${t??``} ${e.remote?.url??``}`;return e.mismatch?{state:`attention`,headline:i,alert:`Saved for ${e.mismatch.storedRemote}, but this project's origin is now ${e.mismatch.currentRemote}. Publishing is refused until you save again.`,searchText:a}:e.configured&&!e.gitignored?{state:`attention`,headline:i,alert:`${e.storedAt} is not git-ignored — check before you commit.`,searchText:a}:{state:e.configured?`configured`:`not-configured`,headline:i,searchText:a}}function sl(e){if(!e)return rl;let t=`linear issue spec sync template ${e.workspace??``} ${e.teamKey??``}`;if(!e.configured)return{state:e.enabled?`attention`:`not-configured`,headline:e.enabled?`declared, but this machine has no API key`:`not connected — sessions cannot link to an issue`,alert:e.enabled?`This project expects a Linear key and this machine does not have one. Paste one to link sessions to issues.`:void 0,searchText:t};let n=e.issueTemplateIsDefault?`default template`:`custom template`,r=e.apiKeyHint?`····${e.apiKeyHint}`:`key from the environment`,i=[e.workspace,e.teamKey,n,r].filter(Boolean).join(` · `);return!e.gitignored&&e.source===`stored`?{state:`attention`,headline:i,alert:`${e.storedAt} is not git-ignored — check before you commit.`,searchText:t}:{state:`configured`,headline:i,searchText:t}}function cl(e){return{state:`configured`,headline:`${e.reviewCta===`publish`?`publish first`:`plan changes first`} · skills ${e.skillsView}${e.intros.total>0?` · ${e.intros.watched}/${e.intros.total} intros watched`:``}`,searchText:`preferences remembered browser local storage draft reset intro video tutorial loom`}}function ll(e){return e?{state:`read-only`,headline:`:${e.port} · pid ${e.pid} · v${e.version} · ${e.projectCount} project${e.projectCount===1?``:`s`}`,searchText:`daemon server port pid version registry ${e.registryPath} stop shutdown`}:rl}function ul(e){if(!e)return rl;let t=e.appearance.theme,n=Zc(Xc(t)?t:`indigo`);return{state:`configured`,headline:`${n.label} · ${n.colorScheme}`,searchText:`theme dark light appearance indigo graphite paper contrast colour color`}}var dl=`invariant.skills.view`,fl=[`popular`,`trending`,`hot`];function pl(){try{let e=window.localStorage.getItem(dl);return fl.includes(e)?e:`popular`}catch{return`popular`}}function ml(e){try{window.localStorage.setItem(dl,e)}catch{}}function hl(e){return{reviewCta:_l(e),skillsView:pl(),hasSessionDraft:!yo(bo(e)),intros:gl()}}function gl(){let e=Ro(),t=No();return{total:t.length,watched:t.filter(t=>!Uo(e,t)).length}}function _l(e){try{return window.localStorage.getItem(wa(e))===`publish`?`publish`:Ca}catch{return Ca}}function vl(e){return[dl,wa(e),vo(e),Fo,Io]}function yl(e){let t=[];for(let n of vl(e))try{if(window.localStorage.getItem(n)===null)continue;window.localStorage.removeItem(n),t.push(n)}catch{}return t}var bl=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/AppearanceSection.tsx`;function xl({onDirtyChange:e}){let t=dr(),{data:n,isLoading:r}=Bn(),i=Vn();if((0,A.useEffect)(()=>e(!1),[e]),r||!n)return(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:bl,lineNumber:31,columnNumber:34},this);let a=n.appearance.theme,o=Xc(a)?a:`indigo`,s=e=>{e!==o&&($c(e),i.mutate(e,{onError:e=>{$c(o),t(e instanceof Error?e.message:`Could not save the theme`,`danger`)}}))};return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`Held by the daemon for every project it serves, so choosing here changes every project on this machine — and every browser pointed at it. The default stays Indigo; nothing else about the interface moves.`},void 0,!1,{fileName:bl,lineNumber:49,columnNumber:7},this),(0,M.jsxDEV)(`fieldset`,{className:`config-themes`,children:[(0,M.jsxDEV)(`legend`,{className:`visually-hidden`,children:`Theme`},void 0,!1,{fileName:bl,lineNumber:56,columnNumber:9},this),qc.map(e=>(0,M.jsxDEV)(`label`,{className:`config-theme${o===e.id?` is-active`:``}`,children:[(0,M.jsxDEV)(`input`,{type:`radio`,name:`ui-theme`,className:`visually-hidden`,checked:o===e.id,onChange:()=>s(e.id)},void 0,!1,{fileName:bl,lineNumber:62,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`config-theme__preview`,"data-ds-theme":e.id,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`span`,{className:`config-theme__rail`},void 0,!1,{fileName:bl,lineNumber:73,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`config-theme__page`,children:[(0,M.jsxDEV)(`span`,{className:`config-theme__line config-theme__line--strong`},void 0,!1,{fileName:bl,lineNumber:75,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`config-theme__line`},void 0,!1,{fileName:bl,lineNumber:76,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`config-theme__status`,children:[(0,M.jsxDEV)(`i`,{className:`config-theme__dot config-theme__dot--accent`},void 0,!1,{fileName:bl,lineNumber:78,columnNumber:19},this),(0,M.jsxDEV)(`i`,{className:`config-theme__dot config-theme__dot--success`},void 0,!1,{fileName:bl,lineNumber:79,columnNumber:19},this),(0,M.jsxDEV)(`i`,{className:`config-theme__dot config-theme__dot--warning`},void 0,!1,{fileName:bl,lineNumber:80,columnNumber:19},this),(0,M.jsxDEV)(`i`,{className:`config-theme__dot config-theme__dot--review`},void 0,!1,{fileName:bl,lineNumber:81,columnNumber:19},this),(0,M.jsxDEV)(`i`,{className:`config-theme__dot config-theme__dot--danger`},void 0,!1,{fileName:bl,lineNumber:82,columnNumber:19},this)]},void 0,!0,{fileName:bl,lineNumber:77,columnNumber:17},this)]},void 0,!0,{fileName:bl,lineNumber:74,columnNumber:15},this)]},void 0,!0,{fileName:bl,lineNumber:72,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`config-theme__name`,children:e.label},void 0,!1,{fileName:bl,lineNumber:86,columnNumber:13},this),(0,M.jsxDEV)(`span`,{className:`config-theme__hint`,children:e.description},void 0,!1,{fileName:bl,lineNumber:87,columnNumber:13},this)]},e.id,!0,{fileName:bl,lineNumber:58,columnNumber:11},this))]},void 0,!0,{fileName:bl,lineNumber:55,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Stored in`},void 0,!1,{fileName:bl,lineNumber:94,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:n.path},void 0,!1,{fileName:bl,lineNumber:95,columnNumber:11},this)]},void 0,!0,{fileName:bl,lineNumber:93,columnNumber:9},this)},void 0,!1,{fileName:bl,lineNumber:92,columnNumber:7},this)]},void 0,!0,{fileName:bl,lineNumber:48,columnNumber:5},this)}var G=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/ProjectSection.tsx`;function Sl({onDirtyChange:e}){let t=dr(),{data:n}=Bt(),{projectId:r,card:i}=jt(),a=Gn(),{data:o}=zn({poll:!1}),s=o?.groups??[],[c,l]=(0,A.useState)(``);(0,A.useEffect)(()=>{i&&l(e=>e||i.name)},[i]);let u=i!==void 0&&c.trim().length>0&&c.trim()!==i.name;return(0,A.useEffect)(()=>e(u),[u,e]),!n||!i?(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:G,lineNumber:37,columnNumber:33},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`This UI is pinned to one directory per project, and every project setting below is written inside it. Opening another project reads another set of files.`},void 0,!1,{fileName:G,lineNumber:41,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Directory`},void 0,!1,{fileName:G,lineNumber:48,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`button`,{type:`button`,className:`config-copy`,title:`Copy`,onClick:async()=>t(await sr(n.directory)?`Path copied`:`Could not copy`,`success`),children:(0,M.jsxDEV)(`code`,{children:n.directory},void 0,!1,{fileName:G,lineNumber:58,columnNumber:15},this)},void 0,!1,{fileName:G,lineNumber:50,columnNumber:13},this)},void 0,!1,{fileName:G,lineNumber:49,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:47,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Name in the manifest`},void 0,!1,{fileName:G,lineNumber:63,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.name},void 0,!1,{fileName:G,lineNumber:64,columnNumber:15},this)},void 0,!1,{fileName:G,lineNumber:64,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:62,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Sessions`},void 0,!1,{fileName:G,lineNumber:67,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.sessionsDirectory},void 0,!1,{fileName:G,lineNumber:68,columnNumber:15},this)},void 0,!1,{fileName:G,lineNumber:68,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:66,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Packages`},void 0,!1,{fileName:G,lineNumber:71,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:[n.packageCount,` installed · `,n.activeItemCount,` item`,n.activeItemCount===1?``:`s`,` activated`]},void 0,!0,{fileName:G,lineNumber:72,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:70,columnNumber:9},this),i.git?.isRepository&&(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Branch`},void 0,!1,{fileName:G,lineNumber:79,columnNumber:13},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:i.git.branch??`detached`},void 0,!1,{fileName:G,lineNumber:80,columnNumber:17},this)},void 0,!1,{fileName:G,lineNumber:80,columnNumber:13},this)]},void 0,!0,{fileName:G,lineNumber:78,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:46,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config-form`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Name on this machine`,(0,M.jsxDEV)(`span`,{className:`field__badge`,children:`hub card`},void 0,!1,{fileName:G,lineNumber:89,columnNumber:13},this)]},void 0,!0,{fileName:G,lineNumber:87,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:c,placeholder:n.name,onChange:e=>l(e.target.value)},void 0,!1,{fileName:G,lineNumber:91,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`What the hub and the rail call this project. It is stored in the machine's project registry, not in `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:G,lineNumber:99,columnNumber:30},this),`, so it never reaches your colleagues.`,i.displayName!==void 0&&(0,M.jsxDEV)(M.Fragment,{children:[` `,(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:()=>a.mutate({projectId:r,displayName:null},{onSuccess:()=>{l(n.name),t(`Back to the manifest name`,`success`)}}),children:[`Reset to “`,n.name,`”`]},void 0,!0,{fileName:G,lineNumber:103,columnNumber:17},this)]},void 0,!0,{fileName:G,lineNumber:101,columnNumber:15},this)]},void 0,!0,{fileName:G,lineNumber:97,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:86,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Group`},void 0,!1,{fileName:G,lineNumber:126,columnNumber:11},this),(0,M.jsxDEV)(`select`,{className:`field__input`,value:i.groupId??``,onChange:e=>a.mutate({projectId:r,groupId:e.target.value===``?null:e.target.value},{onSuccess:()=>t(`Group updated`,`success`),onError:e=>t(e instanceof Error?e.message:`That did not work.`,`danger`)}),children:[(0,M.jsxDEV)(`option`,{value:``,children:`Ungrouped`},void 0,!1,{fileName:G,lineNumber:141,columnNumber:13},this),s.map(e=>(0,M.jsxDEV)(`option`,{value:e.id,children:e.name},e.id,!1,{fileName:G,lineNumber:143,columnNumber:15},this))]},void 0,!0,{fileName:G,lineNumber:127,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:s.length===0?`No groups yet — make one from the projects screen.`:`Which section this project sits under on the projects screen.`},void 0,!1,{fileName:G,lineNumber:148,columnNumber:11},this)]},void 0,!0,{fileName:G,lineNumber:125,columnNumber:9},this),(0,M.jsxDEV)(`fieldset`,{className:`config-swatches`,children:[(0,M.jsxDEV)(`legend`,{className:`field__label`,children:`Colour`},void 0,!1,{fileName:G,lineNumber:156,columnNumber:11},this),ai.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`config-swatch config-swatch--${e}${i.color===e?` is-active`:``}`,"aria-label":e,"aria-pressed":i.color===e,title:e,onClick:()=>a.mutate({projectId:r,color:e})},e,!1,{fileName:G,lineNumber:158,columnNumber:13},this))]},void 0,!0,{fileName:G,lineNumber:155,columnNumber:9},this)]},void 0,!0,{fileName:G,lineNumber:85,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:!u||a.isPending,onClick:()=>a.mutate({projectId:r,displayName:c.trim()},{onSuccess:()=>t(`Project renamed`,`success`),onError:e=>t(e instanceof Error?e.message:`That did not work.`,`danger`)}),children:a.isPending?`Saving…`:`Save`},void 0,!1,{fileName:G,lineNumber:172,columnNumber:9},this)},void 0,!1,{fileName:G,lineNumber:171,columnNumber:7},this)]},void 0,!0,{fileName:G,lineNumber:40,columnNumber:5},this)}function Cl(e){return{wanted:e.options.filter(e=>e.enabled).map(e=>e.name)}}function wl(e,t,n,r){let i=new Set(e.wanted);return r?i.add(n):i.delete(n),{wanted:t.options.map(e=>e.name).filter(e=>i.has(e))}}function Tl(e,t){return e.wanted.includes(t)}function El(e,t){let n=t.options.filter(e=>e.enabled).map(e=>e.name);return{add:e.wanted.filter(e=>!n.includes(e)),remove:n.filter(t=>!e.wanted.includes(t))}}function Dl(e,t){let n=El(e,t);return n.add.length>0||n.remove.length>0}function Ol(e){if(e.wanted.length===0)return`A project needs at least one target — everything invariant writes is written for one.`}function kl(e,t){let{add:n,remove:r}=El(e,t),i=[];return n.length>0&&i.push(`invariant target add ${n.join(` `)}`),r.length>0&&i.push(`invariant target remove ${r.join(` `)}`),i}var Al=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/TargetsSection.tsx`;function jl({onDirtyChange:e}){let t=dr(),{data:n,isLoading:r}=Tn(),i=En(),a=Fn(),[o,s]=(0,A.useState)(),[c,l]=(0,A.useState)(),[u,d]=(0,A.useState)();(0,A.useEffect)(()=>{n&&s(e=>e??Cl(n))},[n]);let f=n&&o?Dl(o,n):!1;if((0,A.useEffect)(()=>e(f),[f,e]),r||!n||!o)return(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:Al,lineNumber:47,columnNumber:50},this);let p=Ol(o),m=kl(o,n),h=i.isPending||a.isPending;return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`Every activated item is stored once in the canonical store and written out for each target below. Turning one on writes its folders; turning one off leaves what is already there alone — those files may have been edited by hand.`},void 0,!1,{fileName:Al,lineNumber:73,columnNumber:7},this),(0,M.jsxDEV)(`ul`,{className:`config-choices`,children:n.options.map(e=>{let t=Tl(o,e.name),r=t!==e.enabled;return(0,M.jsxDEV)(`li`,{className:`config-choice${r?` is-staged`:``}`,children:[(0,M.jsxDEV)(`label`,{className:`config-choice__label`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:t,disabled:h,onChange:t=>s(wl(o,n,e.name,t.target.checked))},void 0,!1,{fileName:Al,lineNumber:86,columnNumber:17},this),(0,M.jsxDEV)(`span`,{className:`config-choice__name`,children:e.displayName},void 0,!1,{fileName:Al,lineNumber:94,columnNumber:17},this),(0,M.jsxDEV)(`code`,{className:`config-choice__id`,children:e.name},void 0,!1,{fileName:Al,lineNumber:95,columnNumber:17},this)]},void 0,!0,{fileName:Al,lineNumber:85,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`config-choice__paths`,title:e.generatedPaths.join(`
262
+ `),children:e.generatedPaths.join(` `)},void 0,!1,{fileName:Al,lineNumber:98,columnNumber:15},this),r?(0,M.jsxDEV)(`span`,{className:`config-choice__flag`,children:t?`will add`:`will remove`},void 0,!1,{fileName:Al,lineNumber:103,columnNumber:17},this):e.enabled&&!e.present?(0,M.jsxDEV)(`span`,{className:`chip chip--warning`,title:`Nothing has been written for this target yet.`,children:`not synced`},void 0,!1,{fileName:Al,lineNumber:105,columnNumber:17},this):null]},e.name,!0,{fileName:Al,lineNumber:84,columnNumber:13},this)})},void 0,!1,{fileName:Al,lineNumber:79,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Written to`},void 0,!1,{fileName:Al,lineNumber:116,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.manifestPath},void 0,!1,{fileName:Al,lineNumber:117,columnNumber:15},this)},void 0,!1,{fileName:Al,lineNumber:117,columnNumber:11},this)]},void 0,!0,{fileName:Al,lineNumber:115,columnNumber:9},this)},void 0,!1,{fileName:Al,lineNumber:114,columnNumber:7},this),m.length>0&&(0,M.jsxDEV)(`div`,{className:`config-plan`,children:[(0,M.jsxDEV)(`span`,{className:`config-plan__label`,children:`This will run`},void 0,!1,{fileName:Al,lineNumber:123,columnNumber:11},this),m.map(e=>(0,M.jsxDEV)(`code`,{className:`config-plan__line`,children:e},e,!1,{fileName:Al,lineNumber:125,columnNumber:13},this))]},void 0,!0,{fileName:Al,lineNumber:122,columnNumber:9},this),p&&(0,M.jsxDEV)(`p`,{className:`config-warning`,children:p},void 0,!1,{fileName:Al,lineNumber:130,columnNumber:19},this),c&&(0,M.jsxDEV)(`div`,{className:`config-failure`,children:[(0,M.jsxDEV)(`p`,{children:c.message},void 0,!1,{fileName:Al,lineNumber:134,columnNumber:11},this),c.transcript&&(0,M.jsxDEV)(Qs,{output:c.transcript},void 0,!1,{fileName:Al,lineNumber:135,columnNumber:34},this)]},void 0,!0,{fileName:Al,lineNumber:133,columnNumber:9},this),u&&(0,M.jsxDEV)(`div`,{className:`config-failure`,children:[(0,M.jsxDEV)(`p`,{children:u.message},void 0,!1,{fileName:Al,lineNumber:141,columnNumber:11},this),u.transcript&&(0,M.jsxDEV)(Qs,{output:u.transcript},void 0,!1,{fileName:Al,lineNumber:142,columnNumber:37},this)]},void 0,!0,{fileName:Al,lineNumber:140,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:h,title:`Report drift without writing anything`,onClick:()=>{d(void 0),l(void 0),a.mutate({check:!0},{onSuccess:e=>d({message:e.drift?`Out of sync — the target folders do not match the canonical store.`:`In sync. Every target folder matches the canonical store.`,transcript:e.run.output}),onError:e=>l(Ml(e))})},children:a.isPending?`Checking…`:`Check for drift`},void 0,!1,{fileName:Al,lineNumber:147,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:h,onClick:()=>{d(void 0),l(void 0),a.mutate({},{onSuccess:e=>{d({message:`Synced.`,transcript:e.run.output}),t(`Targets synced`,`success`)},onError:e=>l(Ml(e))})},children:`Sync now`},void 0,!1,{fileName:Al,lineNumber:173,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:h||!f||p!==void 0,onClick:()=>{l(void 0),d(void 0),i.mutate([...o.wanted],{onSuccess:e=>{s(Cl(e.settings));let{add:r,remove:i}=El(o,n);t([r.length>0?`added ${r.join(`, `)}`:``,i.length>0?`removed ${i.join(`, `)}`:``].filter(Boolean).join(` · `)||`Targets unchanged`,`success`)},onError:e=>l(Ml(e))})},children:i.isPending?`Applying…`:`Apply`},void 0,!1,{fileName:Al,lineNumber:195,columnNumber:9},this)]},void 0,!0,{fileName:Al,lineNumber:146,columnNumber:7},this)]},void 0,!0,{fileName:Al,lineNumber:72,columnNumber:5},this)}function Ml(e){return e instanceof bt?{message:e.message,transcript:e.transcript}:{message:e instanceof Error?e.message:`That did not work.`}}var K=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/GitLabSection.tsx`;function Nl({onDirtyChange:e}){let t=dr(),{data:n,isLoading:r}=cn(),i=ln(),a=un(),o=dn(),[s,c]=(0,A.useState)(``),[l,u]=(0,A.useState)(``),[d,f]=(0,A.useState)(``),[p,m]=(0,A.useState)();(0,A.useEffect)(()=>{n&&(c(e=>e||n.host||``),u(e=>e||n.projectPath||``))},[n]);let h=d.trim().length>0;if((0,A.useEffect)(()=>e(h),[h,e]),r||!n)return(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:K,lineNumber:48,columnNumber:38},this);let g=n.remote?.projectPath,_=l.length>0&&g!==void 0&&l!==g;return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:[`Push a triaged review to GitLab as `,(0,M.jsxDEV)(`strong`,{children:`draft`},void 0,!1,{fileName:K,lineNumber:56,columnNumber:44},this),` merge-request comments. Nothing is submitted for you — you press `,(0,M.jsxDEV)(`em`,{children:`Submit review`},void 0,!1,{fileName:K,lineNumber:57,columnNumber:39},this),` in GitLab yourself.`]},void 0,!0,{fileName:K,lineNumber:55,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`This project`},void 0,!1,{fileName:K,lineNumber:62,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.directory},void 0,!1,{fileName:K,lineNumber:63,columnNumber:15},this)},void 0,!1,{fileName:K,lineNumber:63,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:61,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Shared with the team`},void 0,!1,{fileName:K,lineNumber:66,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:[(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:K,lineNumber:68,columnNumber:13},this),` — the host and project path. The token is not.`]},void 0,!0,{fileName:K,lineNumber:67,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:65,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Origin remote`},void 0,!1,{fileName:K,lineNumber:72,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:n.remote?.url?(0,M.jsxDEV)(`code`,{children:n.remote.url},void 0,!1,{fileName:K,lineNumber:73,columnNumber:39},this):`none — this project has no origin`},void 0,!1,{fileName:K,lineNumber:73,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:71,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:60,columnNumber:7},this),n.source===`environment`&&(0,M.jsxDEV)(`p`,{className:`config-note`,children:[`Using `,(0,M.jsxDEV)(`code`,{children:`GITLAB_TOKEN`},void 0,!1,{fileName:K,lineNumber:79,columnNumber:17},this),` from the environment this daemon was started in. Saving a token here replaces it for this project.`]},void 0,!0,{fileName:K,lineNumber:78,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-form`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`GitLab host`},void 0,!1,{fileName:K,lineNumber:86,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:s,placeholder:`https://gitlab.com`,onChange:e=>c(e.target.value)},void 0,!1,{fileName:K,lineNumber:87,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:85,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Project path`,(0,M.jsxDEV)(`span`,{className:`field__badge`,children:_?`overridden`:`from origin`},void 0,!1,{fileName:K,lineNumber:98,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:96,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:l,placeholder:`group/project`,onChange:e=>u(e.target.value)},void 0,!1,{fileName:K,lineNumber:100,columnNumber:11},this),_&&(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`This is not `,(0,M.jsxDEV)(`code`,{children:g},void 0,!1,{fileName:K,lineNumber:108,columnNumber:27},this),`, which is what origin says. Every publish will say so.`]},void 0,!0,{fileName:K,lineNumber:107,columnNumber:13},this)]},void 0,!0,{fileName:K,lineNumber:95,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Personal access token`,n.tokenHint&&(0,M.jsxDEV)(`span`,{className:`field__badge`,children:[`stored ····`,n.tokenHint]},void 0,!0,{fileName:K,lineNumber:116,columnNumber:36},this)]},void 0,!0,{fileName:K,lineNumber:114,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,type:`password`,autoComplete:`off`,value:d,placeholder:n.tokenHint?`Leave empty to keep the stored token`:`glpat-…`,onChange:e=>f(e.target.value)},void 0,!1,{fileName:K,lineNumber:118,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`Needs the `,(0,M.jsxDEV)(`code`,{children:`api`},void 0,!1,{fileName:K,lineNumber:127,columnNumber:23},this),` scope — `,(0,M.jsxDEV)(`code`,{children:`read_api`},void 0,!1,{fileName:K,lineNumber:127,columnNumber:48},this),` cannot write a comment. Stored in`,` `,(0,M.jsxDEV)(`code`,{children:n.storedAt},void 0,!1,{fileName:K,lineNumber:128,columnNumber:13},this),` (0600), for this project only. It is never sent to this page and never written to the repository.`]},void 0,!0,{fileName:K,lineNumber:126,columnNumber:11},this)]},void 0,!0,{fileName:K,lineNumber:113,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:84,columnNumber:7},this),p&&(0,M.jsxDEV)(`p`,{className:`config-verdict${p.ok?` is-ok`:` is-bad`}`,children:p.ok?`Connected as @${p.username} · ${p.projectPath}`:p.message},void 0,!1,{fileName:K,lineNumber:135,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:o.isPending||!n.configured,title:n.configured?void 0:`Save a token first.`,onClick:()=>o.mutate(void 0,{onSuccess:m,onError:e=>m({publisher:`gitlab`,ok:!1,message:e instanceof Error?e.message:`That did not work.`})}),children:o.isPending?`Testing…`:`Test connection`},void 0,!1,{fileName:K,lineNumber:143,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,disabled:a.isPending||n.source!==`stored`,onClick:()=>a.mutate(void 0,{onSuccess:()=>{f(``),m(void 0),t(`Publishing settings removed`,`success`)}}),children:`Remove`},void 0,!1,{fileName:K,lineNumber:163,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:i.isPending||!n.configured&&d.trim().length===0,onClick:()=>i.mutate({host:s.trim()||void 0,projectPath:l.trim()||void 0,token:d.trim()||void 0},{onSuccess:()=>{f(``),m(void 0),t(`Publishing settings saved`,`success`)},onError:e=>t(e instanceof Error?e.message:`That did not work.`,`danger`)}),children:i.isPending?`Saving…`:`Save`},void 0,!1,{fileName:K,lineNumber:180,columnNumber:9},this)]},void 0,!0,{fileName:K,lineNumber:142,columnNumber:7},this)]},void 0,!0,{fileName:K,lineNumber:54,columnNumber:5},this)}var q=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/LinearSection.tsx`;function Pl({onDirtyChange:e}){let t=dr(),{data:n,isLoading:r}=mn(),i=hn(),a=gn(),o=_n(),[s,c]=(0,A.useState)(``),[l,u]=(0,A.useState)(``),[d,f]=(0,A.useState)(``),[p,m]=(0,A.useState)(!1),[h,g]=(0,A.useState)(!1),[_,v]=(0,A.useState)();(0,A.useEffect)(()=>{n&&(c(e=>e||n.teamKey||``),f(e=>e.length>0?e:n.issueTemplate))},[n]);let y=l.trim().length>0||p&&d!==n?.issueTemplate;if((0,A.useEffect)(()=>e(y),[y,e]),r||!n)return(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:q,lineNumber:53,columnNumber:38},this);let b=_?.workspace??n.workspace;return(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`Link a session to a Linear issue, and sync one block of it — the human-facing spec — in either direction. The session body itself is never sent: it is a conversation with an agent, and the issue is for a colleague.`},void 0,!1,{fileName:q,lineNumber:59,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Workspace`},void 0,!1,{fileName:q,lineNumber:67,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:b?(0,M.jsxDEV)(`code`,{children:b},void 0,!1,{fileName:q,lineNumber:68,columnNumber:28},this):`unknown until you test the connection`},void 0,!1,{fileName:q,lineNumber:68,columnNumber:11},this)]},void 0,!0,{fileName:q,lineNumber:66,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Shared with the team`},void 0,!1,{fileName:q,lineNumber:71,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:[(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:q,lineNumber:73,columnNumber:13},this),` — the team key and the issue template. The API key is not.`]},void 0,!0,{fileName:q,lineNumber:72,columnNumber:11},this)]},void 0,!0,{fileName:q,lineNumber:70,columnNumber:9},this)]},void 0,!0,{fileName:q,lineNumber:65,columnNumber:7},this),n.enabled&&!n.configured&&(0,M.jsxDEV)(`p`,{className:`config-note`,children:`This project expects Linear, and this machine has no key for it. Sessions here cannot link to an issue until you paste one.`},void 0,!1,{fileName:q,lineNumber:79,columnNumber:9},this),n.source===`environment`&&(0,M.jsxDEV)(`p`,{className:`config-note`,children:[`Using `,(0,M.jsxDEV)(`code`,{children:`LINEAR_API_KEY`},void 0,!1,{fileName:q,lineNumber:87,columnNumber:17},this),` from the environment this daemon was started in. Saving a key here replaces it for this project.`]},void 0,!0,{fileName:q,lineNumber:86,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-form`,children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`API key`,n.apiKeyHint&&(0,M.jsxDEV)(`span`,{className:`field__badge`,children:[`stored ····`,n.apiKeyHint]},void 0,!0,{fileName:q,lineNumber:96,columnNumber:37},this)]},void 0,!0,{fileName:q,lineNumber:94,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,type:`password`,autoComplete:`off`,value:l,placeholder:n.apiKeyHint?`Leave empty to keep the stored key`:`lin_api_…`,onChange:e=>u(e.target.value)},void 0,!1,{fileName:q,lineNumber:98,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`A personal API key from Linear → Settings → Security & access. Stored in`,` `,(0,M.jsxDEV)(`code`,{children:n.storedAt},void 0,!1,{fileName:q,lineNumber:108,columnNumber:13},this),` (0600), for this project only. It is never sent to this page and never written to the repository.`]},void 0,!0,{fileName:q,lineNumber:106,columnNumber:11},this)]},void 0,!0,{fileName:q,lineNumber:93,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Default team`,(0,M.jsxDEV)(`span`,{className:`field__badge`,children:`shared`},void 0,!1,{fileName:q,lineNumber:116,columnNumber:13},this)]},void 0,!0,{fileName:q,lineNumber:114,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,value:s,placeholder:`ENG`,onChange:e=>c(e.target.value.toUpperCase())},void 0,!1,{fileName:q,lineNumber:118,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`Narrows the issue search when you link a session. A search across a whole workspace is a list nobody can pick from.`,_?.teamKeys&&_.teamKeys.length>0&&(0,M.jsxDEV)(M.Fragment,{children:[` This key can see: `,(0,M.jsxDEV)(`code`,{children:_.teamKeys.join(`, `)},void 0,!1,{fileName:q,lineNumber:128,columnNumber:36},this),`.`]},void 0,!0,{fileName:q,lineNumber:128,columnNumber:15},this)]},void 0,!0,{fileName:q,lineNumber:124,columnNumber:11},this)]},void 0,!0,{fileName:q,lineNumber:113,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:[`Issue template`,(0,M.jsxDEV)(`span`,{className:`field__badge`,children:`shared`},void 0,!1,{fileName:q,lineNumber:136,columnNumber:13},this),n.issueTemplateIsDefault&&(0,M.jsxDEV)(`span`,{className:`field__badge`,children:`default`},void 0,!1,{fileName:q,lineNumber:137,columnNumber:49},this)]},void 0,!0,{fileName:q,lineNumber:134,columnNumber:11},this),(0,M.jsxDEV)(`textarea`,{className:`field__input field__input--area`,rows:12,spellCheck:!1,value:d,onChange:e=>{f(e.target.value),m(!0)}},void 0,!1,{fileName:q,lineNumber:139,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`The shape an agent aims its synthesis at — decisions and acceptance criteria, not implementation steps. Written into `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:q,lineNumber:151,columnNumber:48},this),`, so it arrives in a merge request like any other agreement. Empty it to go back to the default.`]},void 0,!0,{fileName:q,lineNumber:149,columnNumber:11},this)]},void 0,!0,{fileName:q,lineNumber:133,columnNumber:9},this)]},void 0,!0,{fileName:q,lineNumber:92,columnNumber:7},this),h&&(0,M.jsxDEV)(`div`,{className:`config-preview`,children:(0,M.jsxDEV)(ta,{source:d,compact:!0},void 0,!1,{fileName:q,lineNumber:159,columnNumber:11},this)},void 0,!1,{fileName:q,lineNumber:158,columnNumber:9},this),_&&(0,M.jsxDEV)(`p`,{className:`config-verdict${_.ok?` is-ok`:` is-bad`}`,children:_.ok?`Connected as ${_.username}${b?` · ${b}`:``}`:_.message},void 0,!1,{fileName:q,lineNumber:164,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>g(e=>!e),children:h?`Hide preview`:`Preview template`},void 0,!1,{fileName:q,lineNumber:172,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,disabled:o.isPending||!n.configured,title:n.configured?void 0:`Save a key first.`,onClick:()=>o.mutate(void 0,{onSuccess:v,onError:e=>v({integration:`linear`,ok:!1,message:e instanceof Error?e.message:`That did not work.`})}),children:o.isPending?`Testing…`:`Test connection`},void 0,!1,{fileName:q,lineNumber:180,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,disabled:a.isPending||n.source!==`stored`,onClick:()=>a.mutate(void 0,{onSuccess:()=>{u(``),v(void 0),t(`Linear API key removed`,`success`)}}),children:`Remove key`},void 0,!1,{fileName:q,lineNumber:200,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,disabled:i.isPending||!n.configured&&l.trim().length===0,onClick:()=>i.mutate({teamKey:s.trim()||void 0,issueTemplate:p?d:void 0,apiKey:l.trim()||void 0},{onSuccess:()=>{u(``),m(!1),v(void 0),t(`Linear settings saved`,`success`)},onError:e=>t(e instanceof Error?e.message:`That did not work.`,`danger`)}),children:i.isPending?`Saving…`:`Save`},void 0,!1,{fileName:q,lineNumber:217,columnNumber:9},this)]},void 0,!0,{fileName:q,lineNumber:171,columnNumber:7},this)]},void 0,!0,{fileName:q,lineNumber:58,columnNumber:5},this)}var Fl=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/WorkspaceSection.tsx`,Il=[{value:`plan-changes`,label:`Plan changes`,hint:`Turn the staged comments into work for an agent.`},{value:`publish`,label:`Publish`,hint:`Send the staged comments to the merge request as drafts.`}],Ll=[{value:`popular`,label:`Popular`},{value:`trending`,label:`Trending`},{value:`hot`,label:`Hot`}];function Rl({onDirtyChange:e}){let t=dr(),{data:n}=Bt(),r=n?.directory,[i,a]=(0,A.useState)(()=>hl(r));return(0,A.useEffect)(()=>a(hl(r)),[r]),(0,A.useEffect)(()=>e(!1),[e]),(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`Held in this browser's local storage, per project where it makes sense to be. Nothing here reaches the daemon, the repository, or anyone else — and a different browser, or a private window, starts from the defaults.`},void 0,!1,{fileName:Fl,lineNumber:61,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config-form`,children:[(0,M.jsxDEV)(`fieldset`,{className:`config-choice-group`,children:[(0,M.jsxDEV)(`legend`,{className:`field__label`,children:`Review footer offers first`},void 0,!1,{fileName:Fl,lineNumber:69,columnNumber:11},this),Il.map(e=>(0,M.jsxDEV)(`label`,{className:`config-radio`,children:[(0,M.jsxDEV)(`input`,{type:`radio`,name:`review-cta`,checked:i.reviewCta===e.value,onChange:()=>{Ea(e.value,r),a(hl(r))}},void 0,!1,{fileName:Fl,lineNumber:72,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`config-radio__label`,children:e.label},void 0,!1,{fileName:Fl,lineNumber:81,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`config-radio__hint`,children:e.hint},void 0,!1,{fileName:Fl,lineNumber:82,columnNumber:15},this)]},e.value,!0,{fileName:Fl,lineNumber:71,columnNumber:13},this))]},void 0,!0,{fileName:Fl,lineNumber:68,columnNumber:9},this),(0,M.jsxDEV)(`fieldset`,{className:`config-choice-group`,children:[(0,M.jsxDEV)(`legend`,{className:`field__label`,children:`Skills catalogue opens on`},void 0,!1,{fileName:Fl,lineNumber:88,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`segmented`,children:Ll.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`segmented__item${i.skillsView===e.value?` is-active`:``}`,"aria-pressed":i.skillsView===e.value,onClick:()=>{ml(e.value),a(hl(r))},children:e.label},e.value,!1,{fileName:Fl,lineNumber:91,columnNumber:15},this))},void 0,!1,{fileName:Fl,lineNumber:89,columnNumber:11},this)]},void 0,!0,{fileName:Fl,lineNumber:87,columnNumber:9},this)]},void 0,!0,{fileName:Fl,lineNumber:67,columnNumber:7},this),(0,M.jsxDEV)(zl,{onChange:()=>a(hl(r))},void 0,!1,{fileName:Fl,lineNumber:108,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Unsent session draft`},void 0,!1,{fileName:Fl,lineNumber:112,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:i.hasSessionDraft?`One is waiting — the New session dialog will open with it.`:`None.`},void 0,!1,{fileName:Fl,lineNumber:113,columnNumber:11},this)]},void 0,!0,{fileName:Fl,lineNumber:111,columnNumber:9},this)},void 0,!1,{fileName:Fl,lineNumber:110,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>{let e=yl(r);a(hl(r)),t(e.length===0?`Nothing was remembered for this project.`:`Forgot ${e.length} remembered value${e.length===1?``:`s`}`,`success`)},children:`Forget what this browser remembers`},void 0,!1,{fileName:Fl,lineNumber:122,columnNumber:9},this)},void 0,!1,{fileName:Fl,lineNumber:121,columnNumber:7},this)]},void 0,!0,{fileName:Fl,lineNumber:60,columnNumber:5},this)}function zl({onChange:e}){let{watched:t,autoOpen:n,open:r,setAutoOpen:i,forgetWatched:a}=Jo(),o=No();return o.length===0?null:(0,M.jsxDEV)(`div`,{className:`config-form`,children:(0,M.jsxDEV)(`fieldset`,{className:`config-choice-group`,children:[(0,M.jsxDEV)(`legend`,{className:`field__label`,children:`Intro videos`},void 0,!1,{fileName:Fl,lineNumber:160,columnNumber:9},this),(0,M.jsxDEV)(`label`,{className:`config-radio`,children:[(0,M.jsxDEV)(`input`,{type:`checkbox`,checked:n,onChange:t=>{i(t.target.checked),e()}},void 0,!1,{fileName:Fl,lineNumber:163,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`config-radio__label`,children:`Play the Projects intro on a first visit`},void 0,!1,{fileName:Fl,lineNumber:171,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`config-radio__hint`,children:`Only that one, only once. Every other intro waits behind its own “Watch intro” button.`},void 0,!1,{fileName:Fl,lineNumber:172,columnNumber:11},this)]},void 0,!0,{fileName:Fl,lineNumber:162,columnNumber:9},this),(0,M.jsxDEV)(`ul`,{className:`intro-list`,children:o.map(n=>(0,M.jsxDEV)(`li`,{className:`intro-list__row`,children:[(0,M.jsxDEV)(`span`,{className:`intro-list__title`,children:n.title},void 0,!1,{fileName:Fl,lineNumber:180,columnNumber:15},this),(0,M.jsxDEV)(`span`,{className:`intro-list__state`,children:Uo(t,n)?`Not watched`:`Watched`},void 0,!1,{fileName:Fl,lineNumber:181,columnNumber:15},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>{r(n.key),e()},children:`Play`},void 0,!1,{fileName:Fl,lineNumber:184,columnNumber:15},this)]},n.key,!0,{fileName:Fl,lineNumber:179,columnNumber:13},this))},void 0,!1,{fileName:Fl,lineNumber:177,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config-actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>{a(),e()},children:`Mark every intro unwatched`},void 0,!1,{fileName:Fl,lineNumber:199,columnNumber:11},this)},void 0,!1,{fileName:Fl,lineNumber:198,columnNumber:9},this)]},void 0,!0,{fileName:Fl,lineNumber:159,columnNumber:7},this)},void 0,!1,{fileName:Fl,lineNumber:158,columnNumber:5},this)}var Bl=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/sections/ServerSection.tsx`;function Vl({onDirtyChange:e}){let t=dr(),{data:n}=Hn(),{data:r}=cn(),[i,a]=(0,A.useState)(!1);return(0,A.useEffect)(()=>e(!1),[e]),n?(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`p`,{className:`config-lede`,children:`One daemon serves every project you have registered. It holds no credentials of its own — each project's are read from that project's directory when a publish asks for them.`},void 0,!1,{fileName:Bl,lineNumber:28,columnNumber:7},this),(0,M.jsxDEV)(`dl`,{className:`config-facts`,children:[(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Listening on`},void 0,!1,{fileName:Bl,lineNumber:35,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:[`http://127.0.0.1:`,n.port]},void 0,!0,{fileName:Bl,lineNumber:36,columnNumber:15},this)},void 0,!1,{fileName:Bl,lineNumber:36,columnNumber:11},this)]},void 0,!0,{fileName:Bl,lineNumber:34,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Process`},void 0,!1,{fileName:Bl,lineNumber:39,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:[`pid `,n.pid,` · started `,rr(Hl(n.uptimeSeconds))]},void 0,!0,{fileName:Bl,lineNumber:40,columnNumber:11},this)]},void 0,!0,{fileName:Bl,lineNumber:38,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Version`},void 0,!1,{fileName:Bl,lineNumber:43,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.version},void 0,!1,{fileName:Bl,lineNumber:44,columnNumber:15},this)},void 0,!1,{fileName:Bl,lineNumber:44,columnNumber:11},this)]},void 0,!0,{fileName:Bl,lineNumber:42,columnNumber:9},this),(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`Project registry`},void 0,!1,{fileName:Bl,lineNumber:47,columnNumber:11},this),(0,M.jsxDEV)(`dd`,{children:(0,M.jsxDEV)(`code`,{children:n.registryPath},void 0,!1,{fileName:Bl,lineNumber:48,columnNumber:15},this)},void 0,!1,{fileName:Bl,lineNumber:48,columnNumber:11},this)]},void 0,!0,{fileName:Bl,lineNumber:46,columnNumber:9},this),r&&(0,M.jsxDEV)(`div`,{children:[(0,M.jsxDEV)(`dt`,{children:`This project's token file`},void 0,!1,{fileName:Bl,lineNumber:52,columnNumber:13},this),(0,M.jsxDEV)(`dd`,{children:[(0,M.jsxDEV)(`code`,{children:r.storedAt},void 0,!1,{fileName:Bl,lineNumber:54,columnNumber:15},this),r.configured?r.gitignored?` — git-ignored`:` — not git-ignored`:` — nothing stored`]},void 0,!0,{fileName:Bl,lineNumber:53,columnNumber:13},this)]},void 0,!0,{fileName:Bl,lineNumber:51,columnNumber:11},this)]},void 0,!0,{fileName:Bl,lineNumber:33,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config-actions config-actions--danger`,children:i?(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`config-confirm`,children:`Stop the server for every project? This page will stop responding.`},void 0,!1,{fileName:Bl,lineNumber:68,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>a(!1),children:`Cancel`},void 0,!1,{fileName:Bl,lineNumber:71,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,onClick:async()=>{a(!1),await wt.shutdown().catch(()=>void 0),t(`UI stopping…`,`info`)},children:`Stop it`},void 0,!1,{fileName:Bl,lineNumber:74,columnNumber:13},this)]},void 0,!0,{fileName:Bl,lineNumber:67,columnNumber:11},this):(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--danger`,onClick:()=>a(!0),children:`Stop this UI server`},void 0,!1,{fileName:Bl,lineNumber:87,columnNumber:11},this)},void 0,!1,{fileName:Bl,lineNumber:65,columnNumber:7},this)]},void 0,!0,{fileName:Bl,lineNumber:27,columnNumber:5},this):(0,M.jsxDEV)(`p`,{className:`page-state`,children:`Loading…`},void 0,!1,{fileName:Bl,lineNumber:24,columnNumber:25},this)}function Hl(e){return new Date(Date.now()-e*1e3).toISOString()}var Ul=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/registry.tsx`,Wl=[{id:`project`,title:`Project`,scope:`project`,keywords:`directory path name colour color rename identity sessions packages branch`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M3 5.5A1.5 1.5 0 0 1 4.5 4h3l1.5 2h6.5A1.5 1.5 0 0 1 17 7.5v7A1.5 1.5 0 0 1 15.5 16h-11A1.5 1.5 0 0 1 3 14.5z`},void 0,!1,{fileName:Ul,lineNumber:49,columnNumber:9},void 0)},void 0,!1,{fileName:Ul,lineNumber:48,columnNumber:7},void 0),useSummary:()=>il(Bt().data),Body:Sl},{id:`targets`,title:`Agent targets`,scope:`project`,keywords:`claude cursor codex aider copilot sync materialize drift agents folder`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`circle`,{cx:`10`,cy:`10`,r:`6.5`},void 0,!1,{fileName:Ul,lineNumber:62,columnNumber:9},void 0),(0,M.jsxDEV)(`circle`,{cx:`10`,cy:`10`,r:`2.5`},void 0,!1,{fileName:Ul,lineNumber:63,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M10 1.5v2M10 16.5v2M1.5 10h2M16.5 10h2`},void 0,!1,{fileName:Ul,lineNumber:64,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:61,columnNumber:7},void 0),useSummary:()=>al(Tn().data),Body:jl},{id:`gitlab`,title:`GitLab`,scope:`project`,keywords:`gitlab token credentials merge request review publish api scope integration publishing`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`path`,{d:`M10 13.5V3.5M6.5 7 10 3.5 13.5 7`},void 0,!1,{fileName:Ul,lineNumber:78,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M3.5 12.5v3a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1v-3`},void 0,!1,{fileName:Ul,lineNumber:79,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:77,columnNumber:7},void 0),useSummary:()=>ol(cn().data),Body:Nl},{id:`linear`,title:`Linear`,scope:`project`,keywords:`linear issue ticket spec sync template api key team workspace integration`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`3.5`,y:`3.5`,width:`13`,height:`13`,rx:`3`},void 0,!1,{fileName:Ul,lineNumber:92,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M6.5 12.5 12.5 6.5`},void 0,!1,{fileName:Ul,lineNumber:93,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:91,columnNumber:7},void 0),useSummary:()=>sl(mn().data),Body:Pl},{id:`appearance`,title:`Appearance`,scope:`machine`,keywords:`theme dark light appearance colour color contrast indigo graphite paper palette`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`circle`,{cx:`10`,cy:`10`,r:`6.5`},void 0,!1,{fileName:Ul,lineNumber:106,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M10 3.5a6.5 6.5 0 0 0 0 13z`},void 0,!1,{fileName:Ul,lineNumber:107,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:105,columnNumber:7},void 0),useSummary:()=>ul(Bn().data),Body:xl},{id:`server`,title:`Server & data`,scope:`machine`,keywords:`daemon port pid version registry stop shutdown quit instance`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`3`,y:`4`,width:`14`,height:`5`,rx:`1.5`},void 0,!1,{fileName:Ul,lineNumber:120,columnNumber:9},void 0),(0,M.jsxDEV)(`rect`,{x:`3`,y:`11`,width:`14`,height:`5`,rx:`1.5`},void 0,!1,{fileName:Ul,lineNumber:121,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M6 6.5h.01M6 13.5h.01`},void 0,!1,{fileName:Ul,lineNumber:122,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:119,columnNumber:7},void 0),useSummary:()=>ll(Hn().data),Body:Vl},{id:`workspace`,title:`This browser`,scope:`browser`,keywords:`preferences local storage draft review footer skills catalogue reset forget`,icon:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 20 20`,"aria-hidden":`true`,children:[(0,M.jsxDEV)(`rect`,{x:`2.5`,y:`4`,width:`15`,height:`10`,rx:`1.5`},void 0,!1,{fileName:Ul,lineNumber:135,columnNumber:9},void 0),(0,M.jsxDEV)(`path`,{d:`M7 16.5h6M10 14v2.5`},void 0,!1,{fileName:Ul,lineNumber:136,columnNumber:9},void 0)]},void 0,!0,{fileName:Ul,lineNumber:134,columnNumber:7},void 0),useSummary:()=>cl(hl(jt().card?.directory)),Body:Rl}],Gl=Wl.map(e=>e.id),Kl={publishing:`gitlab`};function ql(e){if(e!==void 0)return Kl[e]??e}function Jl(e,t){let n=t.trim();if(n.length===0)return{sections:e.map(e=>e.section)};let r=e.filter(e=>Yl(e,n)).map(e=>e.section);return{sections:r,autoExpandId:r.length===1?r[0].id:void 0}}function Yl(e,t){return Xl(e).toLowerCase().includes(t.toLowerCase())?!0:or(e.section.title,t)!==null}function Xl({section:e,summary:t}){return[e.title,e.keywords,Rc[e.scope],t.headline,t.searchText??``].join(` `)}var Zl=`invariant.ui.settingsOpen`,Ql=new Set;function $l(e,t){let n=new Set(t);return new Set([...e].filter(e=>n.has(e)))}function eu(e,t){let n=new Set(e);return n.has(t)?n.delete(t):n.add(t),n}function tu(e,t){return e.has(t)?new Set(e):new Set([...e,t])}function nu(e){try{let t=window.localStorage.getItem(Zl);if(!t)return new Set;let n=JSON.parse(t);return Array.isArray(n)?$l(n.filter(e=>typeof e==`string`),e):new Set}catch{return new Set}}function ru(e){try{window.localStorage.setItem(Zl,JSON.stringify([...e]))}catch{}}var iu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/settings/ConfigurationPage.tsx`;function au({section:e,onSectionChange:t}){let n=dr(),{data:r}=Bt(),[i,a]=(0,A.useState)(Ql),[o,s]=(0,A.useState)(Ql),[c,l]=(0,A.useState)(``),[u,d]=(0,A.useState)(),[f,p]=(0,A.useState)(),m=(0,A.useRef)(null);(0,A.useEffect)(()=>a(nu(Gl)),[]);let h=(0,A.useCallback)(e=>{a(e),ru(e)},[]),g={};for(let e of Wl)g[e.id]=e.useSummary();let{sections:_,autoExpandId:v}=(0,A.useMemo)(()=>Jl(Wl.map(e=>({section:e,summary:g[e.id]})),c),[c,...Wl.map(e=>g[e.id].headline)]);(0,A.useEffect)(()=>{v&&h(tu(i,v))},[v]),(0,A.useEffect)(()=>{let t=ql(e);if(!t||!Gl.includes(t))return;a(e=>{let n=tu(e,t);return ru(n),n}),d(t),p(t);let n=window.setTimeout(()=>p(void 0),1200);return()=>window.clearTimeout(n)},[e]);let y=(0,A.useCallback)(e=>{let n=eu(i,e);h(n),t(n.has(e)?e:void 0)},[i,h,t]),b=(0,A.useCallback)((e,t)=>{s(n=>{if(n.has(e)===t)return n;let r=new Set(n);return t?r.add(e):r.delete(e),r})},[]),x=Wl.filter(e=>o.has(e.id)),ee=Wl.filter(e=>g[e.id].state===`attention`);(0,A.useEffect)(()=>{if(x.length===0)return;let e=e=>e.preventDefault();return window.addEventListener(`beforeunload`,e),()=>window.removeEventListener(`beforeunload`,e)},[x.length]);let te=(0,A.useCallback)(e=>{a(t=>{let n=tu(t,e);return ru(n),n}),d(e),p(e),window.setTimeout(()=>p(void 0),1200),t(e)},[t]);return su({ids:_.map(e=>e.id),focusedId:u,onFocus:d,onToggle:y,onOpen:e=>h(tu(i,e)),onClose:e=>i.has(e)&&y(e),onFilter:()=>document.querySelector(`.config-filter__input`)?.focus()}),(0,M.jsxDEV)(`div`,{className:`config`,children:[(0,M.jsxDEV)(`header`,{className:`topbar config__topbar`,children:[(0,M.jsxDEV)(`div`,{className:`topbar__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`topbar__title`,children:`Configuration`},void 0,!1,{fileName:iu,lineNumber:158,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`topbar__path`,title:r?`${r.directory} — click to copy`:void 0,onClick:async()=>{r&&n(await sr(r.directory)?`Path copied`:`Could not copy`,`success`)},children:r?cr(r.directory):``},void 0,!1,{fileName:iu,lineNumber:159,columnNumber:11},this)]},void 0,!0,{fileName:iu,lineNumber:157,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`topbar__controls`,children:[ee.length>0&&(0,M.jsxDEV)(`button`,{type:`button`,className:`config-attention`,onClick:()=>te(ee[0].id),title:ee.map(e=>e.title).join(`, `),children:[(0,M.jsxDEV)(`span`,{className:`config-state__dot config-state__dot--attention`,"aria-hidden":`true`},void 0,!1,{fileName:iu,lineNumber:180,columnNumber:15},this),ee.length,` need`,ee.length===1?`s`:``,` attention`]},void 0,!0,{fileName:iu,lineNumber:174,columnNumber:13},this),(0,M.jsxDEV)(`div`,{className:`filter filter--compact config-filter`,children:(0,M.jsxDEV)(`input`,{className:`filter__input config-filter__input`,value:c,placeholder:`Filter options… /`,"aria-label":`Filter options`,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(l(``),e.currentTarget.blur())}},void 0,!1,{fileName:iu,lineNumber:186,columnNumber:13},this)},void 0,!1,{fileName:iu,lineNumber:185,columnNumber:11},this)]},void 0,!0,{fileName:iu,lineNumber:172,columnNumber:9},this)]},void 0,!0,{fileName:iu,lineNumber:156,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`config__body`,children:[(0,M.jsxDEV)(Gc,{sections:_,summaries:g,dirty:o,activeId:u,onSelect:te},void 0,!1,{fileName:iu,lineNumber:204,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`config__list`,ref:m,children:_.length===0?(0,M.jsxDEV)(`p`,{className:`page-state`,children:[`Nothing matches “`,c,`”.`]},void 0,!0,{fileName:iu,lineNumber:214,columnNumber:13},this):_.map(e=>(0,M.jsxDEV)(Uc,{section:e,summary:g[e.id],open:i.has(e.id),dirty:o.has(e.id),focused:u===e.id,linked:f===e.id,onToggle:()=>y(e.id),onFocus:()=>d(e.id),children:i.has(e.id)||o.has(e.id)?(0,M.jsxDEV)(e.Body,{onDirtyChange:t=>b(e.id,t)},void 0,!1,{fileName:iu,lineNumber:231,columnNumber:19},this):null},e.id,!1,{fileName:iu,lineNumber:217,columnNumber:15},this))},void 0,!1,{fileName:iu,lineNumber:212,columnNumber:9},this)]},void 0,!0,{fileName:iu,lineNumber:203,columnNumber:7},this),x.length>0&&(0,M.jsxDEV)(`footer`,{className:`config-unsaved`,children:[(0,M.jsxDEV)(`span`,{className:`config-unsaved__text`,children:[`Unsaved changes in `,x.map(e=>e.title).join(`, `)]},void 0,!0,{fileName:iu,lineNumber:241,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>te(x[0].id),children:`Review`},void 0,!1,{fileName:iu,lineNumber:244,columnNumber:11},this)]},void 0,!0,{fileName:iu,lineNumber:240,columnNumber:9},this)]},void 0,!0,{fileName:iu,lineNumber:155,columnNumber:5},this)}function ou(e){let t=e;return t?t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable:!1}function su(e){let t=(0,A.useRef)(e);(0,A.useEffect)(()=>{t.current=e}),(0,A.useEffect)(()=>{let e=e=>{let{ids:n,focusedId:r,onFocus:i,onToggle:a,onOpen:o,onClose:s,onFilter:c}=t.current;if(e.key===`/`&&!ou(e.target)){e.preventDefault(),c();return}if(ou(e.target)||e.metaKey||e.ctrlKey||n.length===0)return;let l=r?n.indexOf(r):-1,u=t=>{e.preventDefault();let r=l===-1?0:Math.min(Math.max(l+t,0),n.length-1);i(n[r])};switch(e.key){case`j`:case`ArrowDown`:u(1);return;case`k`:case`ArrowUp`:u(-1);return;case`ArrowRight`:r&&o(r);return;case`ArrowLeft`:r&&s(r);return;case`Enter`:case` `:r&&(e.preventDefault(),a(r));return}};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[])}var cu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/palette/CommandPalette.tsx`,lu=40,uu={root:`Search sessions and commands…`,projects:`Switch to a project…`,groups:`Move to a group…`},du={root:``,projects:`Project`,groups:`Group`};function fu({actions:e,initialScope:t=`root`,onClose:n}){let[r,i]=(0,A.useState)(t),[a,o]=(0,A.useState)(``),[s,c]=(0,A.useState)(0),l=(0,A.useRef)(null),u=(0,A.useMemo)(()=>e.filter(e=>(e.scopedTo??`root`)===r),[e,r]),d=(0,A.useMemo)(()=>a.trim().length===0?u.slice(0,lu):u.map(e=>({action:e,score:or(`${e.title} ${e.group} ${e.keywords??``}`,a.trim())})).filter(e=>e.score!==null).sort((e,t)=>t.score-e.score).slice(0,lu).map(e=>e.action),[u,a]);(0,A.useEffect)(()=>{c(0)},[a,r]),(0,A.useEffect)(()=>{let e=l.current?.querySelector(`[data-active="true"]`);e instanceof HTMLElement&&e.scrollIntoView?.({block:`nearest`})},[s,d]);let f=e=>{if(e.scope){i(e.scope),o(``);return}n(),e.run()},p=e=>{if(e.key===`ArrowDown`||e.key===`n`&&e.ctrlKey){e.preventDefault(),c(e=>(e+1)%Math.max(d.length,1));return}if(e.key===`ArrowUp`||e.key===`p`&&e.ctrlKey){e.preventDefault(),c(e=>(e-1+Math.max(d.length,1))%Math.max(d.length,1));return}if(e.key===`Enter`){e.preventDefault();let t=d[s];t&&f(t);return}if(e.key===`Backspace`&&a.length===0&&r!==`root`){e.preventDefault(),i(`root`);return}if(e.key===`Escape`){if(e.preventDefault(),r!==`root`){i(`root`);return}n()}},m=``;return(0,M.jsxDEV)(`div`,{className:`overlay overlay--top`,onMouseDown:e=>{e.target===e.currentTarget&&n()},children:(0,M.jsxDEV)(`div`,{className:`palette`,role:`dialog`,"aria-modal":`true`,"aria-label":`Command palette`,children:[(0,M.jsxDEV)(`div`,{className:`palette__field`,children:[r!==`root`&&(0,M.jsxDEV)(`span`,{className:`palette__scope`,children:du[r]},void 0,!1,{fileName:cu,lineNumber:138,columnNumber:32},this),(0,M.jsxDEV)(`input`,{className:`palette__input`,autoFocus:!0,value:a,placeholder:uu[r],onChange:e=>o(e.target.value),onKeyDown:p,"aria-label":uu[r]},void 0,!1,{fileName:cu,lineNumber:139,columnNumber:11},this)]},void 0,!0,{fileName:cu,lineNumber:137,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`palette__list`,ref:l,role:`listbox`,children:[d.length===0&&(0,M.jsxDEV)(`p`,{className:`palette__empty`,children:`No matches`},void 0,!1,{fileName:cu,lineNumber:151,columnNumber:36},this),d.map((e,t)=>{let n=e.group===m?void 0:e.group;return m=e.group,(0,M.jsxDEV)(`div`,{children:[n&&(0,M.jsxDEV)(`div`,{className:`palette__group`,children:n},void 0,!1,{fileName:cu,lineNumber:159,columnNumber:28},this),(0,M.jsxDEV)(`button`,{type:`button`,role:`option`,"aria-selected":t===s,"data-active":t===s,className:`palette__item${t===s?` is-active`:``}`,onMouseMove:()=>c(t),onClick:()=>f(e),children:[e.status&&(0,M.jsxDEV)(Wr,{status:e.status},void 0,!1,{fileName:cu,lineNumber:169,columnNumber:37},this),(0,M.jsxDEV)(`span`,{className:`palette__title`,children:e.title},void 0,!1,{fileName:cu,lineNumber:170,columnNumber:19},this),e.hint&&(0,M.jsxDEV)(`span`,{className:`palette__hint`,children:e.hint},void 0,!1,{fileName:cu,lineNumber:171,columnNumber:35},this),e.shortcut&&(0,M.jsxDEV)(`kbd`,{className:`palette__shortcut`,children:e.shortcut},void 0,!1,{fileName:cu,lineNumber:172,columnNumber:39},this)]},void 0,!0,{fileName:cu,lineNumber:160,columnNumber:17},this)]},e.id,!0,{fileName:cu,lineNumber:158,columnNumber:15},this)})]},void 0,!0,{fileName:cu,lineNumber:150,columnNumber:9},this),(0,M.jsxDEV)(`footer`,{className:`palette__foot`,children:[(0,M.jsxDEV)(`kbd`,{children:`↑`},void 0,!1,{fileName:cu,lineNumber:180,columnNumber:11},this),(0,M.jsxDEV)(`kbd`,{children:`↓`},void 0,!1,{fileName:cu,lineNumber:180,columnNumber:23},this),` navigate `,(0,M.jsxDEV)(`kbd`,{children:`↵`},void 0,!1,{fileName:cu,lineNumber:180,columnNumber:45},this),` run`,` `,r===`root`?(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`kbd`,{children:`esc`},void 0,!1,{fileName:cu,lineNumber:181,columnNumber:33},this),` close`]},void 0,!0,{fileName:cu,lineNumber:181,columnNumber:31},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`kbd`,{children:`⌫`},void 0,!1,{fileName:cu,lineNumber:181,columnNumber:61},this),` back`]},void 0,!0,{fileName:cu,lineNumber:181,columnNumber:59},this)]},void 0,!0,{fileName:cu,lineNumber:179,columnNumber:9},this)]},void 0,!0,{fileName:cu,lineNumber:136,columnNumber:7},this)},void 0,!1,{fileName:cu,lineNumber:135,columnNumber:5},this)}var pu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/palette/ShortcutSheet.tsx`,mu=[{title:`Projects`,rows:[[`⌘P`,`Switch project`],[`⇧⌘H`,`All projects`],[`⌫`,`Leave the project list, back to the full palette`]]},{title:`Global`,rows:[[`⌘K`,`Command palette`],[`N`,`New session`],[`/`,`Focus the filter`],[`⇧⌘R`,`Copy the execute line of the session in front of you`],[`?`,`This sheet`]]},{title:`Loops`,rows:[[`⌘K → loops`,`Open the loop list`],[`Tab / ↵`,`Focus a graph node and open its session`],[`⌘S`,`Save loop file edits`]]},{title:`Dashboard`,rows:[[`J / K`,`Move between sessions`],[`← / →`,`Collapse / expand a session's reviews`],[`↵`,`Open the focused session`],[`1 – 5`,`Set status: Review is machine-set, so it is not one of the five`]]},{title:`Selection`,rows:[[`X`,`Tick the focused row`],[`⇧X`,`Tick it and everything back to the last one you ticked`],[`⌘A`,`Tick every row on screen`],[`1 – 5`,`Send the whole selection to that status`],[`⌘⌫`,`Archive the selection`],[`Esc`,`Let the selection go`]]},{title:`Review triage`,rows:[[`J / K`,`Move between comments`],[`↵`,`Expand the focused comment`],[`S`,`Stage it`],[`D`,`Discard it`],[`E`,`Edit its wording`],[`⇧S`,`Stage everything matching the filter`]]},{title:`Session`,rows:[[`⇧⌘V`,`Toggle preview / edit`],[`S`,`Split view`],[`⌘S`,`Save now`],[`Esc`,`Back to the dashboard`]]},{title:`Intro videos`,rows:[[`⌘K → intro`,`Watch the intro for the page you are on`],[`Esc`,`Minimise the video — it keeps playing beside the app`]]}];function hu({onClose:e}){return(0,M.jsxDEV)(wr,{title:`Keyboard shortcuts`,onClose:e,width:520,children:(0,M.jsxDEV)(`div`,{className:`shortcuts`,children:mu.map(e=>(0,M.jsxDEV)(`section`,{className:`shortcuts__group`,children:[(0,M.jsxDEV)(`h3`,{className:`shortcuts__title`,children:e.title},void 0,!1,{fileName:pu,lineNumber:81,columnNumber:13},this),e.rows.map(([e,t])=>(0,M.jsxDEV)(`div`,{className:`shortcuts__row`,children:[(0,M.jsxDEV)(`kbd`,{children:e},void 0,!1,{fileName:pu,lineNumber:84,columnNumber:17},this),(0,M.jsxDEV)(`span`,{children:t},void 0,!1,{fileName:pu,lineNumber:85,columnNumber:17},this)]},e,!0,{fileName:pu,lineNumber:83,columnNumber:15},this))]},e.title,!0,{fileName:pu,lineNumber:80,columnNumber:11},this))},void 0,!1,{fileName:pu,lineNumber:78,columnNumber:7},this)},void 0,!1,{fileName:pu,lineNumber:77,columnNumber:5},this)}var gu=`Ungrouped`;function _u({projects:e,groups:t,currentProjectId:n,onSwitch:r}){let i=[...t].sort((e,t)=>e.order-t.order),a=new Map(i.map(e=>[e.id,e.name])),o=i.map(t=>({label:t.name,cards:e.filter(e=>e.groupId===t.id)}));return o.push({label:t.length===0?`Switch project`:gu,cards:e.filter(e=>!e.groupId||!a.has(e.groupId))}),o.flatMap(e=>e.cards.map(t=>({id:`switch-to-${t.id}`,group:e.label,scopedTo:`projects`,title:t.name,hint:vu(t,n),keywords:[t.directory,t.manifestName??``,t.groupId?a.get(t.groupId)??``:``,`project switch`].join(` `),run:()=>r(t.id)})))}function vu(e,t){if(e.id===t)return`current`;let n=e.attention?.awaitingDecision??0,r=e.attention?.openReviewComments??0,i=[n>0?`${n} awaiting you`:``,r>0?`${r} comments`:``].filter(e=>e.length>0);return i.length>0?i.join(` · `):cr(e.directory)}function yu({groups:e,card:t,onPick:n,onCreate:r}){let i=[...e].sort((e,t)=>e.order-t.order).map(e=>({id:`move-to-${e.id}`,group:`Move to group`,scopedTo:`groups`,title:e.name,hint:t?.groupId===e.id?`current`:void 0,keywords:`group move file`,run:()=>n(e)}));return t?.groupId&&i.push({id:`move-to-none`,group:`Move to group`,scopedTo:`groups`,title:gu,hint:`take it out of its group`,keywords:`ungroup none remove`,run:()=>n(null)}),i.push({id:`move-to-new`,group:`Move to group`,scopedTo:`groups`,title:`New group…`,hint:`create one and move it there`,keywords:`new group create`,run:r}),i}var bu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/ProjectApp.tsx`;function xu({projectId:e,route:t,navigate:n,projects:r,groups:i,card:a,onOpenHub:o,onSwitchProject:s}){let c=dr(),l=Rn(),{data:u}=Bt(),{data:d,isLoading:f}=Vt(),p=Ut(),m=Kt(),h=Xt(),g=rn(),{data:_}=Qt(),{data:v}=Zt(),[y,b]=(0,A.useState)(Di),[x,ee]=(0,A.useState)(`preview`),[te,S]=(0,A.useState)(``),[ne,re]=(0,A.useState)(),[ie,C]=(0,A.useState)(),[w,T]=(0,A.useState)(!1),[E,ae]=(0,A.useState)(!1),[D,oe]=(0,A.useState)(!1),[se,ce]=(0,A.useState)(!1),[le,ue]=(0,A.useState)(!1),de=(0,A.useCallback)(()=>T(!1),[]),fe=(0,A.useCallback)(()=>ae(!1),[]),pe=(0,A.useCallback)(()=>C(void 0),[]),me=(0,A.useCallback)(()=>ue(!1),[]),[he,ge]=(0,A.useState)(),[_e,ve]=(0,A.useState)(!1),ye=Pt(),be=(0,A.useMemo)(()=>d?.sessions??[],[d]),xe=(0,A.useMemo)(()=>{let e=te.trim();return e.length===0?be:be.map(t=>({session:t,score:or(`${t.title} ${t.excerpt} ${t.tags.join(` `)} ${t.harness??``} ${t.loop?`loop `+t.loop.id+` `+t.loop.node:``}`,e)})).filter(e=>e.score!==null).sort((e,t)=>t.score-e.score).map(e=>e.session)},[be,te]),Se=(0,A.useMemo)(()=>ki(Oi(be,te.trim().length>0?new Set(xe.map(e=>e.id)):void 0,_?.reviews??[],y)),[be,xe,te,_,y]),O=ds((0,A.useMemo)(()=>Se.map(e=>e.id),[Se]),(0,A.useMemo)(()=>be.map(e=>e.id),[be])),Ce=(0,A.useMemo)(()=>be.filter(e=>O.isSelected(e.id)),[be,O]),we=O.clear;(0,A.useEffect)(()=>{t.name!==`sessions`&&we()},[t.name,we]);let Te=(0,A.useCallback)(e=>{b(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),Ee=(0,A.useCallback)(e=>{let t=be.find(t=>t.id===e);if(!(!t||!u))return`execute instructions from ${u.sessionsDirectory}/${t.file}`},[be,u]),k=(0,A.useCallback)(()=>{let e=t.name===`session`?t.sessionId:ne,n=e?Ee(e):void 0;if(!n){c(`No session in focus — open one, or pick one from the list.`,`info`);return}sr(n).then(e=>c(e?`Execute line copied`:`Could not copy`,e?`success`:`danger`))},[t,ne,Ee,c]),De=(0,A.useCallback)(()=>{let e=t.name===`session`?t.sessionId:ne,n=e?be.find(t=>t.id===e):void 0;if(!n||!u){c(`No session in focus — open one, or pick one from the list.`,`info`);return}if(!n.issue){c(`That session is not linked to an issue.`,`info`);return}sr(`synthesise the plan of ${u.sessionsDirectory}/${n.file} into its <issue-spec> block, following the project issue template`).then(e=>c(e?`Synthesis line copied`:`Could not copy`,e?`success`:`danger`))},[t,ne,be,u,c]),Oe=(0,A.useCallback)(t=>{re(t),n({name:`session`,projectId:e,sessionId:t})},[n]),ke=(0,A.useCallback)(t=>n({name:`review`,projectId:e,slug:t}),[n]),Ae=(0,A.useCallback)(e=>{g.mutate(e,{onSuccess:async e=>{ae(!1),await sr(e.executeLine),c(e.guidance,`success`),Oe(e.session.id)},onError:e=>c(e instanceof Error?e.message:`Could not create the review.`,`danger`)})},[g,Oe,c]),je=(0,A.useCallback)(e=>Ae({sessionId:e}),[Ae]),Me=(0,A.useCallback)((e,t)=>{p.mutate({sessionId:e,status:t},{onError:()=>c(`Could not change the status.`,`danger`),onSuccess:e=>{e.status===`executed`&&e.kind!==`review`&&(e.reviewSessionIds.length>0||v&&!v.canReview||c(`Marked done — request a review from the session page.`,`info`))}})},[p,c,v]),Ne=(0,A.useCallback)(e=>{m.mutate(e,{onSuccess:async e=>{T(!1),await sr(e.executeLine),c(`Session created — execute line copied`,`success`),ee(`edit`),Oe(e.session.id)},onError:e=>c(e instanceof Error?e.message:`Could not create the session.`,`danger`)})},[m,Oe,c]),{open:Pe}=Jo(),Fe=Cu({sessions:be,route:t,project:u?.directory,projects:r,groups:i,currentProjectId:e,onSwitchProject:s,onOpenHub:o,onOpenSession:Oe,onChangeStatus:Me,onNew:()=>T(!0),onSetMode:ee,onShortcuts:()=>ue(!0),onWatchIntro:Pe,onMigrateAll:()=>h.mutate(void 0,{onSuccess:e=>c(`Migrated ${e.migrated.length} session(s)`,`success`),onError:()=>c(`Could not migrate headers.`,`danger`)}),onGoToSessions:()=>n({name:`sessions`,projectId:e}),onGoToLoops:()=>n({name:`loops`,projectId:e}),onGoToReviews:()=>n({name:`reviews`,projectId:e}),onGoToPackages:()=>n({name:`packages`,projectId:e}),onGoToSettings:t=>n({name:`settings`,projectId:e,...t?{section:t}:{}}),onInstallPackage:()=>{n({name:`packages`,projectId:e}),oe(!0)},onSyncProject:()=>{n({name:`packages`,projectId:e}),ce(!0)},onBrowseSkills:()=>n({name:`skills`,projectId:e}),onReviewBranch:()=>ae(!0),onCopyExecuteLine:k,onCopySynthesisLine:De,onOpenReview:ke,onRequestReview:je,reviews:_?.reviews??[],canReview:v?.canReview??!1,onStop:async()=>{window.confirm(`Stop this UI server? The page will stop responding.`)&&(await wt.shutdown().catch(()=>void 0),c(`UI stopping…`,`info`))},toast:c});return Tu({enabled:!w&&!le&&!E,paletteOpen:ie!==void 0,onPalette:()=>C(e=>e===void 0?`root`:void 0),onSwitcher:()=>C(`projects`),onHub:o,onNew:()=>T(!0),onShortcuts:()=>ue(!0),onCopyExecuteLine:k,onFilter:()=>document.querySelector(`.filter__input`)?.focus(),onTogglePreview:()=>ee(e=>e===`edit`?`preview`:`edit`),onSplit:()=>ee(`split`),onEscape:()=>{if(O.count>0){O.clear();return}t.name===`session`?n({name:`sessions`,projectId:e}):t.name===`review`&&n({name:`reviews`,projectId:e})},onMove:e=>{if(t.name!==`sessions`||Se.length===0)return;let n=Se.findIndex(e=>e.id===ne),r=n===-1?0:Math.min(Math.max(n+e,0),Se.length-1);re(Se[r].id)},onOpenFocused:()=>{t.name===`sessions`&&ne&&Oe(ne)},onStatusDigit:e=>{let n=Qr[e];if(!n)return;if(t.name===`sessions`&&O.count>0){ge(n);return}let r=t.name===`session`?t.sessionId:ne;r&&Me(r,n)},onToggleSelect:e=>{t.name!==`sessions`||!ne||O.toggle(ne,{range:e})},onSelectAll:()=>{t.name===`sessions`&&O.selectAll()},onArchiveSelected:()=>{t.name===`sessions`&&O.count>0&&ve(!0)},hasSelection:O.count>0,isSessionRoute:t.name===`session`}),(0,M.jsxDEV)(`div`,{className:`app app--project app--${a?.color??`indigo`}`,"data-tutorial-inert":!0,children:[(0,M.jsxDEV)(tr,{loopAttention:ye.data?.waitingOnYou,route:t,projectId:e,card:a,onNavigate:n,onOpenPalette:()=>C(`root`),onOpenHub:o,onSwitchProject:()=>C(`projects`),live:l},void 0,!1,{fileName:bu,lineNumber:423,columnNumber:7},this),(0,M.jsxDEV)(`main`,{className:`main`,children:t.name===`loops`?(0,M.jsxDEV)(Dr,{onOpen:t=>n({name:`loop`,projectId:e,loopId:t})},void 0,!1,{fileName:bu,lineNumber:437,columnNumber:11},this):t.name===`loop`?(0,M.jsxDEV)(zr,{loopId:t.loopId,onBack:()=>n({name:`loops`,projectId:e}),onOpenSession:Oe},t.loopId,!1,{fileName:bu,lineNumber:439,columnNumber:11},this):t.name===`session`?(0,M.jsxDEV)(go,{onOpenLoop:t=>n({name:`loop`,projectId:e,loopId:t}),sessionId:t.sessionId,mode:x,onModeChange:ee,onBack:()=>n({name:`sessions`,projectId:e}),onArchived:()=>n({name:`sessions`,projectId:e}),onOpenSession:Oe,onOpenSettings:()=>n({name:`settings`,projectId:e,section:`publishing`})},void 0,!1,{fileName:bu,lineNumber:441,columnNumber:11},this):t.name===`reviews`?(0,M.jsxDEV)(fs,{onOpen:ke,onOpenSession:Oe,onReviewBranch:()=>ae(!0),onSwitchProject:()=>C(`projects`)},void 0,!1,{fileName:bu,lineNumber:452,columnNumber:11},this):t.name===`review`?(0,M.jsxDEV)(_s,{slug:t.slug,onBack:()=>n({name:`reviews`,projectId:e}),onOpenSession:Oe,onOpenSettings:()=>n({name:`settings`,projectId:e,section:`publishing`})},void 0,!1,{fileName:bu,lineNumber:459,columnNumber:11},this):t.name===`settings`?(0,M.jsxDEV)(au,{section:t.section,onSectionChange:t=>n({name:`settings`,projectId:e,...t?{section:t}:{}})},void 0,!1,{fileName:bu,lineNumber:466,columnNumber:11},this):t.name===`packages`?(0,M.jsxDEV)(wc,{installOpen:D,syncOpen:se,onInstallOpenChange:oe,onSyncOpenChange:ce,onBrowseSkills:()=>n({name:`skills`,projectId:e})},void 0,!1,{fileName:bu,lineNumber:473,columnNumber:11},this):t.name===`skills`?(0,M.jsxDEV)(Ic,{onBack:()=>n({name:`packages`,projectId:e})},void 0,!1,{fileName:bu,lineNumber:481,columnNumber:11},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`header`,{className:`topbar topbar--project`,children:[(0,M.jsxDEV)(hr,{title:`Sessions`,projectName:a?.name??u?.name??`Project`,projectDirectory:u?.directory??a?.directory,onSwitchProject:()=>C(`projects`)},void 0,!1,{fileName:bu,lineNumber:485,columnNumber:15},this),(0,M.jsxDEV)(`div`,{className:`topbar__controls`,children:[(0,M.jsxDEV)(`div`,{className:`filter filter--compact`,children:(0,M.jsxDEV)(`input`,{className:`filter__input`,value:te,placeholder:`Filter… /`,onChange:e=>S(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(S(``),e.currentTarget.blur())},"aria-label":`Filter sessions`},void 0,!1,{fileName:bu,lineNumber:495,columnNumber:19},this)},void 0,!1,{fileName:bu,lineNumber:494,columnNumber:17},this),(0,M.jsxDEV)($o,{surface:`sessions`},void 0,!1,{fileName:bu,lineNumber:505,columnNumber:17},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:()=>T(!0),children:`New session`},void 0,!1,{fileName:bu,lineNumber:507,columnNumber:17},this)]},void 0,!0,{fileName:bu,lineNumber:492,columnNumber:15},this)]},void 0,!0,{fileName:bu,lineNumber:484,columnNumber:13},this),d&&d.needingMigration>0&&(0,M.jsxDEV)(`div`,{className:`banner banner--warning`,children:[(0,M.jsxDEV)(`div`,{className:`banner__text`,children:[(0,M.jsxDEV)(`strong`,{children:[d.needingMigration,` session(s)`]},void 0,!0,{fileName:bu,lineNumber:516,columnNumber:19},this),` have no canonical `,(0,M.jsxDEV)(`code`,{children:`<session-meta>`},void 0,!1,{fileName:bu,lineNumber:516,columnNumber:89},this),` header.`]},void 0,!0,{fileName:bu,lineNumber:515,columnNumber:17},this),(0,M.jsxDEV)(`div`,{className:`banner__actions`,children:(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--subtle`,onClick:()=>h.mutate(void 0,{onSuccess:e=>c(`Migrated ${e.migrated.length} session(s)`,`success`),onError:()=>c(`Could not migrate headers.`,`danger`)}),children:`Migrate all`},void 0,!1,{fileName:bu,lineNumber:519,columnNumber:19},this)},void 0,!1,{fileName:bu,lineNumber:518,columnNumber:17},this)]},void 0,!0,{fileName:bu,lineNumber:514,columnNumber:15},this),f?(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading sessions…`},void 0,!1,{fileName:bu,lineNumber:536,columnNumber:15},this):be.length===0?(0,M.jsxDEV)(Su,{onNew:()=>T(!0)},void 0,!1,{fileName:bu,lineNumber:538,columnNumber:15},this):(0,M.jsxDEV)(ji,{sessions:xe,allSessions:be,reviews:_?.reviews??[],filter:te,focusedId:ne,onFocus:re,onOpen:Oe,onStatusChange:Me,collapsed:y,onToggleCollapsed:Te,selection:O},void 0,!1,{fileName:bu,lineNumber:540,columnNumber:15},this),O.count>0&&(0,M.jsxDEV)(zi,{sessions:Ce,count:O.count,hiddenCount:O.hiddenCount,onClear:O.clear,onNarrow:O.replace,pendingStatus:he,onPendingStatusHandled:()=>ge(void 0),archiveRequested:_e,onArchiveRequestHandled:()=>ve(!1)},void 0,!1,{fileName:bu,lineNumber:556,columnNumber:15},this)]},void 0,!0,{fileName:bu,lineNumber:483,columnNumber:11},this)},void 0,!1,{fileName:bu,lineNumber:435,columnNumber:7},this),ie&&(0,M.jsxDEV)(fu,{actions:Fe,initialScope:ie,onClose:pe},void 0,!1,{fileName:bu,lineNumber:573,columnNumber:9},this),w&&(0,M.jsxDEV)(wo,{busy:m.isPending,projectDirectory:u?.directory,onClose:de,onSubmit:Ne},void 0,!1,{fileName:bu,lineNumber:576,columnNumber:9},this),E&&(0,M.jsxDEV)(bs,{busy:g.isPending,onClose:fe,onSubmit:({base:e})=>Ae({standalone:!0,base:e})},void 0,!1,{fileName:bu,lineNumber:584,columnNumber:9},this),le&&(0,M.jsxDEV)(hu,{onClose:me},void 0,!1,{fileName:bu,lineNumber:590,columnNumber:25},this)]},void 0,!0,{fileName:bu,lineNumber:422,columnNumber:5},this)}function Su({onNew:e}){return(0,M.jsxDEV)(`div`,{className:`empty`,children:[(0,M.jsxDEV)(`h2`,{className:`empty__title`,children:`No sessions yet`},void 0,!1,{fileName:bu,lineNumber:598,columnNumber:7},this),(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`A session is a markdown file in `,(0,M.jsxDEV)(`code`,{children:`.invariant/sessions`},void 0,!1,{fileName:bu,lineNumber:600,columnNumber:41},this),` holding one task, its plan, and its status. Create one here, then paste its execute line into your agent.`]},void 0,!0,{fileName:bu,lineNumber:599,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:e,children:`New session`},void 0,!1,{fileName:bu,lineNumber:603,columnNumber:7},this)]},void 0,!0,{fileName:bu,lineNumber:597,columnNumber:5},this)}function Cu(e){return(0,A.useMemo)(()=>{let t=e.route,n=t.name===`session`?e.sessions.find(e=>e.id===t.sessionId):void 0,r=[{id:`new`,group:`Actions`,title:`New session…`,shortcut:`N`,run:e.onNew},{id:`switch-project`,group:`Actions`,title:`Switch project…`,shortcut:`⌘P`,keywords:`project switch change repository workspace`,scope:`projects`,run:()=>void 0},{id:`go-hub`,group:`Actions`,title:`All projects`,shortcut:`⇧⌘H`,keywords:`hub projects home overview`,run:e.onOpenHub},{id:`go-sessions`,group:`Actions`,title:`Go to sessions`,keywords:`dashboard home`,run:e.onGoToSessions},{id:`go-loops`,group:`Actions`,title:`Go to loops`,keywords:`loop graph workflow next`,run:e.onGoToLoops},{id:`go-reviews`,group:`Actions`,title:`Go to reviews`,keywords:`review comments triage`,run:e.onGoToReviews},{id:`go-packages`,group:`Actions`,title:`Go to packages`,keywords:`package install add remove inspect`,run:e.onGoToPackages},...Wl.map(t=>({id:`go-settings-${t.id}`,group:`Settings`,title:`Settings: ${t.title}`,hint:Rc[t.scope],keywords:`settings configuration ${t.keywords}`,run:()=>e.onGoToSettings(t.id)})),{id:`install-package`,group:`Packages`,title:`Install package…`,keywords:`github skills.sh registry add dependency`,run:e.onInstallPackage},{id:`browse-skills`,group:`Packages`,title:`Browse skills…`,hint:`The skills.sh catalogue`,keywords:`skills.sh catalogue browse search install skill agent`,run:e.onBrowseSkills},{id:`sync-project`,group:`Packages`,title:`Sync…`,hint:`Regenerate target folders`,keywords:`sync regenerate claude cursor drift check`,run:e.onSyncProject},{id:`review-branch`,group:`Actions`,title:`Review a branch…`,hint:`Tied to no session`,keywords:`standalone review branch diff someone else`,run:e.onReviewBranch},{id:`copy-synthesis-line`,group:`Actions`,title:`Copy the synthesis line`,hint:`Ask an agent to write the issue spec`,keywords:`linear issue spec synthesis summary paste agent`,run:e.onCopySynthesisLine},{id:`copy-execute-line`,group:`Actions`,title:`Copy the execute line`,shortcut:`⇧⌘R`,keywords:`paste agent run session`,run:e.onCopyExecuteLine},{id:`migrate`,group:`Actions`,title:`Migrate all session headers`,keywords:`fix header meta`,run:e.onMigrateAll},{id:`shortcuts`,group:`Actions`,title:`Keyboard shortcuts`,shortcut:`?`,run:e.onShortcuts},{id:`stop`,group:`Actions`,title:`Stop this UI server`,keywords:`quit shutdown exit`,run:e.onStop},...Eu(e.route,e.onWatchIntro)];if(e.project&&r.push({id:`copy-project`,group:`Actions`,title:`Copy project path`,hint:e.project,run:async()=>{e.toast(await sr(e.project)?`Path copied`:`Could not copy`,`success`)}}),n){r.push({id:`mode-preview`,group:`This session`,title:`Preview`,shortcut:`⇧⌘V`,run:()=>e.onSetMode(`preview`)},{id:`mode-edit`,group:`This session`,title:`Edit`,shortcut:`⇧⌘V`,run:()=>e.onSetMode(`edit`)},{id:`mode-split`,group:`This session`,title:`Split`,shortcut:`S`,run:()=>e.onSetMode(`split`)}),n.kind===`plan`&&n.status===`executed`&&e.canReview&&r.push({id:`request-review`,group:`This session`,title:`Request review`,keywords:`diff branch code review`,run:()=>e.onRequestReview(n.id)}),n.reviewFile&&r.push({id:`open-review-file`,group:`This session`,title:`Open the review document`,hint:n.reviewFile,run:()=>e.onOpenReview(hi(n.reviewFile))});for(let t of Qr)t!==n.status&&r.push({id:`status-${t}`,group:`This session`,title:`Set status: ${qr({kind:n.kind,status:t}).label}`,status:t,run:()=>e.onChangeStatus(n.id,t)});n.status===`review`&&r.push({id:`status-locked`,group:`This session`,title:`Why can I not change this status?`,hint:$r,keywords:`review status locked triage`,run:()=>e.toast($r,`info`)})}r.push(..._u({projects:e.projects,groups:e.groups,currentProjectId:e.currentProjectId,onSwitch:e.onSwitchProject}));for(let t of e.reviews)r.push({id:`open-review-${t.slug}`,group:`Go to review`,title:t.branch,hint:t.counts.open>0?`${t.counts.open} awaiting triage`:`${t.counts.staged} staged`,keywords:`${t.path} review comments`,run:()=>e.onOpenReview(t.slug)});for(let t of e.sessions){let n=qr(t,xi(t,e.reviews));r.push({id:`open-${t.id}`,group:t.kind===`review`?`Go to review session`:`Go to session`,title:t.title,hint:t.kind===`review`?`${n.label} · ${t.branch??``}`.trim():n.label,status:t.status,keywords:`${t.excerpt} ${t.tags.join(` `)} ${t.branch??``}`,run:()=>e.onOpenSession(t.id)})}return r},[e])}function wu(e){let t=e;return t?t.tagName===`INPUT`||t.tagName===`TEXTAREA`||t.isContentEditable||t.closest(`.cm-editor`)!==null:!1}function Tu(e){(0,A.useEffect)(()=>{let t=t=>{let n=t.metaKey||t.ctrlKey;if(n&&t.key.toLowerCase()===`k`){t.preventDefault(),e.onPalette();return}if(n&&!t.shiftKey&&t.key.toLowerCase()===`p`){t.preventDefault(),e.onSwitcher();return}if(n&&t.shiftKey&&t.key.toLowerCase()===`h`){t.preventDefault(),e.onHub();return}if(n&&t.shiftKey&&t.key.toLowerCase()===`v`){t.preventDefault(),e.onTogglePreview();return}if(n&&t.shiftKey&&t.key.toLowerCase()===`r`){t.preventDefault(),e.onCopyExecuteLine();return}if(!(!e.enabled||e.paletteOpen)){if(t.key===`Escape`&&!wu(t.target)){e.onEscape();return}if(!wu(t.target)){if(n&&t.key.toLowerCase()===`a`&&!e.isSessionRoute){t.preventDefault(),e.onSelectAll();return}if(n&&t.key===`Backspace`&&e.hasSelection){t.preventDefault(),e.onArchiveSelected();return}switch(t.key){case`x`:case`X`:t.preventDefault(),e.onToggleSelect(t.shiftKey);return;case`n`:t.preventDefault(),e.onNew();return;case`/`:t.preventDefault(),e.onFilter();return;case`?`:t.preventDefault(),e.onShortcuts();return;case`j`:e.onMove(1);return;case`k`:e.onMove(-1);return;case`ArrowDown`:e.isSessionRoute||(t.preventDefault(),e.onMove(1));return;case`ArrowUp`:e.isSessionRoute||(t.preventDefault(),e.onMove(-1));return;case`Enter`:e.isSessionRoute||e.onOpenFocused();return;case`e`:e.isSessionRoute&&e.onTogglePreview();return;case`p`:e.isSessionRoute&&e.onTogglePreview();return;case`s`:e.isSessionRoute&&e.onSplit();return;case`1`:case`2`:case`3`:case`4`:case`5`:e.onStatusDigit(Number(t.key)-1);return}}}};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e])}function Eu(e,t){let n=Po(e);return No().sort((e,t)=>Number(t.key===n)-Number(e.key===n)).map(e=>({id:`intro-${e.key}`,group:`Help`,title:e.key===n?`Watch the intro for this page`:`Watch the ${e.title} intro`,hint:e.summary,keywords:`intro tutorial video loom help onboarding guide ${e.title}`,run:()=>t(e.key)}))}var Du=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/hub/ProjectRow.tsx`;function Ou({card:e,focused:t,renaming:n,onFocus:r,onOpen:i,onRename:a,onCommitRename:o,onCancelRename:s,onMove:c,onCopyPath:l,onRemove:u,onInitialize:d}){let f=e.state!==`ok`,p=Qn(e.lastActivityAt),m=e.counts,h=(m?.[`in-progress`]??0)+(m?.planning??0),g=e.attention?.awaitingDecision??0,_=e.attention?.openReviewComments??0,v=e.displayName&&e.manifestName&&e.manifestName!==e.displayName?e.manifestName:void 0,y=(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`project-row__monogram`,"aria-hidden":`true`,children:Zn(e.name)},void 0,!1,{fileName:Du,lineNumber:61,columnNumber:7},this),(0,M.jsxDEV)(`span`,{className:`project-row__identity`,children:n?(0,M.jsxDEV)(Au,{initial:e.displayName??e.name,canReset:e.displayName!==void 0,onCommit:o,onCancel:s},void 0,!1,{fileName:Du,lineNumber:67,columnNumber:11},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`project-row__name`,children:e.name},void 0,!1,{fileName:Du,lineNumber:75,columnNumber:13},this),v&&(0,M.jsxDEV)(`span`,{className:`project-row__secondary`,children:v},void 0,!1,{fileName:Du,lineNumber:76,columnNumber:27},this)]},void 0,!0,{fileName:Du,lineNumber:74,columnNumber:11},this)},void 0,!1,{fileName:Du,lineNumber:65,columnNumber:7},this),(0,M.jsxDEV)(`span`,{className:`project-row__path`,title:e.directory,children:cr(e.directory)},void 0,!1,{fileName:Du,lineNumber:81,columnNumber:7},this),f?(0,M.jsxDEV)(`span`,{className:`project-row__problem`,children:e.problem??ju(e.state)},void 0,!1,{fileName:Du,lineNumber:86,columnNumber:9},this):(0,M.jsxDEV)(M.Fragment,{children:[(0,M.jsxDEV)(`span`,{className:`project-row__branch`,children:e.git?.branch&&(0,M.jsxDEV)(`span`,{className:`chip chip--branch`,children:e.git.branch},void 0,!1,{fileName:Du,lineNumber:90,columnNumber:34},this)},void 0,!1,{fileName:Du,lineNumber:89,columnNumber:11},this),(0,M.jsxDEV)(ku,{value:h,label:`in flight`},void 0,!1,{fileName:Du,lineNumber:92,columnNumber:11},this),(0,M.jsxDEV)(ku,{value:g,label:`awaiting you`,tone:`waiting`},void 0,!1,{fileName:Du,lineNumber:93,columnNumber:11},this),(0,M.jsxDEV)(ku,{value:_,label:`open comments`},void 0,!1,{fileName:Du,lineNumber:94,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`project-row__activity`,children:p??``},void 0,!1,{fileName:Du,lineNumber:95,columnNumber:11},this)]},void 0,!0,{fileName:Du,lineNumber:88,columnNumber:9},this)]},void 0,!0,{fileName:Du,lineNumber:60,columnNumber:5},this);return(0,M.jsxDEV)(`div`,{className:`project-row project-row--${e.color}${t?` is-focused`:``}${f?` is-unavailable`:``}`,"data-project-id":e.id,onMouseEnter:r,children:[n?(0,M.jsxDEV)(`div`,{className:`project-row__open is-renaming`,children:y},void 0,!1,{fileName:Du,lineNumber:113,columnNumber:9},this):(0,M.jsxDEV)(`button`,{type:`button`,className:`project-row__open`,onClick:i,disabled:f,"aria-label":`Open ${e.name}`,children:y},void 0,!1,{fileName:Du,lineNumber:115,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`project-row__actions`,children:[e.state===`uninitialized`&&(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:d,children:`How to fix`},void 0,!1,{fileName:Du,lineNumber:128,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:a,children:`Rename`},void 0,!1,{fileName:Du,lineNumber:132,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:c,children:`Move to…`},void 0,!1,{fileName:Du,lineNumber:135,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:l,children:`Copy path`},void 0,!1,{fileName:Du,lineNumber:138,columnNumber:9},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:u,children:`Remove`},void 0,!1,{fileName:Du,lineNumber:143,columnNumber:9},this)]},void 0,!0,{fileName:Du,lineNumber:126,columnNumber:7},this)]},void 0,!0,{fileName:Du,lineNumber:102,columnNumber:5},this)}function ku({value:e,label:t,tone:n}){return e===0?(0,M.jsxDEV)(`span`,{className:`project-row__count is-zero`,"aria-hidden":`true`,children:`·`},void 0,!1,{fileName:Du,lineNumber:155,columnNumber:7},this):(0,M.jsxDEV)(`span`,{className:`project-row__count${n?` is-${n}`:``}`,title:`${e} ${t}`,children:e},void 0,!1,{fileName:Du,lineNumber:161,columnNumber:5},this)}function Au({initial:e,canReset:t,onCommit:n,onCancel:r}){let[i,a]=(0,A.useState)(e),o=(0,A.useRef)(null),s=(0,A.useRef)(!1);(0,A.useEffect)(()=>{o.current?.focus(),o.current?.select()},[]);let c=e=>{s.current||(s.current=!0,n(e))};return(0,M.jsxDEV)(`span`,{className:`project-row__rename`,children:[(0,M.jsxDEV)(`input`,{ref:o,className:`project-row__rename-input`,value:i,"aria-label":`Project name on this machine`,onChange:e=>a(e.target.value),onBlur:()=>c(i.trim().length>0?i.trim():null),onKeyDown:e=>{e.stopPropagation(),e.key===`Enter`&&(e.preventDefault(),c(i.trim().length>0?i.trim():null)),e.key===`Escape`&&(e.preventDefault(),s.current=!0,r())}},void 0,!1,{fileName:Du,lineNumber:203,columnNumber:7},this),t&&(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onMouseDown:e=>{e.preventDefault(),c(null)},children:`Reset`},void 0,!1,{fileName:Du,lineNumber:224,columnNumber:9},this)]},void 0,!0,{fileName:Du,lineNumber:202,columnNumber:5},this)}function ju(e){switch(e){case`missing`:return`missing`;case`uninitialized`:return`not initialized`;case`unreadable`:return`unreadable`;default:return``}}var Mu=`__ungrouped__`;function Nu({projects:e,groups:t,filter:n}){let r=n.trim(),i=r.length>0,a=new Map(t.map(e=>[e.id,e.name])),o=i?Pu(e,r,a):e;if(t.length===0){let e={id:Mu,name:`Projects`,projects:o,collapsed:!1,synthetic:!0};return{sections:o.length>0?[e]:[],rows:o.map(e=>({kind:`project`,id:e.id,card:e,sectionId:Mu})),flat:!0,matched:o.length}}let s=[...t].sort((e,t)=>e.order-t.order).map(e=>({id:e.id,name:e.name,color:e.color,projects:o.filter(t=>t.groupId===e.id),collapsed:!i&&e.collapsed,synthetic:!1})),c=o.filter(e=>!e.groupId||!a.has(e.groupId));c.length>0&&s.push({id:Mu,name:`Ungrouped`,projects:c,collapsed:!1,synthetic:!0});let l=s.filter(e=>e.projects.length>0||!i&&!e.synthetic),u=[];for(let e of l)if(u.push({kind:`group`,id:e.id,section:e}),!e.collapsed)for(let t of e.projects)u.push({kind:`project`,id:t.id,card:t,sectionId:e.id});return{sections:l,rows:u,flat:!1,matched:o.length}}function Pu(e,t,n){return e.map(e=>({project:e,score:or([e.name,e.displayName??``,e.manifestName??``,e.directory,e.groupId?n.get(e.groupId)??``:``].join(` `),t)})).filter(e=>e.score!==null).sort((e,t)=>t.score-e.score).map(e=>e.project)}function Fu(e,t,n){if(e.length===0)return;let r=e.findIndex(e=>e.id===t);return r===-1?e[n===1?0:e.length-1].id:e[Math.min(Math.max(r+n,0),e.length-1)].id}function Iu(e,t){let n=e.find(e=>e.id===t);if(n)return n.kind===`group`?n.id:n.sectionId}function Lu(e){return e.reduce((e,t)=>({working:e.working+(t.counts?.[`in-progress`]??0)+(t.counts?.planning??0),waiting:e.waiting+(t.attention?.awaitingDecision??0),comments:e.comments+(t.attention?.openReviewComments??0)}),{working:0,waiting:0,comments:0})}var Ru=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/hub/ProjectGroupSection.tsx`;function zu({section:e,focused:t,headerless:n,onFocus:r,onToggle:i,onRename:a,onDelete:o,children:s}){if(n)return(0,M.jsxDEV)(`div`,{className:`hub-group__rows`,children:s},void 0,!1,{fileName:Ru,lineNumber:36,columnNumber:26},this);let c=Lu(e.projects),l=`group-${e.id}`;return(0,M.jsxDEV)(`section`,{className:`hub-group${e.color?` hub-group--${e.color}`:``}${t?` is-focused`:``}`,"data-group-id":e.id,children:[(0,M.jsxDEV)(`div`,{className:`hub-group__head`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`hub-group__toggle`,"aria-expanded":!e.collapsed,"aria-controls":l,onClick:i,onMouseEnter:r,children:[(0,M.jsxDEV)(`svg`,{className:`hub-group__caret${e.collapsed?` is-collapsed`:``}`,viewBox:`0 0 12 12`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M4 2.5 8 6l-4 3.5z`},void 0,!1,{fileName:Ru,lineNumber:62,columnNumber:13},this)},void 0,!1,{fileName:Ru,lineNumber:57,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`hub-group__name`,children:e.name},void 0,!1,{fileName:Ru,lineNumber:64,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`hub-group__count`,children:e.projects.length===0?`empty`:e.projects.length},void 0,!1,{fileName:Ru,lineNumber:65,columnNumber:11},this)]},void 0,!0,{fileName:Ru,lineNumber:49,columnNumber:9},this),(0,M.jsxDEV)(`span`,{className:`hub-group__totals`,children:[c.working>0&&(0,M.jsxDEV)(`span`,{children:[c.working,` in flight`]},void 0,!0,{fileName:Ru,lineNumber:71,columnNumber:34},this),c.waiting>0&&(0,M.jsxDEV)(`span`,{className:`hub-group__waiting`,children:[c.waiting,` awaiting you`]},void 0,!0,{fileName:Ru,lineNumber:73,columnNumber:13},this)]},void 0,!0,{fileName:Ru,lineNumber:70,columnNumber:9},this),!e.synthetic&&(0,M.jsxDEV)(`span`,{className:`hub-group__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:a,children:`Rename`},void 0,!1,{fileName:Ru,lineNumber:81,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`link-button`,onClick:o,children:`Delete`},void 0,!1,{fileName:Ru,lineNumber:84,columnNumber:13},this)]},void 0,!0,{fileName:Ru,lineNumber:80,columnNumber:11},this)]},void 0,!0,{fileName:Ru,lineNumber:48,columnNumber:7},this),(0,M.jsxDEV)(`div`,{className:`hub-group__rows`,id:l,role:`group`,"aria-label":e.name,hidden:e.collapsed,children:e.projects.length===0?(0,M.jsxDEV)(`p`,{className:`hub-group__empty`,children:`No projects — move one here with “Move to…”.`},void 0,!1,{fileName:Ru,lineNumber:93,columnNumber:11},this):s},void 0,!1,{fileName:Ru,lineNumber:91,columnNumber:7},this)]},void 0,!0,{fileName:Ru,lineNumber:42,columnNumber:5},this)}var Bu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/hub/AddProjectModal.tsx`;function Vu({busy:e,onClose:t,onSubmit:n,error:r}){let[i,a]=(0,A.useState)(``),o=i.trim();return(0,M.jsxDEV)(wr,{title:`Add project`,onClose:t,children:(0,M.jsxDEV)(`form`,{className:`form`,onSubmit:t=>{t.preventDefault(),o.length>0&&!e&&n(o)},children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Project folder`},void 0,!1,{fileName:Bu,lineNumber:34,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,autoFocus:!0,value:i,placeholder:`~/dev/my-project`,spellCheck:!1,onChange:e=>a(e.target.value)},void 0,!1,{fileName:Bu,lineNumber:35,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:[`The folder holding `,(0,M.jsxDEV)(`code`,{children:`invariant.json`},void 0,!1,{fileName:Bu,lineNumber:44,columnNumber:32},this),`. `,(0,M.jsxDEV)(`code`,{children:`~`},void 0,!1,{fileName:Bu,lineNumber:44,columnNumber:61},this),` works.`]},void 0,!0,{fileName:Bu,lineNumber:43,columnNumber:11},this)]},void 0,!0,{fileName:Bu,lineNumber:33,columnNumber:9},this),r!==void 0&&(0,M.jsxDEV)(Hu,{error:r},void 0,!1,{fileName:Bu,lineNumber:48,columnNumber:33},this),(0,M.jsxDEV)(`div`,{className:`form__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:t,children:`Cancel`},void 0,!1,{fileName:Bu,lineNumber:51,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`submit`,className:`button button--solid`,disabled:e||o.length===0,children:e?`Adding…`:`Add project`},void 0,!1,{fileName:Bu,lineNumber:54,columnNumber:11},this)]},void 0,!0,{fileName:Bu,lineNumber:50,columnNumber:9},this)]},void 0,!0,{fileName:Bu,lineNumber:26,columnNumber:7},this)},void 0,!1,{fileName:Bu,lineNumber:25,columnNumber:5},this)}function Hu({error:e}){return e instanceof bt&&e.code===`PROJECT_NOT_INITIALIZED`?(0,M.jsxDEV)(`p`,{className:`form__error`,children:[`That folder is not an Invariant project yet. Run `,(0,M.jsxDEV)(`code`,{children:`invariant init`},void 0,!1,{fileName:Bu,lineNumber:71,columnNumber:58},this),` there, then add it.`]},void 0,!0,{fileName:Bu,lineNumber:70,columnNumber:7},this):e instanceof bt&&e.code===`PROJECT_ALREADY_REGISTERED`?(0,M.jsxDEV)(`p`,{className:`form__error`,children:e.message},void 0,!1,{fileName:Bu,lineNumber:76,columnNumber:12},this):e instanceof bt&&e.code===`PROJECT_PATH_MISSING`?(0,M.jsxDEV)(`p`,{className:`form__error`,children:`No such folder. Check the path and try again.`},void 0,!1,{fileName:Bu,lineNumber:79,columnNumber:12},this):(0,M.jsxDEV)(`p`,{className:`form__error`,children:e instanceof Error?e.message:`That project could not be added.`},void 0,!1,{fileName:Bu,lineNumber:82,columnNumber:5},this)}var Uu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/hub/GroupModal.tsx`;function Wu({initial:e,busy:t,error:n,onClose:r,onSubmit:i}){let[a,o]=(0,A.useState)(e?.name??``),[s,c]=(0,A.useState)(e?.color),l=a.trim();return(0,M.jsxDEV)(wr,{title:e?`Rename group`:`New group`,onClose:r,children:(0,M.jsxDEV)(`form`,{className:`form`,onSubmit:e=>{e.preventDefault(),l.length>0&&!t&&i({name:l,color:s})},children:[(0,M.jsxDEV)(`label`,{className:`field`,children:[(0,M.jsxDEV)(`span`,{className:`field__label`,children:`Name`},void 0,!1,{fileName:Uu,lineNumber:36,columnNumber:11},this),(0,M.jsxDEV)(`input`,{className:`field__input`,autoFocus:!0,value:a,placeholder:`Work`,maxLength:64,onChange:e=>o(e.target.value)},void 0,!1,{fileName:Uu,lineNumber:37,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`field__hint`,children:`Groups live in this machine's project registry — they never reach your colleagues.`},void 0,!1,{fileName:Uu,lineNumber:45,columnNumber:11},this)]},void 0,!0,{fileName:Uu,lineNumber:35,columnNumber:9},this),(0,M.jsxDEV)(`fieldset`,{className:`config-swatches`,children:[(0,M.jsxDEV)(`legend`,{className:`field__label`,children:`Colour`},void 0,!1,{fileName:Uu,lineNumber:51,columnNumber:11},this),ai.map(e=>(0,M.jsxDEV)(`button`,{type:`button`,className:`config-swatch config-swatch--${e}${s===e?` is-active`:``}`,"aria-label":e,"aria-pressed":s===e,title:e,onClick:()=>c(t=>t===e?void 0:e)},e,!1,{fileName:Uu,lineNumber:53,columnNumber:13},this))]},void 0,!0,{fileName:Uu,lineNumber:50,columnNumber:9},this),n!==void 0&&(0,M.jsxDEV)(`p`,{className:`form__error`,children:n instanceof bt&&n.code===`PROJECT_GROUP_NAME_TAKEN`||n instanceof Error?n.message:`That group could not be saved.`},void 0,!1,{fileName:Uu,lineNumber:68,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`form__actions`,children:[(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:r,children:`Cancel`},void 0,!1,{fileName:Uu,lineNumber:78,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`submit`,className:`button button--solid`,disabled:t||l.length===0,children:t?`Saving…`:e?`Rename`:`Create group`},void 0,!1,{fileName:Uu,lineNumber:81,columnNumber:11},this)]},void 0,!0,{fileName:Uu,lineNumber:77,columnNumber:9},this)]},void 0,!0,{fileName:Uu,lineNumber:28,columnNumber:7},this)},void 0,!1,{fileName:Uu,lineNumber:27,columnNumber:5},this)}var Gu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/hub/HubPage.tsx`;function Ku({onOpenProject:e,onRequestMove:t}){let n=dr(),{data:r,isLoading:i}=zn(),{data:a}=Hn(),o=Un(),s=Wn(),c=Gn(),l=Kn(),u=Jn(),d=qn(),[f,p]=(0,A.useState)(``),[m,h]=(0,A.useState)(!1),[g,_]=(0,A.useState)(),[v,y]=(0,A.useState)(),[b,x]=(0,A.useState)(),[ee,te]=(0,A.useState)(),[S,ne]=(0,A.useState)(),re=(0,A.useMemo)(()=>r?.projects??[],[r]),ie=(0,A.useMemo)(()=>r?.groups??[],[r]),C=(0,A.useMemo)(()=>Nu({projects:re,groups:ie,filter:f}),[re,ie,f]),w=(0,A.useCallback)(t=>e(t),[e]),T=(0,A.useCallback)(async e=>{n(await sr(e)?`Path copied`:`Could not copy`,`success`)},[n]),E=(0,A.useCallback)(e=>{let t=ie.find(t=>t.id===e);t&&u.mutate({groupId:e,collapsed:!t.collapsed})},[ie,u]),ae=(0,A.useCallback)((e,t)=>{ne(void 0),(t??void 0)!==e.displayName&&c.mutate({projectId:e.id,displayName:t},{onSuccess:()=>n(t?`Renamed to ${t}`:`Back to the manifest name`,`success`),onError:e=>n(e instanceof Error?e.message:`That rename did not work.`,`danger`)})},[n,c]),D=(0,A.useCallback)(e=>{if(t){t(e);return}n(`Press ⌘K, then “Move to group…”.`,`info`)},[t,n]),oe=(0,A.useCallback)(e=>{h(!1),o.reset();let t=re.some(t=>t.id!==e.id&&t.name.toLowerCase()===e.name.toLowerCase());if(te(e.id),t){ne(e.id),n(`Another project is called “${e.name}” — give this one a name.`,`info`);return}n(`Added ${e.name}`,`success`)},[o,re,n]),se=m||g!==void 0||v!==void 0||b!==void 0,ce=(0,A.useRef)({list:C,focusedId:ee,renamingId:S,modalOpen:se});return ce.current={list:C,focusedId:ee,renamingId:S,modalOpen:se},(0,A.useEffect)(()=>{let e=e=>{let t=e.target;if(t&&(t.tagName===`INPUT`||t.tagName===`TEXTAREA`))return;let{list:n,focusedId:r,renamingId:i,modalOpen:a}=ce.current;if(a||i)return;let o=n.rows,s=o.find(e=>e.id===r),c=t=>{e.preventDefault(),te(Fu(o,r,t))};if(e.key===`j`||e.key===`ArrowDown`)return c(1);if(e.key===`k`||e.key===`ArrowUp`)return c(-1);if(e.key===`/`){e.preventDefault(),document.querySelector(`.filter__input`)?.focus();return}if(e.key===`h`||e.key===`ArrowLeft`){e.preventDefault();let t=Iu(o,r);if(!t||t===`__ungrouped__`)return;te(t);let i=n.sections.find(e=>e.id===t);i&&!i.collapsed&&E(t);return}if(e.key===`l`||e.key===`ArrowRight`){e.preventDefault(),s?.kind===`group`&&s.section.collapsed&&E(s.id);return}if(e.key===` `&&s?.kind===`group`){e.preventDefault(),s.section.synthetic||E(s.id);return}if(e.key===`Enter`&&s){if(e.preventDefault(),s.kind===`group`){s.section.synthetic||E(s.id);return}s.card.state===`ok`&&w(s.card.id);return}if((e.key===`F2`||e.key===`r`)&&s?.kind===`project`){e.preventDefault(),ne(s.card.id);return}e.key===`m`&&s?.kind===`project`&&(e.preventDefault(),D(s.card))};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[w,D,E]),(0,M.jsxDEV)(`div`,{className:`hub`,children:[(0,M.jsxDEV)(`header`,{className:`hub__head`,children:[(0,M.jsxDEV)(`div`,{className:`hub__identity`,children:[(0,M.jsxDEV)(`h1`,{className:`hub__title`,children:`Projects`},void 0,!1,{fileName:Gu,lineNumber:236,columnNumber:11},this),(0,M.jsxDEV)(`p`,{className:`hub__subtitle`,children:re.length===0?`None yet`:`${re.length} project${re.length===1?``:`s`} on this machine`},void 0,!1,{fileName:Gu,lineNumber:237,columnNumber:11},this)]},void 0,!0,{fileName:Gu,lineNumber:235,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`hub__controls`,children:[(0,M.jsxDEV)(`div`,{className:`filter filter--compact`,children:(0,M.jsxDEV)(`input`,{className:`filter__input`,value:f,placeholder:`Filter… /`,onChange:e=>p(e.target.value),onKeyDown:e=>{e.key===`Escape`&&(p(``),e.currentTarget.blur())},"aria-label":`Filter projects`},void 0,!1,{fileName:Gu,lineNumber:246,columnNumber:13},this)},void 0,!1,{fileName:Gu,lineNumber:245,columnNumber:11},this),(0,M.jsxDEV)($o,{surface:`hub`},void 0,!1,{fileName:Gu,lineNumber:260,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--ghost`,onClick:()=>_({}),children:`New group`},void 0,!1,{fileName:Gu,lineNumber:262,columnNumber:11},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:()=>h(!0),children:`Add project`},void 0,!1,{fileName:Gu,lineNumber:269,columnNumber:11},this)]},void 0,!0,{fileName:Gu,lineNumber:244,columnNumber:9},this)]},void 0,!0,{fileName:Gu,lineNumber:234,columnNumber:7},this),i?(0,M.jsxDEV)(`div`,{className:`page-state`,children:`Loading projects…`},void 0,!1,{fileName:Gu,lineNumber:276,columnNumber:9},this):re.length===0&&ie.length===0?(0,M.jsxDEV)(qu,{registryPath:r?.registryPath,onAdd:()=>h(!0)},void 0,!1,{fileName:Gu,lineNumber:278,columnNumber:9},this):C.rows.length===0?(0,M.jsxDEV)(`div`,{className:`page-state`,children:[`No project matches “`,f,`”.`]},void 0,!0,{fileName:Gu,lineNumber:280,columnNumber:9},this):(0,M.jsxDEV)(`div`,{className:`hub__list`,role:`list`,children:C.sections.map(e=>(0,M.jsxDEV)(zu,{section:e,headerless:C.flat,focused:e.id===ee,onFocus:()=>te(e.id),onToggle:()=>E(e.id),onRename:()=>_({editing:ie.find(t=>t.id===e.id)}),onDelete:()=>x(ie.find(t=>t.id===e.id)),children:e.projects.map(e=>(0,M.jsxDEV)(Ou,{card:e,focused:e.id===ee,renaming:e.id===S,onFocus:()=>te(e.id),onOpen:()=>w(e.id),onRename:()=>ne(e.id),onCommitRename:t=>ae(e,t),onCancelRename:()=>ne(void 0),onMove:()=>D(e),onCopyPath:()=>void T(e.directory),onRemove:()=>y(e),onInitialize:()=>n(`Run \`invariant init\` in ${e.directory}, then reload.`,`info`)},e.id,!1,{fileName:Gu,lineNumber:299,columnNumber:17},this))},e.id,!1,{fileName:Gu,lineNumber:284,columnNumber:13},this))},void 0,!1,{fileName:Gu,lineNumber:282,columnNumber:9},this),a&&(0,M.jsxDEV)(`footer`,{className:`hub__foot`,children:[(0,M.jsxDEV)(`span`,{children:[`invariant ui v`,a.version,` · port `,a.port,` · pid `,a.pid]},void 0,!0,{fileName:Gu,lineNumber:324,columnNumber:11},this),(0,M.jsxDEV)(`span`,{className:`hub__registry`,title:a.registryPath,children:a.registryPath},void 0,!1,{fileName:Gu,lineNumber:327,columnNumber:11},this)]},void 0,!0,{fileName:Gu,lineNumber:323,columnNumber:9},this),m&&(0,M.jsxDEV)(Vu,{busy:o.isPending,error:o.error??void 0,onClose:()=>{o.reset(),h(!1)},onSubmit:e=>o.mutate(e,{onSuccess:oe})},void 0,!1,{fileName:Gu,lineNumber:334,columnNumber:9},this),g&&(0,M.jsxDEV)(Wu,{initial:g.editing?{name:g.editing.name,color:g.editing.color}:void 0,busy:l.isPending||u.isPending,error:(g.editing?u.error:l.error)??void 0,onClose:()=>{l.reset(),u.reset(),_(void 0)},onSubmit:({name:e,color:t})=>{let n=g.editing,r=()=>{l.reset(),u.reset(),_(void 0)};if(n){u.mutate({groupId:n.id,name:e,color:t},{onSuccess:r});return}l.mutate({name:e,color:t},{onSuccess:r})}},void 0,!1,{fileName:Gu,lineNumber:346,columnNumber:9},this),b&&(0,M.jsxDEV)(_r,{title:`Delete ${b.name}?`,body:`The projects in it stay registered — they move back to Ungrouped.`,confirmLabel:`Delete group`,cancelLabel:`Keep`,onCancel:()=>x(void 0),onConfirm:()=>{let e=b;x(void 0),d.mutate(e.id,{onSuccess:t=>n(t.ungrouped>0?`Deleted ${e.name} — ${t.ungrouped} project${t.ungrouped===1?``:`s`} ungrouped`:`Deleted ${e.name}`,`success`),onError:()=>n(`Could not delete that group.`,`danger`)})}},void 0,!1,{fileName:Gu,lineNumber:376,columnNumber:9},this),v&&(0,M.jsxDEV)(_r,{title:`Remove ${v.name}?`,body:`This only removes it from this list. Nothing in ${v.directory} is touched, and adding the path again restores everything.`,confirmLabel:`Remove`,cancelLabel:`Keep`,onCancel:()=>y(void 0),onConfirm:()=>{let e=v;y(void 0),s.mutate(e.id,{onSuccess:()=>n(`Removed ${e.name} from the list`,`success`),onError:()=>n(`Could not remove that project.`,`danger`)})}},void 0,!1,{fileName:Gu,lineNumber:402,columnNumber:9},this)]},void 0,!0,{fileName:Gu,lineNumber:233,columnNumber:5},this)}function qu({registryPath:e,onAdd:t}){return(0,M.jsxDEV)(`div`,{className:`empty`,children:[(0,M.jsxDEV)(`h2`,{className:`empty__title`,children:`No projects yet`},void 0,!1,{fileName:Gu,lineNumber:426,columnNumber:7},this),(0,M.jsxDEV)(`p`,{className:`empty__text`,children:[`Add the folder of a project you have run `,(0,M.jsxDEV)(`code`,{children:`invariant init`},void 0,!1,{fileName:Gu,lineNumber:428,columnNumber:50},this),` in. The UI serves them all from here — one server, one tab, however many repositories you work in.`]},void 0,!0,{fileName:Gu,lineNumber:427,columnNumber:7},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`button button--solid`,onClick:t,children:`Add project`},void 0,!1,{fileName:Gu,lineNumber:431,columnNumber:7},this),e&&(0,M.jsxDEV)(`p`,{className:`empty__footnote`,children:[`The list lives in `,(0,M.jsxDEV)(`code`,{children:e},void 0,!1,{fileName:Gu,lineNumber:434,columnNumber:29},this),`.`]},void 0,!0,{fileName:Gu,lineNumber:433,columnNumber:9},this)]},void 0,!0,{fileName:Gu,lineNumber:425,columnNumber:5},this)}var Ju=`https://www.loom.com`;function Yu(e,t={}){let n=new URLSearchParams({hide_owner:`true`,hide_share:`true`,hide_title:`true`,hideEmbedTopBar:`true`});return t.autoplay&&n.set(`autoplay`,`1`),`${Ju}/embed/${encodeURIComponent(e)}?${n.toString()}`}function Xu(e){return`${Ju}/share/${encodeURIComponent(e)}`}var Zu=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/features/tutorials/TutorialPlayer.tsx`,Qu=320,$u=208;function ed(){let{viewing:e,expand:t,minimise:n,close:r}=Jo(),i=(0,A.useId)(),[a,o]=(0,A.useState)({x:0,y:0}),s=(0,A.useRef)(null),c=e?.state===`expanded`,l=e?.session;(0,A.useEffect)(()=>o({x:0,y:0}),[l]),(0,A.useEffect)(()=>{if(!c)return;let e=e=>{e.key===`Escape`&&(e.stopPropagation(),n())};return document.addEventListener(`keydown`,e),()=>document.removeEventListener(`keydown`,e)},[c,n]),(0,A.useEffect)(()=>{let e=document.querySelector(`[data-tutorial-inert]`);if(e)return c?e.setAttribute(`inert`,``):e.removeAttribute(`inert`),()=>e.removeAttribute(`inert`)},[c]);let u=(0,A.useCallback)(e=>{c||e.button!==0||(s.current={pointer:{x:e.clientX,y:e.clientY},offset:a},e.currentTarget.setPointerCapture(e.pointerId))},[c,a]),d=(0,A.useCallback)(e=>{let t=s.current;if(!t)return;let n=Math.max(0,window.innerWidth-Qu-40),r=Math.max(0,window.innerHeight-$u-40);o({x:td(t.offset.x+(e.clientX-t.pointer.x),-n,0),y:td(t.offset.y+(e.clientY-t.pointer.y),-r,0)})},[]),f=(0,A.useCallback)(e=>{s.current&&(s.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId))},[]);if(!e)return null;let p=jo[e.key],m=p.loomId;return m?(0,M.jsxDEV)(M.Fragment,{children:[c&&(0,M.jsxDEV)(`div`,{className:`tutorial__backdrop`,onMouseDown:n},void 0,!1,{fileName:Zu,lineNumber:110,columnNumber:20},this),(0,M.jsxDEV)(`div`,{className:`tutorial tutorial--${e.state}`,style:c?void 0:{transform:`translate(${a.x}px, ${a.y}px)`},role:c?`dialog`:`region`,"aria-modal":c?!0:void 0,"aria-labelledby":i,children:[(0,M.jsxDEV)(`header`,{className:`tutorial__head`,onPointerDown:u,onPointerMove:d,onPointerUp:f,onPointerCancel:f,children:[(0,M.jsxDEV)(`div`,{className:`tutorial__identity`,children:[(0,M.jsxDEV)(`h2`,{className:`tutorial__title`,id:i,children:[p.title,` — intro`]},void 0,!0,{fileName:Zu,lineNumber:127,columnNumber:13},this),c&&(0,M.jsxDEV)(`p`,{className:`tutorial__summary`,children:p.summary},void 0,!1,{fileName:Zu,lineNumber:130,columnNumber:26},this)]},void 0,!0,{fileName:Zu,lineNumber:126,columnNumber:11},this),(0,M.jsxDEV)(`div`,{className:`tutorial__controls`,children:[(0,M.jsxDEV)(`a`,{className:`tutorial__link`,href:Xu(m),target:`_blank`,rel:`noreferrer noopener`,title:`Open on Loom`,children:`Loom ↗`},void 0,!1,{fileName:Zu,lineNumber:137,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,onClick:c?n:t,title:c?`Minimise — keeps playing beside the app`:`Expand`,"aria-label":c?`Minimise the intro`:`Expand the intro`,children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 14 14`,"aria-hidden":`true`,children:c?(0,M.jsxDEV)(`path`,{d:`M2.5 8.5h3v3M11.5 5.5h-3v-3`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`},void 0,!1,{fileName:Zu,lineNumber:156,columnNumber:19},this):(0,M.jsxDEV)(`path`,{d:`M5.5 2.5h-3v3M8.5 11.5h3v-3`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`},void 0,!1,{fileName:Zu,lineNumber:158,columnNumber:19},this)},void 0,!1,{fileName:Zu,lineNumber:154,columnNumber:15},this)},void 0,!1,{fileName:Zu,lineNumber:147,columnNumber:13},this),(0,M.jsxDEV)(`button`,{type:`button`,className:`icon-button`,onClick:r,title:`Close the intro`,"aria-label":`Close the intro`,children:(0,M.jsxDEV)(`svg`,{viewBox:`0 0 14 14`,"aria-hidden":`true`,children:(0,M.jsxDEV)(`path`,{d:`M3.5 3.5l7 7M10.5 3.5l-7 7`,stroke:`currentColor`,strokeWidth:`1.5`,strokeLinecap:`round`},void 0,!1,{fileName:Zu,lineNumber:171,columnNumber:17},this)},void 0,!1,{fileName:Zu,lineNumber:170,columnNumber:15},this)},void 0,!1,{fileName:Zu,lineNumber:163,columnNumber:13},this)]},void 0,!0,{fileName:Zu,lineNumber:133,columnNumber:11},this)]},void 0,!0,{fileName:Zu,lineNumber:119,columnNumber:9},this),(0,M.jsxDEV)(`div`,{className:`tutorial__frame`,children:(0,M.jsxDEV)(`iframe`,{className:`tutorial__iframe`,src:Yu(m,{autoplay:!0}),title:`${p.title} intro video`,allow:`fullscreen; picture-in-picture; autoplay`,allowFullScreen:!0,referrerPolicy:`strict-origin-when-cross-origin`},e.session,!1,{fileName:Zu,lineNumber:178,columnNumber:11},this)},void 0,!1,{fileName:Zu,lineNumber:177,columnNumber:9},this)]},void 0,!0,{fileName:Zu,lineNumber:112,columnNumber:7},this)]},void 0,!0,{fileName:Zu,lineNumber:109,columnNumber:5},this):null}function td(e,t,n){return Math.min(Math.max(e,t),n)}var nd=/^\/p\/([^/]+)(\/.*)?$/;function rd(e){return e.name!==`hub`&&e.name!==`not-found`}function id(e){if(e===`/`||e===``||e===`/projects`)return{name:`hub`};let t=e.match(nd);if(!t)return{name:`not-found`,path:e};let n=decodeURIComponent(t[1]),r=t[2]??`/`;if(r===`/loops`)return{name:`loops`,projectId:n};let i=r.match(/^\/loops\/([^/]+)$/);if(i)return{name:`loop`,projectId:n,loopId:decodeURIComponent(i[1])};if(r===`/`||r===`/sessions`)return{name:`sessions`,projectId:n};let a=r.match(/^\/sessions\/([^/]+)$/);if(a)return{name:`session`,projectId:n,sessionId:decodeURIComponent(a[1])};if(r===`/reviews`)return{name:`reviews`,projectId:n};let o=r.match(/^\/reviews\/([^/]+)$/);if(o)return{name:`review`,projectId:n,slug:decodeURIComponent(o[1])};if(r===`/packages`)return{name:`packages`,projectId:n};if(r===`/packages/skills`)return{name:`skills`,projectId:n};if(r===`/settings`)return{name:`settings`,projectId:n};let s=r.match(/^\/settings\/([^/]+)$/);return s?{name:`settings`,projectId:n,section:decodeURIComponent(s[1])}:{name:`not-found`,path:e}}function ad(e){if(e.name===`hub`||e.name===`not-found`)return`/`;let t=`/p/${encodeURIComponent(e.projectId)}`;switch(e.name){case`loops`:return`${t}/loops`;case`loop`:return`${t}/loops/${encodeURIComponent(e.loopId)}`;case`sessions`:return`${t}/sessions`;case`session`:return`${t}/sessions/${encodeURIComponent(e.sessionId)}`;case`reviews`:return`${t}/reviews`;case`review`:return`${t}/reviews/${encodeURIComponent(e.slug)}`;case`packages`:return`${t}/packages`;case`skills`:return`${t}/packages/skills`;case`settings`:return e.section?`${t}/settings/${encodeURIComponent(e.section)}`:`${t}/settings`;default:return`/`}}function od(e,t){if(e.startsWith(`/p/`))return;let n=id(`/p/${encodeURIComponent(t)}${e}`);return n.name===`not-found`?void 0:n}function sd(){let[e,t]=(0,A.useState)(()=>id(window.location.pathname));return(0,A.useEffect)(()=>{let e=()=>t(id(window.location.pathname));return window.addEventListener(`popstate`,e),()=>window.removeEventListener(`popstate`,e)},[]),{route:e,navigate:(0,A.useCallback)(e=>{let n=ad(e);n!==window.location.pathname&&window.history.pushState({},``,n),t(e)},[]),back:(0,A.useCallback)(()=>window.history.back(),[])}}var cd=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/App.tsx`;function ld(){let{route:e,navigate:t}=sd(),{data:n}=zn({poll:e.name===`hub`}),r=Xn(),i=(0,A.useMemo)(()=>n?.projects??[],[n]),a=(0,A.useMemo)(()=>n?.groups??[],[n]),o=rd(e)?e.projectId:void 0,s=i.find(e=>e.id===o),c=(0,A.useRef)(void 0);(0,A.useEffect)(()=>{o&&c.current!==o&&(r(o,c.current),c.current=o),o||(c.current=void 0)},[o,r]);let l=(0,A.useCallback)(e=>t({name:`sessions`,projectId:e}),[t]);(0,A.useEffect)(()=>{if(e.name!==`not-found`||!n)return;let r=n.lastActiveProjectId??i[0]?.id;if(!r)return;let a=od(e.path,r);a&&(window.history.replaceState({},``,ad(a)),t(a))},[e,n,i,t]);let[u,d]=(0,A.useState)(),f=ud(),p=(0,A.useCallback)(e=>{e!==o&&l(e)},[o,l]);if((0,A.useEffect)(()=>{if(rd(e))return;let t=e=>{(e.metaKey||e.ctrlKey)&&(e.key.toLowerCase()===`p`||e.key.toLowerCase()===`k`)&&(e.preventDefault(),d(`projects`))};return window.addEventListener(`keydown`,t),()=>window.removeEventListener(`keydown`,t)},[e]),rd(e))return(0,M.jsxDEV)(Zo,{activeKey:Po(e),children:[(0,M.jsxDEV)(At,{projectId:e.projectId,card:s,children:(0,M.jsxDEV)(xu,{projectId:e.projectId,route:e,navigate:t,projects:i,groups:a,card:s,onOpenHub:()=>t({name:`hub`}),onSwitchProject:p},e.projectId,!1,{fileName:cd,lineNumber:102,columnNumber:11},this)},e.projectId,!1,{fileName:cd,lineNumber:101,columnNumber:9},this),(0,M.jsxDEV)(ed,{},void 0,!1,{fileName:cd,lineNumber:114,columnNumber:9},this)]},void 0,!0,{fileName:cd,lineNumber:100,columnNumber:7},this);let m=[..._u({projects:i,groups:a,currentProjectId:o,onSwitch:p}),...f.card?yu({groups:a,card:f.card,onPick:f.pick,onCreate:f.startCreate}):[]];return(0,M.jsxDEV)(Zo,{activeKey:Po(e),children:[(0,M.jsxDEV)(`div`,{className:`app app--hub`,"data-tutorial-inert":!0,children:[(0,M.jsxDEV)(`main`,{className:`main`,children:(0,M.jsxDEV)(Ku,{onOpenProject:l,onRequestMove:e=>{f.start(e),d(`groups`)}},void 0,!1,{fileName:cd,lineNumber:143,columnNumber:11},this)},void 0,!1,{fileName:cd,lineNumber:142,columnNumber:9},this),u&&(0,M.jsxDEV)(fu,{actions:m,initialScope:u,onClose:()=>{d(void 0),f.cancel()}},void 0,!1,{fileName:cd,lineNumber:153,columnNumber:11},this),f.creating&&(0,M.jsxDEV)(Wu,{busy:f.busy,error:f.error,onClose:f.cancel,onSubmit:f.createAndFile},void 0,!1,{fileName:cd,lineNumber:164,columnNumber:11},this)]},void 0,!0,{fileName:cd,lineNumber:141,columnNumber:7},this),(0,M.jsxDEV)(ed,{},void 0,!1,{fileName:cd,lineNumber:173,columnNumber:7},this)]},void 0,!0,{fileName:cd,lineNumber:137,columnNumber:5},this)}function ud(){let e=dr(),t=Gn(),n=Kn(),[r,i]=(0,A.useState)(),[a,o]=(0,A.useState)(!1),s=(0,A.useCallback)((n,r,i)=>{t.mutate({projectId:n.id,groupId:r},{onSuccess:()=>e(r?`${n.name} → ${i}`:`${n.name} is no longer in a group`,`success`),onError:t=>e(t instanceof Error?t.message:`That move did not work.`,`danger`)})},[e,t]),c=(0,A.useCallback)(()=>{o(!1),i(void 0),n.reset()},[n]);return{card:r,creating:a,busy:n.isPending||t.isPending,error:n.error??void 0,start:e=>{o(!1),i(e)},startCreate:()=>o(!0),cancel:c,pick:e=>{r&&s(r,e?.id??null,e?.name??``),i(void 0)},createAndFile:({name:e,color:t})=>{let i=r;n.mutate({name:e,color:t},{onSuccess:e=>{i&&s(i,e.id,e.name),c()}})}}}var dd=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/lib/ThemeProvider.tsx`;function fd({children:e}){let t=j(),{data:n}=Bn(),r=n?.appearance.theme;return(0,A.useEffect)(()=>{Xc(r)&&$c(r)},[r]),(0,A.useEffect)(()=>{let e=e=>{if(e.key!==`invariant.theme`)return;let n=e.newValue??Qc();Xc(n)&&($c(n),t.invalidateQueries({queryKey:Rt.preferences}))};return window.addEventListener(`storage`,e),()=>window.removeEventListener(`storage`,e)},[t]),(0,M.jsxDEV)(M.Fragment,{children:e},void 0,!1,{fileName:dd,lineNumber:46,columnNumber:10},this)}var pd=`/Users/yann/dev/invariant-guru/invariant-cli/apps/cli/ui/src/main.tsx`,md=new Xe({defaultOptions:{queries:{refetchOnWindowFocus:!1,retry:1,staleTime:5e3}}});(0,_t.createRoot)(document.getElementById(`root`)).render((0,M.jsxDEV)(A.StrictMode,{children:(0,M.jsxDEV)(tt,{client:md,children:(0,M.jsxDEV)(fd,{children:(0,M.jsxDEV)(pr,{children:(0,M.jsxDEV)(ld,{},void 0,!1,{fileName:pd,lineNumber:34,columnNumber:11},void 0)},void 0,!1,{fileName:pd,lineNumber:33,columnNumber:9},void 0)},void 0,!1,{fileName:pd,lineNumber:32,columnNumber:7},void 0)},void 0,!1,{fileName:pd,lineNumber:31,columnNumber:5},void 0)},void 0,!1,{fileName:pd,lineNumber:30,columnNumber:3},void 0));export{ta as a,Qe as c,o as d,s as f,_a as i,h as l,el as n,si as o,l as p,va as r,Dt as s,Zc as t,d as u};