@capagents/forgeqe 2.4.1 → 2.4.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.
- package/dist/forgeqe.js +886 -886
- package/dist/web/assets/ApiTests-B-0nk720.js +2 -0
- package/dist/web/assets/Chat-Be6J6POH.js +3 -0
- package/dist/web/assets/{Data-C-xQyf3P.js → Data-BtcD7_T2.js} +4 -4
- package/dist/web/assets/Features-DHIGL43K.js +1 -0
- package/dist/web/assets/Jobs-C-cEyrrH.js +3 -0
- package/dist/web/assets/Quality-C6hKykoO.js +1 -0
- package/dist/web/assets/Record-B5395d_b.js +1 -0
- package/dist/web/assets/Regression-BS5g4T3v.js +2 -0
- package/dist/web/assets/Reports-CHqfhNR8.js +2 -0
- package/dist/web/assets/Response-P2oku3_B.js +8 -0
- package/dist/web/assets/Runs-DPmd5QPL.js +2 -0
- package/dist/web/assets/chevron-right-Cwpv0kJi.js +1 -0
- package/dist/web/assets/circle-dashed-COka5oNi.js +1 -0
- package/dist/web/assets/external-link-B9T-hxHX.js +1 -0
- package/dist/web/assets/file-chart-column-increasing-Ch7H145u.js +1 -0
- package/dist/web/assets/filters-C5e4Y0To.js +1 -0
- package/dist/web/assets/index-BI_5kNwE.css +2 -0
- package/dist/web/assets/index-KUNDUjo0.js +26 -0
- package/dist/web/assets/{markdown-B1Rz6VFK.js → markdown-DclrGj2e.js} +7 -7
- package/dist/web/assets/rotate-ccw-BizUsxuR.js +1 -0
- package/dist/web/assets/sticky-note-CFIxnO7K.js +1 -0
- package/dist/web/assets/terminal-BnhGgg6d.js +1 -0
- package/dist/web/assets/trash-CtWVl2Xk.js +1 -0
- package/dist/web/assets/trending-up-BnzWZEhg.js +1 -0
- package/dist/web/index.html +2 -3
- package/package.json +1 -1
- package/dist/web/assets/ApiTests-CoFraMwL.js +0 -2
- package/dist/web/assets/Chat-BRCv-waj.js +0 -3
- package/dist/web/assets/Features-VtoyECeO.js +0 -1
- package/dist/web/assets/Jobs-8t_bMM0e.js +0 -3
- package/dist/web/assets/Quality-DS_r7p5G.js +0 -1
- package/dist/web/assets/Record-uvTYm_xC.js +0 -1
- package/dist/web/assets/Regression-C09uOUEu.js +0 -2
- package/dist/web/assets/Reports-CZTOMDhT.js +0 -3
- package/dist/web/assets/Response-CgGBxdB7.js +0 -8
- package/dist/web/assets/Runs-B29dpes6.js +0 -2
- package/dist/web/assets/circle-dashed-zjN_W6rR.js +0 -1
- package/dist/web/assets/external-link-D2pA4PJ0.js +0 -1
- package/dist/web/assets/file-chart-column-increasing-FSDL2nUM.js +0 -1
- package/dist/web/assets/index-CJr3aeU5.css +0 -2
- package/dist/web/assets/index-DuYynJ55.js +0 -24
- package/dist/web/assets/rotate-ccw-dA-H7K_B.js +0 -1
- package/dist/web/assets/status-xNQO8J6U.js +0 -3
- package/dist/web/assets/sticky-note-BuQrlbjE.js +0 -1
- package/dist/web/assets/terminal-ib42D5b6.js +0 -1
- package/dist/web/assets/trash-540pMBsR.js +0 -1
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Chat-BRCv-waj.js","assets/status-xNQO8J6U.js","assets/Response-CgGBxdB7.js","assets/markdown-B1Rz6VFK.js","assets/external-link-D2pA4PJ0.js","assets/when-CHnpLdYw.js","assets/Reports-CZTOMDhT.js","assets/circle-dashed-zjN_W6rR.js","assets/Runs-B29dpes6.js","assets/rotate-ccw-dA-H7K_B.js","assets/terminal-ib42D5b6.js","assets/file-chart-column-increasing-FSDL2nUM.js","assets/Record-uvTYm_xC.js","assets/sticky-note-BuQrlbjE.js","assets/trash-540pMBsR.js","assets/Regression-C09uOUEu.js","assets/ApiTests-CoFraMwL.js","assets/Quality-DS_r7p5G.js","assets/Data-C-xQyf3P.js","assets/Features-VtoyECeO.js","assets/Jobs-8t_bMM0e.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{$ as e,$t as t,A as n,At as r,B as i,C as a,Ct as o,D as s,Dt as c,E as l,F as u,Ft as d,G as f,Gt as p,H as m,Ht as h,I as g,It as _,J as v,K as y,M as b,Mt as x,N as S,O as C,P as w,Q as T,R as E,Rt as ee,S as D,St as O,T as k,Tt as te,U as A,Ut as j,V as M,Vt as N,W as ne,Wt as re,X as ie,Y as P,Z as F,Zt as ae,at as oe,b as se,c as ce,cn as I,ct as le,d as ue,dt as de,et as fe,f as pe,fn as me,ft as he,g as ge,gt as _e,h as ve,i as ye,it as be,j as xe,jt as Se,k as Ce,kt as we,l as Te,ln as Ee,lt as De,n as Oe,o as ke,on as Ae,ot as je,p as Me,pt as Ne,q as Pe,qt as Fe,r as Ie,rn as Le,rt as Re,s as ze,sn as Be,st as Ve,t as He,u as Ue,un as We,ut as Ge,v as Ke,vt as qe,w as Je,x as Ye,xt as Xe,yt as Ze,z as Qe,zt as $e}from"./status-xNQO8J6U.js";(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 et=We((e=>{function t(e,t){var n=e.length;e.push(t);a:for(;0<n;){var r=n-1>>>1,a=e[r];if(0<i(a,t))e[r]=t,e[n]=a,n=r;else break a}}function n(e){return e.length===0?null:e[0]}function r(e){if(e.length===0)return null;var t=e[0],n=e.pop();if(n!==t){e[0]=n;a:for(var r=0,a=e.length,o=a>>>1;r<o;){var s=2*(r+1)-1,c=e[s],l=s+1,u=e[l];if(0>i(c,n))l<a&&0>i(u,c)?(e[r]=u,e[l]=n,r=l):(e[r]=c,e[s]=n,r=s);else if(l<a&&0>i(u,n))e[r]=u,e[l]=n,r=l;else break a}}return t}function i(e,t){var n=e.sortIndex-t.sortIndex;return n===0?e.id-t.id:n}if(e.unstable_now=void 0,typeof performance==`object`&&typeof performance.now==`function`){var a=performance;e.unstable_now=function(){return a.now()}}else{var o=Date,s=o.now();e.unstable_now=function(){return o.now()-s}}var c=[],l=[],u=1,d=null,f=3,p=!1,m=!1,h=!1,g=!1,_=typeof setTimeout==`function`?setTimeout:null,v=typeof clearTimeout==`function`?clearTimeout:null,y=typeof setImmediate<`u`?setImmediate:null;function b(e){for(var i=n(l);i!==null;){if(i.callback===null)r(l);else if(i.startTime<=e)r(l),i.sortIndex=i.expirationTime,t(c,i);else break;i=n(l)}}function x(e){if(h=!1,b(e),!m){if(n(c)!==null)m=!0,S||(S=!0,D());else{var t=n(l);t!==null&&te(x,t.startTime-e)}}}var S=!1,C=-1,w=5,T=-1;function E(){return g?!0:!(e.unstable_now()-T<w)}function ee(){if(g=!1,S){var t=e.unstable_now();T=t;var i=!0;try{a:{m=!1,h&&(h=!1,v(C),C=-1),p=!0;var a=f;try{b:{for(b(t),d=n(c);d!==null&&!(d.expirationTime>t&&E());){var o=d.callback;if(typeof o==`function`){d.callback=null,f=d.priorityLevel;var s=o(d.expirationTime<=t);if(t=e.unstable_now(),typeof s==`function`){d.callback=s,b(t),i=!0;break b}d===n(c)&&r(c),b(t)}else r(c);d=n(c)}if(d!==null)i=!0;else{var u=n(l);u!==null&&te(x,u.startTime-t),i=!1}}break a}finally{d=null,f=a,p=!1}i=void 0}}finally{i?D():S=!1}}}var D;if(typeof y==`function`)D=function(){y(ee)};else if(typeof MessageChannel<`u`){var O=new MessageChannel,k=O.port2;O.port1.onmessage=ee,D=function(){k.postMessage(null)}}else D=function(){_(ee,0)};function te(t,n){C=_(function(){t(e.unstable_now())},n)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(e){e.callback=null},e.unstable_forceFrameRate=function(e){0>e||125<e?console.error(`forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported`):w=0<e?Math.floor(1e3/e):5},e.unstable_getCurrentPriorityLevel=function(){return f},e.unstable_next=function(e){switch(f){case 1:case 2:case 3:var t=3;break;default:t=f}var n=f;f=t;try{return e()}finally{f=n}},e.unstable_requestPaint=function(){g=!0},e.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=f;f=e;try{return t()}finally{f=n}},e.unstable_scheduleCallback=function(r,i,a){var o=e.unstable_now();switch(typeof a==`object`&&a?(a=a.delay,a=typeof a==`number`&&0<a?o+a:o):a=o,r){case 1:var s=-1;break;case 2:s=250;break;case 5:s=1073741823;break;case 4:s=1e4;break;default:s=5e3}return s=a+s,r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:s,sortIndex:-1},a>o?(r.sortIndex=a,t(l,r),n(c)===null&&r===n(l)&&(h?(v(C),C=-1):h=!0,te(x,a-o))):(r.sortIndex=s,t(c,r),m||p||(m=!0,S||(S=!0,D()))),r},e.unstable_shouldYield=E,e.unstable_wrapCallback=function(e){var t=f;return function(){var n=f;f=t;try{return e.apply(this,arguments)}finally{f=n}}}})),tt=We(((e,t)=>{t.exports=et()})),nt=We((e=>{var t=Ee();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function r(){}var i={d:{f:r,r:function(){throw Error(n(522))},D:r,C:r,L:r,m:r,X:r,S:r,M:r},p:0,findDOMNode:null},a=Symbol.for(`react.portal`);function o(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:a,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var s=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return o(e,t,null,r)},e.flushSync=function(e){var t=s.T,n=i.p;try{if(s.T=null,i.p=2,e)return e()}finally{s.T=t,i.p=n,i.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,i.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&i.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin),a=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?i.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:a,fetchPriority:o}):n===`script`&&i.d.X(e,{crossOrigin:r,integrity:a,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`){if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=c(t.as,t.crossOrigin);i.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??i.d.M(e)}},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=c(n,t.crossOrigin);i.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`){if(t){var n=c(t.as,t.crossOrigin);i.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else i.d.m(e)}},e.requestFormReset=function(e){i.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return s.H.useFormState(e,t,n)},e.useFormStatus=function(){return s.H.useHostTransitionStatus()},e.version=`19.2.7`})),rt=We(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=nt()})),it=We((e=>{var t=tt(),n=Ee(),r=rt();function i(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function a(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function o(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function s(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function c(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function l(e){if(o(e)!==e)throw Error(i(188))}function u(e){var t=e.alternate;if(!t){if(t=o(e),t===null)throw Error(i(188));return t===e?e:null}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return l(a),e;if(s===r)return l(a),t;s=s.sibling}throw Error(i(188))}if(n.return!==r.return)n=a,r=s;else{for(var c=!1,u=a.child;u;){if(u===n){c=!0,n=a,r=s;break}if(u===r){c=!0,r=a,n=s;break}u=u.sibling}if(!c){for(u=s.child;u;){if(u===n){c=!0,n=s,r=a;break}if(u===r){c=!0,r=s,n=a;break}u=u.sibling}if(!c)throw Error(i(189))}}if(n.alternate!==r)throw Error(i(190))}if(n.tag!==3)throw Error(i(188));return n.stateNode.current===n?e:t}function d(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=d(e),t!==null)return t;e=e.sibling}return null}var f=Object.assign,p=Symbol.for(`react.element`),m=Symbol.for(`react.transitional.element`),h=Symbol.for(`react.portal`),g=Symbol.for(`react.fragment`),_=Symbol.for(`react.strict_mode`),v=Symbol.for(`react.profiler`),y=Symbol.for(`react.consumer`),b=Symbol.for(`react.context`),x=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),C=Symbol.for(`react.suspense_list`),w=Symbol.for(`react.memo`),T=Symbol.for(`react.lazy`),E=Symbol.for(`react.activity`),ee=Symbol.for(`react.memo_cache_sentinel`),D=Symbol.iterator;function O(e){return typeof e!=`object`||!e?null:(e=D&&e[D]||e[`@@iterator`],typeof e==`function`?e:null)}var k=Symbol.for(`react.client.reference`);function te(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===k?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case g:return`Fragment`;case v:return`Profiler`;case _:return`StrictMode`;case S:return`Suspense`;case C:return`SuspenseList`;case E:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case h:return`Portal`;case b:return e.displayName||`Context`;case y:return(e._context.displayName||`Context`)+`.Consumer`;case x:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case w:return t=e.displayName||null,t===null?te(e.type)||`Memo`:t;case T:t=e._payload,e=e._init;try{return te(e(t))}catch{}}return null}var A=Array.isArray,j=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,M=r.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,N={pending:!1,data:null,method:null,action:null},ne=[],re=-1;function ie(e){return{current:e}}function P(e){0>re||(e.current=ne[re],ne[re]=null,re--)}function F(e,t){re++,ne[re]=e.current,e.current=t}var ae=ie(null),oe=ie(null),se=ie(null),ce=ie(null);function I(e,t){switch(F(se,t),F(oe,e),F(ae,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Vd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Vd(t),e=Hd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}P(ae),F(ae,e)}function le(){P(ae),P(oe),P(se)}function ue(e){e.memoizedState!==null&&F(ce,e);var t=ae.current,n=Hd(t,e.type);t!==n&&(F(oe,e),F(ae,n))}function de(e){oe.current===e&&(P(ae),P(oe)),ce.current===e&&(P(ce),Qf._currentValue=N)}var fe,pe;function me(e){if(fe===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);fe=t&&t[1]||``,pe=-1<e.stack.indexOf(`
|
|
3
|
-
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
4
|
-
`+fe+e+pe}var he=!1;function ge(e,t){if(!e||he)return``;he=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
5
|
-
`),l=s.split(`
|
|
6
|
-
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
7
|
-
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{he=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?me(n):``}function _e(e,t){switch(e.tag){case 26:case 27:case 5:return me(e.type);case 16:return me(`Lazy`);case 13:return e.child!==t&&t!==null?me(`Suspense Fallback`):me(`Suspense`);case 19:return me(`SuspenseList`);case 0:case 15:return ge(e.type,!1);case 11:return ge(e.type.render,!1);case 1:return ge(e.type,!0);case 31:return me(`Activity`);default:return``}}function ve(e){try{var t=``,n=null;do t+=_e(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
8
|
-
Error generating stack: `+e.message+`
|
|
9
|
-
`+e.stack}}var ye=Object.prototype.hasOwnProperty,be=t.unstable_scheduleCallback,xe=t.unstable_cancelCallback,Se=t.unstable_shouldYield,Ce=t.unstable_requestPaint,we=t.unstable_now,Te=t.unstable_getCurrentPriorityLevel,De=t.unstable_ImmediatePriority,Oe=t.unstable_UserBlockingPriority,ke=t.unstable_NormalPriority,Ae=t.unstable_LowPriority,je=t.unstable_IdlePriority,Me=t.log,Ne=t.unstable_setDisableYieldValue,Pe=null,Fe=null;function Ie(e){if(typeof Me==`function`&&Ne(e),Fe&&typeof Fe.setStrictMode==`function`)try{Fe.setStrictMode(Pe,e)}catch{}}var Le=Math.clz32?Math.clz32:Be,Re=Math.log,ze=Math.LN2;function Be(e){return e>>>=0,e===0?32:31-(Re(e)/ze|0)|0}var Ve=256,He=262144,Ue=4194304;function We(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function Ge(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=We(n))):i=We(o):i=We(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=We(n))):i=We(o)):i=We(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 Ke(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function qe(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Je(){var e=Ue;return Ue<<=1,!(Ue&62914560)&&(Ue=4194304),e}function Ye(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function Xe(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-Le(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&&Qe(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function Qe(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Le(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function $e(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Le(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function et(e,t){var n=t&-t;return n=n&42?1:nt(n),(n&(e.suspendedLanes|t))===0?n:0}function nt(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 it(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function at(){var e=M.p;return e===0?(e=window.event,e===void 0?32:mp(e.type)):e}function ot(e,t){var n=M.p;try{return M.p=e,t()}finally{M.p=n}}var st=Math.random().toString(36).slice(2),ct=`__reactFiber$`+st,lt=`__reactProps$`+st,ut=`__reactContainer$`+st,dt=`__reactEvents$`+st,ft=`__reactListeners$`+st,pt=`__reactHandles$`+st,mt=`__reactResources$`+st,ht=`__reactMarker$`+st;function gt(e){delete e[ct],delete e[lt],delete e[dt],delete e[ft],delete e[pt]}function _t(e){var t=e[ct];if(t)return t;for(var n=e.parentNode;n;){if(t=n[ut]||n[ct]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=df(e);e!==null;){if(n=e[ct])return n;e=df(e)}return t}e=n,n=e.parentNode}return null}function vt(e){if(e=e[ct]||e[ut]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function yt(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(i(33))}function bt(e){var t=e[mt];return t||=e[mt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function xt(e){e[ht]=!0}var St=new Set,Ct={};function wt(e,t){Tt(e,t),Tt(e+`Capture`,t)}function Tt(e,t){for(Ct[e]=t,e=0;e<t.length;e++)St.add(t[e])}var Et=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]*$`),Dt={},Ot={};function kt(e){return ye.call(Ot,e)?!0:ye.call(Dt,e)?!1:Et.test(e)?Ot[e]=!0:(Dt[e]=!0,!1)}function At(e,t,n){if(kt(t)){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}}function jt(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Mt(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Nt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function Pt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function Ft(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function It(e){if(!e._valueTracker){var t=Pt(e)?`checked`:`value`;e._valueTracker=Ft(e,t,``+e[t])}}function Lt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=Pt(e)?e.checked?`true`:`false`:e.value),e=r,e!==n&&(t.setValue(e),!0)}function Rt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var zt=/[\n"\\]/g;function Bt(e){return e.replace(zt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Vt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Nt(t)):e.value!==``+Nt(t)&&(e.value=``+Nt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):Ut(e,o,Nt(n)):Ut(e,o,Nt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Nt(s):e.removeAttribute(`name`)}function Ht(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){It(e);return}n=n==null?``:``+Nt(n),t=t==null?n:``+Nt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),It(e)}function Ut(e,t,n){t===`number`&&Rt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function Wt(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=``+Nt(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 Gt(e,t,n){t!=null&&(t=``+Nt(t),t!==e.value&&(e.value=t),n==null)?e.defaultValue!==t&&(e.defaultValue=t):e.defaultValue=n==null?``:``+Nt(n)}function Kt(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(i(92));if(A(r)){if(1<r.length)throw Error(i(93));r=r[0]}n=r}n??=``,t=n}n=Nt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),It(e)}function qt(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var Jt=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function Yt(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||Jt.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function Xt(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(i(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var a in t)r=t[a],t.hasOwnProperty(a)&&n[a]!==r&&Yt(e,a,r)}else for(var o in t)t.hasOwnProperty(o)&&Yt(e,o,t[o])}function Zt(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var Qt=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),$t=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function en(e){return $t.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function tn(){}var nn=null;function rn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var an=null,on=null;function sn(e){var t=vt(e);if(t&&(e=t.stateNode)){var n=e[lt]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Vt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Bt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=r[lt]||null;if(!a)throw Error(i(90));Vt(r,a.value,a.defaultValue,a.defaultValue,a.checked,a.defaultChecked,a.type,a.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Lt(r)}break a;case`textarea`:Gt(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&Wt(e,!!n.multiple,t,!1)}}}var cn=!1;function ln(e,t,n){if(cn)return e(t,n);cn=!0;try{return e(t)}finally{if(cn=!1,(an!==null||on!==null)&&(bu(),an&&(t=an,e=on,on=an=null,sn(t),e)))for(t=0;t<e.length;t++)sn(e[t])}}function un(e,t){var n=e.stateNode;if(n===null)return null;var r=n[lt]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=e!==`button`&&e!==`input`&&e!==`select`&&e!==`textarea`),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(i(231,t,typeof n));return n}var dn=typeof window<`u`&&window.document!==void 0&&window.document.createElement!==void 0,fn=!1;if(dn)try{var pn={};Object.defineProperty(pn,"passive",{get:function(){fn=!0}}),window.addEventListener(`test`,pn,pn),window.removeEventListener(`test`,pn,pn)}catch{fn=!1}var mn=null,hn=null,gn=null;function _n(){if(gn)return gn;var e,t=hn,n=t.length,r,i=`value`in mn?mn.value:mn.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 gn=i.slice(e,1<r?1-r:void 0)}function vn(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 yn(){return!0}function bn(){return!1}function xn(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)?yn:bn,this.isPropagationStopped=bn,this}return f(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=yn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=yn)},persist:function(){},isPersistent:yn}),t}var Sn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Cn=xn(Sn),wn=f({},Sn,{view:0,detail:0}),Tn=xn(wn),En,Dn,On,kn=f({},wn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Bn,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!==On&&(On&&e.type===`mousemove`?(En=e.screenX-On.screenX,Dn=e.screenY-On.screenY):Dn=En=0,On=e),En)},movementY:function(e){return`movementY`in e?e.movementY:Dn}}),An=xn(kn),jn=xn(f({},kn,{dataTransfer:0})),Mn=xn(f({},wn,{relatedTarget:0})),Nn=xn(f({},Sn,{animationName:0,elapsedTime:0,pseudoElement:0})),Pn=xn(f({},Sn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Fn=xn(f({},Sn,{data:0})),In={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Ln={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`},Rn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function zn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Rn[e])?!!t[e]:!1}function Bn(){return zn}var Vn=xn(f({},wn,{key:function(e){if(e.key){var t=In[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=vn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Ln[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Bn,charCode:function(e){return e.type===`keypress`?vn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?vn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Hn=xn(f({},kn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Un=xn(f({},wn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Bn})),Wn=xn(f({},Sn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Gn=xn(f({},kn,{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})),Kn=xn(f({},Sn,{newState:0,oldState:0})),qn=[9,13,27,32],Jn=dn&&`CompositionEvent`in window,Yn=null;dn&&`documentMode`in document&&(Yn=document.documentMode);var Xn=dn&&`TextEvent`in window&&!Yn,Zn=dn&&(!Jn||Yn&&8<Yn&&11>=Yn),L=` `,R=!1;function Qn(e,t){switch(e){case`keyup`:return qn.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function $n(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var er=!1;function tr(e,t){switch(e){case`compositionend`:return $n(t);case`keypress`:return t.which===32?(R=!0,L):null;case`textInput`:return e=t.data,e===L&&R?null:e;default:return null}}function nr(e,t){if(er)return e===`compositionend`||!Jn&&Qn(e,t)?(e=_n(),gn=hn=mn=null,er=!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 Zn&&t.locale!==`ko`?null:t.data;default:return null}}var rr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function ir(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!rr[e.type]:t===`textarea`}function ar(e,t,n,r){an?on?on.push(r):on=[r]:an=r,t=Ed(t,`onChange`),0<t.length&&(n=new Cn(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var or=null,sr=null;function cr(e){yd(e,0)}function lr(e){if(Lt(yt(e)))return e}function ur(e,t){if(e===`change`)return t}var dr=!1;if(dn){var fr;if(dn){var pr=`oninput`in document;if(!pr){var mr=document.createElement(`div`);mr.setAttribute(`oninput`,`return;`),pr=typeof mr.oninput==`function`}fr=pr}else fr=!1;dr=fr&&(!document.documentMode||9<document.documentMode)}function hr(){or&&(or.detachEvent(`onpropertychange`,gr),sr=or=null)}function gr(e){if(e.propertyName===`value`&&lr(sr)){var t=[];ar(t,sr,e,rn(e)),ln(cr,t)}}function _r(e,t,n){e===`focusin`?(hr(),or=t,sr=n,or.attachEvent(`onpropertychange`,gr)):e===`focusout`&&hr()}function vr(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return lr(sr)}function yr(e,t){if(e===`click`)return lr(t)}function br(e,t){if(e===`input`||e===`change`)return lr(t)}function xr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Sr=typeof Object.is==`function`?Object.is:xr;function Cr(e,t){if(Sr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!ye.call(t,i)||!Sr(e[i],t[i]))return!1}return!0}function wr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Tr(e,t){var n=wr(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=wr(n)}}function Er(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Er(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Dr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Rt(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=Rt(e.document)}return t}function Or(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var kr=dn&&`documentMode`in document&&11>=document.documentMode,Ar=null,jr=null,Mr=null,Nr=!1;function Pr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Nr||Ar==null||Ar!==Rt(r)||(r=Ar,`selectionStart`in r&&Or(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}),Mr&&Cr(Mr,r)||(Mr=r,r=Ed(jr,`onSelect`),0<r.length&&(t=new Cn(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Ar)))}function Fr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Ir={animationend:Fr(`Animation`,`AnimationEnd`),animationiteration:Fr(`Animation`,`AnimationIteration`),animationstart:Fr(`Animation`,`AnimationStart`),transitionrun:Fr(`Transition`,`TransitionRun`),transitionstart:Fr(`Transition`,`TransitionStart`),transitioncancel:Fr(`Transition`,`TransitionCancel`),transitionend:Fr(`Transition`,`TransitionEnd`)},Lr={},Rr={};dn&&(Rr=document.createElement(`div`).style,`AnimationEvent`in window||(delete Ir.animationend.animation,delete Ir.animationiteration.animation,delete Ir.animationstart.animation),`TransitionEvent`in window||delete Ir.transitionend.transition);function zr(e){if(Lr[e])return Lr[e];if(!Ir[e])return e;var t=Ir[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Rr)return Lr[e]=t[n];return e}var Br=zr(`animationend`),Vr=zr(`animationiteration`),Hr=zr(`animationstart`),Ur=zr(`transitionrun`),Wr=zr(`transitionstart`),Gr=zr(`transitioncancel`),Kr=zr(`transitionend`),qr=new Map,Jr=`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(` `);Jr.push(`scrollEnd`);function Yr(e,t){qr.set(e,t),wt(t,[e])}var Xr=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},Zr=[],Qr=0,$r=0;function ei(){for(var e=Qr,t=$r=Qr=0;t<e;){var n=Zr[t];Zr[t++]=null;var r=Zr[t];Zr[t++]=null;var i=Zr[t];Zr[t++]=null;var a=Zr[t];if(Zr[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&ii(n,i,a)}}function ti(e,t,n,r){Zr[Qr++]=e,Zr[Qr++]=t,Zr[Qr++]=n,Zr[Qr++]=r,$r|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function ni(e,t,n,r){return ti(e,t,n,r),ai(e)}function ri(e,t){return ti(e,null,null,t),ai(e)}function ii(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Le(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function ai(e){if(50<du)throw du=0,fu=null,Error(i(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var oi={};function si(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function ci(e,t,n,r){return new si(e,t,n,r)}function li(e){return e=e.prototype,!(!e||!e.isReactComponent)}function ui(e,t){var n=e.alternate;return n===null?(n=ci(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function di(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function fi(e,t,n,r,a,o){var s=0;if(r=e,typeof e==`function`)li(e)&&(s=1);else if(typeof e==`string`)s=Uf(e,n,ae.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case E:return e=ci(31,n,t,a),e.elementType=E,e.lanes=o,e;case g:return pi(n.children,a,o,t);case _:s=8,a|=24;break;case v:return e=ci(12,n,t,a|2),e.elementType=v,e.lanes=o,e;case S:return e=ci(13,n,t,a),e.elementType=S,e.lanes=o,e;case C:return e=ci(19,n,t,a),e.elementType=C,e.lanes=o,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case b:s=10;break a;case y:s=9;break a;case x:s=11;break a;case w:s=14;break a;case T:s=16,r=null;break a}s=29,n=Error(i(130,e===null?`null`:typeof e,``)),r=null}return t=ci(s,n,t,a),t.elementType=e,t.type=r,t.lanes=o,t}function pi(e,t,n,r){return e=ci(7,e,r,t),e.lanes=n,e}function mi(e,t,n){return e=ci(6,e,null,t),e.lanes=n,e}function hi(e){var t=ci(18,null,null,0);return t.stateNode=e,t}function gi(e,t,n){return t=ci(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var _i=new WeakMap;function vi(e,t){if(typeof e==`object`&&e){var n=_i.get(e);return n===void 0?(t={value:e,source:t,stack:ve(t)},_i.set(e,t),t):n}return{value:e,source:t,stack:ve(t)}}var yi=[],bi=0,xi=null,Si=0,Ci=[],wi=0,Ti=null,Ei=1,Di=``;function Oi(e,t){yi[bi++]=Si,yi[bi++]=xi,xi=e,Si=t}function ki(e,t,n){Ci[wi++]=Ei,Ci[wi++]=Di,Ci[wi++]=Ti,Ti=e;var r=Ei;e=Di;var i=32-Le(r)-1;r&=~(1<<i),n+=1;var a=32-Le(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Ei=1<<32-Le(t)+i|n<<i|r,Di=a+e}else Ei=1<<a|n<<i|r,Di=e}function Ai(e){e.return!==null&&(Oi(e,1),ki(e,1,0))}function ji(e){for(;e===xi;)xi=yi[--bi],yi[bi]=null,Si=yi[--bi],yi[bi]=null;for(;e===Ti;)Ti=Ci[--wi],Ci[wi]=null,Di=Ci[--wi],Ci[wi]=null,Ei=Ci[--wi],Ci[wi]=null}function Mi(e,t){Ci[wi++]=Ei,Ci[wi++]=Di,Ci[wi++]=Ti,Ei=t.id,Di=t.overflow,Ti=e}var Ni=null,z=null,B=!1,Pi=null,Fi=!1,V=Error(i(519));function Ii(e){throw Hi(vi(Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),V}function Li(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[ct]=e,t[lt]=r,n){case`dialog`:Q(`cancel`,t),Q(`close`,t);break;case`iframe`:case`object`:case`embed`:Q(`load`,t);break;case`video`:case`audio`:for(n=0;n<_d.length;n++)Q(_d[n],t);break;case`source`:Q(`error`,t);break;case`img`:case`image`:case`link`:Q(`error`,t),Q(`load`,t);break;case`details`:Q(`toggle`,t);break;case`input`:Q(`invalid`,t),Ht(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:Q(`invalid`,t);break;case`textarea`:Q(`invalid`,t),Kt(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||Md(t.textContent,n)?(r.popover!=null&&(Q(`beforetoggle`,t),Q(`toggle`,t)),r.onScroll!=null&&Q(`scroll`,t),r.onScrollEnd!=null&&Q(`scrollend`,t),r.onClick!=null&&(t.onclick=tn),t=!0):t=!1,t||Ii(e,!0)}function Ri(e){for(Ni=e.return;Ni;)switch(Ni.tag){case 5:case 31:case 13:Fi=!1;return;case 27:case 3:Fi=!0;return;default:Ni=Ni.return}}function zi(e){if(e!==Ni)return!1;if(!B)return Ri(e),B=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=n===`form`||n===`button`||Ud(e.type,e.memoizedProps)),n=!n),n&&z&&Ii(e),Ri(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));z=uf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(317));z=uf(e)}else t===27?(t=z,Zd(e.type)?(e=lf,lf=null,z=e):z=t):z=Ni?cf(e.stateNode.nextSibling):null;return!0}function Bi(){z=Ni=null,B=!1}function Vi(){var e=Pi;return e!==null&&(Zl===null?Zl=e:Zl.push.apply(Zl,e),Pi=null),e}function Hi(e){Pi===null?Pi=[e]:Pi.push(e)}var Ui=ie(null),Wi=null,Gi=null;function Ki(e,t,n){F(Ui,t._currentValue),t._currentValue=n}function qi(e){e._currentValue=Ui.current,P(Ui)}function Ji(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function Yi(e,t,n,r){var a=e.child;for(a!==null&&(a.return=e);a!==null;){var o=a.dependencies;if(o!==null){var s=a.child;o=o.firstContext;a:for(;o!==null;){var c=o;o=a;for(var l=0;l<t.length;l++)if(c.context===t[l]){o.lanes|=n,c=o.alternate,c!==null&&(c.lanes|=n),Ji(o.return,n,e),r||(s=null);break a}o=c.next}}else if(a.tag===18){if(s=a.return,s===null)throw Error(i(341));s.lanes|=n,o=s.alternate,o!==null&&(o.lanes|=n),Ji(s,n,e),s=null}else s=a.child;if(s!==null)s.return=a;else for(s=a;s!==null;){if(s===e){s=null;break}if(a=s.sibling,a!==null){a.return=s.return,s=a;break}s=s.return}a=s}}function Xi(e,t,n,r){e=null;for(var a=t,o=!1;a!==null;){if(!o){if(a.flags&524288)o=!0;else if(a.flags&262144)break}if(a.tag===10){var s=a.alternate;if(s===null)throw Error(i(387));if(s=s.memoizedProps,s!==null){var c=a.type;Sr(a.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(a===ce.current){if(s=a.alternate,s===null)throw Error(i(387));s.memoizedState.memoizedState!==a.memoizedState.memoizedState&&(e===null?e=[Qf]:e.push(Qf))}a=a.return}e!==null&&Yi(t,e,n,r),t.flags|=262144}function Zi(e){for(e=e.firstContext;e!==null;){if(!Sr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function Qi(e){Wi=e,Gi=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function H(e){return ea(Wi,e)}function $i(e,t){return Wi===null&&Qi(e),ea(e,t)}function ea(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},Gi===null){if(e===null)throw Error(i(308));Gi=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else Gi=Gi.next=t;return n}var ta=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()})}},na=t.unstable_scheduleCallback,ra=t.unstable_NormalPriority,ia={$$typeof:b,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function aa(){return{controller:new ta,data:new Map,refCount:0}}function oa(e){e.refCount--,e.refCount===0&&na(ra,function(){e.controller.abort()})}var sa=null,ca=0,la=0,ua=null;function da(e,t){if(sa===null){var n=sa=[];ca=0,la=dd(),ua={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return ca++,t.then(fa,fa),t}function fa(){if(--ca===0&&sa!==null){ua!==null&&(ua.status=`fulfilled`);var e=sa;sa=null,la=0,ua=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function pa(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var ma=j.S;j.S=function(e,t){eu=we(),typeof t==`object`&&t&&typeof t.then==`function`&&da(e,t),ma!==null&&ma(e,t)};var ha=ie(null);function ga(){var e=ha.current;return e===null?q.pooledCache:e}function _a(e,t){t===null?F(ha,ha.current):F(ha,t.pool)}function va(){var e=ga();return e===null?null:{parent:ia._currentValue,pool:e}}var ya=Error(i(460)),ba=Error(i(474)),xa=Error(i(542)),Sa={then:function(){}};function Ca(e){return e=e.status,e===`fulfilled`||e===`rejected`}function wa(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(tn,tn),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Oa(e),e;default:if(typeof t.status==`string`)t.then(tn,tn);else{if(e=q,e!==null&&100<e.shellSuspendCounter)throw Error(i(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Oa(e),e}throw Ea=t,ya}}function Ta(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Ea=e,ya):e}}var Ea=null;function Da(){if(Ea===null)throw Error(i(459));var e=Ea;return Ea=null,e}function Oa(e){if(e===ya||e===xa)throw Error(i(483))}var ka=null,Aa=0;function ja(e){var t=Aa;return Aa+=1,ka===null&&(ka=[]),wa(ka,e,t)}function Ma(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function Na(e,t){throw t.$$typeof===p?Error(i(525)):(e=Object.prototype.toString.call(t),Error(i(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Pa(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function a(e,t){return e=ui(e,t),e.index=0,e.sibling=null,e}function o(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=mi(n,e.mode,r),t.return=e,t):(t=a(t,n),t.return=e,t)}function l(e,t,n,r){var i=n.type;return i===g?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===i||typeof i==`object`&&i&&i.$$typeof===T&&Ta(i)===t.type)?(t=a(t,n.props),Ma(t,n),t.return=e,t):(t=fi(n.type,n.key,n.props,null,e.mode,r),Ma(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=gi(n,e.mode,r),t.return=e,t):(t=a(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,i){return t===null||t.tag!==7?(t=pi(n,e.mode,r,i),t.return=e,t):(t=a(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=mi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case m:return n=fi(t.type,t.key,t.props,null,e.mode,n),Ma(n,t),n.return=e,n;case h:return t=gi(t,e.mode,n),t.return=e,t;case T:return t=Ta(t),f(e,t,n)}if(A(t)||O(t))return t=pi(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,ja(t),n);if(t.$$typeof===b)return f(e,$i(e,t),n);Na(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case m:return n.key===i?l(e,t,n,r):null;case h:return n.key===i?u(e,t,n,r):null;case T:return n=Ta(n),p(e,t,n,r)}if(A(n)||O(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,ja(n),r);if(n.$$typeof===b)return p(e,t,$i(e,n),r);Na(e,n)}return null}function _(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case m:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case h:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case T:return r=Ta(r),_(e,t,n,r,i)}if(A(r)||O(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return _(e,t,n,ja(r),i);if(r.$$typeof===b)return _(e,t,n,$i(t,r),i);Na(t,r)}return null}function v(i,a,s,c){for(var l=null,u=null,d=a,m=a=0,h=null;d!==null&&m<s.length;m++){d.index>m?(h=d,d=null):h=d.sibling;var g=p(i,d,s[m],c);if(g===null){d===null&&(d=h);break}e&&d&&g.alternate===null&&t(i,d),a=o(g,a,m),u===null?l=g:u.sibling=g,u=g,d=h}if(m===s.length)return n(i,d),B&&Oi(i,m),l;if(d===null){for(;m<s.length;m++)d=f(i,s[m],c),d!==null&&(a=o(d,a,m),u===null?l=d:u.sibling=d,u=d);return B&&Oi(i,m),l}for(d=r(d);m<s.length;m++)h=_(d,i,m,s[m],c),h!==null&&(e&&h.alternate!==null&&d.delete(h.key===null?m:h.key),a=o(h,a,m),u===null?l=h:u.sibling=h,u=h);return e&&d.forEach(function(e){return t(i,e)}),B&&Oi(i,m),l}function y(a,s,c,l){if(c==null)throw Error(i(151));for(var u=null,d=null,m=s,h=s=0,g=null,v=c.next();m!==null&&!v.done;h++,v=c.next()){m.index>h?(g=m,m=null):g=m.sibling;var y=p(a,m,v.value,l);if(y===null){m===null&&(m=g);break}e&&m&&y.alternate===null&&t(a,m),s=o(y,s,h),d===null?u=y:d.sibling=y,d=y,m=g}if(v.done)return n(a,m),B&&Oi(a,h),u;if(m===null){for(;!v.done;h++,v=c.next())v=f(a,v.value,l),v!==null&&(s=o(v,s,h),d===null?u=v:d.sibling=v,d=v);return B&&Oi(a,h),u}for(m=r(m);!v.done;h++,v=c.next())v=_(m,a,h,v.value,l),v!==null&&(e&&v.alternate!==null&&m.delete(v.key===null?h:v.key),s=o(v,s,h),d===null?u=v:d.sibling=v,d=v);return e&&m.forEach(function(e){return t(a,e)}),B&&Oi(a,h),u}function x(e,r,o,c){if(typeof o==`object`&&o&&o.type===g&&o.key===null&&(o=o.props.children),typeof o==`object`&&o){switch(o.$$typeof){case m:a:{for(var l=o.key;r!==null;){if(r.key===l){if(l=o.type,l===g){if(r.tag===7){n(e,r.sibling),c=a(r,o.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===T&&Ta(l)===r.type){n(e,r.sibling),c=a(r,o.props),Ma(c,o),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}o.type===g?(c=pi(o.props.children,e.mode,c,o.key),c.return=e,e=c):(c=fi(o.type,o.key,o.props,null,e.mode,c),Ma(c,o),c.return=e,e=c)}return s(e);case h:a:{for(l=o.key;r!==null;){if(r.key===l){if(r.tag===4&&r.stateNode.containerInfo===o.containerInfo&&r.stateNode.implementation===o.implementation){n(e,r.sibling),c=a(r,o.children||[]),c.return=e,e=c;break a}n(e,r);break}t(e,r),r=r.sibling}c=gi(o,e.mode,c),c.return=e,e=c}return s(e);case T:return o=Ta(o),x(e,r,o,c)}if(A(o))return v(e,r,o,c);if(O(o)){if(l=O(o),typeof l!=`function`)throw Error(i(150));return o=l.call(o),y(e,r,o,c)}if(typeof o.then==`function`)return x(e,r,ja(o),c);if(o.$$typeof===b)return x(e,r,$i(e,o),c);Na(e,o)}return typeof o==`string`&&o!==``||typeof o==`number`||typeof o==`bigint`?(o=``+o,r!==null&&r.tag===6?(n(e,r.sibling),c=a(r,o),c.return=e,e=c):(n(e,r),c=mi(o,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Aa=0;var i=x(e,t,n,r);return ka=null,i}catch(t){if(t===ya||t===xa)throw t;var a=ci(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Fa=Pa(!0),Ia=Pa(!1),La=!1;function Ra(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function za(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 Ba(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Va(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,K&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=ai(e),ii(e,null,n),t}return ti(e,r,t,n),ai(e)}function Ha(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,$e(e,n)}}function Ua(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}else e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var Wa=!1;function Ga(){if(Wa){var e=ua;if(e!==null)throw e}}function Ka(e,t,n,r){Wa=!1;var i=e.updateQueue;La=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var p=s.lane&-536870913,m=p!==s.lane;if(m?(Y&p)===p:(r&p)===p){p!==0&&p===la&&(Wa=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;p=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,p);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,p=typeof h==`function`?h.call(_,d,p):h,p==null)break a;d=f({},d,p);break a;case 2:La=!0}}p=s.callback,p!==null&&(e.flags|=64,m&&(e.flags|=8192),m=i.callbacks,m===null?i.callbacks=[p]:m.push(p))}else m={lane:p,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=m,c=d):u=u.next=m,o|=p;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;m=s,s=m.next,m.next=null,i.lastBaseUpdate=m,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),Gl|=o,e.lanes=o,e.memoizedState=d}}function qa(e,t){if(typeof e!=`function`)throw Error(i(191,e));e.call(t)}function Ja(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)qa(n[e],t)}var Ya=ie(null),Xa=ie(0);function Za(e,t){e=Ul,F(Xa,e),F(Ya,t),Ul=e|t.baseLanes}function Qa(){F(Xa,Ul),F(Ya,Ya.current)}function $a(){Ul=Xa.current,P(Ya),P(Xa)}var eo=ie(null),to=null;function no(e){var t=e.alternate;F(so,so.current&1),F(eo,e),to===null&&(t===null||Ya.current!==null||t.memoizedState!==null)&&(to=e)}function ro(e){F(so,so.current),F(eo,e),to===null&&(to=e)}function io(e){e.tag===22?(F(so,so.current),F(eo,e),to===null&&(to=e)):ao(e)}function ao(){F(so,so.current),F(eo,eo.current)}function oo(e){P(eo),to===e&&(to=null),P(so)}var so=ie(0);function co(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||af(n)||of(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var lo=0,U=null,W=null,uo=null,fo=!1,po=!1,mo=!1,ho=0,go=0,_o=null,vo=0;function yo(){throw Error(i(321))}function bo(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Sr(e[n],t[n]))return!1;return!0}function xo(e,t,n,r,i,a){return lo=a,U=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,j.H=e===null||e.memoizedState===null?Rs:zs,mo=!1,a=n(r,i),mo=!1,po&&(a=Co(t,n,r,i)),So(e),a}function So(e){j.H=Ls;var t=W!==null&&W.next!==null;if(lo=0,uo=W=U=null,fo=!1,go=0,_o=null,t)throw Error(i(300));e===null||nc||(e=e.dependencies,e!==null&&Zi(e)&&(nc=!0))}function Co(e,t,n,r){U=e;var a=0;do{if(po&&(_o=null),go=0,po=!1,25<=a)throw Error(i(301));if(a+=1,uo=W=null,e.updateQueue!=null){var o=e.updateQueue;o.lastEffect=null,o.events=null,o.stores=null,o.memoCache!=null&&(o.memoCache.index=0)}j.H=Bs,o=t(n,r)}while(po);return o}function wo(){var e=j.H,t=e.useState()[0];return t=typeof t.then==`function`?jo(t):t,e=e.useState()[0],(W===null?null:W.memoizedState)!==e&&(U.flags|=1024),t}function To(){var e=ho!==0;return ho=0,e}function Eo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function Do(e){if(fo){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}fo=!1}lo=0,uo=W=U=null,po=!1,go=ho=0,_o=null}function Oo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return uo===null?U.memoizedState=uo=e:uo=uo.next=e,uo}function ko(){if(W===null){var e=U.alternate;e=e===null?null:e.memoizedState}else e=W.next;var t=uo===null?U.memoizedState:uo.next;if(t!==null)uo=t,W=e;else{if(e===null)throw U.alternate===null?Error(i(467)):Error(i(310));W=e,e={memoizedState:W.memoizedState,baseState:W.baseState,baseQueue:W.baseQueue,queue:W.queue,next:null},uo===null?U.memoizedState=uo=e:uo=uo.next=e}return uo}function Ao(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function jo(e){var t=go;return go+=1,_o===null&&(_o=[]),e=wa(_o,e,t),t=U,(uo===null?t.memoizedState:uo.next)===null&&(t=t.alternate,j.H=t===null||t.memoizedState===null?Rs:zs),e}function Mo(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return jo(e);if(e.$$typeof===b)return H(e)}throw Error(i(438,String(e)))}function No(e){var t=null,n=U.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=U.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=Ao(),U.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=ee;return t.index++,n}function Po(e,t){return typeof t==`function`?t(e):t}function Fo(e){return Io(ko(),W,e)}function Io(e,t,n){var r=e.queue;if(r===null)throw Error(i(311));r.lastRenderedReducer=n;var a=e.baseQueue,o=r.pending;if(o!==null){if(a!==null){var s=a.next;a.next=o.next,o.next=s}t.baseQueue=a=o,r.pending=null}if(o=e.baseState,a===null)e.memoizedState=o;else{t=a.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(lo&f)===f:(Y&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===la&&(d=!0);else if((lo&p)===p){u=u.next,p===la&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=o):l=l.next=f,U.lanes|=p,Gl|=p;f=u.action,mo&&n(o,f),o=u.hasEagerState?u.eagerState:n(o,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=o):l=l.next=p,U.lanes|=f,Gl|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=o:l.next=c,!Sr(o,e.memoizedState)&&(nc=!0,d&&(n=ua,n!==null)))throw n;e.memoizedState=o,e.baseState=s,e.baseQueue=l,r.lastRenderedState=o}return a===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Lo(e){var t=ko(),n=t.queue;if(n===null)throw Error(i(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,o=t.memoizedState;if(a!==null){n.pending=null;var s=a=a.next;do o=e(o,s.action),s=s.next;while(s!==a);Sr(o,t.memoizedState)||(nc=!0),t.memoizedState=o,t.baseQueue===null&&(t.baseState=o),n.lastRenderedState=o}return[o,r]}function Ro(e,t,n){var r=U,a=ko(),o=B;if(o){if(n===void 0)throw Error(i(407));n=n()}else n=t();var s=!Sr((W||a).memoizedState,n);if(s&&(a.memoizedState=n,nc=!0),a=a.queue,ls(Vo.bind(null,r,a,e),[e]),a.getSnapshot!==t||s||uo!==null&&uo.memoizedState.tag&1){if(r.flags|=2048,is(9,{destroy:void 0},Bo.bind(null,r,a,n,t),null),q===null)throw Error(i(349));o||lo&127||zo(r,t,n)}return n}function zo(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=U.updateQueue,t===null?(t=Ao(),U.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function Bo(e,t,n,r){t.value=n,t.getSnapshot=r,Ho(t)&&Uo(e)}function Vo(e,t,n){return n(function(){Ho(t)&&Uo(e)})}function Ho(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Sr(e,n)}catch{return!0}}function Uo(e){var t=ri(e,2);t!==null&&hu(t,e,2)}function Wo(e){var t=Oo();if(typeof e==`function`){var n=e;if(e=n(),mo){Ie(!0);try{n()}finally{Ie(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Po,lastRenderedState:e},t}function Go(e,t,n,r){return e.baseState=n,Io(e,W,typeof r==`function`?r:Po)}function Ko(e,t,n,r,a){if(Ps(e))throw Error(i(485));if(e=t.action,e!==null){var o={payload:a,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){o.listeners.push(e)}};j.T===null?o.isTransition=!1:n(!0),r(o),n=t.pending,n===null?(o.next=t.pending=o,qo(t,o)):(o.next=n.next,t.pending=n.next=o)}}function qo(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=j.T,o={};j.T=o;try{var s=n(i,r),c=j.S;c!==null&&c(o,s),Jo(e,t,s)}catch(n){Xo(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),j.T=a}}else try{a=n(i,r),Jo(e,t,a)}catch(n){Xo(e,t,n)}}function Jo(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){Yo(e,t,n)},function(n){return Xo(e,t,n)}):Yo(e,t,n)}function Yo(e,t,n){t.status=`fulfilled`,t.value=n,Zo(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,qo(e,n)))}function Xo(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,Zo(t),t=t.next;while(t!==r)}e.action=null}function Zo(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function Qo(e,t){return t}function $o(e,t){if(B){var n=q.formState;if(n!==null){a:{var r=U;if(B){if(z){b:{for(var i=z,a=Fi;i.nodeType!==8;)if(!a||(i=cf(i.nextSibling),i===null)){i=null;break b}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){z=cf(i.nextSibling),r=i.data===`F!`;break a}}Ii(r)}r=!1}r&&(t=n[0])}}return n=Oo(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Qo,lastRenderedState:t},n.queue=r,n=js.bind(null,U,r),r.dispatch=n,r=Wo(!1),a=Ns.bind(null,U,!1,r.queue),r=Oo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=Ko.bind(null,U,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function es(e){return ts(ko(),W,e)}function ts(e,t,n){if(t=Io(e,t,Qo)[0],e=Fo(Po)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=jo(t)}catch(e){throw e===ya?xa:e}else r=t;t=ko();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(U.flags|=2048,is(9,{destroy:void 0},ns.bind(null,i,n),null)),[r,a,e]}function ns(e,t){e.action=t}function rs(e){var t=ko(),n=W;if(n!==null)return ts(t,n,e);ko(),t=t.memoizedState,n=ko();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function is(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=U.updateQueue,t===null&&(t=Ao(),U.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 as(){return ko().memoizedState}function os(e,t,n,r){var i=Oo();U.flags|=e,i.memoizedState=is(1|t,{destroy:void 0},n,r===void 0?null:r)}function ss(e,t,n,r){var i=ko();r=r===void 0?null:r;var a=i.memoizedState.inst;W!==null&&r!==null&&bo(r,W.memoizedState.deps)?i.memoizedState=is(t,a,n,r):(U.flags|=e,i.memoizedState=is(1|t,a,n,r))}function cs(e,t){os(8390656,8,e,t)}function ls(e,t){ss(2048,8,e,t)}function us(e){U.flags|=4;var t=U.updateQueue;if(t===null)t=Ao(),U.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function ds(e){var t=ko().memoizedState;return us({ref:t,nextImpl:e}),function(){if(K&2)throw Error(i(440));return t.impl.apply(void 0,arguments)}}function fs(e,t){return ss(4,2,e,t)}function ps(e,t){return ss(4,4,e,t)}function ms(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function hs(e,t,n){n=n==null?null:n.concat([e]),ss(4,4,ms.bind(null,t,e),n)}function gs(){}function _s(e,t){var n=ko();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&bo(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function vs(e,t){var n=ko();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&bo(t,r[1]))return r[0];if(r=e(),mo){Ie(!0);try{e()}finally{Ie(!1)}}return n.memoizedState=[r,t],r}function ys(e,t,n){return n===void 0||lo&1073741824&&!(Y&261930)?e.memoizedState=t:(e.memoizedState=n,e=mu(),U.lanes|=e,Gl|=e,n)}function bs(e,t,n,r){return Sr(n,t)?n:Ya.current===null?!(lo&42)||lo&1073741824&&!(Y&261930)?(nc=!0,e.memoizedState=n):(e=mu(),U.lanes|=e,Gl|=e,t):(e=ys(e,n,r),Sr(e,t)||(nc=!0),e)}function xs(e,t,n,r,i){var a=M.p;M.p=a!==0&&8>a?a:8;var o=j.T,s={};j.T=s,Ns(e,!1,t,n);try{var c=i(),l=j.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?Ms(e,t,pa(c,r),pu(e)):Ms(e,t,r,pu(e))}catch(n){Ms(e,t,{then:function(){},status:`rejected`,reason:n},pu())}finally{M.p=a,o!==null&&s.types!==null&&(o.types=s.types),j.T=o}}function Ss(){}function Cs(e,t,n,r){if(e.tag!==5)throw Error(i(476));var a=ws(e).queue;xs(e,a,t,N,n===null?Ss:function(){return Ts(e),n(r)})}function ws(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:N,baseState:N,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Po,lastRenderedState:N},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Po,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Ts(e){var t=ws(e);t.next===null&&(t=e.alternate.memoizedState),Ms(e,t.next.queue,{},pu())}function Es(){return H(Qf)}function Ds(){return ko().memoizedState}function Os(){return ko().memoizedState}function ks(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=pu();e=Ba(n);var r=Va(t,e,n);r!==null&&(hu(r,t,n),Ha(r,t,n)),t={cache:aa()},e.payload=t;return}t=t.return}}function As(e,t,n){var r=pu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ps(e)?Fs(t,n):(n=ni(e,t,n,r),n!==null&&(hu(n,e,r),Is(n,t,r)))}function js(e,t,n){Ms(e,t,n,pu())}function Ms(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Ps(e))Fs(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Sr(s,o))return ti(e,t,i,0),q===null&&ei(),!1}catch{}if(n=ni(e,t,i,r),n!==null)return hu(n,e,r),Is(n,t,r),!0}return!1}function Ns(e,t,n,r){if(r={lane:2,revertLane:dd(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Ps(e)){if(t)throw Error(i(479))}else t=ni(e,n,r,2),t!==null&&hu(t,e,2)}function Ps(e){var t=e.alternate;return e===U||t!==null&&t===U}function Fs(e,t){po=fo=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Is(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,$e(e,n)}}var Ls={readContext:H,use:Mo,useCallback:yo,useContext:yo,useEffect:yo,useImperativeHandle:yo,useLayoutEffect:yo,useInsertionEffect:yo,useMemo:yo,useReducer:yo,useRef:yo,useState:yo,useDebugValue:yo,useDeferredValue:yo,useTransition:yo,useSyncExternalStore:yo,useId:yo,useHostTransitionStatus:yo,useFormState:yo,useActionState:yo,useOptimistic:yo,useMemoCache:yo,useCacheRefresh:yo};Ls.useEffectEvent=yo;var Rs={readContext:H,use:Mo,useCallback:function(e,t){return Oo().memoizedState=[e,t===void 0?null:t],e},useContext:H,useEffect:cs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),os(4194308,4,ms.bind(null,t,e),n)},useLayoutEffect:function(e,t){return os(4194308,4,e,t)},useInsertionEffect:function(e,t){os(4,2,e,t)},useMemo:function(e,t){var n=Oo();t=t===void 0?null:t;var r=e();if(mo){Ie(!0);try{e()}finally{Ie(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Oo();if(n!==void 0){var i=n(t);if(mo){Ie(!0);try{n(t)}finally{Ie(!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=As.bind(null,U,e),[r.memoizedState,e]},useRef:function(e){var t=Oo();return e={current:e},t.memoizedState=e},useState:function(e){e=Wo(e);var t=e.queue,n=js.bind(null,U,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:gs,useDeferredValue:function(e,t){return ys(Oo(),e,t)},useTransition:function(){var e=Wo(!1);return e=xs.bind(null,U,e.queue,!0,!1),Oo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=U,a=Oo();if(B){if(n===void 0)throw Error(i(407));n=n()}else{if(n=t(),q===null)throw Error(i(349));Y&127||zo(r,t,n)}a.memoizedState=n;var o={value:n,getSnapshot:t};return a.queue=o,cs(Vo.bind(null,r,o,e),[e]),r.flags|=2048,is(9,{destroy:void 0},Bo.bind(null,r,o,n,t),null),n},useId:function(){var e=Oo(),t=q.identifierPrefix;if(B){var n=Di,r=Ei;n=(r&~(1<<32-Le(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=ho++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=vo++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:Es,useFormState:$o,useActionState:$o,useOptimistic:function(e){var t=Oo();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Ns.bind(null,U,!0,n),n.dispatch=t,[e,t]},useMemoCache:No,useCacheRefresh:function(){return Oo().memoizedState=ks.bind(null,U)},useEffectEvent:function(e){var t=Oo(),n={impl:e};return t.memoizedState=n,function(){if(K&2)throw Error(i(440));return n.impl.apply(void 0,arguments)}}},zs={readContext:H,use:Mo,useCallback:_s,useContext:H,useEffect:ls,useImperativeHandle:hs,useInsertionEffect:fs,useLayoutEffect:ps,useMemo:vs,useReducer:Fo,useRef:as,useState:function(){return Fo(Po)},useDebugValue:gs,useDeferredValue:function(e,t){return bs(ko(),W.memoizedState,e,t)},useTransition:function(){var e=Fo(Po)[0],t=ko().memoizedState;return[typeof e==`boolean`?e:jo(e),t]},useSyncExternalStore:Ro,useId:Ds,useHostTransitionStatus:Es,useFormState:es,useActionState:es,useOptimistic:function(e,t){return Go(ko(),W,e,t)},useMemoCache:No,useCacheRefresh:Os};zs.useEffectEvent=ds;var Bs={readContext:H,use:Mo,useCallback:_s,useContext:H,useEffect:ls,useImperativeHandle:hs,useInsertionEffect:fs,useLayoutEffect:ps,useMemo:vs,useReducer:Lo,useRef:as,useState:function(){return Lo(Po)},useDebugValue:gs,useDeferredValue:function(e,t){var n=ko();return W===null?ys(n,e,t):bs(n,W.memoizedState,e,t)},useTransition:function(){var e=Lo(Po)[0],t=ko().memoizedState;return[typeof e==`boolean`?e:jo(e),t]},useSyncExternalStore:Ro,useId:Ds,useHostTransitionStatus:Es,useFormState:rs,useActionState:rs,useOptimistic:function(e,t){var n=ko();return W===null?(n.baseState=e,[e,n.queue.dispatch]):Go(n,W,e,t)},useMemoCache:No,useCacheRefresh:Os};Bs.useEffectEvent=ds;function Vs(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:f({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var Hs={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=pu(),i=Ba(r);i.payload=t,n!=null&&(i.callback=n),t=Va(e,i,r),t!==null&&(hu(t,e,r),Ha(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=pu(),i=Ba(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=Va(e,i,r),t!==null&&(hu(t,e,r),Ha(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=pu(),r=Ba(n);r.tag=2,t!=null&&(r.callback=t),t=Va(e,r,n),t!==null&&(hu(t,e,n),Ha(t,e,n))}};function Us(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Cr(n,r)||!Cr(i,a):!0}function Ws(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&Hs.enqueueReplaceState(t,t.state,null)}function Gs(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=f({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function Ks(e){Xr(e)}function qs(e){console.error(e)}function Js(e){Xr(e)}function Ys(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function Xs(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function Zs(e,t,n){return n=Ba(n),n.tag=3,n.payload={element:null},n.callback=function(){Ys(e,t)},n}function Qs(e){return e=Ba(e),e.tag=3,e}function $s(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(){Xs(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){Xs(t,n,r),typeof i!=`function`&&(ru===null?ru=new Set([this]):ru.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function ec(e,t,n,r,a){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&Xi(t,n,a,!0),n=eo.current,n!==null){switch(n.tag){case 31:case 13:return to===null?Du():n.alternate===null&&Wl===0&&(Wl=3),n.flags&=-257,n.flags|=65536,n.lanes=a,r===Sa?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Gu(e,r,a)),!1;case 22:return n.flags|=65536,r===Sa?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)),Gu(e,r,a)),!1}throw Error(i(435,n.tag))}return Gu(e,r,a),Du(),!1}if(B)return t=eo.current,t===null?(r!==V&&(t=Error(i(423),{cause:r}),Hi(vi(t,n))),e=e.current.alternate,e.flags|=65536,a&=-a,e.lanes|=a,r=vi(r,n),a=Zs(e.stateNode,r,a),Ua(e,a),Wl!==4&&(Wl=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=a,r!==V&&(e=Error(i(422),{cause:r}),Hi(vi(e,n)))),!1;var o=Error(i(520),{cause:r});if(o=vi(o,n),Xl===null?Xl=[o]:Xl.push(o),Wl!==4&&(Wl=2),t===null)return!0;r=vi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=a&-a,n.lanes|=e,e=Zs(n.stateNode,r,e),Ua(n,e),!1;case 1:if(t=n.type,o=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||o!==null&&typeof o.componentDidCatch==`function`&&(ru===null||!ru.has(o))))return n.flags|=65536,a&=-a,n.lanes|=a,a=Qs(a),$s(a,e,n,r),Ua(n,a),!1}n=n.return}while(n!==null);return!1}var tc=Error(i(461)),nc=!1;function rc(e,t,n,r){t.child=e===null?Ia(t,null,n,r):Fa(t,e.child,n,r)}function ic(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 Qi(t),r=xo(e,t,n,o,a,i),s=To(),e!==null&&!nc?(Eo(e,t,i),Oc(e,t,i)):(B&&s&&Ai(t),t.flags|=1,rc(e,t,r,i),t.child)}function ac(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!li(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,oc(e,t,a,r,i)):(e=fi(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!kc(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Cr:n,n(o,r)&&e.ref===t.ref)return Oc(e,t,i)}return t.flags|=1,e=ui(a,r),e.ref=t.ref,e.return=t,t.child=e}function oc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Cr(a,r)&&e.ref===t.ref){if(nc=!1,t.pendingProps=r=a,kc(e,i))e.flags&131072&&(nc=!0);else return t.lanes=e.lanes,Oc(e,t,i)}}return mc(e,t,n,r,i)}function sc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return lc(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&_a(t,a===null?null:a.cachePool),a===null?Qa():Za(t,a),io(t);else return r=t.lanes=536870912,lc(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&_a(t,null),Qa(),ao(t)):(_a(t,a.cachePool),Za(t,a),ao(t),t.memoizedState=null);return rc(e,t,i,n),t.child}function cc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function lc(e,t,n,r,i){var a=ga();return a=a===null?null:{parent:ia._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&_a(t,null),Qa(),io(t),e!==null&&Xi(e,t,r,!0),t.childLanes=i,null}function uc(e,t){return t=Cc({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function dc(e,t,n){return Fa(t,e.child,null,n),e=uc(t,t.pendingProps),e.flags|=2,oo(t),t.memoizedState=null,e}function fc(e,t,n){var r=t.pendingProps,a=!!(t.flags&128);if(t.flags&=-129,e===null){if(B){if(r.mode===`hidden`)return e=uc(t,r),t.lanes=536870912,cc(null,e);if(ro(t),(e=z)?(e=rf(e,Fi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ti===null?null:{id:Ei,overflow:Di},retryLane:536870912,hydrationErrors:null},n=hi(e),n.return=t,t.child=n,Ni=t,z=null)):e=null,e===null)throw Ii(t);return t.lanes=536870912,null}return uc(t,r)}var o=e.memoizedState;if(o!==null){var s=o.dehydrated;if(ro(t),a){if(t.flags&256)t.flags&=-257,t=dc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(i(558))}else if(nc||Xi(e,t,n,!1),a=(n&e.childLanes)!==0,nc||a){if(r=q,r!==null&&(s=et(r,n),s!==0&&s!==o.retryLane))throw o.retryLane=s,ri(e,s),hu(r,e,s),tc;Du(),t=dc(e,t,n)}else e=o.treeContext,z=cf(s.nextSibling),Ni=t,B=!0,Pi=null,Fi=!1,e!==null&&Mi(t,e),t=uc(t,r),t.flags|=4096;return t}return e=ui(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function pc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(i(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function mc(e,t,n,r,i){return Qi(t),n=xo(e,t,n,r,void 0,i),r=To(),e!==null&&!nc?(Eo(e,t,i),Oc(e,t,i)):(B&&r&&Ai(t),t.flags|=1,rc(e,t,n,i),t.child)}function hc(e,t,n,r,i,a){return Qi(t),t.updateQueue=null,n=Co(t,r,n,i),So(e),r=To(),e!==null&&!nc?(Eo(e,t,a),Oc(e,t,a)):(B&&r&&Ai(t),t.flags|=1,rc(e,t,n,a),t.child)}function gc(e,t,n,r,i){if(Qi(t),t.stateNode===null){var a=oi,o=n.contextType;typeof o==`object`&&o&&(a=H(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=Hs,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Ra(t),o=n.contextType,a.context=typeof o==`object`&&o?H(o):oi,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(Vs(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&&Hs.enqueueReplaceState(a,a.state,null),Ka(t,r,a,i),Ga(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=Gs(n,s);a.props=c;var l=a.context,u=n.contextType;o=oi,typeof u==`object`&&u&&(o=H(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&Ws(t,a,r,o),La=!1;var f=t.memoizedState;a.state=f,Ka(t,r,a,i),Ga(),l=t.memoizedState,s||f!==l||La?(typeof d==`function`&&(Vs(t,n,d,r),l=t.memoizedState),(c=La||Us(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,za(e,t),o=t.memoizedProps,u=Gs(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=oi,typeof l==`object`&&l&&(c=H(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&Ws(t,a,r,c),La=!1,f=t.memoizedState,a.state=f,Ka(t,r,a,i),Ga();var p=t.memoizedState;o!==d||f!==p||La||e!==null&&e.dependencies!==null&&Zi(e.dependencies)?(typeof s==`function`&&(Vs(t,n,s,r),p=t.memoizedState),(u=La||Us(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&Zi(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,pc(e,t),r=!!(t.flags&128),a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Fa(t,e.child,null,i),t.child=Fa(t,null,n,i)):rc(e,t,n,i),t.memoizedState=a.state,e=t.child):e=Oc(e,t,i),e}function _c(e,t,n,r){return Bi(),t.flags|=256,rc(e,t,n,r),t.child}var vc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function yc(e){return{baseLanes:e,cachePool:va()}}function bc(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=Jl),e}function xc(e,t,n){var r=t.pendingProps,a=!1,o=!!(t.flags&128),s;if((s=o)||(s=e!==null&&e.memoizedState===null?!1:!!(so.current&2)),s&&(a=!0,t.flags&=-129),s=!!(t.flags&32),t.flags&=-33,e===null){if(B){if(a?no(t):ao(t),(e=z)?(e=rf(e,Fi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Ti===null?null:{id:Ei,overflow:Di},retryLane:536870912,hydrationErrors:null},n=hi(e),n.return=t,t.child=n,Ni=t,z=null)):e=null,e===null)throw Ii(t);return of(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,a?(ao(t),a=t.mode,c=Cc({mode:`hidden`,children:c},a),r=pi(r,a,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=yc(n),r.childLanes=bc(e,s,n),t.memoizedState=vc,cc(null,r)):(no(t),Sc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(o)t.flags&256?(no(t),t.flags&=-257,t=wc(e,t,n)):t.memoizedState===null?(ao(t),c=r.fallback,a=t.mode,r=Cc({mode:`visible`,children:r.children},a),c=pi(c,a,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Fa(t,e.child,null,n),r=t.child,r.memoizedState=yc(n),r.childLanes=bc(e,s,n),t.memoizedState=vc,t=cc(null,r)):(ao(t),t.child=e.child,t.flags|=128,t=null);else if(no(t),of(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(i(419)),r.stack=``,r.digest=s,Hi({value:r,source:null,stack:null}),t=wc(e,t,n)}else if(nc||Xi(e,t,n,!1),s=(n&e.childLanes)!==0,nc||s){if(s=q,s!==null&&(r=et(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,ri(e,r),hu(s,e,r),tc;af(c)||Du(),t=wc(e,t,n)}else af(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,z=cf(c.nextSibling),Ni=t,B=!0,Pi=null,Fi=!1,e!==null&&Mi(t,e),t=Sc(t,r.children),t.flags|=4096);return t}return a?(ao(t),c=r.fallback,a=t.mode,l=e.child,u=l.sibling,r=ui(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=pi(c,a,n,null),c.flags|=2):c=ui(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,cc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=yc(n):(a=c.cachePool,a===null?a=va():(l=ia._currentValue,a=a.parent===l?a:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:a}),r.memoizedState=c,r.childLanes=bc(e,s,n),t.memoizedState=vc,cc(e.child,r)):(no(t),n=e.child,e=n.sibling,n=ui(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function Sc(e,t){return t=Cc({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function Cc(e,t){return e=ci(22,e,null,t),e.lanes=0,e}function wc(e,t,n){return Fa(t,e.child,null,n),e=Sc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function Tc(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Ji(e.return,t,n)}function Ec(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 Dc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=so.current,s=!!(o&2);if(s?(o=o&1|2,t.flags|=128):o&=1,F(so,o),rc(e,t,r,n),r=B?Si:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Tc(e,n,t);else if(e.tag===19)Tc(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&&co(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Ec(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&co(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Ec(t,!0,n,null,a,r);break;case`together`:Ec(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function Oc(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Gl|=t.lanes,(n&t.childLanes)===0){if(e!==null){if(Xi(e,t,n,!1),(n&t.childLanes)===0)return null}else return null}if(e!==null&&t.child!==e.child)throw Error(i(153));if(t.child!==null){for(e=t.child,n=ui(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ui(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function kc(e,t){return(e.lanes&t)!==0||(e=e.dependencies,!!(e!==null&&Zi(e)))}function Ac(e,t,n){switch(t.tag){case 3:I(t,t.stateNode.containerInfo),Ki(t,ia,e.memoizedState.cache),Bi();break;case 27:case 5:ue(t);break;case 4:I(t,t.stateNode.containerInfo);break;case 10:Ki(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,ro(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(no(t),e=Oc(e,t,n),e===null?null:e.sibling):xc(e,t,n):(no(t),t.flags|=128,null);no(t);break;case 19:var i=!!(e.flags&128);if(r=(n&t.childLanes)!==0,r||=(Xi(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return Dc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),F(so,so.current),r)break;return null;case 22:return t.lanes=0,sc(e,t,n,t.pendingProps);case 24:Ki(t,ia,e.memoizedState.cache)}return Oc(e,t,n)}function jc(e,t,n){if(e!==null){if(e.memoizedProps!==t.pendingProps)nc=!0;else{if(!kc(e,n)&&!(t.flags&128))return nc=!1,Ac(e,t,n);nc=!!(e.flags&131072)}}else nc=!1,B&&t.flags&1048576&&ki(t,Si,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=Ta(t.elementType),t.type=e,typeof e==`function`)li(e)?(r=Gs(e,r),t.tag=1,t=gc(null,t,e,r,n)):(t.tag=0,t=mc(null,t,e,r,n));else{if(e!=null){var a=e.$$typeof;if(a===x){t.tag=11,t=ic(null,t,e,r,n);break a}if(a===w){t.tag=14,t=ac(null,t,e,r,n);break a}}throw t=te(e)||e,Error(i(306,t,``))}}return t;case 0:return mc(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,a=Gs(r,t.pendingProps),gc(e,t,r,a,n);case 3:a:{if(I(t,t.stateNode.containerInfo),e===null)throw Error(i(387));r=t.pendingProps;var o=t.memoizedState;a=o.element,za(e,t),Ka(t,r,null,n);var s=t.memoizedState;if(r=s.cache,Ki(t,ia,r),r!==o.cache&&Yi(t,[ia],n,!0),Ga(),r=s.element,o.isDehydrated){if(o={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=o,t.memoizedState=o,t.flags&256){t=_c(e,t,r,n);break a}if(r!==a){a=vi(Error(i(424)),t),Hi(a),t=_c(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(z=cf(e.firstChild),Ni=t,B=!0,Pi=null,Fi=!0,n=Ia(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if(Bi(),r===a){t=Oc(e,t,n);break a}rc(e,t,r,n)}t=t.child}return t;case 26:return pc(e,t),e===null?(n=kf(t.type,null,t.pendingProps,null))?t.memoizedState=n:B||(n=t.type,e=t.pendingProps,r=Bd(se.current).createElement(n),r[ct]=t,r[lt]=e,Pd(r,n,e),xt(r),t.stateNode=r):t.memoizedState=kf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return ue(t),e===null&&B&&(r=t.stateNode=ff(t.type,t.pendingProps,se.current),Ni=t,Fi=!0,a=z,Zd(t.type)?(lf=a,z=cf(r.firstChild)):z=a),rc(e,t,t.pendingProps.children,n),pc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&B&&((a=r=z)&&(r=tf(r,t.type,t.pendingProps,Fi),r===null?a=!1:(t.stateNode=r,Ni=t,z=cf(r.firstChild),Fi=!1,a=!0)),a||Ii(t)),ue(t),a=t.type,o=t.pendingProps,s=e===null?null:e.memoizedProps,r=o.children,Ud(a,o)?r=null:s!==null&&Ud(a,s)&&(t.flags|=32),t.memoizedState!==null&&(a=xo(e,t,wo,null,null,n),Qf._currentValue=a),pc(e,t),rc(e,t,r,n),t.child;case 6:return e===null&&B&&((e=n=z)&&(n=nf(n,t.pendingProps,Fi),n===null?e=!1:(t.stateNode=n,Ni=t,z=null,e=!0)),e||Ii(t)),null;case 13:return xc(e,t,n);case 4:return I(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Fa(t,null,r,n):rc(e,t,r,n),t.child;case 11:return ic(e,t,t.type,t.pendingProps,n);case 7:return rc(e,t,t.pendingProps,n),t.child;case 8:return rc(e,t,t.pendingProps.children,n),t.child;case 12:return rc(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,Ki(t,t.type,r.value),rc(e,t,r.children,n),t.child;case 9:return a=t.type._context,r=t.pendingProps.children,Qi(t),a=H(a),r=r(a),t.flags|=1,rc(e,t,r,n),t.child;case 14:return ac(e,t,t.type,t.pendingProps,n);case 15:return oc(e,t,t.type,t.pendingProps,n);case 19:return Dc(e,t,n);case 31:return fc(e,t,n);case 22:return sc(e,t,n,t.pendingProps);case 24:return Qi(t),r=H(ia),e===null?(a=ga(),a===null&&(a=q,o=aa(),a.pooledCache=o,o.refCount++,o!==null&&(a.pooledCacheLanes|=n),a=o),t.memoizedState={parent:r,cache:a},Ra(t),Ki(t,ia,a)):((e.lanes&n)!==0&&(za(e,t),Ka(t,null,null,n),Ga()),a=e.memoizedState,o=t.memoizedState,a.parent===r?(r=o.cache,Ki(t,ia,r),r!==a.cache&&Yi(t,[ia],n,!0)):(a={parent:r,cache:r},t.memoizedState=a,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=a),Ki(t,ia,r))),rc(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(i(156,t.tag))}function Mc(e){e.flags|=4}function Nc(e,t,n,r,i){if((t=!!(e.mode&32))&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i){if(e.stateNode.complete)e.flags|=8192;else if(wu())e.flags|=8192;else throw Ea=Sa,ba}}else e.flags&=-16777217}function Pc(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Wf(t)){if(wu())e.flags|=8192;else throw Ea=Sa,ba}}function Fc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:Je(),e.lanes|=t,Yl|=t)}function Ic(e,t){if(!B)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 G(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Lc(e,t,n){var r=t.pendingProps;switch(ji(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return G(t),null;case 1:return G(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),qi(ia),le(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(zi(t)?Mc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Vi())),G(t),null;case 26:var a=t.type,o=t.memoizedState;return e===null?(Mc(t),o===null?(G(t),Nc(t,a,null,r,n)):(G(t),Pc(t,o))):o?o===e.memoizedState?(G(t),t.flags&=-16777217):(Mc(t),G(t),Pc(t,o)):(e=e.memoizedProps,e!==r&&Mc(t),G(t),Nc(t,a,e,r,n)),null;case 27:if(de(t),n=se.current,a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Mc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return G(t),null}e=ae.current,zi(t)?Li(t,e):(e=ff(a,r,n),t.stateNode=e,Mc(t))}return G(t),null;case 5:if(de(t),a=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Mc(t);else{if(!r){if(t.stateNode===null)throw Error(i(166));return G(t),null}if(o=ae.current,zi(t))Li(t,o);else{var s=Bd(se.current);switch(o){case 1:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case 2:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;default:switch(a){case`svg`:o=s.createElementNS(`http://www.w3.org/2000/svg`,a);break;case`math`:o=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,a);break;case`script`:o=s.createElement(`div`),o.innerHTML=`<script><\/script>`,o=o.removeChild(o.firstChild);break;case`select`:o=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?o.multiple=!0:r.size&&(o.size=r.size);break;default:o=typeof r.is==`string`?s.createElement(a,{is:r.is}):s.createElement(a)}}o[ct]=t,o[lt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)o.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=o;a:switch(Pd(o,a,r),a){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Mc(t)}}return G(t),Nc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Mc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(i(166));if(e=se.current,zi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,a=Ni,a!==null)switch(a.tag){case 27:case 5:r=a.memoizedProps}e[ct]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||Md(e.nodeValue,n)),e||Ii(t,!0)}else e=Bd(e).createTextNode(r),e[ct]=t,t.stateNode=e}return G(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=zi(t),n!==null){if(e===null){if(!r)throw Error(i(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(i(557));e[ct]=t}else Bi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;G(t),e=!1}else n=Vi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(oo(t),t):(oo(t),null);if(t.flags&128)throw Error(i(558))}return G(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(a=zi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!a)throw Error(i(318));if(a=t.memoizedState,a=a===null?null:a.dehydrated,!a)throw Error(i(317));a[ct]=t}else Bi(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;G(t),a=!1}else a=Vi(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=a),a=!0;if(!a)return t.flags&256?(oo(t),t):(oo(t),null)}return oo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,a=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(a=r.alternate.memoizedState.cachePool.pool),o=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(o=r.memoizedState.cachePool.pool),o!==a&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Fc(t,t.updateQueue),G(t),null);case 4:return le(),e===null&&Sd(t.stateNode.containerInfo),G(t),null;case 10:return qi(t.type),G(t),null;case 19:if(P(so),r=t.memoizedState,r===null)return G(t),null;if(a=!!(t.flags&128),o=r.rendering,o===null){if(a)Ic(r,!1);else{if(Wl!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=co(e),o!==null){for(t.flags|=128,Ic(r,!1),e=o.updateQueue,t.updateQueue=e,Fc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)di(n,e),n=n.sibling;return F(so,so.current&1|2),B&&Oi(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&we()>tu&&(t.flags|=128,a=!0,Ic(r,!1),t.lanes=4194304)}}else{if(!a){if(e=co(o),e!==null){if(t.flags|=128,a=!0,e=e.updateQueue,t.updateQueue=e,Fc(t,e),Ic(r,!0),r.tail===null&&r.tailMode===`hidden`&&!o.alternate&&!B)return G(t),null}else 2*we()-r.renderingStartTime>tu&&n!==536870912&&(t.flags|=128,a=!0,Ic(r,!1),t.lanes=4194304)}r.isBackwards?(o.sibling=t.child,t.child=o):(e=r.last,e===null?t.child=o:e.sibling=o,r.last=o)}return r.tail===null?(G(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=we(),e.sibling=null,n=so.current,F(so,a?n&1|2:n&1),B&&Oi(t,r.treeForkCount),e);case 22:case 23:return oo(t),$a(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(G(t),t.subtreeFlags&6&&(t.flags|=8192)):G(t),n=t.updateQueue,n!==null&&Fc(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&&P(ha),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),qi(ia),G(t),null;case 25:return null;case 30:return null}throw Error(i(156,t.tag))}function Rc(e,t){switch(ji(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return qi(ia),le(),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(oo(t),t.alternate===null)throw Error(i(340));Bi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(oo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(i(340));Bi()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return P(so),null;case 4:return le(),null;case 10:return qi(t.type),null;case 22:case 23:return oo(t),$a(),e!==null&&P(ha),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return qi(ia),null;case 25:return null;default:return null}}function zc(e,t){switch(ji(t),t.tag){case 3:qi(ia),le();break;case 26:case 27:case 5:de(t);break;case 4:le();break;case 31:t.memoizedState!==null&&oo(t);break;case 13:oo(t);break;case 19:P(so);break;case 10:qi(t.type);break;case 22:case 23:oo(t),$a(),e!==null&&P(ha);break;case 24:qi(ia)}}function Bc(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Z(t,t.return,e)}}function Vc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Z(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Z(t,t.return,e)}}function Hc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{Ja(t,n)}catch(t){Z(e,e.return,t)}}}function Uc(e,t,n){n.props=Gs(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Z(e,t,n)}}function Wc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Z(e,t,n)}}function Gc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null){if(typeof r==`function`)try{r()}catch(n){Z(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Z(e,t,n)}else n.current=null}}function Kc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Z(e,e.return,t)}}function qc(e,t,n){try{var r=e.stateNode;Fd(r,e.type,n,t),r[lt]=t}catch(t){Z(e,e.return,t)}}function Jc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Zd(e.type)||e.tag===4}function Yc(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Jc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Zd(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function Xc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=tn));else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(Xc(e,t,n),e=e.sibling;e!==null;)Xc(e,t,n),e=e.sibling}function Zc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&Zd(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(Zc(e,t,n),e=e.sibling;e!==null;)Zc(e,t,n),e=e.sibling}function Qc(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Pd(t,r,n),t[ct]=e,t[lt]=n}catch(t){Z(e,e.return,t)}}var $c=!1,el=!1,tl=!1,nl=typeof WeakSet==`function`?WeakSet:Set,rl=null;function il(e,t){if(e=e.containerInfo,Rd=sp,e=Dr(e),Or(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,o=r.focusNode;r=r.focusOffset;try{n.nodeType,o.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||a!==0&&f.nodeType!==3||(c=s+a),f!==o||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===a&&(c=s),p===o&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(zd={focusedElem:e,selectionRange:n},sp=!1,rl=t;rl!==null;)if(t=rl,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,rl=e;else for(;rl!==null;){switch(t=rl,o=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)a=e[n],a.ref.impl=a.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&o!==null){e=void 0,n=t,a=o.memoizedProps,o=o.memoizedState,r=n.stateNode;try{var h=Gs(n.type,a);e=r.getSnapshotBeforeUpdate(h,o),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Z(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)ef(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:ef(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(i(163))}if(e=t.sibling,e!==null){e.return=t.return,rl=e;break}rl=t.return}}function al(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:bl(e,n),r&4&&Bc(5,n);break;case 1:if(bl(e,n),r&4){if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Z(n,n.return,e)}else{var i=Gs(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Z(n,n.return,e)}}}r&64&&Hc(n),r&512&&Wc(n,n.return);break;case 3:if(bl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{Ja(e,t)}catch(e){Z(n,n.return,e)}}break;case 27:t===null&&r&4&&Qc(n);case 26:case 5:bl(e,n),t===null&&r&4&&Kc(n),r&512&&Wc(n,n.return);break;case 12:bl(e,n);break;case 31:bl(e,n),r&4&&dl(e,n);break;case 13:bl(e,n),r&4&&fl(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=Ju.bind(null,n),sf(e,n))));break;case 22:if(r=n.memoizedState!==null||$c,!r){t=t!==null&&t.memoizedState!==null||el,i=$c;var a=el;$c=r,(el=t)&&!a?Sl(e,n,!!(n.subtreeFlags&8772)):bl(e,n),$c=i,el=a}break;case 30:break;default:bl(e,n)}}function ol(e){var t=e.alternate;t!==null&&(e.alternate=null,ol(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&>(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var sl=null,cl=!1;function ll(e,t,n){for(n=n.child;n!==null;)ul(e,t,n),n=n.sibling}function ul(e,t,n){if(Fe&&typeof Fe.onCommitFiberUnmount==`function`)try{Fe.onCommitFiberUnmount(Pe,n)}catch{}switch(n.tag){case 26:el||Gc(n,t),ll(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:el||Gc(n,t);var r=sl,i=cl;Zd(n.type)&&(sl=n.stateNode,cl=!1),ll(e,t,n),pf(n.stateNode),sl=r,cl=i;break;case 5:el||Gc(n,t);case 6:if(r=sl,i=cl,sl=null,ll(e,t,n),sl=r,cl=i,sl!==null){if(cl)try{(sl.nodeType===9?sl.body:sl.nodeName===`HTML`?sl.ownerDocument.body:sl).removeChild(n.stateNode)}catch(e){Z(n,t,e)}else try{sl.removeChild(n.stateNode)}catch(e){Z(n,t,e)}}break;case 18:sl!==null&&(cl?(e=sl,Qd(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Np(e)):Qd(sl,n.stateNode));break;case 4:r=sl,i=cl,sl=n.stateNode.containerInfo,cl=!0,ll(e,t,n),sl=r,cl=i;break;case 0:case 11:case 14:case 15:Vc(2,n,t),el||Vc(4,n,t),ll(e,t,n);break;case 1:el||(Gc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&Uc(n,t,r)),ll(e,t,n);break;case 21:ll(e,t,n);break;case 22:el=(r=el)||n.memoizedState!==null,ll(e,t,n),el=r;break;default:ll(e,t,n)}}function dl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Np(e)}catch(e){Z(t,t.return,e)}}}function fl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Np(e)}catch(e){Z(t,t.return,e)}}function pl(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new nl),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new nl),t;default:throw Error(i(435,e.tag))}}function ml(e,t){var n=pl(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=Yu.bind(null,e,t);t.then(r,r)}})}function hl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r],o=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(Zd(c.type)){sl=c.stateNode,cl=!1;break a}break;case 5:sl=c.stateNode,cl=!1;break a;case 3:case 4:sl=c.stateNode.containerInfo,cl=!0;break a}c=c.return}if(sl===null)throw Error(i(160));ul(o,s,a),sl=null,cl=!1,o=a.alternate,o!==null&&(o.return=null),a.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)_l(t,e),t=t.sibling}var gl=null;function _l(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:hl(t,e),vl(e),r&4&&(Vc(3,e,e.return),Bc(3,e),Vc(5,e,e.return));break;case 1:hl(t,e),vl(e),r&512&&(el||n===null||Gc(n,n.return)),r&64&&$c&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var a=gl;if(hl(t,e),vl(e),r&512&&(el||n===null||Gc(n,n.return)),r&4){var o=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null){if(r===null){if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,a=a.ownerDocument||a;b:switch(r){case`title`:o=a.getElementsByTagName(`title`)[0],(!o||o[ht]||o[ct]||o.namespaceURI===`http://www.w3.org/2000/svg`||o.hasAttribute(`itemprop`))&&(o=a.createElement(r),a.head.insertBefore(o,a.querySelector(`head > title`))),Pd(o,r,n),o[ct]=e,xt(o),r=o;break a;case`link`:var s=Vf(`link`,`href`,a).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&o.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&o.getAttribute(`title`)===(n.title==null?null:n.title)&&o.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;case`meta`:if(s=Vf(`meta`,`content`,a).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(o=s[c],o.getAttribute(`content`)===(n.content==null?null:``+n.content)&&o.getAttribute(`name`)===(n.name==null?null:n.name)&&o.getAttribute(`property`)===(n.property==null?null:n.property)&&o.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&o.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}o=a.createElement(r),Pd(o,r,n),a.head.appendChild(o);break;default:throw Error(i(468,r))}o[ct]=e,xt(o),r=o}e.stateNode=r}else Hf(a,e.type,e.stateNode)}else e.stateNode=If(a,r,e.memoizedProps)}else o===r?r===null&&e.stateNode!==null&&qc(e,e.memoizedProps,n.memoizedProps):(o===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):o.count--,r===null?Hf(a,e.type,e.stateNode):If(a,r,e.memoizedProps))}break;case 27:hl(t,e),vl(e),r&512&&(el||n===null||Gc(n,n.return)),n!==null&&r&4&&qc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(hl(t,e),vl(e),r&512&&(el||n===null||Gc(n,n.return)),e.flags&32){a=e.stateNode;try{qt(a,``)}catch(t){Z(e,e.return,t)}}r&4&&e.stateNode!=null&&(a=e.memoizedProps,qc(e,a,n===null?a:n.memoizedProps)),r&1024&&(tl=!0);break;case 6:if(hl(t,e),vl(e),r&4){if(e.stateNode===null)throw Error(i(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Z(e,e.return,t)}}break;case 3:if(Bf=null,a=gl,gl=gf(t.containerInfo),hl(t,e),gl=a,vl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Np(t.containerInfo)}catch(t){Z(e,e.return,t)}tl&&(tl=!1,yl(e));break;case 4:r=gl,gl=gf(e.stateNode.containerInfo),hl(t,e),vl(e),gl=r;break;case 12:hl(t,e),vl(e);break;case 31:hl(t,e),vl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,ml(e,r)));break;case 13:hl(t,e),vl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&($l=we()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,ml(e,r)));break;case 22:a=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=$c,d=el;if($c=u||a,el=d||l,hl(t,e),el=d,$c=u,vl(e),r&8192)a:for(t=e.stateNode,t._visibility=a?t._visibility&-2:t._visibility|1,a&&(n===null||l||$c||el||xl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(o=l.stateNode,a)s=o.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Z(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=a?``:l.memoizedProps}catch(e){Z(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;a?$d(m,!0):$d(l.stateNode,!1)}catch(e){Z(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,ml(e,n))));break;case 19:hl(t,e),vl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,ml(e,r)));break;case 30:break;case 21:break;default:hl(t,e),vl(e)}}function vl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Jc(r)){n=r;break}r=r.return}if(n==null)throw Error(i(160));switch(n.tag){case 27:var a=n.stateNode;Zc(e,Yc(e),a);break;case 5:var o=n.stateNode;n.flags&32&&(qt(o,``),n.flags&=-33),Zc(e,Yc(e),o);break;case 3:case 4:var s=n.stateNode.containerInfo;Xc(e,Yc(e),s);break;default:throw Error(i(161))}}catch(t){Z(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function yl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;yl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function bl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)al(e,t.alternate,t),t=t.sibling}function xl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Vc(4,t,t.return),xl(t);break;case 1:Gc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&Uc(t,t.return,n),xl(t);break;case 27:pf(t.stateNode);case 26:case 5:Gc(t,t.return),xl(t);break;case 22:t.memoizedState===null&&xl(t);break;case 30:xl(t);break;default:xl(t)}e=e.sibling}}function Sl(e,t,n){for(n&&=!!(t.subtreeFlags&8772),t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:Sl(i,a,n),Bc(4,a);break;case 1:if(Sl(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Z(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)qa(c[i],s)}catch(e){Z(r,r.return,e)}}n&&o&64&&Hc(a),Wc(a,a.return);break;case 27:Qc(a);case 26:case 5:Sl(i,a,n),n&&r===null&&o&4&&Kc(a),Wc(a,a.return);break;case 12:Sl(i,a,n);break;case 31:Sl(i,a,n),n&&o&4&&dl(i,a);break;case 13:Sl(i,a,n),n&&o&4&&fl(i,a);break;case 22:a.memoizedState===null&&Sl(i,a,n),Wc(a,a.return);break;case 30:break;default:Sl(i,a,n)}t=t.sibling}}function Cl(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&oa(n))}function wl(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&oa(e))}function Tl(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)El(e,t,n,r),t=t.sibling}function El(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:Tl(e,t,n,r),i&2048&&Bc(9,t);break;case 1:Tl(e,t,n,r);break;case 3:Tl(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&oa(e)));break;case 12:if(i&2048){Tl(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Z(t,t.return,e)}}else Tl(e,t,n,r);break;case 31:Tl(e,t,n,r);break;case 13:Tl(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?Tl(e,t,n,r):(a._visibility|=2,Dl(e,t,n,r,!!(t.subtreeFlags&10256)||!1)):a._visibility&2?Tl(e,t,n,r):Ol(e,t),i&2048&&Cl(o,t);break;case 24:Tl(e,t,n,r),i&2048&&wl(t.alternate,t);break;default:Tl(e,t,n,r)}}function Dl(e,t,n,r,i){for(i&&=!!(t.subtreeFlags&10256)||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:Dl(a,o,s,c,i),Bc(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,Dl(a,o,s,c,i)):u._visibility&2?Dl(a,o,s,c,i):Ol(a,o),i&&l&2048&&Cl(o.alternate,o);break;case 24:Dl(a,o,s,c,i),i&&l&2048&&wl(o.alternate,o);break;default:Dl(a,o,s,c,i)}t=t.sibling}}function Ol(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Ol(n,r),i&2048&&Cl(r.alternate,r);break;case 24:Ol(n,r),i&2048&&wl(r.alternate,r);break;default:Ol(n,r)}t=t.sibling}}var kl=8192;function Al(e,t,n){if(e.subtreeFlags&kl)for(e=e.child;e!==null;)jl(e,t,n),e=e.sibling}function jl(e,t,n){switch(e.tag){case 26:Al(e,t,n),e.flags&kl&&e.memoizedState!==null&&Gf(n,gl,e.memoizedState,e.memoizedProps);break;case 5:Al(e,t,n);break;case 3:case 4:var r=gl;gl=gf(e.stateNode.containerInfo),Al(e,t,n),gl=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=kl,kl=16777216,Al(e,t,n),kl=r):Al(e,t,n));break;default:Al(e,t,n)}}function Ml(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 Nl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];rl=r,Il(r,e)}Ml(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Pl(e),e=e.sibling}function Pl(e){switch(e.tag){case 0:case 11:case 15:Nl(e),e.flags&2048&&Vc(9,e,e.return);break;case 3:Nl(e);break;case 12:Nl(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,Fl(e)):Nl(e);break;default:Nl(e)}}function Fl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];rl=r,Il(r,e)}Ml(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Vc(8,t,t.return),Fl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,Fl(t));break;default:Fl(t)}e=e.sibling}}function Il(e,t){for(;rl!==null;){var n=rl;switch(n.tag){case 0:case 11:case 15:Vc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:oa(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,rl=r;else a:for(n=e;rl!==null;){r=rl;var i=r.sibling,a=r.return;if(ol(r),r===n){rl=null;break a}if(i!==null){i.return=a,rl=i;break a}rl=a}}}var Ll={getCacheForType:function(e){var t=H(ia),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return H(ia).controller.signal}},Rl=typeof WeakMap==`function`?WeakMap:Map,K=0,q=null,J=null,Y=0,X=0,zl=null,Bl=!1,Vl=!1,Hl=!1,Ul=0,Wl=0,Gl=0,Kl=0,ql=0,Jl=0,Yl=0,Xl=null,Zl=null,Ql=!1,$l=0,eu=0,tu=1/0,nu=null,ru=null,iu=0,au=null,ou=null,su=0,cu=0,lu=null,uu=null,du=0,fu=null;function pu(){return K&2&&Y!==0?Y&-Y:j.T===null?at():dd()}function mu(){if(Jl===0){if(!(Y&536870912)||B){var e=He;He<<=1,!(He&3932160)&&(He=262144),Jl=e}else Jl=536870912}return e=eo.current,e!==null&&(e.flags|=32),Jl}function hu(e,t,n){(e===q&&(X===2||X===9)||e.cancelPendingCommit!==null)&&(Su(e,0),yu(e,Y,Jl,!1)),Xe(e,n),K&2&&e===q||(e===q&&(!(K&2)&&(Kl|=n),Wl===4&&yu(e,Y,Jl,!1)),rd(e))}function gu(e,t,n){if(K&6)throw Error(i(327));var r=!n&&!(t&127)&&(t&e.expiredLanes)===0||Ke(e,t),a=r?Au(e,t):Ou(e,t,!0),o=r;do{if(a===0){Vl&&!r&&yu(e,t,0,!1);break}if(n=e.current.alternate,o&&!vu(n))a=Ou(e,t,!1),o=!1;else{if(a===2){if(o=t,e.errorRecoveryDisabledLanes&o)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;a=Xl;var l=c.current.memoizedState.isDehydrated;if(l&&(Su(c,s).flags|=256),s=Ou(c,s,!1),s!==2){if(Hl&&!l){c.errorRecoveryDisabledLanes|=o,Kl|=o,a=4;break a}o=Zl,Zl=a,o!==null&&(Zl===null?Zl=o:Zl.push.apply(Zl,o))}a=s}if(o=!1,a!==2)continue}}if(a===1){Su(e,0),yu(e,t,0,!0);break}a:{switch(r=e,o=a,o){case 0:case 1:throw Error(i(345));case 4:if((t&4194048)!==t)break;case 6:yu(r,t,Jl,!Bl);break a;case 2:Zl=null;break;case 3:case 5:break;default:throw Error(i(329))}if((t&62914560)===t&&(a=$l+300-we(),10<a)){if(yu(r,t,Jl,!Bl),Ge(r,0,!0)!==0)break a;su=t,r.timeoutHandle=Kd(_u.bind(null,r,n,Zl,nu,Ql,t,Jl,Kl,Yl,Bl,o,`Throttled`,-0,0),a);break a}_u(r,n,Zl,nu,Ql,t,Jl,Kl,Yl,Bl,o,null,-0,0)}break}}while(1);rd(e)}function _u(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:tn},jl(t,a,d);var m=(a&62914560)===a?$l-we():(a&4194048)===a?eu-we():0;if(m=qf(d,m),m!==null){su=a,e.cancelPendingCommit=m(Lu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),yu(e,a,o,!l);return}}Lu(e,t,a,n,r,i,o,s,c)}function vu(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(!Sr(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 yu(e,t,n,r){t&=~ql,t&=~Kl,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Le(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&Qe(e,n,t)}function bu(){return K&6?!0:(id(0,!1),!1)}function xu(){if(J!==null){if(X===0)var e=J.return;else e=J,Gi=Wi=null,Do(e),ka=null,Aa=0,e=J;for(;e!==null;)zc(e.alternate,e),e=e.return;J=null}}function Su(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,qd(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),su=0,xu(),q=e,J=n=ui(e.current,null),Y=t,X=0,zl=null,Bl=!1,Vl=Ke(e,t),Hl=!1,Yl=Jl=ql=Kl=Gl=Wl=0,Zl=Xl=null,Ql=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Le(r),a=1<<i;t|=e[i],r&=~a}return Ul=t,ei(),n}function Cu(e,t){U=null,j.H=Ls,t===ya||t===xa?(t=Da(),X=3):t===ba?(t=Da(),X=4):X=t===tc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,zl=t,J===null&&(Wl=1,Ys(e,vi(t,e.current)))}function wu(){var e=eo.current;return e===null?!0:(Y&4194048)===Y?to===null:(Y&62914560)===Y||Y&536870912?e===to:!1}function Tu(){var e=j.H;return j.H=Ls,e===null?Ls:e}function Eu(){var e=j.A;return j.A=Ll,e}function Du(){Wl=4,Bl||(Y&4194048)!==Y&&eo.current!==null||(Vl=!0),!(Gl&134217727)&&!(Kl&134217727)||q===null||yu(q,Y,Jl,!1)}function Ou(e,t,n){var r=K;K|=2;var i=Tu(),a=Eu();(q!==e||Y!==t)&&(nu=null,Su(e,t)),t=!1;var o=Wl;a:do try{if(X!==0&&J!==null){var s=J,c=zl;switch(X){case 8:xu(),o=6;break a;case 3:case 2:case 9:case 6:eo.current===null&&(t=!0);var l=X;if(X=0,zl=null,Pu(e,s,c,l),n&&Vl){o=0;break a}break;default:l=X,X=0,zl=null,Pu(e,s,c,l)}}ku(),o=Wl;break}catch(t){Cu(e,t)}while(1);return t&&e.shellSuspendCounter++,Gi=Wi=null,K=r,j.H=i,j.A=a,J===null&&(q=null,Y=0,ei()),o}function ku(){for(;J!==null;)Mu(J)}function Au(e,t){var n=K;K|=2;var r=Tu(),a=Eu();q!==e||Y!==t?(nu=null,tu=we()+500,Su(e,t)):Vl=Ke(e,t);a:do try{if(X!==0&&J!==null){t=J;var o=zl;b:switch(X){case 1:X=0,zl=null,Pu(e,t,o,1);break;case 2:case 9:if(Ca(o)){X=0,zl=null,Nu(t);break}t=function(){X!==2&&X!==9||q!==e||(X=7),rd(e)},o.then(t,t);break a;case 3:X=7;break a;case 4:X=5;break a;case 7:Ca(o)?(X=0,zl=null,Nu(t)):(X=0,zl=null,Pu(e,t,o,7));break;case 5:var s=null;switch(J.tag){case 26:s=J.memoizedState;case 5:case 27:var c=J;if(s?Wf(s):c.stateNode.complete){X=0,zl=null;var l=c.sibling;if(l!==null)J=l;else{var u=c.return;u===null?J=null:(J=u,Fu(u))}break b}}X=0,zl=null,Pu(e,t,o,5);break;case 6:X=0,zl=null,Pu(e,t,o,6);break;case 8:xu(),Wl=6;break a;default:throw Error(i(462))}}ju();break}catch(t){Cu(e,t)}while(1);return Gi=Wi=null,j.H=r,j.A=a,K=n,J===null?(q=null,Y=0,ei(),Wl):0}function ju(){for(;J!==null&&!Se();)Mu(J)}function Mu(e){var t=jc(e.alternate,e,Ul);e.memoizedProps=e.pendingProps,t===null?Fu(e):J=t}function Nu(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=hc(n,t,t.pendingProps,t.type,void 0,Y);break;case 11:t=hc(n,t,t.pendingProps,t.type.render,t.ref,Y);break;case 5:Do(t);default:zc(n,t),t=J=di(t,Ul),t=jc(n,t,Ul)}e.memoizedProps=e.pendingProps,t===null?Fu(e):J=t}function Pu(e,t,n,r){Gi=Wi=null,Do(t),ka=null,Aa=0;var i=t.return;try{if(ec(e,i,t,n,Y)){Wl=1,Ys(e,vi(n,e.current)),J=null;return}}catch(t){if(i!==null)throw J=i,t;Wl=1,Ys(e,vi(n,e.current)),J=null;return}t.flags&32768?(B||r===1?e=!0:Vl||Y&536870912?e=!1:(Bl=e=!0,(r===2||r===9||r===3||r===6)&&(r=eo.current,r!==null&&r.tag===13&&(r.flags|=16384))),Iu(t,e)):Fu(t)}function Fu(e){var t=e;do{if(t.flags&32768){Iu(t,Bl);return}e=t.return;var n=Lc(t.alternate,t,Ul);if(n!==null){J=n;return}if(t=t.sibling,t!==null){J=t;return}J=t=e}while(t!==null);Wl===0&&(Wl=5)}function Iu(e,t){do{var n=Rc(e.alternate,e);if(n!==null){n.flags&=32767,J=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){J=e;return}J=e=n}while(e!==null);Wl=6,J=null}function Lu(e,t,n,r,a,o,s,c,l){e.cancelPendingCommit=null;do Hu();while(iu!==0);if(K&6)throw Error(i(327));if(t!==null){if(t===e.current)throw Error(i(177));if(o=t.lanes|t.childLanes,o|=$r,Ze(e,n,o,s,c,l),e===q&&(J=q=null,Y=0),ou=t,au=e,su=n,cu=o,lu=a,uu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,Xu(ke,function(){return Uu(),null})):(e.callbackNode=null,e.callbackPriority=0),r=!!(t.flags&13878),t.subtreeFlags&13878||r){r=j.T,j.T=null,a=M.p,M.p=2,s=K,K|=4;try{il(e,t,n)}finally{K=s,M.p=a,j.T=r}}iu=1,Ru(),zu(),Bu()}}function Ru(){if(iu===1){iu=0;var e=au,t=ou,n=!!(t.flags&13878);if(t.subtreeFlags&13878||n){n=j.T,j.T=null;var r=M.p;M.p=2;var i=K;K|=4;try{_l(t,e);var a=zd,o=Dr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&Er(s.ownerDocument.documentElement,s)){if(c!==null&&Or(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 _=Tr(s,h),v=Tr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}sp=!!Rd,zd=Rd=null}finally{K=i,M.p=r,j.T=n}}e.current=t,iu=2}}function zu(){if(iu===2){iu=0;var e=au,t=ou,n=!!(t.flags&8772);if(t.subtreeFlags&8772||n){n=j.T,j.T=null;var r=M.p;M.p=2;var i=K;K|=4;try{al(e,t.alternate,t)}finally{K=i,M.p=r,j.T=n}}iu=3}}function Bu(){if(iu===4||iu===3){iu=0,Ce();var e=au,t=ou,n=su,r=uu;t.subtreeFlags&10256||t.flags&10256?iu=5:(iu=0,ou=au=null,Vu(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(ru=null),it(n),t=t.stateNode,Fe&&typeof Fe.onCommitFiberRoot==`function`)try{Fe.onCommitFiberRoot(Pe,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=j.T,i=M.p,M.p=2,j.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{j.T=t,M.p=i}}su&3&&Hu(),rd(e),i=e.pendingLanes,n&261930&&i&42?e===fu?du++:(du=0,fu=e):du=0,id(0,!1)}}function Vu(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,oa(t)))}function Hu(){return Ru(),zu(),Bu(),Uu()}function Uu(){if(iu!==5)return!1;var e=au,t=cu;cu=0;var n=it(su),r=j.T,a=M.p;try{M.p=32>n?32:n,j.T=null,n=lu,lu=null;var o=au,s=su;if(iu=0,ou=au=null,su=0,K&6)throw Error(i(331));var c=K;if(K|=4,Pl(o.current),El(o,o.current,s,n),K=c,id(0,!1),Fe&&typeof Fe.onPostCommitFiberRoot==`function`)try{Fe.onPostCommitFiberRoot(Pe,o)}catch{}return!0}finally{M.p=a,j.T=r,Vu(e,t)}}function Wu(e,t,n){t=vi(n,t),t=Zs(e.stateNode,t,2),e=Va(e,t,2),e!==null&&(Xe(e,2),rd(e))}function Z(e,t,n){if(e.tag===3)Wu(e,e,n);else for(;t!==null;){if(t.tag===3){Wu(t,e,n);break}if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(ru===null||!ru.has(r))){e=vi(n,e),n=Qs(2),r=Va(t,n,2),r!==null&&($s(n,r,t,e),Xe(r,2),rd(r));break}}t=t.return}}function Gu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Rl;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)||(Hl=!0,i.add(n),e=Ku.bind(null,e,t,n),t.then(e,e))}function Ku(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,q===e&&(Y&n)===n&&(Wl===4||Wl===3&&(Y&62914560)===Y&&300>we()-$l?!(K&2)&&Su(e,0):ql|=n,Yl===Y&&(Yl=0)),rd(e)}function qu(e,t){t===0&&(t=Je()),e=ri(e,t),e!==null&&(Xe(e,t),rd(e))}function Ju(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),qu(e,n)}function Yu(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(i(314))}r!==null&&r.delete(t),qu(e,n)}function Xu(e,t){return be(e,t)}var Zu=null,Qu=null,$u=!1,ed=!1,td=!1,nd=0;function rd(e){e!==Qu&&e.next===null&&(Qu===null?Zu=Qu=e:Qu=Qu.next=e),ed=!0,$u||($u=!0,ud())}function id(e,t){if(!td&&ed){td=!0;do for(var n=!1,r=Zu;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-Le(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,ld(r,a))}else a=Y,a=Ge(r,r===q?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||Ke(r,a)||(n=!0,ld(r,a))}r=r.next}while(n);td=!1}}function ad(){od()}function od(){ed=$u=!1;var e=0;nd!==0&&Gd()&&(e=nd);for(var t=we(),n=null,r=Zu;r!==null;){var i=r.next,a=sd(r,t);a===0?(r.next=null,n===null?Zu=i:n.next=i,i===null&&(Qu=n)):(n=r,(e!==0||a&3)&&(ed=!0)),r=i}iu!==0&&iu!==5||id(e,!1),nd!==0&&(nd=0)}function sd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Le(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=qe(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=q,n=Y,n=Ge(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(X===2||X===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&xe(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||Ke(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&xe(r),it(n)){case 2:case 8:n=Oe;break;case 32:n=ke;break;case 268435456:n=je;break;default:n=ke}return r=cd.bind(null,e),n=be(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&xe(r),e.callbackPriority=2,e.callbackNode=null,2}function cd(e,t){if(iu!==0&&iu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(Hu()&&e.callbackNode!==n)return null;var r=Y;return r=Ge(e,e===q?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(gu(e,r,t),sd(e,we()),e.callbackNode!=null&&e.callbackNode===n?cd.bind(null,e):null)}function ld(e,t){if(Hu())return null;gu(e,t,!0)}function ud(){Yd(function(){K&6?be(De,ad):od()})}function dd(){if(nd===0){var e=la;e===0&&(e=Ve,Ve<<=1,!(Ve&261888)&&(Ve=256)),nd=e}return nd}function fd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:en(``+e)}function pd(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 md(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=fd((i[lt]||null).action),o=r.submitter;o&&(t=(t=o[lt]||null)?fd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new Cn(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(nd!==0){var e=o?pd(i,o):new FormData(i);Cs(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?pd(i,o):new FormData(i),Cs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var hd=0;hd<Jr.length;hd++){var gd=Jr[hd];Yr(gd.toLowerCase(),`on`+(gd[0].toUpperCase()+gd.slice(1)))}Yr(Br,`onAnimationEnd`),Yr(Vr,`onAnimationIteration`),Yr(Hr,`onAnimationStart`),Yr(`dblclick`,`onDoubleClick`),Yr(`focusin`,`onFocus`),Yr(`focusout`,`onBlur`),Yr(Ur,`onTransitionRun`),Yr(Wr,`onTransitionStart`),Yr(Gr,`onTransitionCancel`),Yr(Kr,`onTransitionEnd`),Tt(`onMouseEnter`,[`mouseout`,`mouseover`]),Tt(`onMouseLeave`,[`mouseout`,`mouseover`]),Tt(`onPointerEnter`,[`pointerout`,`pointerover`]),Tt(`onPointerLeave`,[`pointerout`,`pointerover`]),wt(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),wt(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),wt(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),wt(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),wt(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),wt(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var _d=`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(` `),vd=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(_d));function yd(e,t){t=!!(t&4);for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Xr(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){Xr(e)}i.currentTarget=null,a=c}}}}function Q(e,t){var n=t[dt];n===void 0&&(n=t[dt]=new Set);var r=e+`__bubble`;n.has(r)||(Cd(t,e,2,!1),n.add(r))}function bd(e,t,n){var r=0;t&&(r|=4),Cd(n,e,r,t)}var xd=`_reactListening`+Math.random().toString(36).slice(2);function Sd(e){if(!e[xd]){e[xd]=!0,St.forEach(function(t){t!==`selectionchange`&&(vd.has(t)||bd(t,!1,e),bd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[xd]||(t[xd]=!0,bd(`selectionchange`,!1,t))}}function Cd(e,t,n,r){switch(mp(t)){case 2:var i=cp;break;case 8:i=lp;break;default:i=up}n=i.bind(null,t,n,e),i=void 0,!fn||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 wd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var s=r.tag;if(s===3||s===4){var c=r.stateNode.containerInfo;if(c===i)break;if(s===4)for(s=r.return;s!==null;){var l=s.tag;if((l===3||l===4)&&s.stateNode.containerInfo===i)return;s=s.return}for(;c!==null;){if(s=_t(c),s===null)return;if(l=s.tag,l===5||l===6||l===26||l===27){r=a=s;continue a}c=c.parentNode}}r=r.return}ln(function(){var r=a,i=rn(n),s=[];a:{var c=qr.get(e);if(c!==void 0){var l=Cn,u=e;switch(e){case`keypress`:if(vn(n)===0)break a;case`keydown`:case`keyup`:l=Vn;break;case`focusin`:u=`focus`,l=Mn;break;case`focusout`:u=`blur`,l=Mn;break;case`beforeblur`:case`afterblur`:l=Mn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=An;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=jn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Un;break;case Br:case Vr:case Hr:l=Nn;break;case Kr:l=Wn;break;case`scroll`:case`scrollend`:l=Tn;break;case`wheel`:l=Gn;break;case`copy`:case`cut`:case`paste`:l=Pn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Hn;break;case`toggle`:case`beforetoggle`:l=Kn}var d=!!(t&4),f=!d&&(e===`scroll`||e===`scrollend`),p=d?c===null?null:c+`Capture`:c;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=un(m,p),g!=null&&d.push(Td(m,g,h))),f)break;m=m.return}0<d.length&&(c=new l(c,u,null,n,i),s.push({event:c,listeners:d}))}}if(!(t&7)){a:{if(c=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,c&&n!==nn&&(u=n.relatedTarget||n.fromElement)&&(_t(u)||u[ut]))break a;if((l||c)&&(c=i.window===i?i:(c=i.ownerDocument)?c.defaultView||c.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?_t(u):null,u!==null&&(f=o(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=An,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Hn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?c:yt(l),h=u==null?c:yt(u),c=new d(g,m+`leave`,l,n,i),c.target=f,c.relatedTarget=h,g=null,_t(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Dd,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Od(s,c,l,d,!1),u!==null&&f!==null&&Od(s,f,u,d,!0)}}a:{if(c=r?yt(r):window,l=c.nodeName&&c.nodeName.toLowerCase(),l===`select`||l===`input`&&c.type===`file`)var v=ur;else if(ir(c)){if(dr)v=br;else{v=vr;var y=_r}}else l=c.nodeName,!l||l.toLowerCase()!==`input`||c.type!==`checkbox`&&c.type!==`radio`?r&&Zt(r.elementType)&&(v=ur):v=yr;if(v&&=v(e,r)){ar(s,v,n,i);break a}y&&y(e,c,r),e===`focusout`&&r&&c.type===`number`&&r.memoizedProps.value!=null&&Ut(c,`number`,c.value)}switch(y=r?yt(r):window,e){case`focusin`:(ir(y)||y.contentEditable===`true`)&&(Ar=y,jr=r,Mr=null);break;case`focusout`:Mr=jr=Ar=null;break;case`mousedown`:Nr=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Nr=!1,Pr(s,n,i);break;case`selectionchange`:if(kr)break;case`keydown`:case`keyup`:Pr(s,n,i)}var b;if(Jn)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else er?Qn(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(Zn&&n.locale!==`ko`&&(er||x!==`onCompositionStart`?x===`onCompositionEnd`&&er&&(b=_n()):(mn=i,hn=`value`in mn?mn.value:mn.textContent,er=!0)),y=Ed(r,x),0<y.length&&(x=new Fn(x,e,null,n,i),s.push({event:x,listeners:y}),b?x.data=b:(b=$n(n),b!==null&&(x.data=b)))),(b=Xn?tr(e,n):nr(e,n))&&(x=Ed(r,`onBeforeInput`),0<x.length&&(y=new Fn(`onBeforeInput`,`beforeinput`,null,n,i),s.push({event:y,listeners:x}),y.data=b)),md(s,e,r,n,i)}yd(s,t)})}function Td(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Ed(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=un(e,n),i!=null&&r.unshift(Td(e,i,a)),i=un(e,t),i!=null&&r.push(Td(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Dd(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Od(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=un(n,a),l!=null&&o.unshift(Td(n,l,c))):i||(l=un(n,a),l!=null&&o.push(Td(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var kd=/\r\n?/g,Ad=/\u0000|\uFFFD/g;function jd(e){return(typeof e==`string`?e:``+e).replace(kd,`
|
|
10
|
-
`).replace(Ad,``)}function Md(e,t){return t=jd(t),jd(e)===t}function $(e,t,n,r,a,o){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||qt(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&qt(e,``+r);break;case`className`:jt(e,`class`,r);break;case`tabIndex`:jt(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:jt(e,n,r);break;case`style`:Xt(e,r,o);break;case`data`:if(t!==`object`){jt(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)||r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=en(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}if(typeof o==`function`&&(n===`formAction`?(t!==`input`&&$(e,t,`name`,a.name,a,null),$(e,t,`formEncType`,a.formEncType,a,null),$(e,t,`formMethod`,a.formMethod,a,null),$(e,t,`formTarget`,a.formTarget,a,null)):($(e,t,`encType`,a.encType,a,null),$(e,t,`method`,a.method,a,null),$(e,t,`target`,a.target,a,null))),r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=en(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=tn);break;case`onScroll`:r!=null&&Q(`scroll`,e);break;case`onScrollEnd`:r!=null&&Q(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=en(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:Q(`beforetoggle`,e),Q(`toggle`,e),At(e,`popover`,r);break;case`xlinkActuate`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Mt(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Mt(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:At(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=Qt.get(n)||n,At(e,n,r))}}function Nd(e,t,n,r,a,o){switch(n){case`style`:Xt(e,r,o);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(i(61));if(n=r.__html,n!=null){if(a.children!=null)throw Error(i(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?qt(e,r):(typeof r==`number`||typeof r==`bigint`)&&qt(e,``+r);break;case`onScroll`:r!=null&&Q(`scroll`,e);break;case`onScrollEnd`:r!=null&&Q(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=tn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!Ct.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(a=n.endsWith(`Capture`),t=n.slice(2,a?n.length-7:void 0),o=e[lt]||null,o=o==null?null:o[n],typeof o==`function`&&e.removeEventListener(t,o,a),typeof r==`function`)){typeof o!=`function`&&o!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,a);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):At(e,n,r)}}}function Pd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:Q(`error`,e),Q(`load`,e);var r=!1,a=!1,o;for(o in n)if(n.hasOwnProperty(o)){var s=n[o];if(s!=null)switch(o){case`src`:r=!0;break;case`srcSet`:a=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:$(e,t,o,s,n,null)}}a&&$(e,t,`srcSet`,n.srcSet,n,null),r&&$(e,t,`src`,n.src,n,null);return;case`input`:Q(`invalid`,e);var c=o=s=a=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:a=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:o=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(i(137,t));break;default:$(e,t,r,d,n,null)}}Ht(e,o,c,l,u,s,a,!1);return;case`select`:for(a in Q(`invalid`,e),r=s=o=null,n)if(n.hasOwnProperty(a)&&(c=n[a],c!=null))switch(a){case`value`:o=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:$(e,t,a,c,n,null)}t=o,n=s,e.multiple=!!r,t==null?n!=null&&Wt(e,!!r,n,!0):Wt(e,!!r,t,!1);return;case`textarea`:for(s in Q(`invalid`,e),o=a=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:a=c;break;case`children`:o=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(i(91));break;default:$(e,t,s,c,n,null)}Kt(e,r,a,o);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:$(e,t,l,r,n,null)}return;case`dialog`:Q(`beforetoggle`,e),Q(`toggle`,e),Q(`cancel`,e),Q(`close`,e);break;case`iframe`:case`object`:Q(`load`,e);break;case`video`:case`audio`:for(r=0;r<_d.length;r++)Q(_d[r],e);break;case`image`:Q(`error`,e),Q(`load`,e);break;case`details`:Q(`toggle`,e);break;case`embed`:case`source`:case`link`:Q(`error`,e),Q(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(i(137,t));default:$(e,t,u,r,n,null)}return;default:if(Zt(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Nd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&$(e,t,c,r,n,null))}function Fd(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var a=null,o=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||$(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:o=m;break;case`name`:a=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(i(137,t));break;default:m!==f&&$(e,t,p,m,r,f)}}Vt(e,s,c,l,u,d,o,a);return;case`select`:for(o in m=s=c=p=null,n)if(l=n[o],n.hasOwnProperty(o)&&l!=null)switch(o){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(o)||$(e,t,o,null,r,l)}for(a in r)if(o=r[a],l=n[a],r.hasOwnProperty(a)&&(o!=null||l!=null))switch(a){case`value`:p=o;break;case`defaultValue`:c=o;break;case`multiple`:s=o;default:o!==l&&$(e,t,a,o,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?Wt(e,!!n,n?[]:``,!1):Wt(e,!!n,t,!0)):Wt(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(a=n[c],n.hasOwnProperty(c)&&a!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:$(e,t,c,null,r,a)}for(s in r)if(a=r[s],o=n[s],r.hasOwnProperty(s)&&(a!=null||o!=null))switch(s){case`value`:p=a;break;case`defaultValue`:m=a;break;case`children`:break;case`dangerouslySetInnerHTML`:if(a!=null)throw Error(i(91));break;default:a!==o&&$(e,t,s,a,r,o)}Gt(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:$(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:$(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&$(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(i(137,t));break;default:$(e,t,u,p,r,m)}return;default:if(Zt(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Nd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Nd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&$(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||$(e,t,f,p,r,m)}function Id(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Ld(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Id(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Id(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Rd=null,zd=null;function Bd(e){return e.nodeType===9?e:e.ownerDocument}function Vd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Hd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Ud(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Wd=null;function Gd(){var e=window.event;return e&&e.type===`popstate`?e!==Wd&&(Wd=e,!0):(Wd=null,!1)}var Kd=typeof setTimeout==`function`?setTimeout:void 0,qd=typeof clearTimeout==`function`?clearTimeout:void 0,Jd=typeof Promise==`function`?Promise:void 0,Yd=typeof queueMicrotask==`function`?queueMicrotask:Jd===void 0?Kd:function(e){return Jd.resolve(null).then(e).catch(Xd)};function Xd(e){setTimeout(function(){throw e})}function Zd(e){return e===`head`}function Qd(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8){if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Np(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)pf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,pf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[ht]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&pf(e.ownerDocument.body)}n=i}while(n);Np(t)}function $d(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8){if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++}n=r}while(n)}function ef(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:ef(n),gt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function tf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r){if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e}else if(!e[ht])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=cf(e.nextSibling),e===null)break}return null}function nf(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=cf(e.nextSibling),e===null))return null;return e}function rf(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=cf(e.nextSibling),e===null))return null;return e}function af(e){return e.data===`$?`||e.data===`$~`}function of(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function sf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function cf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var lf=null;function uf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return cf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function df(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function ff(e,t,n){switch(t=Bd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(i(452));return e;case`head`:if(e=t.head,!e)throw Error(i(453));return e;case`body`:if(e=t.body,!e)throw Error(i(454));return e;default:throw Error(i(451))}}function pf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);gt(e)}var mf=new Map,hf=new Set;function gf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var _f=M.d;M.d={f:vf,r:yf,D:Sf,C:Cf,L:wf,m:Tf,X:Df,S:Ef,M:Of};function vf(){var e=_f.f(),t=bu();return e||t}function yf(e){var t=vt(e);t!==null&&t.tag===5&&t.type===`form`?Ts(t):_f.r(e)}var bf=typeof document>`u`?null:document;function xf(e,t,n){var r=bf;if(r&&typeof t==`string`&&t){var i=Bt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),hf.has(i)||(hf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Pd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function Sf(e){_f.D(e),xf(`dns-prefetch`,e,null)}function Cf(e,t){_f.C(e,t),xf(`preconnect`,e,t)}function wf(e,t,n){_f.L(e,t,n);var r=bf;if(r&&e&&t){var i=`link[rel="preload"][as="`+Bt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Bt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Bt(n.imageSizes)+`"]`)):i+=`[href="`+Bt(e)+`"]`;var a=i;switch(t){case`style`:a=Af(e);break;case`script`:a=Pf(e)}mf.has(a)||(e=f({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),mf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(jf(a))||t===`script`&&r.querySelector(Ff(a))||(t=r.createElement(`link`),Pd(t,`link`,e),xt(t),r.head.appendChild(t)))}}function Tf(e,t){_f.m(e,t);var n=bf;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Bt(r)+`"][href="`+Bt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Pf(e)}if(!mf.has(a)&&(e=f({rel:`modulepreload`,href:e},t),mf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Ff(a)))return}r=n.createElement(`link`),Pd(r,`link`,e),xt(r),n.head.appendChild(r)}}}function Ef(e,t,n){_f.S(e,t,n);var r=bf;if(r&&e){var i=bt(r).hoistableStyles,a=Af(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(jf(a)))s.loading=5;else{e=f({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=mf.get(a))&&Rf(e,n);var c=o=r.createElement(`link`);xt(c),Pd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Lf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Df(e,t){_f.X(e,t);var n=bf;if(n&&e){var r=bt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),xt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Of(e,t){_f.M(e,t);var n=bf;if(n&&e){var r=bt(n).hoistableScripts,i=Pf(e),a=r.get(i);a||(a=n.querySelector(Ff(i)),a||(e=f({src:e,async:!0,type:`module`},t),(t=mf.get(i))&&zf(e,t),a=n.createElement(`script`),xt(a),Pd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function kf(e,t,n,r){var a=(a=se.current)?gf(a):null;if(!a)throw Error(i(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Af(n.href),n=bt(a).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Af(n.href);var o=bt(a).hoistableStyles,s=o.get(e);if(s||(a=a.ownerDocument||a,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},o.set(e,s),(o=a.querySelector(jf(e)))&&!o._p&&(s.instance=o,s.state.loading=5),mf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},mf.set(e,n),o||Nf(a,e,n,s.state))),t&&r===null)throw Error(i(528,``));return s}if(t&&r!==null)throw Error(i(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Pf(n),n=bt(a).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(i(444,e))}}function Af(e){return`href="`+Bt(e)+`"`}function jf(e){return`link[rel="stylesheet"][`+e+`]`}function Mf(e){return f({},e,{"data-precedence":e.precedence,precedence:null})}function Nf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Pd(t,`link`,n),xt(t),e.head.appendChild(t))}function Pf(e){return`[src="`+Bt(e)+`"]`}function Ff(e){return`script[async]`+e}function If(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Bt(n.href)+`"]`);if(r)return t.instance=r,xt(r),r;var a=f({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),xt(r),Pd(r,`style`,a),Lf(r,n.precedence,e),t.instance=r;case`stylesheet`:a=Af(n.href);var o=e.querySelector(jf(a));if(o)return t.state.loading|=4,t.instance=o,xt(o),o;r=Mf(n),(a=mf.get(a))&&Rf(r,a),o=(e.ownerDocument||e).createElement(`link`),xt(o);var s=o;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Pd(o,`link`,r),t.state.loading|=4,Lf(o,n.precedence,e),t.instance=o;case`script`:return o=Pf(n.src),(a=e.querySelector(Ff(o)))?(t.instance=a,xt(a),a):(r=n,(a=mf.get(o))&&(r=f({},n),zf(r,a)),e=e.ownerDocument||e,a=e.createElement(`script`),xt(a),Pd(a,`link`,r),e.head.appendChild(a),t.instance=a);case`void`:return null;default:throw Error(i(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Lf(r,n.precedence,e));return t.instance}function Lf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Rf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function zf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Bf=null;function Vf(e,t,n){if(Bf===null){var r=new Map,i=Bf=new Map;i.set(n,r)}else i=Bf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[ht]||a[ct]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Hf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Uf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Wf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function Gf(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Af(r.href),a=t.querySelector(jf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=Jf.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,xt(a);return}a=t.ownerDocument||t,r=Mf(r),(i=mf.get(i))&&Rf(r,i),a=a.createElement(`link`),xt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Pd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=Jf.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var Kf=0;function qf(e,t){return e.stylesheets&&e.count===0&&Xf(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&Kf===0&&(Kf=62500*Ld());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&Xf(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>Kf?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function Jf(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)Xf(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var Yf=null;function Xf(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,Yf=new Map,t.forEach(Zf,e),Yf=null,Jf.call(e))}function Zf(e,t){if(!(t.state.loading&4)){var n=Yf.get(e);if(n)var r=n.get(null);else{n=new Map,Yf.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=Jf.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var Qf={$$typeof:b,Provider:null,Consumer:null,_currentValue:N,_currentValue2:N,_threadCount:0};function $f(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Ye(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Ye(0),this.hiddenUpdates=Ye(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function ep(e,t,n,r,i,a,o,s,c,l,u,d){return e=new $f(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=ci(3,null,null,t),e.current=a,a.stateNode=e,t=aa(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Ra(a),e}function tp(e){return e?(e=oi,e):oi}function np(e,t,n,r,i,a){i=tp(i),r.context===null?r.context=i:r.pendingContext=i,r=Ba(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=Va(e,r,t),n!==null&&(hu(n,e,t),Ha(n,e,t))}function rp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function ip(e,t){rp(e,t),(e=e.alternate)&&rp(e,t)}function ap(e){if(e.tag===13||e.tag===31){var t=ri(e,67108864);t!==null&&hu(t,e,67108864),ip(e,67108864)}}function op(e){if(e.tag===13||e.tag===31){var t=pu();t=nt(t);var n=ri(e,t);n!==null&&hu(n,e,t),ip(e,t)}}var sp=!0;function cp(e,t,n,r){var i=j.T;j.T=null;var a=M.p;try{M.p=2,up(e,t,n,r)}finally{M.p=a,j.T=i}}function lp(e,t,n,r){var i=j.T;j.T=null;var a=M.p;try{M.p=8,up(e,t,n,r)}finally{M.p=a,j.T=i}}function up(e,t,n,r){if(sp){var i=dp(r);if(i===null)wd(e,t,r,fp,n),Cp(e,r);else if(Tp(i,e,t,n,r))r.stopPropagation();else if(Cp(e,r),t&4&&-1<Sp.indexOf(e)){for(;i!==null;){var a=vt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=We(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Le(o);s.entanglements[1]|=c,o&=~c}rd(a),!(K&6)&&(tu=we()+500,id(0,!1))}}break;case 31:case 13:s=ri(a,2),s!==null&&hu(s,a,2),bu(),ip(a,2)}if(a=dp(r),a===null&&wd(e,t,r,fp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else wd(e,t,r,null,n)}}function dp(e){return e=rn(e),pp(e)}var fp=null;function pp(e){if(fp=null,e=_t(e),e!==null){var t=o(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=s(t),e!==null)return e;e=null}else if(n===31){if(e=c(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return fp=e,null}function mp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(Te()){case De:return 2;case Oe:return 8;case ke:case Ae:return 32;case je:return 268435456;default:return 32}default:return 32}}var hp=!1,gp=null,_p=null,vp=null,yp=new Map,bp=new Map,xp=[],Sp=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function Cp(e,t){switch(e){case`focusin`:case`focusout`:gp=null;break;case`dragenter`:case`dragleave`:_p=null;break;case`mouseover`:case`mouseout`:vp=null;break;case`pointerover`:case`pointerout`:yp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:bp.delete(t.pointerId)}}function wp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=vt(t),t!==null&&ap(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Tp(e,t,n,r,i){switch(t){case`focusin`:return gp=wp(gp,e,t,n,r,i),!0;case`dragenter`:return _p=wp(_p,e,t,n,r,i),!0;case`mouseover`:return vp=wp(vp,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return yp.set(a,wp(yp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,bp.set(a,wp(bp.get(a)||null,e,t,n,r,i)),!0}return!1}function Ep(e){var t=_t(e.target);if(t!==null){var n=o(t);if(n!==null){if(t=n.tag,t===13){if(t=s(n),t!==null){e.blockedOn=t,ot(e.priority,function(){op(n)});return}}else if(t===31){if(t=c(n),t!==null){e.blockedOn=t,ot(e.priority,function(){op(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Dp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=dp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);nn=r,n.target.dispatchEvent(r),nn=null}else return t=vt(n),t!==null&&ap(t),e.blockedOn=n,!1;t.shift()}return!0}function Op(e,t,n){Dp(e)&&n.delete(t)}function kp(){hp=!1,gp!==null&&Dp(gp)&&(gp=null),_p!==null&&Dp(_p)&&(_p=null),vp!==null&&Dp(vp)&&(vp=null),yp.forEach(Op),bp.forEach(Op)}function Ap(e,n){e.blockedOn===n&&(e.blockedOn=null,hp||(hp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,kp)))}var jp=null;function Mp(e){jp!==e&&(jp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){jp===e&&(jp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(pp(r||n)===null)continue;break}var a=vt(n);a!==null&&(e.splice(t,3),t-=3,Cs(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Np(e){function t(t){return Ap(t,e)}gp!==null&&Ap(gp,e),_p!==null&&Ap(_p,e),vp!==null&&Ap(vp,e),yp.forEach(t),bp.forEach(t);for(var n=0;n<xp.length;n++){var r=xp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<xp.length&&(n=xp[0],n.blockedOn===null);)Ep(n),n.blockedOn===null&&xp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[lt]||null;if(typeof a==`function`)o||Mp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[lt]||null)s=o.formAction;else if(pp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Mp(n)}}}function Pp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Fp(e){this._internalRoot=e}Ip.prototype.render=Fp.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(i(409));var n=t.current;np(n,pu(),e,t,null,null)},Ip.prototype.unmount=Fp.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;np(e.current,2,null,e,null,null),bu(),t[ut]=null}};function Ip(e){this._internalRoot=e}Ip.prototype.unstable_scheduleHydration=function(e){if(e){var t=at();e={blockedOn:null,target:e,priority:t};for(var n=0;n<xp.length&&t!==0&&t<xp[n].priority;n++);xp.splice(n,0,e),n===0&&Ep(e)}};var Lp=n.version;if(Lp!==`19.2.7`)throw Error(i(527,Lp,`19.2.7`));M.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(i(188)):(e=Object.keys(e).join(`,`),Error(i(268,e)));return e=u(t),e=e===null?null:d(e),e=e===null?null:e.stateNode,e};var Rp={bundleType:0,version:`19.2.7`,rendererPackageName:`react-dom`,currentDispatcherRef:j,reconcilerVersion:`19.2.7`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var zp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!zp.isDisabled&&zp.supportsFiber)try{Pe=zp.inject(Rp),Fe=zp}catch{}}e.createRoot=function(e,t){if(!a(e))throw Error(i(299));var n=!1,r=``,o=Ks,s=qs,c=Js;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(o=t.onUncaughtError),t.onCaughtError!==void 0&&(s=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=ep(e,1,!1,null,null,n,r,null,o,s,c,Pp),e[ut]=t.current,Sd(e),new Fp(t)}})),at=We(((e,t)=>{function n(){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE==`function`)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=it()})),ot={name:`app-window`,size:24,node:[[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}],[`path`,{d:`M10 4v4`,key:`pp8u80`}],[`path`,{d:`M2 8h20`,key:`d11cs7`}],[`path`,{d:`M6 4v4`,key:`1svtjw`}]]};ot.node;var st=N(ot),ct={name:`arrow-up`,size:24,node:[[`path`,{d:`m5 12 7-7 7 7`,key:`hav0vg`}],[`path`,{d:`M12 19V5`,key:`x0mq9r`}]]};ct.node;var lt=N(ct),ut={name:`bell-ring`,size:24,node:[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]};ut.node;var dt=N(ut),ft={name:`blocks`,size:24,node:[[`path`,{d:`M10 22V7a1 1 0 0 0-1-1H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5a1 1 0 0 0-1-1H2`,key:`1ah6g2`}],[`rect`,{x:`14`,y:`2`,width:`8`,height:`8`,rx:`1`,key:`88lufb`}]]};ft.node;var pt=N(ft),mt={name:`bot`,size:24,node:[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]};mt.node;var ht=N(mt),gt={name:`bug`,size:24,node:[[`path`,{d:`M12 20v-9`,key:`1qisl0`}],[`path`,{d:`M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z`,key:`uouzyp`}],[`path`,{d:`M14.12 3.88 16 2`,key:`qol33r`}],[`path`,{d:`M21 21a4 4 0 0 0-3.81-4`,key:`1b0z45`}],[`path`,{d:`M21 5a4 4 0 0 1-3.55 3.97`,key:`5cxbf6`}],[`path`,{d:`M22 13h-4`,key:`1jl80f`}],[`path`,{d:`M3 21a4 4 0 0 1 3.81-4`,key:`1fjd4g`}],[`path`,{d:`M3 5a4 4 0 0 0 3.55 3.97`,key:`1d7oge`}],[`path`,{d:`M6 13H2`,key:`82j7cp`}],[`path`,{d:`m8 2 1.88 1.88`,key:`fmnt4t`}],[`path`,{d:`M9 7.13V6a3 3 0 1 1 6 0v1.13`,key:`1vgav8`}]]};gt.node;var _t=N(gt),vt={name:`chart-column`,size:24,node:[[`path`,{d:`M3 3v16a2 2 0 0 0 2 2h16`,key:`c24i48`}],[`path`,{d:`M18 17V9`,key:`2bz60n`}],[`path`,{d:`M13 17V5`,key:`1frdt8`}],[`path`,{d:`M8 17v-3`,key:`17ska0`}]],aliases:[`bar-chart-3`]};vt.node;var yt=N(vt),bt={name:`circle-alert`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]],aliases:[`alert-circle`]};bt.node;var xt=N(bt),St={name:`circle-check`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16 9-5.5 5.5L8 12`,key:`xofnsj`}]],aliases:[`check-circle-2`]};St.node;var Ct=N(St),wt={name:`cloud`,size:24,node:[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]};wt.node;var Tt=N(wt),Et={name:`code`,size:24,node:[[`path`,{d:`m16 18 6-6-6-6`,key:`eg8j8`}],[`path`,{d:`m8 6-6 6 6 6`,key:`ppft3o`}]]};Et.node;var Dt=N(Et),Ot={name:`compass`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m16.24 7.76-1.804 5.411a2 2 0 0 1-1.265 1.265L7.76 16.24l1.804-5.411a2 2 0 0 1 1.265-1.265z`,key:`9ktpf1`}]]};Ot.node;var kt=N(Ot),At={name:`container`,size:24,node:[[`path`,{d:`M22 7.7c0-.6-.4-1.2-.8-1.5l-6.3-3.9a1.72 1.72 0 0 0-1.7 0l-10.3 6c-.5.2-.9.8-.9 1.4v6.6c0 .5.4 1.2.8 1.5l6.3 3.9a1.72 1.72 0 0 0 1.7 0l10.3-6c.5-.3.9-1 .9-1.5Z`,key:`1t2lqe`}],[`path`,{d:`M10 21.9V14L2.1 9.1`,key:`o7czzq`}],[`path`,{d:`m10 14 11.9-6.9`,key:`zm5e20`}],[`path`,{d:`M14 19.8v-8.1`,key:`159ecu`}],[`path`,{d:`M18 17.5V9.4`,key:`11uown`}]]};At.node;var jt=N(At),Mt={name:`download`,size:24,node:[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]};Mt.node;var Nt=N(Mt),Pt={name:`eraser`,size:24,node:[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`,key:`g5wo59`}],[`path`,{d:`m5.082 11.09 8.828 8.828`,key:`1wx5vj`}]]};Pt.node;var Ft=N(Pt),It={name:`eye`,size:24,node:[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]};It.node;var Lt=N(It),Rt={name:`file-code-corner`,size:24,node:[[`path`,{d:`M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35`,key:`1wthlu`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`m5 16-3 3 3 3`,key:`331omg`}],[`path`,{d:`m9 22 3-3-3-3`,key:`lsp7cz`}]],aliases:[`file-code-2`]};Rt.node;var zt=N(Rt),Bt={name:`flask-conical`,size:24,node:[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]};Bt.node;var Vt=N(Bt),Ht={name:`folder-check`,size:24,node:[[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}],[`path`,{d:`m9 13 2 2 4-4`,key:`6343dt`}]]};Ht.node;var Ut=N(Ht),Wt={name:`folder-plus`,size:24,node:[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]};Wt.node;var Gt=N(Wt),Kt={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};Kt.node;var qt=N(Kt),Jt={name:`heart-pulse`,size:24,node:[[`path`,{d:`M2 9.5a5.5 5.5 0 0 1 9.591-3.676.56.56 0 0 0 .818 0A5.49 5.49 0 0 1 22 9.5c0 2.29-1.5 4-3 5.5l-5.492 5.313a2 2 0 0 1-3 .019L5 15c-1.5-1.5-3-3.2-3-5.5`,key:`mvr1a0`}],[`path`,{d:`M3.22 13H9.5l.5-1 2 4.5 2-7 1.5 3.5h5.27`,key:`auskq0`}]]};Jt.node;var Yt=N(Jt),Xt={name:`info`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]};Xt.node;var Zt=N(Xt),Qt={name:`key-round`,size:24,node:[[`path`,{d:`M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z`,key:`1s6t7t`}],[`circle`,{cx:`16.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`w0ekpg`}]]};Qt.node;var $t=N(Qt),en={name:`layers`,size:24,node:[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]],aliases:[`layers-3`]};en.node;var tn=N(en),nn={name:`list-checks`,size:24,node:[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]};nn.node;var rn=N(nn),an={name:`lock`,size:24,node:[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]};an.node;var on=N(an),sn={name:`mail`,size:24,node:[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]};sn.node;var cn=N(sn),ln={name:`monitor-play`,size:24,node:[[`path`,{d:`M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z`,key:`vbtd3f`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`,key:`x3v2xh`}]]};ln.node;var un=N(ln),dn={name:`monitor`,size:24,node:[[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`line`,{x1:`8`,x2:`16`,y1:`21`,y2:`21`,key:`1svkeh`}],[`line`,{x1:`12`,x2:`12`,y1:`17`,y2:`21`,key:`vw1qmm`}]]};dn.node;var fn=N(dn),pn={name:`paperclip`,size:24,node:[[`path`,{d:`m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551`,key:`1miecu`}]]};pn.node;var mn=N(pn),hn={name:`plug`,size:24,node:[[`path`,{d:`M12 22v-5`,key:`1ega77`}],[`path`,{d:`M15 8V2`,key:`18g5xt`}],[`path`,{d:`M17 8a1 1 0 0 1 1 1v4a4 4 0 0 1-4 4h-4a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1z`,key:`1xoxul`}],[`path`,{d:`M9 8V2`,key:`14iosj`}]]};hn.node;var gn=N(hn),_n={name:`plus`,size:24,node:[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`M12 5v14`,key:`s699le`}]]};_n.node;var vn=N(_n),yn={name:`refresh-cw`,size:24,node:[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]};yn.node;var bn=N(yn),xn={name:`rocket`,size:24,node:[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]};xn.node;var Sn=N(xn),Cn={name:`route`,size:24,node:[[`circle`,{cx:`6`,cy:`19`,r:`3`,key:`1kj8tv`}],[`path`,{d:`M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15`,key:`1d8sl`}],[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}]]};Cn.node;var wn=N(Cn),Tn={name:`search`,size:24,node:[[`path`,{d:`m21 21-4.34-4.34`,key:`14j7rj`}],[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}]]};Tn.node;var En=N(Tn),Dn={name:`send`,size:24,node:[[`path`,{d:`M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z`,key:`1ffxy3`}],[`path`,{d:`m21.854 2.147-10.94 10.939`,key:`12cjpa`}]]};Dn.node;var On=N(Dn),kn={name:`settings-2`,size:24,node:[[`path`,{d:`M14 17H5`,key:`gfn3mx`}],[`path`,{d:`M19 7h-9`,key:`6i9tg`}],[`circle`,{cx:`17`,cy:`17`,r:`3`,key:`18b49y`}],[`circle`,{cx:`7`,cy:`7`,r:`3`,key:`dfmy0x`}]]};kn.node;var An=N(kn),jn={name:`sliders-horizontal`,size:24,node:[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]};jn.node;var Mn=N(jn),Nn={name:`smartphone`,size:24,node:[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]};Nn.node;var Pn=N(Nn),Fn={name:`sparkle`,size:24,node:[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}]]};Fn.node;var In=N(Fn),Ln={name:`square-kanban`,size:24,node:[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}],[`path`,{d:`M8 7v7`,key:`1x2jlm`}],[`path`,{d:`M12 7v4`,key:`xawao1`}],[`path`,{d:`M16 7v9`,key:`1hp2iy`}]],aliases:[`kanban-square`]};Ln.node;var Rn=N(Ln),zn={name:`square-split-horizontal`,size:24,node:[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`M16 3h3a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2h-3`,key:`saxlbk`}],[`path`,{d:`M8 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3`,key:`m1vog4`}]],aliases:[`split-square-horizontal`]};zn.node;var Bn=N(zn),Vn={name:`ticket`,size:24,node:[[`path`,{d:`M2 9a3 3 0 0 1 0 6v2a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-2a3 3 0 0 1 0-6V7a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2Z`,key:`qn84l0`}],[`path`,{d:`M13 5v2`,key:`dyzc3o`}],[`path`,{d:`M13 17v2`,key:`1ont0d`}],[`path`,{d:`M13 11v2`,key:`1wjjxi`}]]};Vn.node;var Hn=N(Vn),Un={name:`undo-2`,size:24,node:[[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}],[`path`,{d:`M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11`,key:`f3b9sd`}]]};Un.node;var Wn=N(Un),Gn={name:`user-pen`,size:24,node:[[`path`,{d:`M11.5 15H7a4 4 0 0 0-4 4v2`,key:`15lzij`}],[`path`,{d:`M21.378 16.626a1 1 0 0 0-3.004-3.004l-4.01 4.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z`,key:`1817ys`}],[`circle`,{cx:`10`,cy:`7`,r:`4`,key:`e45bow`}]]};Gn.node;var Kn=N(Gn),qn={name:`wand-sparkles`,size:24,node:[[`path`,{d:`m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72`,key:`ul74o6`}],[`path`,{d:`m14 7 3 3`,key:`1r5n42`}],[`path`,{d:`M5 6v4`,key:`ilb8ba`}],[`path`,{d:`M19 14v4`,key:`blhpug`}],[`path`,{d:`M10 2v2`,key:`7u0qdc`}],[`path`,{d:`M7 8H3`,key:`zfb6yr`}],[`path`,{d:`M21 16h-4`,key:`1cnmox`}],[`path`,{d:`M11 3H9`,key:`1obp7u`}]],aliases:[`wand-2`]};qn.node;var Jn=N(qn),Yn={name:`workflow`,size:24,node:[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]};Yn.node;var Xn=N(Yn),Zn=at(),L=me(Ee(),1),R=F();function Qn({open:e,onClose:t,children:n,className:r,label:i,role:a=`menu`,side:o=`up`}){let s=(0,L.useRef)(null),[c,l]=(0,L.useState)({});return(0,L.useLayoutEffect)(()=>{if(!e||o!==`auto`||!s.current?.parentElement)return;let t=s.current.parentElement.getBoundingClientRect(),n=window.innerHeight-t.bottom-16,r=t.top-16;l(n>=s.current.scrollHeight||n>=r?{top:t.height+8,bottom:`auto`,maxHeight:n}:{bottom:t.height+8,top:`auto`,maxHeight:r})},[e,o]),(0,L.useEffect)(()=>{if(!e)return;let n=e=>{s.current&&!s.current.parentElement?.contains(e.target)&&t()},r=e=>{e.key===`Escape`&&t()};return document.addEventListener(`mousedown`,n),document.addEventListener(`keydown`,r),()=>{document.removeEventListener(`mousedown`,n),document.removeEventListener(`keydown`,r)}},[e,t]),e?(0,R.jsx)(`div`,{ref:s,role:a,"aria-label":i,style:c,className:T(`fade-in absolute bottom-[52px] z-10 min-w-[260px] overflow-y-auto rounded-[14px] border border-line bg-bg p-1.5 shadow-menu`,r),children:n}):null}function $n({id:e,value:t,onChange:n,onSend:r,onStop:i,busy:a,disabled:o,placeholder:s,label:c,left:l,right:u,top:d,rows:f=2}){let p=t.trim().length>0,m=(0,L.useRef)(null);return(0,L.useLayoutEffect)(()=>{let e=m.current;e&&(e.style.height=`auto`,e.style.height=`${e.scrollHeight}px`)},[t]),(0,R.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),a?i?.():p&&!o&&r()},className:`relative box-border w-full rounded-[22px] border border-line bg-bg py-[18px] pr-3.5 pl-5 shadow-composer has-[textarea:focus-visible]:outline-2 has-[textarea:focus-visible]:outline-offset-2 has-[textarea:focus-visible]:outline-accent`,children:[(0,R.jsx)(`label`,{htmlFor:e,className:`sr-only`,children:c}),d,(0,R.jsx)(`textarea`,{ref:m,id:e,rows:f,value:t,disabled:o,onChange:e=>n(e.target.value),onKeyDown:e=>{e.key===`Enter`&&!e.shiftKey&&!e.nativeEvent.isComposing&&(e.preventDefault(),!a&&p&&!o&&r())},placeholder:s,className:`box-border max-h-[50vh] w-full resize-none overflow-y-auto border-0 bg-transparent p-0 text-base leading-[1.55] text-ink outline-none placeholder:text-muted focus-visible:outline-none disabled:opacity-60`}),(0,R.jsxs)(`div`,{className:`mt-2.5 -ml-2.5 flex items-center gap-1`,children:[l,(0,R.jsx)(`div`,{className:`flex-auto`}),u,a?(0,R.jsx)(`button`,{type:`submit`,"aria-label":`Stop`,className:`ml-1.5 inline-flex size-11 flex-none cursor-pointer items-center justify-center rounded-full border-0 bg-ink text-white hover:bg-ink-2`,children:(0,R.jsx)(be,{size:14,fill:`currentColor`,"aria-hidden":`true`})}):(0,R.jsx)(`button`,{type:`submit`,"aria-label":`Send`,disabled:o,className:T(`ml-1.5 inline-flex size-11 flex-none cursor-pointer items-center justify-center rounded-full border-0 transition-colors disabled:cursor-not-allowed`,p&&!o?`bg-accent text-white hover:bg-accent-hover`:`bg-line text-muted`),children:(0,R.jsx)(lt,{size:20,strokeWidth:2.2,"aria-hidden":`true`})})]})]})}function er(e,t){let[n,r]=(0,L.useState)(null),i=(0,L.useRef)(null),a=(0,L.useRef)(t);a.current=t;let o=()=>{i.current&&clearInterval(i.current),i.current=null};return(0,L.useEffect)(()=>o,[]),{state:n,start:(0,L.useCallback)(async t=>{if(t.trim()){o(),r({original:t,job:null,error:``});try{let n=await Le.start(t,e);r({original:t,job:n,error:``}),i.current=setInterval(async()=>{try{let t=await Le.job();if(!t||t.target!==e||t.startedAt!==n.startedAt)return;if(t.running)return r(e=>e&&{...e,job:t});o();let i=t.exitCode===0?t.result:void 0;i?.refined&&a.current(i.refined),r(e=>e&&{...e,job:t,result:i})}catch(e){o(),r(t=>t&&{...t,error:e.message})}},700)}catch(e){r({original:t,job:null,error:e.message})}}},[e]),stop:(0,L.useCallback)(async()=>{o(),await Le.stop().catch(()=>{}),r(null)},[]),close:(0,L.useCallback)(()=>{o(),r(null)},[]),undo:(0,L.useCallback)(()=>{r(e=>(e&&a.current(e.original),null))},[]),running:!!n&&!n.error&&(!n.job||n.job.running)}}function tr({onClick:e,running:t,disabled:n}){return(0,R.jsxs)(P,{variant:`ghost`,className:`px-2.5 text-[15px]`,disabled:n||t,onClick:e,title:`Make the request precise before sending it: nothing runs`,children:[t?(0,R.jsx)(v,{state:`thinking`,px:18}):(0,R.jsx)(Jn,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),`Refine`]})}function nr({state:e,onStop:t,onUndo:n,onClose:r}){let[i,a]=(0,L.useState)(!1),o=e.job,s=e.result,c=!e.error&&(!o||o.running),l=e.error||o?.lines.filter(e=>!/^→ |^args /.test(e)).slice(-3).join(` `)||`Refine gave no result.`;return(0,R.jsxs)(`div`,{"aria-live":`polite`,className:`-mt-1 mb-3 flex flex-col gap-2 border-b border-line-soft pb-3 text-[13px]`,children:[(0,R.jsxs)(`div`,{className:`flex min-h-7 flex-wrap items-center gap-x-2 gap-y-1`,children:[c?(0,R.jsx)(v,{state:`thinking`,px:18,label:`Refining`}):(0,R.jsx)(Jn,{size:16,"aria-hidden":`true`,className:s?`text-accent`:`text-fail`}),(0,R.jsx)(`span`,{className:T(`font-medium`,c&&`shimmer`),children:(0,R.jsx)(`span`,{children:c?`Refining your request…`:s?`Refined: your request below, made precise`:`Refine did not finish`})}),c&&(0,R.jsx)(`span`,{className:`text-muted`,children:`Checking it against the capabilities, the systems and the project. Nothing runs.`}),s&&(0,R.jsxs)(`span`,{className:`text-muted`,children:[s.grounded.filter(e=>e.checked).length,` of `,s.grounded.length,` facts checked`]}),(0,R.jsx)(`span`,{className:`flex-auto`}),c?(0,R.jsx)(P,{size:`sm`,variant:`ghost`,onClick:t,children:`Stop`}):(0,R.jsxs)(R.Fragment,{children:[s&&(s.assumed.length>0||typeof s.ste==`number`)&&(0,R.jsxs)(`button`,{type:`button`,"aria-expanded":i,onClick:()=>a(!i),className:`inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-full border-0 bg-transparent px-2 font-medium text-muted hover:bg-surface-strong hover:text-ink`,children:[`Details`,(0,R.jsx)(d,{size:14,"aria-hidden":`true`,className:T(`transition-transform`,i&&`rotate-180`)})]}),s&&(0,R.jsxs)(`button`,{type:`button`,onClick:n,title:`Put your own words back`,className:`inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-full border-0 bg-transparent px-2 font-medium text-muted hover:bg-surface-strong hover:text-ink`,children:[(0,R.jsx)(Wn,{size:14,"aria-hidden":`true`}),`Undo`]}),(0,R.jsx)(`button`,{type:`button`,"aria-label":`Close the note`,onClick:r,className:`inline-flex size-7 flex-none cursor-pointer items-center justify-center rounded-full border-0 bg-transparent text-muted hover:bg-surface-strong hover:text-ink`,children:(0,R.jsx)(fe,{size:14,"aria-hidden":`true`})})]})]}),!c&&!s&&(0,R.jsx)(`p`,{className:`m-0 rounded-[10px] bg-fail-soft px-3 py-1.5 text-fail [overflow-wrap:anywhere]`,children:l}),s&&s.missing.length>0&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-0.5 rounded-[10px] bg-warn-soft px-3 py-1.5`,children:[(0,R.jsxs)(`span`,{className:`flex items-center gap-1.5 font-medium text-warn`,children:[(0,R.jsx)(Re,{size:14,"aria-hidden":`true`}),`Still missing: add it before you send`]}),(0,R.jsx)(`ul`,{className:`m-0 list-disc pl-5 text-ink-2`,children:s.missing.map(e=>(0,R.jsx)(`li`,{children:e},e))})]}),s&&i&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-1 text-muted [overflow-wrap:anywhere]`,children:[s.assumed.length>0&&(0,R.jsxs)(`p`,{className:`m-0`,children:[`Assumed: `,s.assumed.join(`; `)]}),typeof s.ste==`number`&&(0,R.jsxs)(`p`,{className:`m-0`,children:[Math.round(s.ste*100),`% of its sentences in plain technical English`]})]})]})}function rr(e){requestAnimationFrame(()=>{let t=document.getElementById(e);t&&(t.focus(),t.setSelectionRange(0,0),t.scrollTop=0)})}var ir=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 150`,width:`2.06em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{fill:`#34a853`,d:`M255.285 143.47c-.084-.524-.164-1.042-.251-1.56a128.1 128.1 0 0 0-12.794-38.288a128.8 128.8 0 0 0-23.45-31.86a129.2 129.2 0 0 0-22.713-18.005c.049-.08.09-.168.14-.25c2.582-4.461 5.172-8.917 7.755-13.38l7.576-13.068c1.818-3.126 3.632-6.26 5.438-9.386q.643-1.115 1.023-2.297a11.78 11.78 0 0 0-.36-8.188q-.32-.76-.743-1.472a11.7 11.7 0 0 0-4.08-4.064a11.85 11.85 0 0 0-5.005-1.61a12 12 0 0 0-2.218.02q-.912.094-1.814.33a11.74 11.74 0 0 0-7.154 5.467c-1.814 3.127-3.628 6.26-5.438 9.386l-7.576 13.069c-2.583 4.462-5.173 8.918-7.755 13.38c-.282.487-.567.973-.848 1.467q-.586-.237-1.172-.462c-14.24-5.43-29.688-8.4-45.836-8.4c-.442 0-.879 0-1.324.006c-14.357.143-28.152 2.64-41.022 7.12a119 119 0 0 0-4.42 1.642c-.262-.455-.532-.911-.79-1.367c-2.583-4.462-5.173-8.918-7.755-13.38l-7.576-13.07a3915 3915 0 0 1-5.439-9.386A11.74 11.74 0 0 0 48.5.048a11.7 11.7 0 0 0-5.01 1.612a11.7 11.7 0 0 0-4.077 4.063c-.281.474-.532.967-.742 1.473a11.8 11.8 0 0 0-.365 8.188c.259.786.594 1.554 1.023 2.296a3973 3973 0 0 1 5.439 9.386q3.793 6.535 7.58 13.069c2.582 4.462 5.168 8.918 7.75 13.38c.02.038.046.075.065.112A129 129 0 0 0 45.32 64.38a129.7 129.7 0 0 0-22.2 24.015a128 128 0 0 0-9.34 15.24a128.2 128.2 0 0 0-10.843 28.764a131 131 0 0 0-1.951 9.524c-.087.518-.167 1.042-.247 1.56A125 125 0 0 0 0 149.118h256q-.307-2.837-.734-5.636z`}),(0,R.jsx)(`path`,{fill:`#202124`,d:`M194.59 113.712c5.122-3.41 5.867-11.3 1.661-17.62c-4.203-6.323-11.763-8.682-16.883-5.273c-5.122 3.41-5.868 11.3-1.662 17.621c4.203 6.322 11.764 8.682 16.883 5.272m-116.071-5.25c4.206-6.321 3.46-14.21-1.662-17.62c-5.123-3.41-12.68-1.05-16.886 5.27c-4.203 6.323-3.458 14.212 1.662 17.622c5.122 3.41 12.683 1.05 16.886-5.272`})]})),ar=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 315`,width:`0.99em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{d:`M213.803 167.03c.442 47.58 41.74 63.413 42.197 63.615c-.35 1.116-6.599 22.563-21.757 44.716c-13.104 19.153-26.705 38.235-48.13 38.63c-21.05.388-27.82-12.483-51.888-12.483c-24.061 0-31.582 12.088-51.51 12.871c-20.68.783-36.428-20.71-49.64-39.793c-27-39.033-47.633-110.3-19.928-158.406c13.763-23.89 38.36-39.017 65.056-39.405c20.307-.387 39.475 13.662 51.889 13.662c12.406 0 35.699-16.895 60.186-14.414c10.25.427 39.026 4.14 57.503 31.186c-1.49.923-34.335 20.044-33.978 59.822M174.24 50.199c10.98-13.29 18.369-31.79 16.353-50.199c-15.826.636-34.962 10.546-46.314 23.828c-10.173 11.763-19.082 30.589-16.678 48.633c17.64 1.365 35.66-8.964 46.64-22.262`})]})),or=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 242`,width:`1.28em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsxs)(`defs`,{children:[(0,R.jsxs)(`linearGradient`,{id:`SVG4V795Kgq`,x1:`58.972%`,x2:`37.191%`,y1:`7.411%`,y2:`103.762%`,children:[(0,R.jsx)(`stop`,{offset:`0%`,stopColor:`#114a8b`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#0669bc`})]}),(0,R.jsxs)(`linearGradient`,{id:`SVGzpurqcJr`,x1:`59.719%`,x2:`52.691%`,y1:`52.313%`,y2:`54.864%`,children:[(0,R.jsx)(`stop`,{offset:`0%`,stopOpacity:.3}),(0,R.jsx)(`stop`,{offset:`7.1%`,stopOpacity:.2}),(0,R.jsx)(`stop`,{offset:`32.1%`,stopOpacity:.1}),(0,R.jsx)(`stop`,{offset:`62.3%`,stopOpacity:.05}),(0,R.jsx)(`stop`,{offset:`100%`,stopOpacity:0})]}),(0,R.jsxs)(`linearGradient`,{id:`SVGZ5kCkZNr`,x1:`37.279%`,x2:`62.473%`,y1:`4.6%`,y2:`99.979%`,children:[(0,R.jsx)(`stop`,{offset:`0%`,stopColor:`#3ccbf4`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#2892df`})]})]}),(0,R.jsx)(`path`,{fill:`url(#SVG4V795Kgq)`,d:`M85.343.003h75.753L82.457 233a12.08 12.08 0 0 1-11.442 8.216H12.06A12.06 12.06 0 0 1 .633 225.303L73.898 8.219A12.08 12.08 0 0 1 85.343 0z`}),(0,R.jsx)(`path`,{fill:`#0078d4`,d:`M195.423 156.282H75.297a5.56 5.56 0 0 0-3.796 9.627l77.19 72.047a12.14 12.14 0 0 0 8.28 3.26h68.02z`}),(0,R.jsx)(`path`,{fill:`url(#SVGzpurqcJr)`,d:`M85.343.003a11.98 11.98 0 0 0-11.471 8.376L.723 225.105a12.045 12.045 0 0 0 11.37 16.112h60.475a12.93 12.93 0 0 0 9.921-8.437l14.588-42.991l52.105 48.6a12.33 12.33 0 0 0 7.757 2.828h67.766l-29.721-84.935l-86.643.02L161.37.003z`}),(0,R.jsx)(`path`,{fill:`url(#SVGZ5kCkZNr)`,d:`M182.098 8.207A12.06 12.06 0 0 0 170.67.003H86.245c5.175 0 9.773 3.301 11.428 8.204L170.94 225.3a12.062 12.062 0 0 1-11.428 15.92h84.429a12.062 12.062 0 0 0 11.425-15.92z`})]})),sr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`defs`,{children:(0,R.jsxs)(`radialGradient`,{id:`SVGwZwAicDR`,cx:`50.141%`,cy:`50.003%`,r:`50.119%`,fx:`50.141%`,fy:`50.003%`,children:[(0,R.jsx)(`stop`,{offset:`0%`,stopColor:`#797979`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#4c4c4c`})]})}),(0,R.jsx)(`circle`,{cx:127.949,cy:128.603,r:127.397,fill:`#f5bb60`}),(0,R.jsx)(`circle`,{cx:114.961,cy:115.615,r:114.685,fill:`#e86f32`}),(0,R.jsx)(`circle`,{cx:130.16,cy:100.416,r:99.485,fill:`#e53d42`}),(0,R.jsx)(`circle`,{cx:138.174,cy:108.43,r:91.471,fill:`#bfd141`}),(0,R.jsx)(`circle`,{cx:131.542,cy:115.062,r:84.839,fill:`#6db64c`}),(0,R.jsx)(`circle`,{cx:118.001,cy:101.798,r:71.298,fill:`#afdbe7`}),(0,R.jsx)(`circle`,{cx:129.607,cy:89.915,r:59.691,fill:`#57badf`}),(0,R.jsx)(`circle`,{cx:137.069,cy:97.376,r:52.506,fill:`#02b2d6`}),(0,R.jsx)(`circle`,{cx:129.331,cy:104.837,r:44.768,fill:`url(#SVGwZwAicDR)`}),(0,R.jsx)(`circle`,{cx:129.331,cy:104.837,r:44.768,fill:`#231f20`}),(0,R.jsx)(`path`,{fill:`#fff`,d:`M141.088 98.971c4.439 1.992 10.56-2.016 13.672-8.951s2.036-14.173-2.402-16.164c-4.44-1.992-10.56 2.016-13.672 8.951s-2.037 14.173 2.402 16.164`})]})),cr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 246`,width:`1.26em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsxs)(`defs`,{children:[(0,R.jsxs)(`linearGradient`,{id:`SVGvnhR7dox`,x1:`99.14%`,x2:`33.859%`,y1:`112.708%`,y2:`37.755%`,children:[(0,R.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]}),(0,R.jsxs)(`linearGradient`,{id:`SVGgker3cTp`,x1:`.926%`,x2:`66.18%`,y1:`-12.582%`,y2:`62.306%`,children:[(0,R.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]})]}),(0,R.jsx)(`path`,{fill:`url(#SVGvnhR7dox)`,d:`M9.26 187.33c-2.64 4.307-5.607 9.305-8.126 13.287a8.127 8.127 0 0 0 2.722 11.052l52.823 32.507a8.127 8.127 0 0 0 11.256-2.763c2.113-3.536 4.835-8.127 7.801-13.044c20.926-34.538 41.974-30.312 79.925-12.19l52.376 24.908a8.127 8.127 0 0 0 10.93-4.063l25.152-56.886a8.127 8.127 0 0 0-4.063-10.646c-11.052-5.201-33.034-15.562-52.823-25.111c-71.189-34.579-131.691-32.344-177.972 42.949`}),(0,R.jsx)(`path`,{fill:`url(#SVGgker3cTp)`,d:`M246.115 58.232c2.641-4.307 5.607-9.305 8.127-13.287a8.127 8.127 0 0 0-2.723-11.052L198.696 1.386a8.127 8.127 0 0 0-11.58 2.682c-2.113 3.535-4.835 8.127-7.802 13.043c-20.926 34.538-41.974 30.313-79.925 12.19L47.176 4.515a8.127 8.127 0 0 0-10.93 4.063L11.093 65.465a8.127 8.127 0 0 0 4.063 10.645c11.052 5.202 33.035 15.563 52.823 25.112c71.351 34.538 131.854 32.222 178.135-42.99`})]})),lr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 208`,width:`1.49em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{d:`M205.28 31.36c14.096 14.88 20.016 35.2 22.512 63.68c6.626 0 12.805 1.47 16.976 7.152l7.792 10.56A17.55 17.55 0 0 1 256 123.2v28.688c-.008 3.704-1.843 7.315-4.832 9.504C215.885 187.222 172.35 208 128 208c-49.066 0-98.19-28.273-123.168-46.608c-2.989-2.189-4.825-5.8-4.832-9.504V123.2c0-3.776 1.2-7.424 3.424-10.464l7.792-10.544c4.173-5.657 10.38-7.152 16.992-7.152c2.496-28.48 8.4-48.8 22.512-63.68C77.331 3.165 112.567.06 127.552 0H128c14.72 0 50.4 2.88 77.28 31.36m-77.264 47.376c-3.04 0-6.544.176-10.272.544c-1.312 4.896-3.248 9.312-6.08 12.128c-11.2 11.2-24.704 12.928-31.936 12.928c-6.802 0-13.927-1.42-19.744-5.088c-5.502 1.808-10.786 4.415-11.136 10.912c-.586 12.28-.637 24.55-.688 36.824c-.026 6.16-.05 12.322-.144 18.488c.024 3.579 2.182 6.903 5.44 8.384C79.936 185.92 104.976 192 128.016 192c23.008 0 48.048-6.08 74.512-18.144c3.258-1.48 5.415-4.805 5.44-8.384c.317-18.418.062-36.912-.816-55.312h.016c-.342-6.534-5.648-9.098-11.168-10.912c-5.82 3.652-12.927 5.088-19.728 5.088c-7.232 0-20.72-1.728-31.936-12.928c-2.832-2.816-4.768-7.232-6.08-12.128a106 106 0 0 0-10.24-.544m-26.941 43.93c5.748 0 10.408 4.66 10.408 10.409v19.183c0 5.749-4.66 10.409-10.408 10.409s-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408m53.333 0c5.749 0 10.409 4.66 10.409 10.409v19.183c0 5.749-4.66 10.409-10.409 10.409c-5.748 0-10.408-4.66-10.408-10.409v-19.183c0-5.748 4.66-10.408 10.408-10.408M81.44 28.32c-11.2 1.12-20.64 4.8-25.44 9.92c-10.4 11.36-8.16 40.16-2.24 46.24c4.32 4.32 12.48 7.2 21.28 7.2c6.72 0 19.52-1.44 30.08-12.16c4.64-4.48 7.52-15.68 7.2-27.04c-.32-9.12-2.88-16.64-6.72-19.84c-4.16-3.68-13.6-5.28-24.16-4.32m68.96 4.32c-3.84 3.2-6.4 10.72-6.72 19.84c-.32 11.36 2.56 22.56 7.2 27.04c10.56 10.72 23.36 12.16 30.08 12.16c8.8 0 16.96-2.88 21.28-7.2c5.92-6.08 8.16-34.88-2.24-46.24c-4.8-5.12-14.24-8.8-25.44-9.92c-10.56-.96-20 .64-24.16 4.32M128 56c-2.56 0-5.6.16-8.96.48c.32 1.76.48 3.68.64 5.76c0 1.44 0 2.88-.16 4.48c3.2-.32 5.92-.32 8.48-.32s5.28 0 8.48.32c-.16-1.6-.16-3.04-.16-4.48c.16-2.08.32-4 .64-5.76c-3.36-.32-6.4-.48-8.96-.48`})]})),ur=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 250`,width:`1.24em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{fill:`#161614`,d:`M128.001 0C57.317 0 0 57.307 0 128.001c0 56.554 36.676 104.535 87.535 121.46c6.397 1.185 8.746-2.777 8.746-6.158c0-3.052-.12-13.135-.174-23.83c-35.61 7.742-43.124-15.103-43.124-15.103c-5.823-14.795-14.213-18.73-14.213-18.73c-11.613-7.944.876-7.78.876-7.78c12.853.902 19.621 13.19 19.621 13.19c11.417 19.568 29.945 13.911 37.249 10.64c1.149-8.272 4.466-13.92 8.127-17.116c-28.431-3.236-58.318-14.212-58.318-63.258c0-13.975 5-25.394 13.188-34.358c-1.329-3.224-5.71-16.242 1.24-33.874c0 0 10.749-3.44 35.21 13.121c10.21-2.836 21.16-4.258 32.038-4.307c10.878.049 21.837 1.47 32.066 4.307c24.431-16.56 35.165-13.12 35.165-13.12c6.967 17.63 2.584 30.65 1.255 33.873c8.207 8.964 13.173 20.383 13.173 34.358c0 49.163-29.944 59.988-58.447 63.157c4.591 3.972 8.682 11.762 8.682 23.704c0 17.126-.148 30.91-.148 35.126c0 3.407 2.304 7.398 8.792 6.14C219.37 232.5 256 184.537 256 128.002C256 57.307 198.691 0 128.001 0m-80.06 182.34c-.282.636-1.283.827-2.194.39c-.929-.417-1.45-1.284-1.15-1.922c.276-.655 1.279-.838 2.205-.399c.93.418 1.46 1.293 1.139 1.931m6.296 5.618c-.61.566-1.804.303-2.614-.591c-.837-.892-.994-2.086-.375-2.66c.63-.566 1.787-.301 2.626.591c.838.903 1 2.088.363 2.66m4.32 7.188c-.785.545-2.067.034-2.86-1.104c-.784-1.138-.784-2.503.017-3.05c.795-.547 2.058-.055 2.861 1.075c.782 1.157.782 2.522-.019 3.08m7.304 8.325c-.701.774-2.196.566-3.29-.49c-1.119-1.032-1.43-2.496-.726-3.27c.71-.776 2.213-.558 3.315.49c1.11 1.03 1.45 2.505.701 3.27m9.442 2.81c-.31 1.003-1.75 1.459-3.199 1.033c-1.448-.439-2.395-1.613-2.103-2.626c.301-1.01 1.747-1.484 3.207-1.028c1.446.436 2.396 1.602 2.095 2.622m10.744 1.193c.036 1.055-1.193 1.93-2.715 1.95c-1.53.034-2.769-.82-2.786-1.86c0-1.065 1.202-1.932 2.733-1.958c1.522-.03 2.768.818 2.768 1.868m10.555-.405c.182 1.03-.875 2.088-2.387 2.37c-1.485.271-2.861-.365-3.05-1.386c-.184-1.056.893-2.114 2.376-2.387c1.514-.263 2.868.356 3.061 1.403`})]})),dr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsxs)(`defs`,{children:[(0,R.jsxs)(`linearGradient`,{id:`SVGSBI7obaC`,x1:`98.031%`,x2:`58.888%`,y1:`.161%`,y2:`40.766%`,children:[(0,R.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]}),(0,R.jsxs)(`linearGradient`,{id:`SVGHifZlbzE`,x1:`100.665%`,x2:`55.402%`,y1:`.455%`,y2:`44.727%`,children:[(0,R.jsx)(`stop`,{offset:`18%`,stopColor:`#0052cc`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#2684ff`})]})]}),(0,R.jsx)(`path`,{fill:`#2684ff`,d:`M244.658 0H121.707a55.5 55.5 0 0 0 55.502 55.502h22.649V77.37c.02 30.625 24.841 55.447 55.466 55.467V10.666C255.324 4.777 250.55 0 244.658 0`}),(0,R.jsx)(`path`,{fill:`url(#SVGSBI7obaC)`,d:`M183.822 61.262H60.872c.019 30.625 24.84 55.447 55.466 55.467h22.649v21.938c.039 30.625 24.877 55.43 55.502 55.43V71.93c0-5.891-4.776-10.667-10.667-10.667`}),(0,R.jsx)(`path`,{fill:`url(#SVGHifZlbzE)`,d:`M122.951 122.489H0c0 30.653 24.85 55.502 55.502 55.502h22.72v21.867c.02 30.597 24.798 55.408 55.396 55.466V133.156c0-5.891-4.776-10.667-10.667-10.667`})]})),fr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 339`,width:`0.92em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{d:`M189.485 144.651c-3.445.99-6.306 3.4-7.867 6.626l-1.015 2.087l.014 2.918c0 2.721.057 3.06.832 4.977c1.072 2.72 2.143 4.399 4.103 6.316c3.383 3.355 7.19 4.23 12.294 2.89a12.13 12.13 0 0 0 7.288-6.147a10.6 10.6 0 0 0 1.128-7.02c-.902-6.387-4.652-11.026-10.207-12.647a14.94 14.94 0 0 0-6.57 0m-129.746.07c-4.3 1.354-7.515 4.512-9.164 9.01a16.7 16.7 0 0 0-.846 7.33c.803 4.357 4.37 8.319 8.43 9.404c5.104 1.34 8.91.465 12.294-2.89c1.974-1.917 3.031-3.595 4.103-6.316c.775-1.917.832-2.256.832-4.977l.014-2.918l-1.015-2.087a12.6 12.6 0 0 0-7.966-6.654a14.4 14.4 0 0 0-6.682.099m58.987 28.197c-1.847 1.001-3.144 3.525-2.75 5.4c.438 2.016 2.214 4.06 4.977 5.738c1.48.888 1.58 1.015 1.65 1.917c.056.536-.141 2.059-.409 3.426c-.282 1.325-.507 2.735-.507 3.13c.028 1.043.986 2.75 2.016 3.567c.902.733 1.071.761 3.595.832c2.312.07 2.791.014 3.722-.423c2.382-1.156 2.988-3.3 2.114-7.402c-.733-3.426-.592-3.947 1.227-5.005c1.931-1.128 3.962-3.087 4.568-4.427a5.146 5.146 0 0 0-2.467-6.767a5.56 5.56 0 0 0-2.552-.465c-1.777 0-2.919.423-5.005 1.748l-1.198.747l-.748-.45c-3.087-1.834-3.651-2.045-5.512-2.017a5.6 5.6 0 0 0-2.721.451m5.498-30.946c-5.258.508-6.696.705-9.22 1.213c-4.103.846-9.587 2.75-13.408 4.624c-13.252 6.485-22.402 17.285-25.193 29.804c-.564 2.481-.635 3.299-.635 7.472c0 4.145.07 5.033.607 7.388c3.722 16.354 18.779 28.436 38.262 30.635c4.23.465 22.501.465 26.73 0c15.65-1.762 29.1-10.25 35.148-22.148c1.607-3.186 2.382-5.245 3.101-8.487c.55-2.355.62-3.243.62-7.374c0-4.187-.07-5.005-.634-7.486c-4.06-18.187-21.697-32.482-43.31-35.203a97 97 0 0 0-12.054-.438zm9.094 13.21a46.3 46.3 0 0 1 20.301 7.247c3.144 2.087 7.571 6.457 9.46 9.333c2.34 3.539 3.666 7.162 4.272 11.56c.282 2.017.14 3.54-.606 6.796c-1.128 4.864-4.68 9.94-9.474 13.492a44 44 0 0 1-9.714 4.906c-5.386 1.72-8.91 2.03-21.5 1.946c-8.205-.085-9.671-.141-12.026-.592c-8.036-1.509-14.408-4.709-19.033-9.587c-3.721-3.947-5.427-7.543-6.344-13.337c-.423-2.707.353-7.176 1.932-10.94c1.917-4.596 6.88-10.292 11.786-13.577c5.681-3.792 13.168-6.485 20.048-7.218c2.636-.282 8.261-.282 10.898-.028M55.735.103a23.3 23.3 0 0 0-9.63 4.2c-8.092 6.133-14.352 19.188-17.002 35.444c-.987 6.147-1.678 14.662-1.678 21.19c0 7.669.903 17.481 2.186 24.263c.282 1.508.437 2.847.324 2.932q-1.302 1.091-2.637 2.143a75 75 0 0 0-13.379 14.38A77.4 77.4 0 0 0 .667 137.63a93.4 93.4 0 0 0-.325 19.132c1.283 10.996 4.582 20.273 10.25 28.76l1.833 2.75l-.522.902c-3.792 6.372-7.02 15.578-8.53 24.418c-1.184 6.993-1.339 8.868-1.339 18.243c0 9.446.127 11.321 1.24 17.848c1.34 7.825 4.061 16.115 7.092 21.627c1.001 1.805 3.426 5.54 3.722 5.738c.099.043-.197.945-.648 1.988a104.4 104.4 0 0 0-7.726 26.406c-.874 5.88-1.001 7.783-1.001 13.972c0 7.895.437 11.73 2.087 18.031l.24.917h20.836l-.704-1.283c-4.188-7.782-4.582-22.205-.96-36.613c1.65-6.655 3.525-11.547 7.022-18.272l2.086-4.088v-2.496c0-2.326-.042-2.594-.803-4.13a12.9 12.9 0 0 0-2.735-3.525a24.5 24.5 0 0 1-5.428-7.655c-5.978-12.97-7.134-32.23-2.933-48.654c1.749-6.851 4.639-12.942 7.67-16.27a11.1 11.1 0 0 0 3.144-7.485c0-2.75-.987-5.005-3.158-7.36a44.2 44.2 0 0 1-11.519-24.376c-1.973-13.534 1.608-28.267 9.728-39.954c7.938-11.476 19.075-18.836 31.538-20.795c2.806-.465 8.036-.395 10.94.14c3.187.565 5.175.396 7.219-.577c2.523-1.199 3.778-2.679 5.273-6.077c1.31-3.03 2.326-4.694 5.075-8.12c3.299-4.089 6.485-6.894 11.589-10.278c5.822-3.806 12.463-6.584 19.06-7.909c2.397-.493 3.525-.564 8.023-.564s5.61.07 8.022.564a57.4 57.4 0 0 1 26.984 14.056c1.65 1.537 5.61 6.443 6.88 8.487c.479.804 1.339 2.496 1.86 3.764c1.48 3.398 2.75 4.878 5.273 6.063c1.974.958 4.032 1.156 7.092.634c4.836-.818 8.557-.747 13.294.226c16.129 3.242 30.17 16.537 36.388 34.357c5.428 15.621 3.891 31.961-4.173 44.452c-1.367 2.115-2.72 3.807-4.695 5.907c-4.243 4.54-4.243 10.18-.014 14.846c6.95 7.599 11.293 26.307 9.982 42.802c-.874 10.884-3.666 20.626-7.515 26.139a29.6 29.6 0 0 1-3.158 3.637a12.9 12.9 0 0 0-2.735 3.524c-.76 1.537-.803 1.805-.803 4.131v2.51l2.086 4.088c3.497 6.711 5.358 11.603 7.021 18.258c3.567 14.21 3.257 28.337-.832 36.387q-.353.671-.62 1.382c0 .084 4.639.127 10.32.127h10.292l.282-1.043l.507-1.89c.268-1.071.804-4.23 1.241-7.274c.409-3.06.409-14.324 0-17.736c-1.55-12.336-4.159-22.134-8.417-31.383c-.45-1.043-.747-1.945-.648-1.988c.113-.07.803-1.043 1.522-2.143c5.301-8.022 8.558-18.102 10.208-31.41c.437-3.666.437-19.428 0-22.953c-1.17-9.093-2.566-15.254-4.907-21.5a86 86 0 0 0-4.638-9.868l-.536-.903l1.847-2.735c5.668-8.515 8.967-17.792 10.25-28.76a93.4 93.4 0 0 0-.339-19.146a77.7 77.7 0 0 0-13.238-32.976a75 75 0 0 0-13.393-14.38a114 114 0 0 1-2.623-2.143a9.8 9.8 0 0 1 .325-2.932c2.932-15.325 2.833-34.443-.24-49.387c-2.679-13.027-7.543-23.375-13.816-29.352c-4.991-4.766-10.095-6.796-16.213-6.415c-14.042.832-25.377 16.988-29.832 42.436a96 96 0 0 0-1.368 10.235c0 .508-.099.93-.211.93a13.5 13.5 0 0 1-2.101-1.099a68.5 68.5 0 0 0-34.611-9.827c-11.73 0-23.784 3.426-34.626 9.841c-.662.427-1.36.795-2.086 1.1c-.113 0-.212-.423-.212-.93a95 95 0 0 0-1.367-10.222C85.665 19.627 76.36 4.5 63.996.679A29.6 29.6 0 0 0 55.75.101zm4.13 19.765c3.497 2.777 7.374 10.7 9.616 19.569c.422 1.593.845 3.44.972 4.116c.099.663.367 2.143.578 3.285c.945 5.146 1.382 10.715 1.438 17.482l.029 6.697l-1.692 2.467l-1.664 2.51h-3.92c-4.567 0-9.107.577-13.449 1.748l-3.355.846c-.466.098-.536-.043-.804-2.03a119 119 0 0 1 .226-32.751c1.748-11.11 5.822-21.162 9.812-24.122c.945-.705 1.114-.691 2.213.183m138.516-.17c2.397 1.777 5.047 6.486 7.021 12.52c3.948 12.04 5.076 28.592 2.99 44.34c-.269 1.973-.34 2.128-.805 2.03l-3.355-.846a52 52 0 0 0-13.45-1.749h-3.919l-1.678-2.509l-1.677-2.467l.028-6.683c.056-9.432.93-16.777 3.017-24.982c2.213-8.783 6.118-16.707 9.587-19.484c1.1-.874 1.268-.888 2.241-.17`})]})),pr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 260`,width:`1.19em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{d:`M239.184 106.203a64.72 64.72 0 0 0-5.576-53.103C219.452 28.459 191 15.784 163.213 21.74A65.586 65.586 0 0 0 52.096 45.22a64.72 64.72 0 0 0-43.23 31.36c-14.31 24.602-11.061 55.634 8.033 76.74a64.67 64.67 0 0 0 5.525 53.102c14.174 24.65 42.644 37.324 70.446 31.36a64.72 64.72 0 0 0 48.754 21.744c28.481.025 53.714-18.361 62.414-45.481a64.77 64.77 0 0 0 43.229-31.36c14.137-24.558 10.875-55.423-8.083-76.483m-97.56 136.338a48.4 48.4 0 0 1-31.105-11.255l1.535-.87l51.67-29.825a8.6 8.6 0 0 0 4.247-7.367v-72.85l21.845 12.636c.218.111.37.32.409.563v60.367c-.056 26.818-21.783 48.545-48.601 48.601M37.158 197.93a48.35 48.35 0 0 1-5.781-32.589l1.534.921l51.722 29.826a8.34 8.34 0 0 0 8.441 0l63.181-36.425v25.221a.87.87 0 0 1-.358.665l-52.335 30.184c-23.257 13.398-52.97 5.431-66.404-17.803M23.549 85.38a48.5 48.5 0 0 1 25.58-21.333v61.39a8.29 8.29 0 0 0 4.195 7.316l62.874 36.272l-21.845 12.636a.82.82 0 0 1-.767 0L41.353 151.53c-23.211-13.454-31.171-43.144-17.804-66.405zm179.466 41.695l-63.08-36.63L161.73 77.86a.82.82 0 0 1 .768 0l52.233 30.184a48.6 48.6 0 0 1-7.316 87.635v-61.391a8.54 8.54 0 0 0-4.4-7.213m21.742-32.69l-1.535-.922l-51.619-30.081a8.39 8.39 0 0 0-8.492 0L99.98 99.808V74.587a.72.72 0 0 1 .307-.665l52.233-30.133a48.652 48.652 0 0 1 72.236 50.391zM88.061 139.097l-21.845-12.585a.87.87 0 0 1-.41-.614V65.685a48.652 48.652 0 0 1 79.757-37.346l-1.535.87l-51.67 29.825a8.6 8.6 0 0 0-4.246 7.367zm11.868-25.58L128.067 97.3l28.188 16.218v32.434l-28.086 16.218l-28.188-16.218z`})]})),mr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 239`,width:`1.3em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsxs)(`defs`,{children:[(0,R.jsxs)(`linearGradient`,{id:`SVGCo9xpmZW`,x1:`17.372%`,x2:`82.628%`,y1:`-6.51%`,y2:`106.51%`,children:[(0,R.jsx)(`stop`,{offset:`0%`,stopColor:`#5a62c3`}),(0,R.jsx)(`stop`,{offset:`50%`,stopColor:`#4d55bd`}),(0,R.jsx)(`stop`,{offset:`100%`,stopColor:`#3940ab`})]}),(0,R.jsx)(`path`,{id:`SVGhJCUgeMn`,d:`M136.93 64.476v12.8a32.7 32.7 0 0 1-5.953-.952a38.7 38.7 0 0 1-26.79-22.742h21.848c6.008.022 10.872 4.887 10.895 10.894`})]}),(0,R.jsx)(`path`,{fill:`#5059c9`,d:`M178.563 89.302h66.125c6.248 0 11.312 5.065 11.312 11.312v60.231c0 22.96-18.613 41.574-41.573 41.574h-.197c-22.96.003-41.576-18.607-41.579-41.568V95.215a5.91 5.91 0 0 1 5.912-5.913`}),(0,R.jsx)(`circle`,{cx:223.256,cy:50.605,r:26.791,fill:`#5059c9`}),(0,R.jsx)(`circle`,{cx:139.907,cy:38.698,r:38.698,fill:`#7b83eb`}),(0,R.jsx)(`path`,{fill:`#7b83eb`,d:`M191.506 89.302H82.355c-6.173.153-11.056 5.276-10.913 11.449v68.697c-.862 37.044 28.445 67.785 65.488 68.692c37.043-.907 66.35-31.648 65.489-68.692v-68.697c.143-6.173-4.74-11.296-10.913-11.449`}),(0,R.jsx)(`path`,{d:`M142.884 89.302v96.268a10.96 10.96 0 0 1-6.787 10.062c-1.3.55-2.697.833-4.108.833H76.68c-.774-1.965-1.488-3.93-2.084-5.953a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.1}),(0,R.jsx)(`path`,{d:`M136.93 89.302v102.222c0 1.411-.283 2.808-.833 4.108a10.96 10.96 0 0 1-10.062 6.787H79.48c-1.012-1.965-1.965-3.93-2.798-5.954a59 59 0 0 1-2.084-5.953a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,R.jsx)(`path`,{d:`M136.93 89.302v90.315c-.045 5.998-4.896 10.85-10.895 10.895H74.597a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,R.jsx)(`path`,{d:`M130.977 89.302v90.315c-.046 5.998-4.897 10.85-10.895 10.895H74.597a72.5 72.5 0 0 1-3.155-21.076v-68.703c-.143-6.163 4.732-11.278 10.895-11.43z`,opacity:.2}),(0,R.jsx)(`path`,{d:`M142.884 58.523v18.753c-1.012.06-1.965.12-2.977.12s-1.965-.06-2.977-.12a32.7 32.7 0 0 1-5.953-.952a38.7 38.7 0 0 1-26.791-22.742a33 33 0 0 1-1.905-5.954h29.708c6.007.023 10.872 4.887 10.895 10.895`,opacity:.1}),(0,R.jsx)(`use`,{href:`#SVGhJCUgeMn`,opacity:.2}),(0,R.jsx)(`use`,{href:`#SVGhJCUgeMn`,opacity:.2}),(0,R.jsx)(`path`,{d:`M130.977 64.476v11.848a38.7 38.7 0 0 1-26.791-22.743h15.896c6.008.023 10.872 4.888 10.895 10.895`,opacity:.2}),(0,R.jsx)(`path`,{fill:`url(#SVGCo9xpmZW)`,d:`M10.913 53.581h109.15c6.028 0 10.914 4.886 10.914 10.913v109.151c0 6.027-4.886 10.913-10.913 10.913H10.913C4.886 184.558 0 179.672 0 173.645V64.495C0 58.466 4.886 53.58 10.913 53.58`}),(0,R.jsx)(`path`,{fill:`#fff`,d:`M94.208 95.125h-21.82v59.416H58.487V95.125H36.769V83.599h57.439z`})]})),hr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 256 256`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{fill:`#0078d4`,d:`M0 0h121.329v121.329H0zm134.671 0H256v121.329H134.671zM0 134.671h121.329V256H0zm134.671 0H256V256H134.671z`})]})),gr=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`defs`,{children:(0,R.jsxs)(`linearGradient`,{id:`SVG6uMEBcPj`,x1:9,x2:9,y1:16.97,y2:1.03,gradientTransform:`scale(7.11111)`,gradientUnits:`userSpaceOnUse`,children:[(0,R.jsx)(`stop`,{offset:0,stopColor:`#0078d4`}),(0,R.jsx)(`stop`,{offset:.16,stopColor:`#1380da`}),(0,R.jsx)(`stop`,{offset:.53,stopColor:`#3c91e5`}),(0,R.jsx)(`stop`,{offset:.82,stopColor:`#559cec`}),(0,R.jsx)(`stop`,{offset:1,stopColor:`#5ea0ef`})]})}),(0,R.jsx)(`path`,{fill:`url(#SVG6uMEBcPj)`,d:`M120.89 28.445v69.262l-28.445 23.324l-44.09-16.07v15.93L23.395 88.25l72.746 5.688V31.574ZM96.64 31.93L55.82 7.11v16.285L18.348 34.418L7.109 48.852v32.785l16.075 7.11V46.718Zm0 0`})]})),_r=(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{fill:`#1a62b3`,d:`M50.782 42.96h26.436a7.536 7.536 0 0 1 7.553 7.552v26.976a7.536 7.536 0 0 1-7.553 7.552H50.782a7.536 7.536 0 0 1-7.553-7.552V50.512a7.536 7.536 0 0 1 7.553-7.553zm55.803 41.611V34.477A13.566 13.566 0 0 0 92.99 20.88H35.01a13.566 13.566 0 0 0-13.595 13.596v59.046a13.566 13.566 0 0 0 13.595 13.595l92.171.002c-.935 11.716-10.67 20.88-22.623 20.88H23.442A22.61 22.61 0 0 1 .783 105.341V22.66A22.61 22.61 0 0 1 23.443 0h81.115a22.61 22.61 0 0 1 22.659 22.66v61.91z`})]})),vr={jira:dr,azure_devops:gr,confluence:cr,testrail:(0,L.forwardRef)(({title:e,titleId:t,...n},r)=>(0,R.jsxs)(`svg`,{viewBox:`0 0 128 128`,width:`1.2em`,height:`1.2em`,ref:r,"aria-labelledby":t,...n,children:[e?(0,R.jsx)(`title`,{id:t,children:e}):null,(0,R.jsx)(`path`,{fill:`#50d18d`,d:`m37.701 127.439l-15.398-14.782a1.813 1.813 0 0 1 0-2.666l15.41-14.773a2.005 2.005 0 0 1 2.78 0l15.412 14.783c.778.73.778 1.936 0 2.666L40.494 127.44a2.003 2.003 0 0 1-2.78 0zm24.907-23.89l-15.41-14.783a1.813 1.813 0 0 1 0-2.656l15.41-14.782a2.005 2.005 0 0 1 2.78 0L80.79 86.11c.778.73.778 1.936 0 2.666l-15.4 14.773a2.01 2.01 0 0 1-2.774 0zm24.908-23.892l-15.4-14.783a1.81 1.81 0 0 1 0-2.656L87.52 47.437a2.005 2.005 0 0 1 2.78 0l15.402 14.781a1.81 1.81 0 0 1 0 2.656L90.29 79.657a2.006 2.006 0 0 1-2.779 0h.01zm-49.346.447L22.758 65.333a1.817 1.817 0 0 1 0-2.66l15.412-14.79a2.004 2.004 0 0 1 2.779 0l15.41 14.784a1.81 1.81 0 0 1 0 2.656L40.95 80.116a2.007 2.007 0 0 1-2.78 0zm24.906-23.89L47.664 41.441a1.817 1.817 0 0 1 0-2.668l15.412-14.781a2.004 2.004 0 0 1 2.78 0l15.4 14.781a1.81 1.81 0 0 1 0 2.658l-15.4 14.781a2.006 2.006 0 0 1-2.774 0v-.01v.005zm-24.43-23.41l-15.42-14.828a1.814 1.814 0 0 1 0-2.667L38.647.56a2.004 2.004 0 0 1 2.78 0l15.41 14.782c.78.731.78 1.937 0 2.667l-15.42 14.75a2.004 2.004 0 0 1-2.78 0l.01.032z`})]})),qtest:_r,github:ur,browserstack:sr},yr={openai:pr,azure:or,github_copilot:lr,ollama:fr},br={android:ir,ios:ar,windows:hr};function xr(e){let t=e?.config||{},n=m(t.browser),r=m(t.sources),i=[`jira`,`azure_devops`,`testrail`,`xray`,`zephyr`,`qtest`,`github`].find(e=>r[e]),a={jira:`Jira`,azure_devops:`Azure DevOps`,testrail:`TestRail`,xray:`Xray`,zephyr:`Zephyr`,qtest:`qTest`,github:`GitHub`},o=String(n.provider||`local`);return{code:!0,headed:n.headless===!1,repo:m(t.code).repo?String(m(t.code).repo):`the project folder`,browser:o===`local`?`Chrome on this machine`:o===`testmu`?`TestMu AI`:o===`browserstack`?`BrowserStack`:o,cases:i?a[i]:`Files in the project`}}var Sr={azure:`Azure OpenAI`,openai:`OpenAI`,ollama:`Ollama`,openai_compatible:`OpenAI-compatible`,github_copilot:`GitHub Copilot`,github:`GitHub Models`,anthropic:`Anthropic`};function Cr({children:e}){return(0,R.jsx)(`div`,{className:`px-3 pt-2 pb-1 text-[11.5px] font-semibold tracking-wide text-muted uppercase`,children:e})}function wr({tools:e,onChange:t,chat:n}){let r=(n,r,i,a)=>(0,R.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-3 rounded-[10px] px-3 py-2.5 hover:bg-surface-muted`,children:[(0,R.jsx)(Pe,{icon:n}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsx)(`span`,{className:`text-sm font-medium text-ink`,children:i}),(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted [overflow-wrap:anywhere]`,children:a})]}),(0,R.jsx)(y,{checked:e[r],label:i,onChange:n=>t({...e,[r]:n})})]}),i=(e,t,n)=>(0,R.jsxs)(`div`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,R.jsx)(e,{size:16,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,R.jsx)(`span`,{className:`flex-1 text-sm text-ink-2`,children:t}),(0,R.jsx)(`span`,{className:`truncate text-sm text-ink`,children:n})]});return(0,R.jsxs)(`div`,{className:`flex flex-col`,children:[(0,R.jsx)(Cr,{children:n?`This chat, from your next message`:`This chat`}),r(Dt,`code`,`Write the test`,`Turn a passed run into a test in ${e.repo}`),r(un,`headed`,`Show the browser`,`Watch each run in a Chrome window`),(0,R.jsx)(`div`,{className:`mx-3 my-1.5 border-t border-line-soft`}),(0,R.jsx)(Cr,{children:`From your settings`}),i(qt,`Browsers run on`,e.browser),i(rn,`Test cases from`,e.cases),n?.model&&(0,R.jsxs)(`div`,{className:`flex items-center gap-3 px-3 py-2`,children:[yr[n.provider||``]?(()=>{let e=yr[n.provider||``];return(0,R.jsx)(e,{"aria-hidden":`true`,className:`size-4 flex-none`})})():(0,R.jsx)(je,{size:16,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,R.jsx)(`span`,{className:`flex-1 text-sm text-ink-2`,children:`Model`}),(0,R.jsx)(`span`,{className:`truncate text-sm text-ink`,children:n.model})]}),(0,R.jsxs)(`div`,{className:`mx-1.5 mt-1 mb-1 flex flex-wrap gap-x-1`,children:[(0,R.jsxs)(`a`,{href:E(`settings`),className:`flex min-h-9 items-center gap-2 rounded-[10px] px-1.5 text-[13px] font-medium no-underline hover:bg-surface-muted`,children:[(0,R.jsx)(An,{size:14,"aria-hidden":`true`}),`Change them in Settings`]}),n&&(0,R.jsxs)(`a`,{href:E(),className:`flex min-h-9 items-center gap-2 rounded-[10px] px-1.5 text-[13px] font-medium no-underline hover:bg-surface-muted`,children:[(0,R.jsx)(oe,{size:14,"aria-hidden":`true`}),`New chat with another model`]})]})]})}function Tr({models:e,current:t,onPick:n}){let r=(e,r=!1)=>{let i=t===e.name;return(0,R.jsxs)(`button`,{type:`button`,role:`menuitemradio`,"aria-checked":i,onClick:()=>n(e.name),className:T(`flex w-full cursor-pointer items-center gap-3 rounded-[10px] border-0 px-3 py-2 text-left hover:bg-surface-muted`,i?`bg-accent-soft hover:bg-accent-soft`:`bg-transparent`),children:[r?(0,R.jsx)(`span`,{className:`flex size-9 flex-none items-center justify-center rounded-[10px] bg-[linear-gradient(135deg,#3758f9,#8a97fb)] text-white`,children:(0,R.jsx)(je,{size:17,"aria-hidden":`true`})}):yr[e.provider]?(0,R.jsx)(Pe,{logo:yr[e.provider]}):(0,R.jsx)(Pe,{icon:gn}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,R.jsx)(`span`,{className:`truncate text-sm font-medium text-ink`,children:e.name}),!r&&Sr[e.provider]&&(0,R.jsx)(`span`,{className:`flex-none text-[11.5px] text-muted`,children:Sr[e.provider]})]}),e.note&&(0,R.jsx)(`span`,{className:`truncate text-[12.5px] text-muted`,children:e.note})]}),(0,R.jsx)(_,{size:16,"aria-hidden":`true`,className:T(`flex-none text-accent`,!i&&`invisible`)})]},e.name)};return(0,R.jsxs)(`div`,{className:`flex flex-col`,children:[(0,R.jsx)(Cr,{children:`Model for this chat`}),r({name:`Auto routing`,provider:``,note:`The cheapest model good enough for each step`},!0),e.length>0&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`div`,{className:`mx-3 my-1.5 border-t border-line-soft`}),(0,R.jsx)(Cr,{children:`Your models`}),(0,R.jsx)(`div`,{className:`flex flex-col`,children:e.map(e=>r(e))})]}),(0,R.jsx)(`div`,{className:`mx-3 my-1.5 border-t border-line-soft`}),(0,R.jsxs)(`a`,{href:E(`settings`,`models`),className:`mx-1.5 mb-1 flex min-h-9 items-center gap-2 rounded-[10px] px-1.5 text-[13px] font-medium no-underline hover:bg-surface-muted`,children:[(0,R.jsx)(An,{size:14,"aria-hidden":`true`}),`Manage models`]})]})}var Er=[{label:`Run test cases`,Icon:Ne,text:`Run SHOP-12 and SHOP-14 on Chrome and Edge`},{label:`Explore a journey`,Icon:kt,text:`Go to the shop on QA and buy a pair of trail shoes with a saved card`},{label:`Write a test`,Icon:Dt,text:`Write a Playwright test for the login flow on QA`},{label:`Review requirements`,Icon:te,text:`Review the payments refund brief and list its gaps`}];function Dr(){let[e,t]=(0,L.useState)(null),[n,r]=(0,L.useState)(``),[i,a]=(0,L.useState)(``),[o,s]=(0,L.useState)(()=>xr(null)),[c,l]=(0,L.useState)(``),[u,f]=(0,L.useState)(``),[h,g]=(0,L.useState)(null),[_,y]=(0,L.useState)(!1);(0,L.useEffect)(()=>{Ae.state().then(e=>{g(e),e.ready&&p.settings().then(e=>{t(e),s(xr(e))},()=>{})},()=>{})},[]);let b=Object.entries(m(e?.models.models)).map(([e,t])=>({name:e,provider:String(m(t).provider||``),note:String(m(t).description||``)})).filter(e=>e.provider!==`mock`&&e.name!==`mock`),x=String(m(e?.config.llm).routing||`off`)===`auto`,S=e=>typeof e==`string`&&b.some(t=>t.name===e)?e:``,C=S(e?.models.default)||b[0]?.name||``,w=c||(x?`Auto routing`:S(m(e?.config.llm).active)||C||`Auto routing`),ee=er(`home`,e=>{r(e),rr(`msg`)}),D=async(e=n)=>{if(e.trim()&&!_){y(!0),f(``);try{let{id:t}=await Fe.start(e.trim(),{profile:b.some(e=>e.name===w)?w:void 0,headed:o.headed,code:o.code});location.hash=E(`chats`,t)}catch(e){f(e.message),y(!1)}}};return(0,R.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,R.jsx)(`header`,{className:`flex items-center gap-1 px-5 py-3.5`,children:(0,R.jsx)(Oe,{})}),(0,R.jsx)(`main`,{className:`flex flex-auto flex-col items-center justify-center px-5 pt-6 pb-[120px]`,children:(0,R.jsxs)(`div`,{className:`flex w-full max-w-[780px] flex-col items-center gap-9`,children:[(0,R.jsxs)(`div`,{className:`flex flex-col items-center gap-3.5 text-center`,children:[(0,R.jsx)(v,{state:`idle`,px:112,label:`ForgeQE is ready`,className:`mb-1`}),(0,R.jsx)(`h1`,{className:`m-0 bg-[linear-gradient(90deg,#3758f9_0%,#8a97fb_100%)] bg-clip-text text-[34px] leading-tight font-medium tracking-[-0.01em] text-accent [-webkit-text-fill-color:transparent]`,children:`What should we test today?`}),(0,R.jsx)(`p`,{className:`m-0 max-w-[46ch] text-[15px] leading-relaxed text-muted`,children:`ForgeQE runs your test cases in a real browser, finds what broke, and writes the automated test for you.`})]}),h&&!h.ready&&(0,R.jsxs)(`div`,{role:`status`,className:`flex w-full flex-wrap items-center gap-x-4 gap-y-3 rounded-[18px] border border-line bg-surface-muted px-5 py-4`,children:[(0,R.jsx)(Sn,{size:20,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none text-accent`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_280px] flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Set up ForgeQE first`}),(0,R.jsxs)(`span`,{className:`text-sm text-muted [overflow-wrap:anywhere]`,children:[`Choose your project folder and set ForgeQE up in it. It is not set up in `,h.project,` yet.`]})]}),(0,R.jsx)(`a`,{className:ie({variant:`primary`}),href:E(`settings`,`setup`),children:`Set up`})]}),(0,R.jsx)($n,{id:`msg`,label:`Message ForgeQE`,value:n,onChange:e=>{r(e),f(``)},onSend:()=>void D(),disabled:_||!!h&&!h.ready||ee.running,placeholder:`Ask ForgeQE to test something…`,top:ee.state&&(0,R.jsx)(nr,{state:ee.state,onStop:()=>void ee.stop(),onUndo:ee.undo,onClose:ee.close}),left:(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(P,{variant:`icon`,size:`icon`,className:`flex-none`,"aria-label":`Attach a file`,onClick:()=>f(`Attachments come with chats in the web app.`),children:(0,R.jsx)(mn,{size:20,strokeWidth:1.8,"aria-hidden":`true`})}),(0,R.jsxs)(`div`,{className:`relative`,children:[(0,R.jsxs)(P,{variant:`ghost`,className:`px-2.5 text-[15px]`,"aria-expanded":i===`tools`,"aria-haspopup":`menu`,onClick:()=>a(i===`tools`?``:`tools`),children:[(0,R.jsx)(Mn,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),`Tools`,(o.headed||!o.code)&&(0,R.jsx)(`span`,{"aria-hidden":`true`,className:`size-1.5 rounded-full bg-accent`})]}),(0,R.jsx)(Qn,{open:i===`tools`,onClose:()=>a(``),label:`Tools for this chat`,role:`dialog`,side:`auto`,className:`left-0 w-[min(380px,calc(100vw-48px))]`,children:(0,R.jsx)(wr,{tools:o,onChange:s})})]}),(0,R.jsx)(tr,{running:ee.running,disabled:!n.trim()||_||!!h&&!h.ready,onClick:()=>void ee.start(n)})]}),right:(0,R.jsxs)(`div`,{className:`relative`,children:[(0,R.jsxs)(P,{variant:`ghost`,className:`max-w-[46vw] px-2.5 text-[15px]`,"aria-expanded":i===`model`,"aria-haspopup":`menu`,"aria-label":`Model: ${w}`,onClick:()=>a(i===`model`?``:`model`),children:[w===`Auto routing`||!yr[b.find(e=>e.name===w)?.provider||``]?(0,R.jsx)(In,{size:16,fill:`currentColor`,"aria-hidden":`true`,className:`text-accent`}):(()=>{let e=yr[b.find(e=>e.name===w).provider];return(0,R.jsx)(e,{"aria-hidden":`true`,className:`size-4`})})(),(0,R.jsx)(`span`,{className:`truncate`,children:w}),(0,R.jsx)(d,{size:16,"aria-hidden":`true`})]}),(0,R.jsx)(Qn,{open:i===`model`,onClose:()=>a(``),label:`Model`,side:`auto`,className:`right-0 w-[min(400px,calc(100vw-48px))]`,children:(0,R.jsx)(Tr,{models:b,current:w,onPick:e=>{l(e),a(``)}})})]})}),(0,R.jsx)(`p`,{role:`status`,"aria-live":`polite`,className:T(`-mt-5 m-0 min-h-5 text-center text-sm text-ink-2`,!u&&`invisible`),children:u}),(0,R.jsx)(`div`,{className:`flex flex-wrap justify-center gap-3`,children:Er.map(({label:e,Icon:t,text:n})=>(0,R.jsxs)(`button`,{type:`button`,onClick:()=>{r(n),a(``),f(``),document.getElementById(`msg`)?.focus()},className:`inline-flex min-h-11 cursor-pointer items-center gap-2.5 rounded-full border border-line bg-bg px-[18px] text-sm font-medium text-ink-2 hover:border-accent-line hover:bg-accent-soft hover:text-ink`,children:[(0,R.jsx)(t,{size:18,strokeWidth:1.8,"aria-hidden":`true`}),e]},e))})]})})]})}function Or({icon:e,title:t,intro:n,children:r}){return(0,R.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,R.jsx)(Ie,{}),(0,R.jsxs)(`main`,{className:`mx-auto box-border flex w-full max-w-[800px] flex-col px-6 pt-10 pb-12`,children:[(0,R.jsxs)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,R.jsx)(Pe,{icon:e,size:`lg`}),(0,R.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:t})]}),(0,R.jsx)(`p`,{className:`mt-1 mb-6 max-w-[64ch] text-sm leading-relaxed text-muted`,children:n}),r]})]})}function kr({text:e,onRetry:t}){return(0,R.jsxs)(`div`,{role:`alert`,className:`flex flex-col items-start gap-3 rounded-[14px] bg-fail-soft px-4 py-3 text-sm text-fail`,children:[(0,R.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:e}),t&&(0,R.jsx)(P,{onClick:t,children:`Try again`})]})}function Ar(){let[e,n]=(0,L.useState)(null),[r,i]=(0,L.useState)(``),[a,o]=(0,L.useState)(null),[s,c]=(0,L.useState)(!1),[l,d]=(0,L.useState)(``),[f,p]=(0,L.useState)(``),m=(0,L.useCallback)(()=>{i(``),t.knowledge().then(n,e=>i(e.message))},[]);(0,L.useEffect)(m,[m]);let h=async e=>{d(``);try{let n=await t.knowledgeFile(e);o({rel:e,text:n.text,was:n.text,isNew:!1})}catch(e){i(e.message)}},_=async()=>{if(a){c(!0),d(``);try{let e=a.rel.trim();await t.saveKnowledgeFile(e,a.text),o(null),p(`Saved ${e}. Agents read it from their next request.`),m()}catch(e){d(e.message)}finally{c(!1)}}},v=e?.files.filter(e=>e.used).length??0;return(0,R.jsxs)(Or,{icon:$e,title:`Knowledge`,intro:(0,R.jsxs)(R.Fragment,{children:[`What the agents know about your product: its features, business rules and terms, as Markdown files in`,` `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:e?.dir||`.forgeqe/knowledge`}),`. Each agent reads the parts that match its task. The industry, regulations and folders are in`,` `,(0,R.jsx)(`a`,{href:E(`settings`,`agents`),children:`Settings, Agents`}),`.`]}),children:[r&&(0,R.jsx)(kr,{text:r,onRetry:m}),!e&&!r&&(0,R.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-muted`,children:`Loading…`}),e&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`div`,{className:`mb-6 flex flex-wrap gap-3`,children:[(0,R.jsx)(Me,{icon:te,label:`Files`,value:String(e.files.length)}),(0,R.jsx)(Me,{icon:ht,label:`Read by agents`,value:String(v),note:v<e.files.length?`The others are templates still to fill in`:void 0}),(0,R.jsx)(Me,{icon:qt,label:`Per browser run`,value:e.maxChars?`${e.maxChars.toLocaleString()}`:`Off`,note:e.maxChars?`characters at most`:void 0})]}),(0,R.jsx)(`div`,{"aria-live":`polite`,children:f&&(0,R.jsx)(`p`,{className:`mt-0 mb-4 rounded-[12px] bg-pass-soft px-3 py-2 text-sm text-pass`,children:f})}),(0,R.jsxs)(`ul`,{"aria-label":`Knowledge files`,className:`m-0 flex list-none flex-col p-0`,children:[e.files.length===0&&(0,R.jsx)(`li`,{className:`border-t border-line-soft py-5 text-sm text-muted`,children:`No knowledge files yet. Add one for each product area: what it does, its rules, its words.`}),e.files.map(e=>(0,R.jsxs)(`li`,{className:`flex min-h-[64px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,R.jsx)(te,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_240px] flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium [overflow-wrap:anywhere]`,children:e.title}),(0,R.jsx)(`span`,{className:`font-mono text-[12px] text-muted [overflow-wrap:anywhere]`,children:e.rel})]}),(0,R.jsx)(He,{tone:e.used?`pass`:`neutral`,children:e.used?e.state===`edited`?`Filled in`:`Read by agents`:`Template`}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Edit ${e.rel}`,onClick:()=>void h(e.rel),children:`Edit`})]},e.rel))]}),(0,R.jsx)(`div`,{className:`pt-4`,children:(0,R.jsx)(P,{onClick:()=>{d(``),o({rel:``,text:`#
|
|
11
|
-
|
|
12
|
-
## Rules
|
|
13
|
-
|
|
14
|
-
-
|
|
15
|
-
`,was:``,isNew:!0})},children:`Add a file`})})]}),(0,R.jsx)(g,{wide:!0,open:!!a,onClose:()=>o(null),title:a?.isNew?`Add a knowledge file`:a?.rel||``,description:`Markdown. Headings split it into parts; an agent gets the parts that match its task. Never put passwords or keys here.`,footer:(0,R.jsxs)(R.Fragment,{children:[l&&(0,R.jsx)(`span`,{role:`alert`,className:`mr-auto self-center text-sm text-fail [overflow-wrap:anywhere]`,children:l}),(0,R.jsx)(P,{onClick:()=>o(null),children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:s||!a||!a.rel.trim()||!a.isNew&&a.text===a.was,onClick:()=>void _(),children:s?`Saving…`:`Save`})]}),children:a&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-4 pt-4`,children:[a.isNew&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`label`,{htmlFor:`knowledge-name`,className:`font-medium`,children:`File name`}),(0,R.jsx)(S,{id:`knowledge-name`,value:a.rel,spellCheck:!1,placeholder:`products/checkout.md`,className:`font-mono text-[13px]`,onChange:e=>o({...a,rel:e.target.value})}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`In the knowledge folder; a folder before the name groups files.`})]}),(0,R.jsx)(`label`,{htmlFor:`knowledge-text`,className:`sr-only`,children:`Text`}),(0,R.jsx)(u,{id:`knowledge-text`,value:a.text,spellCheck:!0,rows:22,onChange:e=>o({...a,text:e.target.value}),className:`min-h-[50vh] font-mono text-[13px] leading-relaxed`})]})})]})}var jr=50,Mr=``;function Nr(e){let t=e?Date.parse(e):NaN;if(Number.isNaN(t))return``;let n=(Date.now()-t)/1e3;return n<3600?`${Math.max(1,Math.floor(n/60))} min ago`:n<86400?`${Math.floor(n/3600)} h ago`:n<604800?`${Math.floor(n/86400)} d ago`:new Date(t).toLocaleDateString([],{day:`numeric`,month:`short`})}var Pr=e=>!!e.lastStatus&&/pass|success|complete/i.test(e.lastStatus),Fr=e=>e.successes===0?`never`:e.lastStatus&&!Pr(e)?`failing`:e.replays>0?`replaying`:`ok`,Ir=e=>e||`Other`;function Lr({view:t}){let n=t.stats.areas.find(e=>e.area===`browser`),r=(n?.replayedSteps??0)+(n?.modelSteps??0),i=r?Math.round((n?.replayedSteps??0)/r*100):0,a=new Set([...t.flows.map(e=>Ir(e.host)),...t.pages.map(e=>Ir(e.host))]).size,o=[{icon:wn,label:`Flows`,value:t.flows.length},{icon:st,label:`Pages`,value:t.pages.length},{icon:qt,label:`Sites`,value:a},{icon:he,label:`Reruns without the agent`,value:t.stats.reruns.tier0}];return(0,R.jsxs)(`section`,{className:`mb-5 flex flex-col gap-3 rounded-[14px] border border-line-soft bg-bg px-4 py-3`,children:[(0,R.jsxs)(`p`,{className:`m-0 text-[15px] leading-relaxed text-ink`,children:[`ForgeQE remembers `,(0,R.jsx)(`b`,{children:e(t.flows.length,`flow`)}),` and `,(0,R.jsx)(`b`,{children:e(t.pages.length,`page`)}),` on `,e(a,`site`),`.`,` `,r?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`b`,{children:[i,`%`]}),` of the steps of recent runs came from memory, without asking a model (`,t.flows.reduce((e,t)=>e+t.replays,0),` replays).`]}):`No run has used it yet.`]}),(0,R.jsx)(`div`,{className:`flex flex-wrap gap-x-6 gap-y-1 text-[13px] text-muted`,children:o.map(e=>(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,R.jsx)(e.icon,{size:14,"aria-hidden":`true`}),e.label,` `,(0,R.jsx)(`b`,{className:`text-ink tabular-nums`,children:e.value})]},e.label))})]})}function Rr({f:t,onOpen:n}){let r=Fr(t);return(0,R.jsxs)(`button`,{type:`button`,onClick:n,className:`grid w-full cursor-pointer grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-3 rounded-[10px] border-0 bg-transparent px-3 py-2 text-left hover:bg-surface-muted @2xl:grid-cols-[auto_minmax(0,1fr)_88px_88px_90px]`,children:[r===`failing`||r===`never`?(0,R.jsx)(x,{size:16,"aria-label":`Last run failed`,className:`text-fail`}):(0,R.jsx)(Ct,{size:16,"aria-label":`Passed`,className:`text-pass`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,R.jsx)(`span`,{className:`truncate text-[14px] text-ink`,children:t.goal}),(0,R.jsxs)(`span`,{className:`truncate text-[12px] text-muted`,children:[e(t.steps,`step`),` · passed `,t.successes,` of `,t.runs,t.replays?` · replayed ${t.replays}×`:``]})]}),(0,R.jsx)(`span`,{className:`hidden text-right text-[12.5px] text-muted tabular-nums @2xl:block`,children:t.replayedSteps+t.modelSteps?`${Math.round(t.replayedSteps/(t.replayedSteps+t.modelSteps)*100)}% replayed`:`—`}),(0,R.jsx)(`span`,{className:T(`hidden text-right text-[12.5px] @2xl:block`,r===`failing`||r===`never`?`text-fail`:`text-muted`),children:r===`never`?`Never passed`:r===`failing`?`Failed last`:r===`replaying`?`Replaying`:`Learned`}),(0,R.jsx)(`span`,{className:`text-right text-[12.5px] text-muted tabular-nums`,children:Nr(t.lastRun)})]})}function zr({p:t}){return(0,R.jsxs)(`div`,{className:`grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-3 rounded-[10px] px-3 py-2 hover:bg-surface-muted @2xl:grid-cols-[auto_minmax(0,1fr)_100px_80px_90px]`,children:[(0,R.jsx)(st,{size:16,"aria-hidden":`true`,className:`text-muted`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,R.jsx)(`span`,{className:`truncate text-[14px] text-ink`,children:t.title||t.path}),(0,R.jsx)(`span`,{className:`truncate font-mono text-[11.5px] text-muted`,title:`${t.host}${t.path}`,children:t.path})]}),(0,R.jsx)(`span`,{className:`hidden text-right text-[12.5px] text-muted tabular-nums @2xl:block`,children:e(t.elements,`element`)}),(0,R.jsx)(`span`,{className:`hidden text-right text-[12.5px] text-muted tabular-nums @2xl:block`,children:e(t.visits,`visit`)}),(0,R.jsx)(`span`,{className:`text-right text-[12.5px] text-muted tabular-nums`,children:Nr(t.lastSeen)})]})}function Br({view:n,site:r,onCleared:i}){let a=r?n.targets.find(e=>e.name===r):void 0,o=r?a?.files??0:n.files,[s,c]=(0,L.useState)(!1),[l,u]=(0,L.useState)(!1);if((0,L.useEffect)(()=>c(!1),[r]),!o)return null;let d=r||`everything`,f=async()=>{u(!0);try{let n=await t.clearMemory(a?{name:a.name,kind:a.kind}:void 0);i(n,`Removed ${e(n.removed??0,`file`)} of memory${a?` for ${a.name}`:``}. The next runs learn it again.`)}catch(e){i(n,e.message)}finally{u(!1),c(!1)}};return s?(0,R.jsxs)(`span`,{role:`alertdialog`,"aria-label":`Clear memory`,className:`inline-flex flex-wrap items-center gap-2 rounded-[10px] border border-fail bg-fail-soft px-3 py-1.5 text-[13px] text-ink`,children:[`Remove `,e(o,`file`),` for `,d,`? Runs learn it again.`,(0,R.jsx)(P,{size:`sm`,disabled:l,onClick:()=>void f(),className:`border-fail bg-fail text-white hover:bg-fail hover:text-white`,children:`Clear`}),(0,R.jsx)(P,{size:`sm`,onClick:()=>c(!1),children:`Keep`})]}):(0,R.jsxs)(P,{size:`sm`,variant:`ghost`,onClick:()=>c(!0),className:`text-fail hover:bg-fail-soft`,children:[(0,R.jsx)(Ft,{size:14,"aria-hidden":`true`}),r?`Clear this site`:`Clear everything`]})}function Vr(){let[n,r]=(0,L.useState)(null),[i,a]=(0,L.useState)(``),[o,s]=(0,L.useState)(Mr),[c,l]=(0,L.useState)(`flows`),[u,d]=(0,L.useState)(`all`),[f,p]=(0,L.useState)(``),[m,h]=(0,L.useState)(jr),[_,v]=(0,L.useState)(null),[y,b]=(0,L.useState)(``),x=(0,L.useCallback)(()=>{a(``),t.memory().then(r,e=>a(e.message))},[]);(0,L.useEffect)(x,[x]),(0,L.useEffect)(()=>h(jr),[o,c,u,f]);let C=(0,L.useMemo)(()=>{let e=new Map,t=t=>e.get(Ir(t))??e.set(Ir(t),{flows:0,pages:0,failing:0}).get(Ir(t));for(let e of n?.flows||[]){let n=t(e.host);n.flows++,(Fr(e)===`failing`||Fr(e)===`never`)&&n.failing++}for(let e of n?.pages||[])t(e.host).pages++;for(let e of n?.targets||[])t(e.name);return[...e.entries()].map(([e,t])=>({name:e,...t})).sort((e,t)=>t.flows+t.pages-(e.flows+e.pages))},[n]),D=f.toLowerCase().split(/\s+/).filter(Boolean),O=(0,L.useMemo)(()=>(n?.flows||[]).filter(e=>(!o||Ir(e.host)===o)&&(u===`all`||Fr(e)===u)&&D.every(t=>`${e.goal} ${e.host||``}`.toLowerCase().includes(t))).sort((e,t)=>(Date.parse(t.lastRun||``)||0)-(Date.parse(e.lastRun||``)||0)),[n,o,u,f]),k=(0,L.useMemo)(()=>(n?.pages||[]).filter(e=>(!o||Ir(e.host)===o)&&D.every(t=>`${e.title||``} ${e.path} ${e.host}`.toLowerCase().includes(t))).sort((e,t)=>(Date.parse(t.lastSeen||``)||0)-(Date.parse(e.lastSeen||``)||0)),[n,o,f]),te=(0,L.useMemo)(()=>{let e={all:0,replaying:0,failing:0,never:0};for(let t of n?.flows||[]){if(o&&Ir(t.host)!==o)continue;e.all++;let n=Fr(t);n!==`ok`&&e[n]++}return e},[n,o]),A=c===`flows`?O:k;return(0,R.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,R.jsx)(Ie,{}),(0,R.jsxs)(`main`,{className:`@container mx-auto box-border flex w-full max-w-[1180px] flex-col px-6 pt-8 pb-12`,children:[(0,R.jsxs)(`div`,{className:`mb-1 flex flex-wrap items-center gap-3`,children:[(0,R.jsx)(Pe,{icon:ee,size:`lg`}),(0,R.jsx)(`h1`,{className:`m-0 flex-1 text-[26px] font-semibold tracking-[-0.01em]`,children:`Memory`}),(0,R.jsxs)(`a`,{href:E(`settings`,`runs`),className:T(ie({size:`sm`,variant:`ghost`}),`gap-1.5`),children:[(0,R.jsx)(An,{size:14,"aria-hidden":`true`}),`Memory settings`]})]}),(0,R.jsxs)(`p`,{className:`mt-1 mb-5 max-w-[78ch] text-sm leading-relaxed text-muted`,children:[`What ForgeQE learned from runs that passed: each `,(0,R.jsx)(`b`,{className:`font-medium text-ink-2`,children:`flow`}),` is the steps of a task, replayed next time without asking a model, and each `,(0,R.jsx)(`b`,{className:`font-medium text-ink-2`,children:`page`}),` keeps its elements with the locators that found them.`]}),i&&(0,R.jsxs)(`div`,{role:`alert`,className:`flex flex-col items-start gap-3 rounded-[14px] bg-fail-soft px-4 py-3 text-sm text-fail`,children:[i,(0,R.jsx)(P,{onClick:x,children:`Try again`})]}),!n&&!i&&(0,R.jsx)(`p`,{className:`m-0 text-sm text-muted`,children:`Loading…`}),n&&(0,R.jsxs)(R.Fragment,{children:[!n.enabled&&(0,R.jsxs)(`p`,{className:`mt-0 mb-4 rounded-[12px] bg-warn-soft px-4 py-3 text-sm text-warn`,children:[`Memory is off for this project: runs neither use nor add to it. Turn it on in `,(0,R.jsx)(`a`,{href:E(`settings`,`runs`),children:`Memory settings`}),`.`]}),(0,R.jsx)(Lr,{view:n}),y&&(0,R.jsx)(`p`,{role:`status`,className:`mt-0 mb-4 rounded-[10px] bg-surface-muted px-3 py-2 text-sm text-ink-2`,children:y}),n.flows.length+n.pages.length===0?(0,R.jsxs)(`div`,{className:`flex flex-col items-start gap-3 rounded-[14px] border border-dashed border-line px-5 py-6`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Nothing remembered yet`}),(0,R.jsx)(`span`,{className:`max-w-[60ch] text-sm text-muted`,children:`Each browser run that passes adds its pages and steps, and the next run of the same task replays them.`}),(0,R.jsx)(`a`,{className:ie(),href:E(),children:`Run something`})]}):(0,R.jsxs)(`div`,{className:`grid gap-4 @2xl:grid-cols-[220px_minmax(0,1fr)]`,children:[(0,R.jsx)(`nav`,{"aria-label":`Sites`,className:`hidden flex-col gap-0.5 self-start @2xl:sticky @2xl:top-4 @2xl:flex`,children:[{name:Mr,flows:n.flows.length,pages:n.pages.length,failing:0},...C].map(t=>(0,R.jsxs)(`button`,{type:`button`,"aria-current":o===t.name?`true`:void 0,onClick:()=>s(t.name),className:T(`flex min-h-11 w-full cursor-pointer items-center gap-2 rounded-[10px] border-0 px-3 text-left`,o===t.name?`bg-surface-strong text-ink`:`bg-transparent text-ink-2 hover:bg-surface-muted`),children:[t.name?(0,R.jsx)(qt,{size:15,"aria-hidden":`true`,className:`flex-none text-muted`}):(0,R.jsx)(tn,{size:15,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsx)(`span`,{className:`truncate text-[13.5px] font-medium`,children:t.name||`All sites`}),(0,R.jsx)(`span`,{className:`text-[12px] text-muted`,children:t.flows+t.pages||!t.name?`${e(t.flows,`flow`)} · ${e(t.pages,`page`)}`:e(n.targets.find(e=>e.name===t.name)?.files??0,`file`)})]}),t.failing>0&&(0,R.jsx)(`span`,{className:`rounded-full bg-fail-soft px-1.5 text-[11.5px] font-medium text-fail tabular-nums`,title:`${t.failing} failed last time`,children:t.failing})]},t.name||`all`))}),(0,R.jsxs)(w,{"aria-label":`Site`,value:o,onChange:e=>s(e.target.value),className:`@2xl:hidden`,children:[(0,R.jsx)(`option`,{value:Mr,children:`All sites`}),C.map(t=>(0,R.jsxs)(`option`,{value:t.name,children:[t.name,` (`,e(t.flows,`flow`),`, `,e(t.pages,`page`),`)`]},t.name))]}),(0,R.jsxs)(`section`,{className:`flex min-w-0 flex-col rounded-[14px] border border-line-soft bg-bg`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 border-b border-line-soft px-3 py-2.5`,children:[(0,R.jsx)(`div`,{role:`tablist`,"aria-label":`What to show`,className:`flex gap-1 rounded-full bg-surface-strong p-1`,children:[[`flows`,`Flows`,O.length],[`pages`,`Pages`,k.length]].map(([e,t,n])=>(0,R.jsxs)(`button`,{type:`button`,role:`tab`,"aria-selected":c===e,onClick:()=>l(e),className:T(`inline-flex min-h-8 cursor-pointer items-center gap-1.5 rounded-full border-0 px-3 text-sm font-medium`,c===e?`bg-bg text-ink shadow-sm`:`bg-transparent text-muted hover:text-ink`),children:[t,(0,R.jsx)(`span`,{className:`text-[12px] text-muted tabular-nums`,children:n})]},e))}),(0,R.jsxs)(`div`,{className:`relative min-w-0 flex-[1_1_200px]`,children:[(0,R.jsx)(En,{size:15,"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-3 -translate-y-1/2 text-muted`}),(0,R.jsx)(S,{type:`search`,"aria-label":c===`flows`?`Find a flow`:`Find a page`,value:f,placeholder:c===`flows`?`Find a flow by its task`:`Find a page by title or path`,onChange:e=>p(e.target.value),className:`h-9 pl-9`})]}),(0,R.jsx)(Br,{view:n,site:o,onCleared:(e,t)=>{r({...e}),b(t)}})]}),c===`flows`&&(0,R.jsx)(`div`,{className:`flex flex-wrap gap-1.5 px-3 pt-2.5`,children:[[`all`,`All`],[`replaying`,`Replaying`],[`failing`,`Failed last time`],[`never`,`Never passed`]].map(([e,t])=>(0,R.jsxs)(`button`,{type:`button`,"aria-pressed":u===e,onClick:()=>d(e),className:T(`inline-flex min-h-7 cursor-pointer items-center gap-1 rounded-full border px-2.5 text-[12.5px] font-medium`,u===e?`border-accent bg-accent-soft text-ink`:`border-line-soft bg-bg text-muted hover:text-ink`),children:[t,(0,R.jsx)(`span`,{className:T(`tabular-nums`,(e===`failing`||e===`never`)&&te[e]?`text-fail`:``),children:te[e]})]},e))}),(0,R.jsxs)(`div`,{className:`@container flex flex-col p-1.5`,children:[A.length===0&&(0,R.jsx)(`p`,{className:`m-0 px-3 py-4 text-sm text-muted`,children:`Nothing matches.`}),c===`flows`?O.slice(0,m).map((e,t)=>(0,R.jsx)(Rr,{f:e,onOpen:()=>v(e)},`${e.goal}-${t}`)):k.slice(0,m).map(e=>(0,R.jsx)(zr,{p:e},`${e.host}${e.path}`))]}),A.length>m&&(0,R.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-t border-line-soft px-4 py-2.5 text-[13px] text-muted`,children:[(0,R.jsxs)(`span`,{children:[`Showing `,m,` of `,A.length]}),(0,R.jsxs)(P,{size:`sm`,onClick:()=>h(m+jr),children:[`Show `,Math.min(jr,A.length-m),` more`]})]})]})]})]})]}),(0,R.jsx)(g,{open:!!_,onClose:()=>v(null),title:`Flow`,description:_?.host?`On ${_.host}`:void 0,footer:(0,R.jsx)(P,{onClick:()=>v(null),children:`Close`}),children:_&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-4 pt-4 text-sm`,children:[(0,R.jsx)(`p`,{className:`m-0 leading-relaxed whitespace-pre-wrap text-ink [overflow-wrap:anywhere]`,children:_.goal}),(0,R.jsxs)(`dl`,{className:`m-0 grid grid-cols-[auto_1fr] gap-x-4 gap-y-2`,children:[(0,R.jsx)(`dt`,{className:`text-muted`,children:`Steps`}),(0,R.jsx)(`dd`,{className:`m-0`,children:_.steps}),(0,R.jsx)(`dt`,{className:`text-muted`,children:`Runs`}),(0,R.jsxs)(`dd`,{className:`m-0`,children:[_.runs,`, `,_.successes,` passed, `,_.failures,` failed`]}),(0,R.jsx)(`dt`,{className:`text-muted`,children:`Replayed`}),(0,R.jsxs)(`dd`,{className:`m-0`,children:[e(_.replays,`time`),`; `,_.replayedSteps,` of `,_.replayedSteps+_.modelSteps,` steps without a model`]}),(0,R.jsx)(`dt`,{className:`text-muted`,children:`Last run`}),(0,R.jsxs)(`dd`,{className:`m-0`,children:[_.lastRun?new Date(_.lastRun).toLocaleString([],{dateStyle:`medium`,timeStyle:`short`}):`—`,_.lastStatus?`, ${_.lastStatus}`:``]})]}),(0,R.jsx)(`p`,{className:`m-0 rounded-[10px] bg-surface-muted px-3 py-2 text-ink-2`,children:Fr(_)===`never`?`It has not passed yet, so nothing replays: the next run of this task asks the model at each step.`:Fr(_)===`failing`?`Its last run failed. The next run replays the steps that worked, then the agent takes over from where it went wrong.`:`The next run of this task replays its steps without a model, and the agent looks once to confirm the result.`})]})})]})}var Hr=[];function Ur({section:e}){return(0,R.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,R.jsx)(Ie,{}),(0,R.jsxs)(`main`,{className:`mx-auto box-border flex w-full max-w-[720px] flex-col gap-3 px-6 py-16`,children:[(0,R.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:e.label}),(0,R.jsxs)(`p`,{className:`m-0 max-w-[60ch] leading-relaxed text-ink-2`,children:[e.what,` are not in the web app yet. In a terminal in your project folder, run`,` `,(0,R.jsx)(`code`,{className:`rounded-md bg-surface-strong px-1.5 py-0.5 font-mono text-[13px]`,children:e.command}),`.`]})]})]})}var Wr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2086%2076'%20width='172'%20height='152'%20role='img'%20aria-label='api'%3e%3cg%3e%3crect%20x='11'%20y='65'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2065L25%2061L35%2061L31%2065Z'%20fill='%238db0eb'/%3e%3cpath%20d='M31%2065L35%2061L35%2071L31%2075Z'%20fill='%23375e9d'/%3e%3crect%20x='21'%20y='65'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2065L55%2061L65%2061L61%2065Z'%20fill='%238db0eb'/%3e%3crect%20x='51'%20y='65'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2065L75%2061L75%2071L71%2075Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='65'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2055L25%2051L25%2061L21%2065Z'%20fill='%23375e9d'/%3e%3crect%20x='11'%20y='55'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2055L75%2051L75%2061L71%2065Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='55'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2045L15%2041L25%2041L21%2045Z'%20fill='%238db0eb'/%3e%3cpath%20d='M21%2045L25%2041L25%2051L21%2055Z'%20fill='%23375e9d'/%3e%3crect%20x='11'%20y='45'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2045L65%2041L75%2041L71%2045Z'%20fill='%238db0eb'/%3e%3cpath%20d='M71%2045L75%2041L75%2051L71%2055Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='45'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2035L5%2031L15%2031L11%2035Z'%20fill='%238db0eb'/%3e%3cpath%20d='M11%2035L15%2031L15%2041L11%2045Z'%20fill='%23375e9d'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2035L35%2031L45%2031L41%2035Z'%20fill='%237594d5'/%3e%3crect%20x='31'%20y='35'%20width='10'%20height='10'%20fill='%232a5bbf'%20stroke='%232856b5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2035L45%2031L55%2031L51%2035Z'%20fill='%237594d5'/%3e%3cpath%20d='M51%2035L55%2031L55%2041L51%2045Z'%20fill='%231d4086'/%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%232a5bbf'%20stroke='%232856b5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2035L75%2031L85%2031L81%2035Z'%20fill='%238db0eb'/%3e%3cpath%20d='M81%2035L85%2031L85%2041L81%2045Z'%20fill='%23375e9d'/%3e%3crect%20x='71'%20y='35'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2025L25%2021L25%2031L21%2035Z'%20fill='%23375e9d'/%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2025L75%2021L75%2031L71%2035Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='25'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2015L25%2011L25%2021L21%2025Z'%20fill='%23375e9d'/%3e%3crect%20x='11'%20y='15'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2015L75%2011L75%2021L71%2025Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='15'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%238db0eb'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%238db0eb'/%3e%3cpath%20d='M31%205L35%201L35%2011L31%2015Z'%20fill='%23375e9d'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%205L55%201L65%201L61%205Z'%20fill='%238db0eb'/%3e%3crect%20x='51'%20y='5'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%205L65%201L75%201L71%205Z'%20fill='%238db0eb'/%3e%3cpath%20d='M71%205L75%201L75%2011L71%2015Z'%20fill='%23375e9d'/%3e%3crect%20x='61'%20y='5'%20width='10'%20height='10'%20fill='%234f86e0'%20stroke='%234b7fd5'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,Gr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2086%2066'%20width='172'%20height='132'%20role='img'%20aria-label='browser%20agent'%3e%3cg%3e%3crect%20x='1'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2055L15%2051L25%2051L21%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='11'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2055L25%2051L35%2051L31%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='21'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2055L35%2051L45%2051L41%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='31'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2055L45%2051L55%2051L51%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='41'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2055L55%2051L65%2051L61%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='51'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2055L65%2051L75%2051L71%2055Z'%20fill='%23dbe8f8'/%3e%3crect%20x='61'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2055L85%2051L85%2061L81%2065Z'%20fill='%238c9aac'/%3e%3crect%20x='71'%20y='55'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2045L15%2041L15%2051L11%2055Z'%20fill='%238c9aac'/%3e%3crect%20x='1'%20y='45'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2045L85%2041L85%2051L81%2055Z'%20fill='%238c9aac'/%3e%3crect%20x='71'%20y='45'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2035L15%2031L15%2041L11%2045Z'%20fill='%238c9aac'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2035L85%2031L85%2041L81%2045Z'%20fill='%238c9aac'/%3e%3crect%20x='71'%20y='35'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L15%2031L11%2035Z'%20fill='%238c9aac'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2025L85%2021L85%2031L81%2035Z'%20fill='%238c9aac'/%3e%3crect%20x='71'%20y='25'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2015L15%2011L15%2021L11%2025Z'%20fill='%238c9aac'/%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2015L85%2011L85%2021L81%2025Z'%20fill='%238c9aac'/%3e%3crect%20x='71'%20y='15'%20width='10'%20height='10'%20fill='%23c8dcf5'%20stroke='%23bed1e9'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%205L5%201L15%201L11%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='1'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%205L55%201L65%201L61%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='51'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%205L65%201L75%201L71%205Z'%20fill='%23a1c5f0'/%3e%3crect%20x='61'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%205L75%201L85%201L81%205Z'%20fill='%23a1c5f0'/%3e%3cpath%20d='M81%205L85%201L85%2011L81%2015Z'%20fill='%234e74a2'/%3e%3crect%20x='71'%20y='5'%20width='10'%20height='10'%20fill='%236fa6e8'%20stroke='%23699edc'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,Kr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2056%2076'%20width='112'%20height='152'%20role='img'%20aria-label='case'%3e%3cg%3e%3crect%20x='1'%20y='65'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2065L15%2061L25%2061L21%2065Z'%20fill='%23a1e4c8'/%3e%3crect%20x='11'%20y='65'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2065L25%2061L35%2061L31%2065Z'%20fill='%23a1e4c8'/%3e%3crect%20x='21'%20y='65'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2065L35%2061L45%2061L41%2065Z'%20fill='%23a1e4c8'/%3e%3crect%20x='31'%20y='65'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2065L55%2061L55%2071L51%2075Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='65'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2055L15%2051L15%2061L11%2065Z'%20fill='%234e9677'/%3e%3crect%20x='1'%20y='55'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2055L55%2051L55%2061L51%2065Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='55'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2045L15%2041L15%2051L11%2055Z'%20fill='%234e9677'/%3e%3crect%20x='1'%20y='45'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2045L55%2041L55%2051L51%2055Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='45'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2035L15%2031L15%2041L11%2045Z'%20fill='%234e9677'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2035L25%2031L35%2031L31%2035Z'%20fill='%23a1e4c8'/%3e%3cpath%20d='M31%2035L35%2031L35%2041L31%2045Z'%20fill='%234e9677'/%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2035L55%2031L55%2041L51%2045Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L15%2031L11%2035Z'%20fill='%234e9677'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2025L55%2021L55%2031L51%2035Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2015L15%2011L15%2021L11%2025Z'%20fill='%234e9677'/%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2015L55%2011L55%2021L51%2025Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%205L5%201L15%201L11%205Z'%20fill='%23a1e4c8'/%3e%3crect%20x='1'%20y='5'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%2378bda3'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%232f9a72'%20stroke='%232d926c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%2378bda3'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%232f9a72'%20stroke='%232d926c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%2378bda3'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%232f9a72'%20stroke='%232d926c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%23a1e4c8'/%3e%3cpath%20d='M51%205L55%201L55%2011L51%2015Z'%20fill='%234e9677'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%236fd6aa'%20stroke='%2369cba2'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,qr=`/assets/context-engine-BIWf1ZIT.svg`,Jr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2066%2076'%20width='132'%20height='152'%20role='img'%20aria-label='explorer'%3e%3cg%3e%3cpath%20d='M11%2065L15%2061L15%2071L11%2075Z'%20fill='%23ac7597'/%3e%3crect%20x='1'%20y='65'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2055L15%2051L15%2061L11%2065Z'%20fill='%23ac7597'/%3e%3crect%20x='1'%20y='55'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2045L15%2041L15%2051L11%2055Z'%20fill='%23ac7597'/%3e%3crect%20x='1'%20y='45'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2035L15%2031L15%2041L11%2045Z'%20fill='%23ac7597'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='25'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2025L45%2021L45%2031L41%2035Z'%20fill='%238c286c'/%3e%3crect%20x='31'%20y='25'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='15'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='15'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='15'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2015L65%2011L65%2021L61%2025Z'%20fill='%238c286c'/%3e%3crect%20x='51'%20y='15'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%205L5%201L15%201L11%205Z'%20fill='%23f9c6e6'/%3e%3crect%20x='1'%20y='5'%20width='10'%20height='10'%20fill='%23f6a7d8'%20stroke='%23ea9fcd'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%23db7ebd'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%23db7ebd'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23db7ebd'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%23db7ebd'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%205L55%201L65%201L61%205Z'%20fill='%23db7ebd'/%3e%3cpath%20d='M61%205L65%201L65%2011L61%2015Z'%20fill='%238c286c'/%3e%3crect%20x='51'%20y='5'%20width='10'%20height='10'%20fill='%23c8399a'%20stroke='%23be3692'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,Yr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2066%2076'%20width='132'%20height='152'%20role='img'%20aria-label='healer'%3e%3cg%3e%3crect%20x='21'%20y='65'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2065L45%2061L45%2071L41%2075Z'%20fill='%2390a155'/%3e%3crect%20x='31'%20y='65'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='55'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2055L45%2051L45%2061L41%2065Z'%20fill='%2390a155'/%3e%3crect%20x='31'%20y='55'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='45'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2045L45%2041L45%2051L41%2055Z'%20fill='%235e7b1e'/%3e%3crect%20x='31'%20y='45'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='35'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2035L65%2031L65%2041L61%2045Z'%20fill='%2390a155'/%3e%3crect%20x='51'%20y='35'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2025L5%2021L15%2021L11%2025Z'%20fill='%23deefa9'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L25%2021L21%2025Z'%20fill='%23deefa9'/%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='25'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='25'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2025L45%2021L55%2021L51%2025Z'%20fill='%23deefa9'/%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2025L55%2021L65%2021L61%2025Z'%20fill='%23deefa9'/%3e%3cpath%20d='M61%2025L65%2021L65%2031L61%2035Z'%20fill='%2390a155'/%3e%3crect%20x='51'%20y='25'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='15'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2015L45%2011L45%2021L41%2025Z'%20fill='%235e7b1e'/%3e%3crect%20x='31'%20y='15'%20width='10'%20height='10'%20fill='%2386b02b'%20stroke='%237fa729'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%23deefa9'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23deefa9'/%3e%3cpath%20d='M41%205L45%201L45%2011L41%2015Z'%20fill='%2390a155'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%23cde67a'%20stroke='%23c3da74'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,Xr=`/assets/knowledge-base-CMsi5KtZ.svg`,Zr=`/assets/model-CGrmjuJz.svg`,Qr=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2086%2066'%20width='172'%20height='132'%20role='img'%20aria-label='orchestrator'%3e%3cg%3e%3crect%20x='11'%20y='55'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2055L35%2051L35%2061L31%2065Z'%20fill='%237661aa'/%3e%3crect%20x='21'%20y='55'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='55'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2055L75%2051L75%2061L71%2065Z'%20fill='%237661aa'/%3e%3crect%20x='61'%20y='55'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='45'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2045L35%2041L35%2051L31%2055Z'%20fill='%237661aa'/%3e%3crect%20x='21'%20y='45'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='45'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2045L75%2041L75%2051L71%2055Z'%20fill='%237661aa'/%3e%3crect%20x='61'%20y='45'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2035L5%2031L15%2031L11%2035Z'%20fill='%23c7b4f7'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='35'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='35'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='61'%20y='35'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2035L75%2031L85%2031L81%2035Z'%20fill='%23c7b4f7'/%3e%3cpath%20d='M81%2035L85%2031L85%2041L81%2045Z'%20fill='%237661aa'/%3e%3crect%20x='71'%20y='35'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L25%2021L21%2025Z'%20fill='%23c7b4f7'/%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='25'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='25'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%236a3fd6'%20stroke='%23653ccb'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='25'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2025L65%2021L75%2021L71%2025Z'%20fill='%23c7b4f7'/%3e%3cpath%20d='M71%2025L75%2021L75%2031L71%2035Z'%20fill='%237661aa'/%3e%3crect%20x='61'%20y='25'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2015L25%2011L35%2011L31%2015Z'%20fill='%23c7b4f7'/%3e%3crect%20x='21'%20y='15'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='15'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2015L55%2011L65%2011L61%2015Z'%20fill='%23c7b4f7'/%3e%3cpath%20d='M61%2015L65%2011L65%2021L61%2025Z'%20fill='%237661aa'/%3e%3crect%20x='51'%20y='15'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23c7b4f7'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%23c7b4f7'/%3e%3cpath%20d='M51%205L55%201L55%2011L51%2015Z'%20fill='%237661aa'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%23a98bf3'%20stroke='%23a184e7'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,$r=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2096%2056'%20width='192'%20height='112'%20role='img'%20aria-label='pr%20reviewer'%3e%3cg%3e%3cpath%20d='M21%2045L25%2041L25%2051L21%2055Z'%20fill='%2396575f'/%3e%3crect%20x='11'%20y='45'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2035L35%2031L35%2041L31%2045Z'%20fill='%2396575f'/%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='61'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='71'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M91%2025L95%2021L95%2031L91%2035Z'%20fill='%2396575f'/%3e%3crect%20x='81'%20y='25'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='15'%20width='10'%20height='10'%20fill='%23b0223f'%20stroke='%23a7203c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='15'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='15'%20width='10'%20height='10'%20fill='%23b0223f'%20stroke='%23a7203c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='51'%20y='15'%20width='10'%20height='10'%20fill='%23b0223f'%20stroke='%23a7203c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='61'%20y='15'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='71'%20y='15'%20width='10'%20height='10'%20fill='%23b0223f'%20stroke='%23a7203c'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M91%2015L95%2011L95%2021L91%2025Z'%20fill='%2396575f'/%3e%3crect%20x='81'%20y='15'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%205L5%201L15%201L11%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='1'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%205L55%201L65%201L61%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='51'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%205L65%201L75%201L71%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='61'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%205L75%201L85%201L81%205Z'%20fill='%23e5aab2'/%3e%3crect%20x='71'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%205L85%201L95%201L91%205Z'%20fill='%23e5aab2'/%3e%3cpath%20d='M91%205L95%201L95%2011L91%2015Z'%20fill='%2396575f'/%3e%3crect%20x='81'%20y='5'%20width='10'%20height='10'%20fill='%23d77c88'%20stroke='%23cc7681'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,ei=`/assets/report-mkgMJOFK.svg`,ti=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2096%2056'%20width='192'%20height='112'%20role='img'%20aria-label='result'%3e%3cg%3e%3crect%20x='21'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2045L35%2041L45%2041L41%2045Z'%20fill='%2394d1b9'/%3e%3crect%20x='31'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2045L55%2041L55%2051L51%2055Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2035L25%2031L35%2031L31%2035Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M31%2035L35%2031L35%2041L31%2045Z'%20fill='%23408168'/%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2035L45%2031L55%2031L51%2035Z'%20fill='%2394d1b9'/%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2035L65%2031L65%2041L61%2045Z'%20fill='%23408168'/%3e%3crect%20x='51'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2025L5%2021L15%2021L11%2025Z'%20fill='%2394d1b9'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L25%2021L21%2025Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M21%2025L25%2021L25%2031L21%2035Z'%20fill='%23408168'/%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2025L55%2021L65%2021L61%2025Z'%20fill='%2394d1b9'/%3e%3crect%20x='51'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2025L75%2021L75%2031L71%2035Z'%20fill='%23408168'/%3e%3crect%20x='61'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2015L65%2011L75%2011L71%2015Z'%20fill='%2394d1b9'/%3e%3crect%20x='61'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2015L85%2011L85%2021L81%2025Z'%20fill='%23408168'/%3e%3crect%20x='71'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%205L75%201L85%201L81%205Z'%20fill='%2394d1b9'/%3e%3crect%20x='71'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%205L85%201L95%201L91%205Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M91%205L95%201L95%2011L91%2015Z'%20fill='%23408168'/%3e%3crect%20x='81'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,ni=`/assets/rule-DycAnn4u.svg`,ri=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20116%2056'%20width='232'%20height='112'%20role='img'%20aria-label='scribe'%3e%3cg%3e%3cpath%20d='M21%2045L25%2041L35%2041L31%2045Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M31%2045L35%2041L35%2051L31%2055Z'%20fill='%23408168'/%3e%3crect%20x='21'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2045L55%2041L55%2051L51%2055Z'%20fill='%2321614b'/%3e%3crect%20x='41'%20y='45'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%2045L85%2041L95%2041L91%2045Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M91%2045L95%2041L95%2051L91%2055Z'%20fill='%23408168'/%3e%3crect%20x='81'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2035L15%2031L25%2031L21%2035Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M21%2035L25%2031L25%2041L21%2045Z'%20fill='%23408168'/%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2035L45%2031L55%2031L51%2035Z'%20fill='%2378b39f'/%3e%3cpath%20d='M51%2035L55%2031L55%2041L51%2045Z'%20fill='%2321614b'/%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M91%2035L95%2031L105%2031L101%2035Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M101%2035L105%2031L105%2041L101%2045Z'%20fill='%23408168'/%3e%3crect%20x='91'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2025L5%2021L15%2021L11%2025Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M11%2025L15%2021L15%2031L11%2035Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2025L65%2021L65%2031L61%2035Z'%20fill='%2321614b'/%3e%3crect%20x='51'%20y='25'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M101%2025L105%2021L115%2021L111%2025Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M111%2025L115%2021L115%2031L111%2035Z'%20fill='%23408168'/%3e%3crect%20x='101'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2015L15%2011L25%2011L21%2015Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M21%2015L25%2011L25%2021L21%2025Z'%20fill='%23408168'/%3e%3crect%20x='11'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2015L55%2011L65%2011L61%2015Z'%20fill='%2378b39f'/%3e%3cpath%20d='M61%2015L65%2011L65%2021L61%2025Z'%20fill='%2321614b'/%3e%3crect%20x='51'%20y='15'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M91%2015L95%2011L105%2011L101%2015Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M101%2015L105%2011L105%2021L101%2025Z'%20fill='%23408168'/%3e%3crect%20x='91'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M31%205L35%201L35%2011L31%2015Z'%20fill='%23408168'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%205L65%201L75%201L71%205Z'%20fill='%2378b39f'/%3e%3cpath%20d='M71%205L75%201L75%2011L71%2015Z'%20fill='%2321614b'/%3e%3crect%20x='61'%20y='5'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M81%205L85%201L95%201L91%205Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M91%205L95%201L95%2011L91%2015Z'%20fill='%23408168'/%3e%3crect%20x='81'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,ii=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2056%2076'%20width='112'%20height='152'%20role='img'%20aria-label='specs'%3e%3cg%3e%3crect%20x='1'%20y='65'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2065L15%2061L25%2061L21%2065Z'%20fill='%2394d1b9'/%3e%3crect%20x='11'%20y='65'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2065L25%2061L35%2061L31%2065Z'%20fill='%2394d1b9'/%3e%3crect%20x='21'%20y='65'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%2065L35%2061L45%2061L41%2065Z'%20fill='%2394d1b9'/%3e%3crect%20x='31'%20y='65'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2065L55%2061L55%2071L51%2075Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='65'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2055L15%2051L15%2061L11%2065Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='55'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2055L55%2051L55%2061L51%2065Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='55'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2045L15%2041L15%2051L11%2055Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2045L55%2041L55%2051L51%2055Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='45'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2035L15%2031L15%2041L11%2045Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%2035L25%2031L35%2031L31%2035Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M31%2035L35%2031L35%2041L31%2045Z'%20fill='%23408168'/%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2035L55%2031L55%2041L51%2045Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='35'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2025L15%2021L15%2031L11%2035Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2025L55%2021L55%2031L51%2035Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%2015L15%2011L15%2021L11%2025Z'%20fill='%23408168'/%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2015L55%2011L55%2021L51%2025Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%205L5%201L15%201L11%205Z'%20fill='%2394d1b9'/%3e%3crect%20x='1'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%2378b39f'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%2378b39f'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%2378b39f'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%232f8a6b'%20stroke='%232d8366'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%205L45%201L55%201L51%205Z'%20fill='%2394d1b9'/%3e%3cpath%20d='M51%205L55%201L55%2011L51%2015Z'%20fill='%23408168'/%3e%3crect%20x='41'%20y='5'%20width='10'%20height='10'%20fill='%235bb894'%20stroke='%2356af8d'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,ai=`data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2086%2066'%20width='172'%20height='132'%20role='img'%20aria-label='test%20finder'%3e%3cg%3e%3crect%20x='61'%20y='55'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M71%2055L75%2051L85%2051L81%2055Z'%20fill='%23b6e8f5'/%3e%3cpath%20d='M81%2055L85%2051L85%2061L81%2065Z'%20fill='%23649aa7'/%3e%3crect%20x='71'%20y='55'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M61%2045L65%2041L75%2041L71%2045Z'%20fill='%23b6e8f5'/%3e%3cpath%20d='M71%2045L75%2041L75%2051L71%2055Z'%20fill='%23649aa7'/%3e%3crect%20x='61'%20y='45'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='35'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='35'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2035L45%2031L45%2041L41%2045Z'%20fill='%23649aa7'/%3e%3crect%20x='31'%20y='35'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2035L55%2031L65%2031L61%2035Z'%20fill='%23b6e8f5'/%3e%3cpath%20d='M61%2035L65%2031L65%2041L61%2045Z'%20fill='%23649aa7'/%3e%3crect%20x='51'%20y='35'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='1'%20y='25'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='25'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='25'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='25'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M51%2025L55%2021L55%2031L51%2035Z'%20fill='%23649aa7'/%3e%3crect%20x='41'%20y='25'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M1%2015L5%2011L15%2011L11%2015Z'%20fill='%23b6e8f5'/%3e%3crect%20x='1'%20y='15'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='11'%20y='15'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='21'%20y='15'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3crect%20x='31'%20y='15'%20width='10'%20height='10'%20fill='%231f9fc0'%20stroke='%231d97b6'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M41%2015L45%2011L55%2011L51%2015Z'%20fill='%23b6e8f5'/%3e%3cpath%20d='M51%2015L55%2011L55%2021L51%2025Z'%20fill='%23649aa7'/%3e%3crect%20x='41'%20y='15'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M11%205L15%201L25%201L21%205Z'%20fill='%23b6e8f5'/%3e%3crect%20x='11'%20y='5'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M21%205L25%201L35%201L31%205Z'%20fill='%23b6e8f5'/%3e%3crect%20x='21'%20y='5'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3cg%3e%3cpath%20d='M31%205L35%201L45%201L41%205Z'%20fill='%23b6e8f5'/%3e%3cpath%20d='M41%205L45%201L45%2011L41%2015Z'%20fill='%23649aa7'/%3e%3crect%20x='31'%20y='5'%20width='10'%20height='10'%20fill='%238fdcef'%20stroke='%2388d1e3'%20stroke-width='.25'/%3e%3c/g%3e%3c/svg%3e`,oi=`/assets/trace-YEplLreO.svg`,si=`forgeqe`,ci={forgeqe:{name:`Orchestrator`,icon:`orchestrator`,hue:`#a78bfa`},"forgeqe-refine":{name:`Refine`,icon:`specs`,hue:`#8fa2ff`},"forgeqe-api-plan":{name:`API planner`,icon:`api`,hue:`#e0a3f5`},"forgeqe-explore-plan":{name:`Explorer`,icon:`explorer`,hue:`#f59fe0`},"forgeqe-test-plan":{name:`Test planner`,icon:`case`,hue:`#c9b3ff`},engine:{name:`Browser agent`,icon:`browser-agent`,hue:`#5ea6f0`},"forgeqe-find":{name:`Test finder`,icon:`test-finder`,hue:`#1fa3c4`},"forgeqe-bi":{name:`Insights`,icon:`report`,hue:`#b8a32a`},"forgeqe-test":{name:`Scribe`,icon:`scribe`,hue:`#3a9a7e`},"forgeqe-read":{name:`Scribe, reading`,icon:`knowledge-base`,hue:`#3fa34d`},"forgeqe-heal":{name:`Healer`,icon:`healer`,hue:`#86a92c`},"forgeqe-api":{name:`API test writer`,icon:`api`,hue:`#1f9c90`},"forgeqe-review":{name:`Reviewer`,icon:`result`,hue:`#e0457b`},"forgeqe-pr-review":{name:`PR reviewer`,icon:`pr-reviewer`,hue:`#d93a52`},"forgeqe-judge":{name:`Judge`,icon:`rule`,hue:`#e0603a`},"forgeqe-defect-rca":{name:`Root cause`,icon:`trace`,hue:`#d6701f`},"forgeqe-model-profile":{name:`Model profiler`,icon:`model`,hue:`#b88a14`},explore:{name:`Scout`,icon:`explorer`,hue:`#62789e`},general:{name:`Helper`,icon:`context-engine`,hue:`#a07c43`}};function li(e){let t=Object.hasOwn(ci,e)?ci[e]:void 0;if(t)return t;let n=e.replace(/^forgeqe-/,``).replace(/[-_]+/g,` `).trim().slice(0,40);return{name:n?n.charAt(0).toUpperCase()+n.slice(1):`Agent`,icon:`context-engine`,hue:`#62789e`}}var ui=Object.assign({"./agents/api.svg":Wr,"./agents/browser-agent.svg":Gr,"./agents/case.svg":Kr,"./agents/context-engine.svg":qr,"./agents/explorer.svg":Jr,"./agents/healer.svg":Yr,"./agents/knowledge-base.svg":Xr,"./agents/model.svg":Zr,"./agents/orchestrator.svg":Qr,"./agents/pr-reviewer.svg":$r,"./agents/report.svg":ei,"./agents/result.svg":ti,"./agents/rule.svg":ni,"./agents/scribe.svg":ri,"./agents/specs.svg":ii,"./agents/test-finder.svg":ai,"./agents/trace.svg":oi});function di({agent:e,px:t=20,decorative:n=!1,className:r}){let i=li(e),a=ui[`./agents/${i.icon}.svg`];return(0,R.jsx)(`img`,{src:a,alt:n?``:i.name,width:t,height:t,draggable:!1,className:T(`block flex-none object-contain`,r),style:{width:t,height:t}})}var fi={prebuilt:`ForgeQE's`,project:`This project`,user:`Yours`,external:`Claude / agent skill`,extra:`Shared folder`};function pi({agents:e,max:t=6}){return(0,R.jsxs)(`span`,{className:`flex items-center -space-x-1`,children:[e.slice(0,t).map(e=>(0,R.jsx)(`span`,{title:li(e).name,className:`rounded-md bg-bg p-0.5 ring-1 ring-line-soft`,children:(0,R.jsx)(di,{agent:e,px:18,decorative:!0})},e)),e.length>t&&(0,R.jsxs)(`span`,{className:`pl-2 text-[12px] text-muted`,children:[`+`,e.length-t]})]})}function mi({edit:t}){let{data:n,error:r,reload:i}=se(re.skills),o=M(t.value,[`skills`,`disable`])||[],s=e=>t.set(f(t.value,[`skills`,`disable`],e.length?e:void 0)),[c,l]=(0,L.useState)(`agents`),[p,m]=(0,L.useState)(``),[h,_]=(0,L.useState)(!1),[v,b]=(0,L.useState)(null),[x,C]=(0,L.useState)(null),[w,E]=(0,L.useState)(!1),[ee,D]=(0,L.useState)(``),[O,k]=(0,L.useState)(``),te=p.toLowerCase().split(/\s+/).filter(Boolean),A=(0,L.useMemo)(()=>(n?.skills||[]).filter(e=>te.every(t=>`${e.name} ${e.description} ${e.users.map(e=>li(e).name).join(` `)}`.toLowerCase().includes(t))),[n,p]),j=async(e,t,n)=>{E(!0),D(``);try{await e(),n(),i(),k(t)}catch(e){D(e.message)}finally{E(!1)}},N=async e=>{try{let t=await re.skill(e.name);b({name:e.name,text:t.text,editable:t.editable})}catch(e){k(e.message)}},ne=(e,t)=>{let n=t.replace(/^---\n[\s\S]*?\n---\n?/,``).trim();D(``),b(null),C({name:e.name,description:e.description,agents:e.agents,body:n,existing:e.name})},ie=M(t.value,[`skills`,`enabled`])!==!1,F=(e,t)=>{let r=!o.includes(e.name);return(0,R.jsxs)(`div`,{className:`grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 rounded-[10px] px-3 py-2.5 hover:bg-surface-muted`,children:[(0,R.jsxs)(`button`,{type:`button`,onClick:()=>N(e),"aria-label":`Read ${e.name}`,className:`flex min-w-0 cursor-pointer flex-col gap-0.5 border-0 bg-transparent p-0 text-left`,children:[(0,R.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsx)(`span`,{className:T(`font-mono text-[13px] font-medium`,r?`text-ink`:`text-muted line-through`),children:e.name}),(0,R.jsx)(`span`,{className:T(`rounded-full px-2 py-px text-[11.5px] font-medium`,e.source===`project`?`bg-pass-soft text-pass`:`bg-surface-strong text-muted`),children:fi[e.source]||e.source})]}),(0,R.jsx)(`span`,{className:`line-clamp-2 text-[13px] text-muted`,children:e.description}),t&&(0,R.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2 pt-0.5`,children:[(0,R.jsx)(pi,{agents:e.users}),(0,R.jsx)(`span`,{className:`text-[12px] text-muted`,children:n?.audiences.filter(t=>e.agents.includes(t.id)).map(e=>e.label).join(`, `)})]})]}),(0,R.jsx)(y,{checked:r,onChange:t=>s(t?o.filter(t=>t!==e.name):[...o,e.name]),label:`Use ${e.name}`})]},e.name)};return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`section`,{className:`mb-4 rounded-[14px] border border-line-soft bg-bg`,children:[(0,R.jsxs)(`button`,{type:`button`,"aria-expanded":h,onClick:()=>_(!h),className:`flex min-h-12 w-full cursor-pointer items-center gap-3 rounded-[14px] border-0 bg-transparent px-4 text-left hover:bg-surface-muted`,children:[(0,R.jsx)(An,{size:16,"aria-hidden":`true`,className:`text-muted`}),(0,R.jsx)(`span`,{className:`flex-1 text-sm font-medium`,children:`How skills are used`}),(0,R.jsxs)(`span`,{className:`text-[13px] text-muted`,children:[ie?`On`:`Off`,` · `,e(o.length,`turned off`,`turned off`),` · `,String(M(t.value,[`skills`,`browser_max_chars`])??6e3),` characters a browser run`]}),(0,R.jsx)(d,{size:16,"aria-hidden":`true`,className:T(`text-muted transition-transform`,!h&&`-rotate-90`)})]}),h&&(0,R.jsx)(`div`,{className:`border-t border-line-soft px-4 pb-2`,children:(0,R.jsx)(a,{defs:pe.fields,edit:t,base:pe.base})})]}),n?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pb-3`,children:[(0,R.jsx)(`div`,{role:`radiogroup`,"aria-label":`Show`,className:`flex gap-1 rounded-full bg-surface-strong p-1`,children:[[`agents`,`By agent`,n.audiences.length],[`all`,`All skills`,n.skills.length]].map(([e,t,n])=>(0,R.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":c===e,onClick:()=>l(e),className:T(`inline-flex min-h-8 cursor-pointer items-center gap-1.5 rounded-full border-0 px-3 text-sm font-medium`,c===e?`bg-bg text-ink shadow-sm`:`bg-transparent text-muted hover:text-ink`),children:[t,(0,R.jsx)(`span`,{className:`text-[12px] text-muted tabular-nums`,children:n})]},e))}),(0,R.jsxs)(`div`,{className:`relative min-w-0 flex-[1_1_200px]`,children:[(0,R.jsx)(En,{size:16,"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-3 -translate-y-1/2 text-muted`}),(0,R.jsx)(S,{type:`search`,"aria-label":`Find a skill`,value:p,placeholder:`Find a skill or agent`,onChange:e=>m(e.target.value),className:`pl-9`})]}),(0,R.jsxs)(P,{variant:`primary`,onClick:()=>(D(``),C({name:``,description:``,agents:[],body:``})),children:[(0,R.jsx)(vn,{size:16,"aria-hidden":`true`}),`Add skill`]})]}),O&&(0,R.jsx)(`p`,{role:`status`,className:`m-0 mb-3 rounded-[10px] bg-surface-muted px-3 py-2 text-sm text-ink-2`,children:O}),n.skills.length===0&&(0,R.jsx)(ce,{children:`No skills found. Add one for your framework, conventions or app.`}),c===`agents`&&n.audiences.map(t=>{let n=A.filter(e=>e.agents.includes(t.id));return!n.length&&te.length?null:(0,R.jsxs)(`section`,{"aria-labelledby":`aud-${t.id}`,className:`mb-3 rounded-[14px] border border-line-soft bg-bg p-1.5`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 px-3 py-2`,children:[(0,R.jsx)(pi,{agents:t.agents,max:8}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsx)(`h3`,{id:`aud-${t.id}`,className:`m-0 text-[15px] font-semibold`,children:t.label}),(0,R.jsx)(`span`,{className:`truncate text-[12.5px] text-muted`,children:t.agents.map(e=>li(e).name).filter((e,t,n)=>n.indexOf(e)===t).join(`, `)})]}),(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted`,children:e(n.length,`skill`)})]}),(0,R.jsx)(`div`,{className:`flex flex-col border-t border-line-soft pt-1`,children:n.length?n.map(e=>F(e,!1)):(0,R.jsx)(`p`,{className:`m-0 px-3 py-2 text-[13px] text-muted`,children:`No skills for them yet.`})})]},t.id)}),c===`all`&&(0,R.jsx)(`div`,{className:`flex flex-col rounded-[14px] border border-line-soft bg-bg p-1.5`,children:A.length?A.map(e=>F(e,!0)):(0,R.jsx)(ce,{children:`No skill matches.`})}),n.problems.length?(0,R.jsx)(`div`,{role:`alert`,className:`mt-4 rounded-[12px] bg-warn-soft px-4 py-3 text-sm text-warn`,children:n.problems.map(e=>(0,R.jsx)(`p`,{className:`m-0`,children:e},e))}):null]}):(0,R.jsx)(Te,{error:r,reload:i}),(0,R.jsx)(g,{wide:!0,open:!!v,onClose:()=>b(null),title:v?.name||``,description:v?.editable?`This project's skill, in .forgeqe/skills.`:`Read only: add your own skill to change how the agents work.`,footer:(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(P,{onClick:()=>b(null),children:`Close`}),v?.editable&&(0,R.jsx)(P,{variant:`primary`,onClick:()=>v&&n&&ne(n.skills.find(e=>e.name===v.name),v.text),children:`Edit`})]}),children:v&&(0,R.jsx)(`pre`,{className:`m-0 mt-4 max-h-[70vh] overflow-auto rounded-[12px] bg-surface-muted p-4 font-mono text-[12px] leading-relaxed whitespace-pre-wrap`,children:v.text})}),(0,R.jsx)(g,{wide:!0,open:!!x,onClose:()=>C(null),title:x?.existing?`Edit ${x.existing}`:`Add a skill`,description:(0,R.jsxs)(R.Fragment,{children:[`Saved in `,(0,R.jsxs)(`span`,{className:`font-mono text-[12px]`,children:[`.forgeqe/skills/`,x?.name||`name`,`/SKILL.md`]}),`, shared with the project. The agents read a skill when its "use when" matches the work.`]}),footer:(0,R.jsxs)(R.Fragment,{children:[ee&&(0,R.jsx)(`span`,{role:`alert`,className:`mr-auto self-center text-sm text-fail [overflow-wrap:anywhere]`,children:ee}),x?.existing&&(0,R.jsx)(P,{disabled:w,onClick:()=>x.existing&&j(()=>re.removeSkill(x.existing),`Removed ${x.existing}.`,()=>C(null)),className:`mr-auto text-fail`,children:`Delete`}),(0,R.jsx)(P,{onClick:()=>C(null),children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:w||!x?.name||!x.description.trim()||!x.agents.length||!!x.existing&&!x.body.trim(),onClick:()=>x&&j(()=>x.existing?re.saveSkill(x.existing,x):re.addSkill(x),`${x.existing?`Saved`:`Added`} ${x.name}.`,()=>C(null)),children:w?`Saving…`:x?.existing?`Save skill`:`Add skill`})]}),children:x&&n&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-4 pt-4`,children:[(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Name`}),(0,R.jsx)(S,{value:x.name,disabled:!!x.existing,placeholder:`sap-fiori`,onChange:e=>C({...x,name:e.target.value.toLowerCase().replace(/[^a-z0-9-]+/g,`-`).slice(0,64)}),className:`font-mono`})]}),(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Use when`}),(0,R.jsx)(S,{value:x.description,placeholder:`Use when the site is SAP Fiori: tiles, smart tables, value help dialogs.`,onChange:e=>C({...x,description:e.target.value})}),(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted`,children:`The agents choose skills by this line: say when it applies.`})]}),(0,R.jsxs)(`fieldset`,{className:`m-0 flex flex-col gap-2 border-0 p-0`,children:[(0,R.jsx)(`legend`,{className:`mb-1.5 p-0 font-medium`,children:`Who it is for`}),(0,R.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:n.audiences.map(e=>{let t=x.agents.includes(e.id);return(0,R.jsxs)(`button`,{type:`button`,role:`checkbox`,"aria-checked":t,onClick:()=>C({...x,agents:t?x.agents.filter(t=>t!==e.id):[...x.agents,e.id]}),className:T(`inline-flex min-h-10 cursor-pointer items-center gap-2 rounded-full border px-3 text-[13px] font-medium`,t?`border-accent bg-accent-soft text-ink`:`border-line bg-bg text-ink-2 hover:border-accent-line`),children:[(0,R.jsx)(pi,{agents:e.agents,max:3}),e.label]},e.id)})})]}),(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Instructions`}),(0,R.jsx)(u,{rows:14,spellCheck:!0,value:x.body,placeholder:`- Open apps from their tile on the launchpad.
|
|
16
|
-
- Wait until the busy indicator is gone before the next step.`,onChange:e=>C({...x,body:e.target.value}),className:`text-[14px] leading-[1.6]`}),(0,R.jsxs)(`span`,{className:`text-[12.5px] text-muted`,children:[x.existing?``:`Leave it empty to start from ForgeQE's outline for that agent. `,`Markdown; short rules the agent can follow step by step.`]})]})]})})]})}function hi({names:e,max:t=4}){let n=e.slice(0,t);return(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1`,children:[n.map(e=>(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[12.5px] text-ink-2`,title:li(e).name,children:[(0,R.jsx)(di,{agent:e,px:16,decorative:!0}),li(e).name]},e)),e.length>t&&(0,R.jsxs)(`span`,{className:`text-[12.5px] text-muted`,children:[`+`,e.length-t,` more`]}),!e.length&&(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted`,children:`Not used by an agent`})]})}function gi({p:e}){return(0,R.jsx)(`span`,{className:T(`rounded-full px-2 py-0.5 text-[12px] font-medium whitespace-nowrap`,e.outdated?`bg-warn-soft text-warn`:e.edited?`bg-accent-soft text-accent`:`bg-surface-strong text-muted`),children:e.outdated?`Edited, older base`:e.edited?`Edited`:`ForgeQE's`})}function _i({p:t,onOpen:n,agents:r=!0}){return(0,R.jsxs)(`button`,{type:`button`,onClick:n,"aria-label":`Open ${t.name}`,className:`grid w-full cursor-pointer grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-3 rounded-[10px] border-0 bg-transparent px-3 py-2 text-left hover:bg-surface-muted`,children:[(0,R.jsx)(te,{size:16,strokeWidth:1.8,"aria-hidden":`true`,className:`text-muted`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-mono text-[13px] font-medium text-ink`,children:t.name}),(0,R.jsx)(`span`,{className:`truncate text-[13px] text-muted`,children:t.description||t.usedBy}),r?(0,R.jsx)(hi,{names:t.agents}):t.agents.length>1&&(0,R.jsxs)(`span`,{className:`text-[12px] text-muted`,children:[`Shared with `,e(t.agents.length-1,`other agent`),`: editing it changes them too`]})]}),(0,R.jsx)(gi,{p:t})]})}function vi({t:e,onOpen:t}){return(0,R.jsxs)(`button`,{type:`button`,onClick:t,"aria-label":`Edit ${e.name}`,className:`grid w-full cursor-pointer grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-x-3 rounded-[10px] border-0 bg-transparent px-3 py-2 text-left hover:bg-surface-muted`,children:[(0,R.jsx)(Kn,{size:16,strokeWidth:1.8,"aria-hidden":`true`,className:`text-accent`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-mono text-[13px] font-medium text-ink`,children:e.name}),(0,R.jsx)(`span`,{className:`truncate text-[13px] text-muted`,children:e.description||e.text.split(`
|
|
17
|
-
`)[0]}),(0,R.jsx)(hi,{names:e.agents})]}),(0,R.jsx)(`span`,{className:`rounded-full bg-pass-soft px-2 py-0.5 text-[12px] font-medium whitespace-nowrap text-pass`,children:`Yours`})]})}function yi({onChanged:t}){let{data:n,error:r,reload:i}=se(re.prompts),[a,o]=(0,L.useState)(`agents`),[s,c]=(0,L.useState)(``),[l,d]=(0,L.useState)(null),[f,p]=(0,L.useState)(``),[m,h]=(0,L.useState)(!1),[_,v]=(0,L.useState)(null),[y,b]=(0,L.useState)(null),[x,C]=(0,L.useState)(!1),[w,E]=(0,L.useState)(``),ee=s.toLowerCase().split(/\s+/).filter(Boolean),D=e=>ee.every(t=>e.toLowerCase().includes(t)),O=(0,L.useMemo)(()=>(n?.prompts||[]).filter(e=>D(`${e.name} ${e.description} ${e.usedBy} ${e.agents.map(e=>li(e).name).join(` `)}`)),[n,s]),k=(0,L.useMemo)(()=>(n?.team||[]).filter(e=>D(`${e.name} ${e.description} ${e.text} ${e.agents.map(e=>li(e).name).join(` `)}`)),[n,s]),te=async e=>{E(``);try{let t=await re.prompt(e);d(t),p(t.text),h(!1)}catch(e){t(e.message)}},A=async e=>{try{let t=await re.agentPrompt(e);b({agent:e,text:t.text})}catch(e){t(e.message)}},j=async(e,n,r)=>{C(!0),E(``);try{await e(),r(),i(),t(n)}catch(e){E(e.message)}finally{C(!1)}};if(!n)return(0,R.jsx)(Te,{error:r,reload:i});let M=n.prompts.find(e=>e.name===l?.name),N=n.agents,ne=[{id:`agents`,label:`By agent`,n:N.length},{id:`all`,label:`All prompts`,n:n.prompts.length},{id:`team`,label:`Your prompts`,n:n.team.length}];return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 pb-3`,children:[(0,R.jsx)(`div`,{role:`radiogroup`,"aria-label":`Show`,className:`flex gap-1 rounded-full bg-surface-strong p-1`,children:ne.map(e=>(0,R.jsxs)(`button`,{type:`button`,role:`radio`,"aria-checked":a===e.id,onClick:()=>o(e.id),className:T(`inline-flex min-h-8 cursor-pointer items-center gap-1.5 rounded-full border-0 px-3 text-sm font-medium`,a===e.id?`bg-bg text-ink shadow-sm`:`bg-transparent text-muted hover:text-ink`),children:[e.label,(0,R.jsx)(`span`,{className:`text-[12px] text-muted tabular-nums`,children:e.n})]},e.id))}),(0,R.jsxs)(`div`,{className:`relative min-w-0 flex-[1_1_200px]`,children:[(0,R.jsx)(En,{size:16,"aria-hidden":`true`,className:`pointer-events-none absolute top-1/2 left-3 -translate-y-1/2 text-muted`}),(0,R.jsx)(S,{type:`search`,"aria-label":`Find a prompt`,value:s,placeholder:`Find a prompt or agent`,onChange:e=>c(e.target.value),className:`pl-9`})]}),(0,R.jsxs)(P,{variant:`primary`,onClick:()=>(E(``),v({name:``,description:``,agents:[],text:``})),children:[(0,R.jsx)(vn,{size:16,"aria-hidden":`true`}),`Add prompt`]})]}),a===`agents`&&(0,R.jsx)(`div`,{className:`flex flex-col gap-3`,children:N.filter(e=>O.some(t=>t.agents.includes(e.name))||k.some(t=>t.agents.includes(e.name))).map(t=>{let n=li(t.name),r=O.filter(e=>e.agents.includes(t.name)).sort((e,n)=>e.name===t.prompt?-1:n.name===t.prompt?1:e.name.localeCompare(n.name)),i=k.filter(e=>e.agents.includes(t.name));return(0,R.jsxs)(`section`,{"aria-labelledby":`agent-${t.name}`,className:`rounded-[14px] border border-line-soft bg-bg p-1.5`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 px-3 py-2`,children:[(0,R.jsx)(di,{agent:t.name,px:28,decorative:!0}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsx)(`h3`,{id:`agent-${t.name}`,className:`m-0 text-[15px] font-semibold`,style:{color:n.hue},children:n.name}),(0,R.jsx)(`span`,{className:`truncate text-[13px] text-muted`,children:t.title})]}),(0,R.jsxs)(`span`,{className:`text-[12.5px] text-muted`,children:[e(r.length,`prompt`),i.length?` · ${i.length} yours`:``]}),(0,R.jsxs)(P,{size:`sm`,variant:`ghost`,onClick:()=>A(t.name),children:[(0,R.jsx)(Lt,{size:14,"aria-hidden":`true`}),`Full prompt`]})]}),(0,R.jsxs)(`div`,{className:`flex flex-col border-t border-line-soft pt-1`,children:[r.map(e=>(0,R.jsx)(_i,{p:e,agents:!1,onOpen:()=>te(e.name)},e.name)),i.map(e=>(0,R.jsx)(vi,{t:e,onOpen:()=>(E(``),v({name:e.name,description:e.description,agents:e.agents,text:e.text,existing:e.name}))},e.name))]})]},t.name)})}),a===`all`&&(0,R.jsx)(`div`,{className:`flex flex-col rounded-[14px] border border-line-soft bg-bg p-1.5`,children:O.length?O.map(e=>(0,R.jsx)(_i,{p:e,onOpen:()=>te(e.name)},e.name)):(0,R.jsx)(ce,{children:`No prompt matches.`})}),a===`team`&&(n.team.length===0?(0,R.jsxs)(`div`,{className:`flex flex-col items-start gap-3 rounded-[14px] border border-dashed border-line px-5 py-6`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`No prompts of your own yet`}),(0,R.jsx)(`span`,{className:`max-w-[64ch] text-sm text-muted`,children:`Write instructions once for the agents that should follow them: "Tag every test with its Azure DevOps work item id" for Scribe, or "Answer in British English" for the Orchestrator. They are added at the end of those agents' instructions, saved in .forgeqe/prompts/team, and shared with the project.`}),(0,R.jsxs)(P,{variant:`primary`,onClick:()=>v({name:``,description:``,agents:[],text:``}),children:[(0,R.jsx)(vn,{size:16,"aria-hidden":`true`}),`Add prompt`]})]}):(0,R.jsx)(`div`,{className:`flex flex-col rounded-[14px] border border-line-soft bg-bg p-1.5`,children:k.length?k.map(e=>(0,R.jsx)(vi,{t:e,onOpen:()=>(E(``),v({name:e.name,description:e.description,agents:e.agents,text:e.text,existing:e.name}))},e.name)):(0,R.jsx)(ce,{children:`No prompt matches.`})})),(0,R.jsx)(g,{wide:!0,open:!!l,onClose:()=>d(null),title:l?.name||``,description:(0,R.jsxs)(R.Fragment,{children:[M?.agents.length?`Used by ${M.agents.map(e=>li(e).name).join(`, `)}. `:M?.usedBy?`Used by ${M.usedBy}. `:``,`Saving writes `,(0,R.jsxs)(`span`,{className:`font-mono text-[12px]`,children:[`.forgeqe/prompts/`,l?.name,`.md`]}),` straight away; new chats and runs use it.`]}),footer:(0,R.jsxs)(R.Fragment,{children:[w&&(0,R.jsx)(`span`,{role:`alert`,className:`mr-auto self-center text-sm text-fail`,children:w}),M?.edited&&M.source===`project`&&(0,R.jsx)(P,{disabled:x,onClick:()=>l&&j(()=>re.resetPrompt(l.name),`${l.name} is ForgeQE's own prompt again.`,()=>d(null)),className:`mr-auto`,children:`Reset to ForgeQE's`}),(0,R.jsx)(P,{onClick:()=>d(null),children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:x||!l||f===l.text,onClick:()=>l&&j(()=>re.savePrompt(l.name,f),`Saved your copy of ${l.name}.`,()=>d(null)),children:x?`Saving…`:`Save prompt`})]}),children:l&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-3 pt-4`,children:[M&&M.agents.length>0&&(0,R.jsx)(hi,{names:M.agents,max:8}),M?.edited&&M.source!==`project`&&(0,R.jsxs)(`p`,{className:`m-0 rounded-[10px] bg-surface-muted px-3 py-2 text-sm text-ink-2`,children:[`This prompt comes from a `,M.source,` copy; saving here makes a project copy, which the shared folder still wins over.`]}),(0,R.jsx)(`button`,{type:`button`,"aria-expanded":m,onClick:()=>h(!m),className:`min-h-10 cursor-pointer self-start border-0 bg-transparent p-0 text-sm font-medium text-accent hover:text-accent-hover`,children:m?`Hide ForgeQE's text`:`Show ForgeQE's text`}),m&&(0,R.jsx)(`pre`,{className:`m-0 max-h-[40vh] overflow-auto rounded-[12px] bg-surface-muted p-4 font-mono text-[12px] leading-relaxed whitespace-pre-wrap`,children:l.builtin}),(0,R.jsx)(`label`,{htmlFor:`prompt-text`,className:`font-medium`,children:`Prompt`}),(0,R.jsx)(u,{id:`prompt-text`,spellCheck:!1,rows:22,value:f,onChange:e=>p(e.target.value),className:`font-mono text-[13px] leading-[1.6]`})]})}),(0,R.jsx)(g,{wide:!0,open:!!_,onClose:()=>v(null),title:_?.existing?`Edit ${_.existing}`:`Add a prompt`,description:(0,R.jsxs)(R.Fragment,{children:[`Added at the end of the chosen agents' instructions, from their next start. Saved in `,(0,R.jsxs)(`span`,{className:`font-mono text-[12px]`,children:[`.forgeqe/prompts/team/`,_?.name||`name`,`.md`]}),`, shared with the project.`]}),footer:(0,R.jsxs)(R.Fragment,{children:[w&&(0,R.jsx)(`span`,{role:`alert`,className:`mr-auto self-center text-sm text-fail [overflow-wrap:anywhere]`,children:w}),_?.existing&&(0,R.jsx)(P,{disabled:x,onClick:()=>_.existing&&j(()=>re.deleteTeamPrompt(_.existing),`Removed ${_.existing}.`,()=>v(null)),className:`mr-auto text-fail`,children:`Delete`}),(0,R.jsx)(P,{onClick:()=>v(null),children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:x||!_?.name||!_.agents.length||!_.text.trim(),onClick:()=>_&&j(()=>_.existing?re.saveTeamPrompt(_.existing,_):re.addTeamPrompt(_),`${_.existing?`Saved`:`Added`} ${_.name}: ${_.agents.map(e=>li(e).name).join(`, `)} use it from their next start.`,()=>v(null)),children:x?`Saving…`:_?.existing?`Save prompt`:`Add prompt`})]}),children:_&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-4 pt-4`,children:[(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Name`}),(0,R.jsx)(S,{value:_.name,disabled:!!_.existing,placeholder:`tag-tests-with-work-items`,onChange:e=>v({..._,name:e.target.value.toLowerCase().replace(/[^a-z0-9-]+/g,`-`).slice(0,48)}),className:`font-mono`}),(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted`,children:`Lowercase letters, digits and dashes.`})]}),(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`What it is for`}),(0,R.jsx)(S,{value:_.description,maxLength:200,placeholder:`Tests carry the work item they cover`,onChange:e=>v({..._,description:e.target.value})})]}),(0,R.jsxs)(`fieldset`,{className:`m-0 flex flex-col gap-2 border-0 p-0`,children:[(0,R.jsx)(`legend`,{className:`mb-1.5 p-0 font-medium`,children:`Agents that follow it`}),(0,R.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:N.map(e=>{let t=_.agents.includes(e.name);return(0,R.jsxs)(`button`,{type:`button`,role:`checkbox`,"aria-checked":t,title:e.title,onClick:()=>v({..._,agents:t?_.agents.filter(t=>t!==e.name):[..._.agents,e.name]}),className:T(`inline-flex min-h-9 cursor-pointer items-center gap-2 rounded-full border px-3 text-[13px] font-medium`,t?`border-accent bg-accent-soft text-ink`:`border-line bg-bg text-ink-2 hover:border-accent-line`),children:[(0,R.jsx)(di,{agent:e.name,px:18,decorative:!0}),li(e.name).name]},e.name)})})]}),(0,R.jsxs)(`label`,{className:`flex flex-col gap-1.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Instructions`}),(0,R.jsx)(u,{rows:14,spellCheck:!0,value:_.text,placeholder:`Tag every test with the Azure DevOps work item it covers, as [Property("WorkItem", "1234")].
|
|
18
|
-
If the request names no work item, ask for it.`,onChange:e=>v({..._,text:e.target.value}),className:`text-[14px] leading-[1.6]`}),(0,R.jsx)(`span`,{className:`text-[12.5px] text-muted`,children:`Plain words, as you would tell a colleague. Use MUST for a rule the agent may never break.`})]})]})}),(0,R.jsx)(g,{wide:!0,open:!!y,onClose:()=>b(null),title:y?`${li(y.agent).name}: full prompt`:``,description:`What the agent starts with now: ForgeQE's prompt (or your edited copy), with the included parts and your prompts for it.`,footer:(0,R.jsx)(P,{onClick:()=>b(null),children:`Close`}),children:y&&(0,R.jsx)(`pre`,{className:`m-0 mt-4 max-h-[70vh] overflow-auto rounded-[12px] bg-surface-muted p-4 font-mono text-[12px] leading-relaxed whitespace-pre-wrap`,children:y.text})})]})}function bi({checked:e,onSelect:t,label:n}){return(0,R.jsx)(`button`,{type:`button`,role:`radio`,"aria-checked":e,"aria-label":n,onClick:t,className:T(`relative inline-flex size-5 flex-none cursor-pointer items-center justify-center rounded-full border-[1.5px] bg-bg p-0 before:absolute before:-inset-2.5 before:content-['']`,e?`border-accent`:`border-muted`),children:(0,R.jsx)(`span`,{"aria-hidden":`true`,className:T(`size-2.5 rounded-full`,e?`bg-accent`:`bg-transparent`)})})}var xi=[[`web`,`Web`],[`api`,`API`],[`desktop`,`Windows desktop`],[`mobile`,`Mobile`]],Si={web:qt,api:De,desktop:fn,mobile:Pn};function Ci(e){let t=String(e.kind||`web`),n=[{key:`kind`,label:`Kind`,type:`select`,default:`web`,options:xi.map(([e,t])=>({value:e,label:t}))}];return(t===`web`||t===`api`)&&n.push({key:`url`,label:`Address`,type:`url`,placeholder:t===`api`?`https://qa.api.example.com/v1`:`https://qa.shop.example.com`}),t===`desktop`&&n.push({key:`path`,label:`Program`,type:`path`,placeholder:`C:\\Program Files\\Contoso\\Billing\\Billing.exe`},{key:`args`,label:`Arguments`,help:`Comma separated.`,type:`list`,placeholder:`--server, qa-db01`}),t===`mobile`&&n.push({key:`platform`,label:`Platform`,type:`select`,options:[{value:`android`,label:`Android`},{value:`ios`,label:`iOS`}]},{key:`app_id`,label:`App id`,type:`path`,placeholder:`com.contoso.courier`},{key:`activity`,label:`Activity`,help:`Android: the activity to start.`,type:`path`,placeholder:`.MainActivity`},{key:`app`,label:`Build to install`,help:`An .apk or .ipa, an https address, or bs://…`,type:`path`}),n.push({key:`description`,label:`Description`,help:`The agent picks apps by this, so say what the app is for.`,type:`text`}),t===`web`&&n.push({key:`login`,label:`Sign-in`,help:`A sign-in from Sign-ins.`,type:`text`,placeholder:`shop-qa`}),n}function wi({value:e,onChange:t}){let n=Object.entries(e);return(0,R.jsxs)(`div`,{className:`flex flex-col gap-2 border-t border-surface-strong py-3`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Variables`}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`Plain values tests read as FORGEQE_VAR_NAME. No secrets here: list those under Secrets.`}),n.map(([n,r],i)=>(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsx)(S,{"aria-label":`Variable name`,value:n,spellCheck:!1,onChange:r=>t(A(e,n,r.target.value)),className:`max-w-[200px] flex-[1_1_140px] font-mono text-[13px]`}),(0,R.jsx)(S,{"aria-label":`Value of ${n}`,value:String(r??``),onChange:r=>t({...e,[n]:r.target.value}),className:`flex-[2_1_200px]`}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${n}`,onClick:()=>{let r={...e};delete r[n],t(r)},children:`Remove`})]},i)),(0,R.jsx)(`div`,{children:(0,R.jsx)(P,{size:`sm`,onClick:()=>t({...e,[i(e,`name`)]:``}),children:`Add a variable`})})]})}function Ti({value:e,onChange:t}){let n=Array.isArray(e)?e.map(String):[],[r,i]=(0,L.useState)(``),a=/^[A-Za-z_][A-Za-z0-9_]*$/.test(r.trim());return(0,R.jsxs)(`div`,{className:`flex flex-col gap-2 border-t border-surface-strong py-3`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:`Secrets`}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`Passwords and keys this environment's tests and desktop flows read, by name. Their values are kept in your credential store.`}),n.map(e=>(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 border-t border-line-soft pt-2`,children:[(0,R.jsx)(`code`,{className:`w-full font-mono text-[13px] sm:w-[200px]`,children:e}),(0,R.jsx)(`div`,{className:`min-w-0 flex-1`,children:(0,R.jsx)(s,{name:e,field:e,compact:!0})}),(0,R.jsx)(C,{name:e}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Stop using ${e} here`,onClick:()=>t(n.filter(t=>t!==e)),children:`Remove`})]},e)),(0,R.jsxs)(`form`,{className:`flex flex-wrap items-center gap-2`,onSubmit:e=>{e.preventDefault(),a&&!n.includes(r.trim())&&t([...n,r.trim()]),i(``)},children:[(0,R.jsx)(S,{"aria-label":`Secret's variable name`,value:r,placeholder:`BILLING_PASSWORD_QA`,spellCheck:!1,onChange:e=>i(e.target.value),className:`max-w-[280px] flex-[1_1_200px] font-mono text-[13px]`}),(0,R.jsx)(P,{size:`sm`,type:`submit`,disabled:!a,children:`Add`})]})]})}var Ei=(e,t)=>(t.startsWith(e)?t.slice(e.length).replace(/^[\\/]+/,``):t).replace(/\\/g,`/`);function Di({envs:e,layout:t,files:n,base:r,onSplit:o,splitBlocked:s,config:c}){let[l,u]=(0,L.useState)(``),[d,p]=(0,L.useState)(``),h=t.layout===`dir`?Ei(r,t.dir):``,g=e=>{let t=n.find(t=>t.name===e);return t?Ei(r,t.path):`${h}/${e}.yaml`},_=m(e.value.environments),v=Object.keys(_),y=typeof e.value.default==`string`?e.value.default:v[0]||``,b=(t,n)=>e.set({...e.value,environments:{..._,[t]:n}});return(0,R.jsxs)(R.Fragment,{children:[c&&(0,R.jsx)(`div`,{className:`mb-5`,children:t.layout===`dir`?(0,R.jsx)(D,{def:{key:`dir`,label:`Environments folder`,help:`One YAML file per environment, named after it. Relative to forgeqe.yaml; read from there after you save.`,type:`path`,placeholder:`./environments`},edit:c,base:[`environments`]}):(0,R.jsx)(D,{def:{key:`file`,label:`Environments file`,help:`All environments in one YAML file. Relative to forgeqe.yaml; read from there after you save. --env NAME or FORGEQE_ENV picks one for a run.`,type:`path`,default:`./env.yaml`},edit:c,base:[`environments`]})}),t.layout===`file`?(0,R.jsxs)(`div`,{className:`mb-5 flex flex-wrap items-center gap-x-4 gap-y-3 rounded-[14px] bg-surface-muted px-5 py-4`,children:[(0,R.jsxs)(`p`,{className:`m-0 flex-[1_1_300px] text-sm leading-relaxed text-ink-2`,children:[`All environments are in one file, `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:Ei(r,t.file)}),`. One file per environment is easier to change and review: each goes into`,` `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:`environments/`}),`, and the old file is left as it is.`,s&&(0,R.jsx)(`span`,{className:`mt-1 block text-muted`,children:s})]}),(0,R.jsx)(P,{onClick:o,disabled:!!s,children:`Split into one file each`})]}):(0,R.jsxs)(`p`,{className:`mt-0 mb-4 text-sm leading-relaxed text-muted`,children:[`Each environment is its own file in `,(0,R.jsxs)(`span`,{className:`font-mono text-[13px]`,children:[h,`/`]}),`. The active one is set in forgeqe.yaml.`]}),(0,R.jsxs)(`div`,{role:`radiogroup`,"aria-label":`Active environment`,children:[v.length===0&&(0,R.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No environments yet. Add one with the apps your tests use.`}),v.map((r,o)=>{let s=m(_[r]),c=m(s.apps),h={value:s,set:e=>b(r,e),vars:e.vars},v=Object.entries(c).filter(([,e])=>(m(e).kind||`web`)===`web`),x=Object.entries(c).filter(([,e])=>m(e).kind===`api`);return(0,R.jsxs)(Ye,{lead:(0,R.jsx)(bi,{checked:y===r,onSelect:()=>e.set({...e.value,default:r}),label:`Use ${r}`}),title:r,meta:(0,R.jsxs)(R.Fragment,{children:[[s.description,`${Object.keys(c).length} app${Object.keys(c).length===1?``:`s`}`].filter(Boolean).map(String).join(`, `),t.layout===`dir`&&(0,R.jsxs)(`span`,{className:`block font-mono text-[12px]`,children:[g(r),n.some(e=>e.name===r)?``:` (new)`]})]}),state:y===r?(0,R.jsx)(`span`,{className:`text-sm text-pass`,children:`Active`}):void 0,open:l===r,onToggle:()=>u(l===r?``:r),actions:(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${r}`,onClick:()=>{let t={..._};delete t[r];let n={...e.value,environments:t};y===r&&delete n.default,e.set(n)},children:`Remove`}),children:[(0,R.jsx)(k,{label:`Name`,help:t.layout===`dir`?`Also its file's name. Pick it with --env NAME or FORGEQE_ENV.`:`Pick it with --env NAME or FORGEQE_ENV.`,htmlFor:`env-${o}`,children:(0,R.jsx)(S,{id:`env-${o}`,defaultValue:r,spellCheck:!1,onBlur:t=>{let n=t.target.value.trim();n&&n!==r&&/^[A-Za-z0-9_-][A-Za-z0-9_.-]*$/.test(n)&&!(n in _)?(e.set({...e.value,...y===r?{default:n}:{},environments:A(_,r,n)}),u(n)):t.target.value=r},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,R.jsx)(a,{defs:[{key:`description`,label:`Description`,type:`text`}],edit:h,base:[]}),v.length>1&&(0,R.jsx)(D,{def:{key:`start_app`,label:`Start app`,help:`Where browser runs start when no app or address is given.`,type:`select`,options:v.map(([e])=>({value:e,label:e}))},edit:h,base:[]}),x.length>1&&(0,R.jsx)(D,{def:{key:`api_app`,label:`API app`,help:`The API that API tests call.`,type:`select`,options:x.map(([e])=>({value:e,label:e}))},edit:h,base:[]}),(0,R.jsx)(Je,{children:`Apps`}),Object.entries(c).map(([t,n],i)=>{let o=m(n),l=`${r}/${i}`;return(0,R.jsxs)(Ye,{lead:(0,R.jsx)(Pe,{icon:Si[String(o.kind||`web`)]||qt,logo:o.kind===`mobile`?br[String(o.platform)]:o.kind===`desktop`?br.windows:void 0}),title:t,meta:[xi.find(([e])=>e===(o.kind||`web`))?.[1],o.url||o.path||o.app_id].filter(Boolean).map(String).join(`, `),open:d===l,onToggle:()=>p(d===l?``:l),actions:(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${t}`,onClick:()=>{let e={...c};delete e[t],b(r,{...s,apps:e})},children:`Remove`}),children:[(0,R.jsx)(k,{label:`Name`,htmlFor:`app-${l}`,children:(0,R.jsx)(S,{id:`app-${l}`,defaultValue:t,spellCheck:!1,onBlur:e=>{let n=e.target.value.trim();n&&n!==t&&/^[A-Za-z0-9_.-]+$/.test(n)&&!(n in c)?b(r,{...s,apps:A(c,t,n)}):e.target.value=t},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,R.jsx)(a,{defs:Ci(o),edit:{value:o,set:e=>b(r,{...s,apps:{...c,[t]:e}}),vars:e.vars},base:[]})]},i)}),(0,R.jsx)(`div`,{className:`py-3`,children:(0,R.jsx)(P,{size:`sm`,onClick:()=>{let e=i(c,`app`);b(r,{...s,apps:{...c,[e]:{kind:`web`}}}),p(`${r}/${Object.keys(c).length}`)},children:`Add an app`})}),(0,R.jsx)(wi,{value:m(s.variables),onChange:e=>b(r,f(s,[`variables`],Object.keys(e).length?e:void 0))}),(0,R.jsx)(Ti,{value:s.secrets,onChange:e=>b(r,f(s,[`secrets`],e.length?e:void 0))})]},o)})]}),(0,R.jsx)(`div`,{className:`pt-4`,children:(0,R.jsx)(P,{onClick:()=>{let t=i(_,v.length?`new-environment`:`qa`);e.set({...e.value,...v.length?{}:{default:t},environments:{..._,[t]:{description:``,apps:{}}}}),u(t)},children:`Add an environment`})})]})}var Oi=[[`openai`,`OpenAI`],[`azure`,`Azure OpenAI`],[`github_copilot`,`GitHub Copilot seat`],[`ollama`,`Ollama on this machine`],[`openai_compatible`,`OpenAI-compatible endpoint`]],ki=e=>Oi.find(([t])=>t===e)?.[1]||String(e||`No provider`),Ai={openai:{provider:`openai`,model:`gpt-4o`,api_key_env:`OPENAI_API_KEY`,temperature:.2},azure:{provider:`azure`,model:`gpt-4o`,deployment:`gpt-4o`,api_key_env:`WP_AZURE_API_KEY`,api_version:`2024-05-01-preview`,temperature:.2,deployment_type:`global`},github_copilot:{provider:`github_copilot`,model:`gpt-4.1`},ollama:{provider:`ollama`,model:`llama3.2`,endpoint:`http://127.0.0.1:11434/v1`,context:32768,temperature:.2},openai_compatible:{provider:`openai_compatible`,model:`gpt-4o`,api_key_env:`WP_API_KEY`,temperature:.2}};function ji(e){let t=String(e.provider||``),n=e.auth===`entra`,r=[{key:`model`,label:`Model`,type:`text`,placeholder:t===`ollama`?`llama3.2`:`gpt-4o`}];return t===`azure`&&(r.push({key:`endpoint`,label:`Endpoint`,type:`url`,placeholder:`https://YOUR_RESOURCE.openai.azure.com/`},{key:`deployment`,label:`Deployment`,type:`text`,placeholder:`gpt-4o`},{key:`auth`,label:`Sign-in`,help:`Entra ID uses a managed identity, workload identity or az login; no key.`,type:`select`,emptyLabel:`API key`,options:[{value:`entra`,label:`Microsoft Entra ID`}]}),n&&r.push({key:`managed_identity_client_id`,label:`Managed identity client id`,type:`text`})),(t===`ollama`||t===`openai_compatible`)&&r.push({key:`endpoint`,label:`Endpoint`,type:`url`,placeholder:t===`ollama`?`http://127.0.0.1:11434/v1`:`https://your-gateway.example/v1`}),t!==`github_copilot`&&!n&&r.push({key:`api_key_env`,label:`API key`,help:`Kept in your credential store, never in llms.json.`,type:`var`}),r.push({key:`description`,label:`Description`,help:`Shown in the model picker.`,type:`text`}),r}function Mi(e){let t=String(e.provider||``),n=[];return t===`azure`&&n.push({key:`api_version`,label:`API version`,type:`text`,placeholder:`2024-05-01-preview`},{key:`deployment_type`,label:`Deployment type`,help:`For prices.`,type:`select`,options:[`global`,`data_zone`].map(e=>({value:e,label:e}))}),t===`ollama`&&n.push({key:`context`,label:`Context window`,help:`Tokens.`,type:`number`,default:32768}),t!==`github_copilot`&&n.push({key:`temperature`,label:`Temperature`,type:`number`,placeholder:`0.2`}),n}var Ni=/^[A-Za-z0-9_.-]+$/;function z({panel:e,setPanel:t,taken:n,onApply:r,vars:i}){let[o,s]=(0,L.useState)(!1),c=e?.profile||{},l=e?.name?Ni.test(e.name)?e.name!==e.from&&n(e.name)?`Another model has this name.`:``:`Use letters, digits and _ . -`:``,u=String(c.provider||``),d=[...e&&!e.name?[[``,`a name`]]:[],[`model`,`a model`],...u===`azure`?[[`endpoint`,`an endpoint`],[`deployment`,`a deployment`]]:[],...u===`openai_compatible`?[[`endpoint`,`an endpoint`]]:[]].filter(([e])=>!e||!String(c[e]??``).trim()),f=!!e&&!l&&!d.length,p={value:c,set:n=>e&&t({...e,profile:n}),vars:i},m=()=>{t(null),s(!1)},h=Mi(c);return(0,R.jsx)(g,{open:!!e,onClose:m,title:e?.mode===`add`?`Add a model`:`Edit ${e?.from}`,description:`Saved to llms.json, and its key to ${xe(b().store)}, as soon as you add it.`,footer:(0,R.jsxs)(R.Fragment,{children:[d.length>0&&(0,R.jsxs)(`span`,{className:`mr-auto self-center text-sm text-muted`,children:[`Needs `,d.map(([,e])=>e).join(` and `)]}),(0,R.jsx)(P,{onClick:m,children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:!f,onClick:()=>{r(e),m()},children:e?.mode===`add`?`Add model`:`Done`})]}),children:e&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 pt-5`,children:[(0,R.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Provider`}),(0,R.jsx)(`div`,{className:`flex flex-col gap-1`,children:Oi.map(([n,r])=>(0,R.jsxs)(`label`,{className:`flex min-h-12 cursor-pointer items-center gap-3 rounded-[10px] px-3 hover:bg-surface-muted has-[:checked]:bg-surface-strong`,children:[(0,R.jsx)(`input`,{type:`radio`,name:`provider`,checked:c.provider===n,onChange:()=>t({...e,profile:e.mode===`add`?{...Ai[n],...c.description?{description:c.description}:{}}:{...c,provider:n}}),className:`size-4 accent-accent`}),(0,R.jsx)(Pe,{icon:gn,logo:yr[n]}),r]},n))})]}),(0,R.jsx)(k,{label:`Name`,help:l?(0,R.jsx)(`span`,{className:`text-fail`,children:l}):`How you pick it in chats and with --profile.`,htmlFor:`model-name`,className:`mt-4`,stacked:!0,children:(0,R.jsx)(S,{id:`model-name`,value:e.name,spellCheck:!1,placeholder:`openai-gpt4o`,"aria-invalid":!!l,onChange:n=>t({...e,name:n.target.value.trim()})})}),(0,R.jsx)(a,{defs:ji(c),edit:p,base:[],stacked:!0}),h.length>0&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`button`,{type:`button`,"aria-expanded":o,onClick:()=>s(!o),className:`mt-2 min-h-10 cursor-pointer border-0 bg-transparent p-0 text-sm font-medium text-accent hover:text-accent-hover`,children:o?`Fewer settings`:`More settings`}),o&&(0,R.jsx)(a,{defs:h,edit:p,base:[],stacked:!0})]})]})})}function B({config:e,models:t,vars:n}){let[r,i]=(0,L.useState)(null),a=m(t.value.models),o=Object.keys(a),s=typeof t.value.default==`string`?t.value.default:``,c=String(M(e.value,[`llm`,`active`])??``);return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{first:!0,help:`The models are in their own file, so keys and profiles can be shared or kept apart from forgeqe.yaml.`,children:`Models file`}),(0,R.jsx)(D,{def:{key:`models_file`,label:`Models file`,help:`Where the model profiles are. Relative to forgeqe.yaml.`,type:`path`,default:`./llms.json`},edit:e,base:[`llm`]}),(0,R.jsx)(k,{label:`Profile in use`,help:`Empty: the default below. Tab switches it in the shell; --profile overrides it for one command.`,htmlFor:`llm-active`,yamlKey:e.file?`llm.active`:void 0,children:(0,R.jsxs)(w,{id:`llm-active`,value:c,onChange:t=>e.set(f(e.value,[`llm`,`active`],t.target.value||void 0)),className:`max-w-[260px] flex-[0_1_220px]`,children:[(0,R.jsxs)(`option`,{value:``,children:[`The default (`,s||`none`,`)`]}),o.map(e=>(0,R.jsx)(`option`,{value:e,children:e},e)),c&&!o.includes(c)&&(0,R.jsxs)(`option`,{value:c,children:[c,` (not in the file)`]})]})}),(0,R.jsx)(Je,{children:`Default model`}),(0,R.jsxs)(`div`,{role:`radiogroup`,"aria-label":`Default model`,children:[o.length===0&&(0,R.jsx)(`p`,{className:`m-0 border-t border-line-soft py-5 text-sm text-muted`,children:`No models yet. Add one to start.`}),o.map(e=>{let r=m(a[e]),o=typeof r.api_key_env==`string`&&r.auth!==`entra`?r.api_key_env:``;return(0,R.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,R.jsx)(bi,{checked:s===e,onSelect:()=>t.set({...t.value,default:e}),label:`Make ${e} the default`}),(0,R.jsx)(Pe,{icon:gn,logo:yr[String(r.provider)]}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_220px] flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:e}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:[ki(r.provider),r.model].filter(Boolean).map(String).join(`, `)})]}),(0,R.jsxs)(`span`,{className:`flex items-center gap-3`,children:[o&&(0,R.jsx)(l,{name:o,vars:n}),s===e&&(0,R.jsx)(`span`,{className:`text-[13px] text-muted`,children:`Default`})]}),(0,R.jsxs)(`span`,{className:`flex gap-2`,children:[(0,R.jsx)(P,{size:`sm`,"aria-label":`Edit ${e}`,onClick:()=>i({mode:`edit`,from:e,name:e,profile:r}),children:`Edit`}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${e}`,onClick:()=>{let n={...a};delete n[e];let r=s===e?Object.keys(n)[0]||``:s,i={...t.value,models:n};r?i.default=r:delete i.default,t.set(i)},children:`Remove`})]})]},e)})]}),(0,R.jsx)(`div`,{className:`pt-4`,children:(0,R.jsx)(P,{onClick:()=>i({mode:`add`,from:``,name:``,profile:{...Ai.openai}}),children:`Add a model`})}),(0,R.jsx)(z,{panel:r,setPanel:i,taken:e=>e in a,onApply:e=>{let n={...e.mode===`edit`&&e.name!==e.from?A(a,e.from,e.name):a,[e.name]:e.profile},r=!s||e.mode===`edit`&&s===e.from?e.name:s;t.set({...t.value,default:r,models:n})},vars:n})]})}var Pi=[[`agent`,`Orchestrator`,`The shell, forgeqe run and forgeqe mcp`],[`browser`,`Browser, desktop and mobile driving`,`Works from screenshots: only models that take images`],[`coding`,`Writing and healing tests`,`Asks for the best model: a weaker one costs more in failed attempts`],[`review`,`Reviews and judging results`,``],[`analysis`,`Root cause of defects`,`Asks for the best model`],[`planning`,`Refining requests and planning tests`,``]];function Fi({config:e,models:t}){let n=Object.keys(m(t.value.models)),r=String(M(e.value,[`llm`,`routing`])??`off`),i=M(e.value,[`llm`,`fallback`])!==!1,a=m(M(e.value,[`llm`,`routes`])),o=t=>e.file?`llm.${t}`:void 0,s=e=>{let t=a[e];return t===void 0||t===`auto`?[]:(Array.isArray(t)?t:[t]).map(String)},c=(t,n)=>{let r=s(t),i=r.includes(n)?r.filter(e=>e!==n):[...r,n];e.set(f(e.value,[`llm`,`routes`,t],i.length?i:void 0))};return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(k,{label:`Routing`,help:`Off: the profile in use does everything. Auto: each area of work gets the cheapest model good enough for it (rated once with a few calls). Shadow: decides and logs which it would use, and changes nothing.`,htmlFor:`llm-routing`,className:`border-t-0 pt-0`,yamlKey:o(`routing`),children:(0,R.jsxs)(w,{id:`llm-routing`,value:r,onChange:t=>e.set(f(e.value,[`llm`,`routing`],t.target.value===`off`?void 0:t.target.value)),className:`max-w-[260px] flex-[0_1_220px]`,children:[(0,R.jsx)(`option`,{value:`off`,children:`Off`}),(0,R.jsx)(`option`,{value:`auto`,children:`Auto`}),(0,R.jsx)(`option`,{value:`shadow`,children:`Shadow (log only)`})]})}),(0,R.jsx)(k,{label:`Fall back to a working model`,help:`When a model has no key or its sign-in is refused, use one that works, Copilot first, and say why. Off: keep the model and show its error.`,yamlKey:o(`fallback`),children:(0,R.jsx)(y,{checked:i,onChange:t=>e.set(f(e.value,[`llm`,`fallback`],t?void 0:!1)),label:`Fall back to a working model`})}),(0,R.jsx)(Je,{help:r===`off`?`Used when routing is auto or shadow. None picked: any model in the file that is good enough.`:`None picked: any model in the file that is good enough. One picked pins the area to it.`,children:`Models per area of work`}),n.length===0&&(0,R.jsx)(`p`,{className:`m-0 border-t border-line-soft py-4 text-sm text-muted`,children:`Add models under Models first.`}),n.length>0&&Pi.map(([e,t,r])=>{let i=s(e),a=i.filter(e=>!n.includes(e));return(0,R.jsx)(k,{label:t,help:a.length?(0,R.jsxs)(`span`,{className:`text-fail`,children:[`Not in the models file: `,a.join(`, `)]}):r||void 0,yamlKey:o(`routes.${e}`),children:(0,R.jsxs)(`div`,{role:`group`,"aria-label":`Models for ${t}`,className:`flex max-w-[420px] flex-[1_1_280px] flex-wrap gap-1.5`,children:[n.map(t=>(0,R.jsx)(`button`,{type:`button`,"aria-pressed":i.includes(t),onClick:()=>c(e,t),className:T(`min-h-8 cursor-pointer rounded-full border px-3 text-[13px]`,i.includes(t)?`border-accent bg-accent-soft text-accent`:`border-line bg-bg text-ink-2 hover:bg-surface-muted`),children:t},t)),!i.length&&(0,R.jsx)(`span`,{className:`self-center text-[13px] text-muted`,children:`Any (auto)`})]})},e)})]})}var V=(...e)=>e.map(([e,t])=>({value:e,label:t})),Ii=[{title:`Where runs happen`,base:[`browser`],fields:[{key:`provider`,label:`Browser`,help:`Where the browser agent runs. Remote grids need their sign-in under Integrations.`,type:`select`,default:`local`,options:V([`local`,`Chrome on this machine`],[`docker`,`Chrome in Docker`],[`browserstack`,`BrowserStack`],[`testmu`,`TestMu AI (LambdaTest)`])},{key:`start_url`,label:`Start page`,help:`Leave empty to let the agent choose, or to start at the active environment's app.`,type:`url`,placeholder:`https://staging.example.com`},{key:`allowed_hosts`,label:`Allowed sites`,help:`Hosts the agent may open, comma separated. Empty: the environment's apps.`,type:`list`,placeholder:`staging.example.com, auth.example.com`}]},{title:`The browser window`,base:[`browser`],fields:[{key:`headless`,label:`Run without a window`,help:`Off shows the browser while the agent works.`,type:`switch`,default:!0},{key:`window`,label:`Visible window`,type:`select`,default:`maximized`,options:V([`maximized`,`Maximized`],[`viewport`,`The size below`])},{key:`viewport.width`,label:`Page width`,type:`number`,default:1280},{key:`viewport.height`,label:`Page height`,type:`number`,default:800},{key:`overlay`,label:`Show what the agent does`,help:`In a visible browser: a bar with the current step, and your mouse and keyboard locked while it works.`,type:`switch`,default:!0}]},{title:`Limits and checks`,base:[`browser`],fields:[{key:`max_steps`,label:`Steps before a checkpoint`,help:`A run still making progress carries on, up to three times this.`,type:`number`,default:40},{key:`timeout_seconds`,label:`Time limit per run`,help:`In seconds.`,type:`number`,default:600},{key:`vision_detail`,label:`Screenshot detail`,help:`High reads small text better and costs more.`,type:`select`,default:`low`,options:V([`low`,`Low`],[`high`,`High`])},{key:`video`,label:`Record a video`,type:`switch`,default:!0},{key:`judge`,label:`Second check of each result`,help:`Another model call checks each finished run against its goal, and can fail it.`,type:`switch`,default:!1},{key:`rulebook`,label:`Learn rules per site`,help:`One-line rules the agent keeps after it recovers from a failed action.`,type:`switch`,default:!0}]},{title:`Remote browser, set here`,help:`For BrowserStack or TestMu AI set inline in forgeqe.yaml. These win over the grid's own file under Integrations when both are set.`,base:[`browser`,`remote`],fields:[{key:`browser`,label:`Browser`,type:`text`,placeholder:`chrome`},{key:`browser_version`,label:`Browser version`,type:`text`,placeholder:`latest`},{key:`os`,label:`Operating system`,help:`BrowserStack: Windows or OS X.`,type:`text`,placeholder:`Windows`},{key:`os_version`,label:`Its version`,type:`text`,placeholder:`11, or Sequoia`},{key:`platform`,label:`Platform`,help:`TestMu AI; or set the two above and ForgeQE joins them.`,type:`text`,placeholder:`Windows 11`},{key:`username_env`,label:`User name`,type:`var`,placeholder:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Access key`,type:`var`,placeholder:`BROWSERSTACK_ACCESS_KEY`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`name`,label:`Session name`,type:`text`,placeholder:`checkout smoke`},{key:`local`,label:`Through a tunnel`,help:`BrowserStack Local or the LambdaTest tunnel, for sites only your network reaches.`,type:`switch`,default:!1},{key:`extra`,label:`More capabilities`,help:`The provider's own, one per line.`,type:`kv`,placeholder:`browserstack.console = errors`}]}],Li=[{title:`Where tests go`,base:[`code`],fields:[{key:`repo`,label:`Repository`,help:`Where passed runs become tests. Empty: this folder.`,type:`path`,placeholder:`../my-app`},{key:`test_command`,label:`Test command`,help:`Empty: the agent finds it.`,type:`path`,placeholder:`npx playwright test`},{key:`model`,label:`Model`,help:`Empty: the default model.`,type:`text`,placeholder:`anthropic/claude-sonnet-4-5`},{key:`review_profile`,label:`Reviewer's model`,help:`A profile from Models. The reviewer only reads and judges, so a cheaper one is enough.`,type:`text`},{key:`runtime`,label:`Agent runtime`,help:`Empty: the runtime ForgeQE downloads.`,type:`path`,placeholder:`/path/to/agent-runtime`}]},{title:`How hard it tries`,base:[`code`],fields:[{key:`max_attempts`,label:`Attempts`,help:`Test runs before it gives up, and healing attempts.`,type:`number`,default:3},{key:`test_timeout_seconds`,label:`Time limit per test run`,help:`In seconds.`,type:`number`,default:600},{key:`confirm_runs`,label:`Passes in a row before a test counts`,help:`A new test is run again until it has passed this many times in a row, to catch a flaky test. 1 runs it once.`,type:`number`,default:3},{key:`stall_after`,label:`Stop after repeated failures`,help:`When one command has failed this many times.`,type:`number`,default:5},{key:`max_tokens`,label:`Token limit per job`,help:`Cached input counts at its share of the input price. 0 turns the limit off.`,type:`number`,default:15e5}]},{title:`Help it gets`,base:[`code`],fields:[{key:`replay`,label:`Replay the steps first`,help:`Runs the steps as a Playwright script and hands over what worked.`,type:`switch`,default:!0},{key:`live_browser`,label:`Look at the failing page`,help:`Once a step fails, the agent looks at that page in a browser.`,type:`switch`,default:!0},{key:`graph`,label:`Read the repository's code`,help:`Links the run's elements to the page objects that already locate them.`,type:`switch`,default:!0},{key:`header`,label:`Mark generated files`,help:`Files ForgeQE creates start with a “Generated with ForgeQE” line.`,type:`switch`,default:!0},{key:`rulebook`,label:`Learn from its own mistakes`,type:`switch`,default:!0}]}],Ri=[{title:`Reports`,base:[],fields:[{key:`export.out_dir`,label:`Report folder`,help:`One folder per run.`,type:`path`,default:`./.forgeqe/reports`},{key:`export.format`,label:`Test format`,type:`select`,default:`playwright`,options:V([`playwright`,`Playwright`])},{key:`report.screenshots`,label:`Screenshots in reports`,type:`select`,default:`all`,options:V([`all`,`Every step`],[`failures`,`Failures only`],[`off`,`None`])},{key:`report.accessibility`,label:`Check accessibility of each page`,type:`switch`,default:!0},{key:`suite.out_dir`,label:`Suite report folder`,type:`path`,default:`./.forgeqe/reports/suites`}]},{title:`Memory and replays`,base:[],fields:[{key:`memory.enabled`,label:`Remember pages and flows`,type:`switch`,default:!0},{key:`memory.dir`,label:`Memory folder`,type:`path`,default:`./.forgeqe/memory`},{key:`memory.replay`,label:`Replays`,help:`Verify checks each recorded step; trust replays without a model.`,type:`select`,default:`verify`,options:V([`verify`,`Verify`],[`trust`,`Trust`],[`off`,`Off`])},{key:`registry.mode`,label:`Rerun passed runs without the agent`,help:`On: a rerun of a passed run replays as recorded, with no model when its checks hold. Shadow only records what it would have done.`,type:`select`,default:`on`,options:V([`on`,`On`],[`shadow`,`Shadow`],[`off`,`Off`])}]},{title:`Suites`,base:[],fields:[{key:`suite.code`,label:`Write tests for passed cases`,help:`With a repository set under Code.`,type:`switch`,default:!0},{key:`suite.restore_sessions`,label:`Start each case signed in`,help:`Cases start from the saved logins' sessions. Off runs each case as its test starts, signed out.`,type:`switch`,default:!1},{key:`suite.case_check`,label:`Before a run, check the cases`,help:`Warn shows what the check found and runs every case; block leaves out the ones that cannot run as written.`,type:`select`,default:`warn`,options:V([`warn`,`Warn`],[`block`,`Block`],[`off`,`Off`])}]},{title:`Flaky tests`,help:`A test that fails and then passes is flaky; quarantine keeps it running, but its failures stop failing the run and CI.`,base:[`flaky`],fields:[{key:`retries`,label:`Runs again in the same run`,help:`0 to 3.`,type:`number`,default:1},{key:`quarantine`,label:`Quarantine`,type:`select`,default:`suggest`,options:V([`suggest`,`The agent asks first`],[`auto`,`ForgeQE does it`],[`off`,`Off: history only`])},{key:`flaky_after`,label:`Flaky from this score`,type:`number`,default:2}]},{title:`Release readiness`,help:`When a release reads GO, GO WITH RISKS or NO-GO.`,base:[`release`],fields:[{key:`max_critical`,label:`Open critical bugs allowed`,type:`number`,default:0},{key:`max_high`,label:`Open high bugs allowed`,type:`number`,default:0},{key:`min_pass_rate`,label:`Pass rate needed`,help:`Percent of executed test cases.`,type:`number`,default:95},{key:`require_tests`,label:`A story needs a test case`,help:`Without one it is a risk.`,type:`switch`,default:!0}]},{title:`Regression packs in a pipeline`,help:`Where Run in the pipeline sends a pack (forgeqe pack run --on pipeline).`,base:[`packs`,`pipeline`],fields:[{key:`default`,label:`Pipeline`,type:`select`,options:V([`github`,`GitHub Actions`],[`azure_devops`,`Azure Pipelines`])},{key:`github.repo`,label:`GitHub repository`,type:`text`,placeholder:`acme/shop-tests`},{key:`github.workflow`,label:`Workflow file`,type:`text`,default:`forgeqe-pack.yml`},{key:`github.ref`,label:`Branch`,type:`text`,default:`main`},{key:`azure_devops.project`,label:`Azure DevOps project`,type:`text`,placeholder:`Shop`},{key:`azure_devops.pipeline_id`,label:`Pipeline id`,type:`number`,placeholder:`42`},{key:`azure_devops.ref`,label:`Branch`,type:`text`,default:`refs/heads/main`},{key:`timeout_minutes`,label:`Wait for it`,help:`In minutes.`,type:`number`,default:60}]},{title:`Defect analysis`,help:`For a failed case that is a defect: a repro, suspect commits in the product's repository, and a root-cause hypothesis.`,base:[`defects`],fields:[{key:`product_repo`,label:`Product repository`,help:`The application's code: suspect commits, and what the analysis reads.`,type:`path`,placeholder:`../shop`},{key:`reproduce`,label:`Run a new defect's case once more`,help:`To see whether it repeats.`,type:`switch`,default:!0},{key:`analyze`,label:`Write a root-cause hypothesis`,help:`One model session per new defect or regression.`,type:`switch`,default:!0},{key:`max_analyses`,label:`Analyses per suite`,type:`number`,default:3}]}],zi=[{title:`Accessibility`,base:[`quality`],fields:[{key:`accessibility.standard`,label:`Standard`,type:`select`,default:`wcag21aa`,options:V([`wcag2a`,`WCAG 2.0 A`],[`wcag21aa`,`WCAG 2.1 AA`],[`wcag22aa`,`WCAG 2.2 AA`],[`wcag21aaa`,`WCAG 2.1 AAA`],[`section508`,`Section 508`],[`en301549`,`EN 301 549`],[`best-practice`,`Best practice`])},{key:`budgets.accessibility.critical`,label:`Critical issues allowed`,help:`Empty: reported, never failed on.`,type:`number`},{key:`budgets.accessibility.serious`,label:`Serious issues allowed`,type:`number`},{key:`budgets.accessibility.ignore`,label:`Rules to ignore`,type:`list`,placeholder:`region`}]},{title:`Performance and visual changes`,base:[`quality`],fields:[{key:`budgets.performance`,label:`Performance budget`,help:`web-vitals uses Google's thresholds. Per-page budgets are edited under Files.`,type:`select`,options:V([`web-vitals`,`Core Web Vitals`])},{key:`budgets.visual`,label:`Visual change allowed`,help:`Percent of a page's pixels.`,type:`number`},{key:`visual.full_page`,label:`Compare whole pages`,type:`switch`,default:!1},{key:`visual.mask`,label:`Hide before comparing`,help:`CSS selectors, comma separated.`,type:`list`,placeholder:`.clock, #ad-slot`}]},{title:`API tests`,base:[`api`],fields:[{key:`capture`,label:`Record the app's API calls`,help:`In every browser run, with secrets redacted.`,type:`switch`,default:!0},{key:`base_url`,label:`API address`,type:`url`,placeholder:`https://staging.shop.example`},{key:`third_party`,label:`Keep calls to other sites`,type:`switch`,default:!1},{key:`timeout_seconds`,label:`Time limit per call`,help:`In seconds.`,type:`number`,default:30},{key:`headers`,label:`Headers on every call`,help:"Values are ${NAME} references to environment variables, never the values.",type:`kv`,placeholder:"Authorization = Bearer ${API_TOKEN}"}]}],Bi=[{title:`The product`,help:`Agents design and judge tests as an expert in this industry, and add the obligations of each regulation a feature touches.`,base:[`domain`],fields:[{key:`industry`,label:`Industry`,type:`text`,placeholder:`retail banking`},{key:`regulations`,label:`Regulations`,type:`list`,placeholder:`DORA, PSD2, GDPR`},{key:`notes`,label:`Notes`,type:`textarea`,placeholder:`Payments to UK and EU accounts; customers are consumers and small businesses.`}]},{title:`Instructions and knowledge`,base:[],fields:[{key:`prompts.step_instruction`,label:`Extra instruction for the browser agent`,type:`textarea`},{key:`prompts.dir`,label:`Shared prompts folder`,help:`Wins over .forgeqe/prompts.`,type:`path`,placeholder:`../shared-prompts`},{key:`knowledge.dir`,label:`Product knowledge folder`,type:`path`,default:`.forgeqe/knowledge`},{key:`knowledge.browser_max_chars`,label:`Knowledge per browser run`,help:`Characters. 0: none.`,type:`number`,default:1500},{key:`rag.url`,label:`Requirements search service`,help:`Checking a test case adds the passages it finds. POST {query, top_k}.`,type:`url`,placeholder:`http://localhost:8080/search`},{key:`rag.command`,label:`Or a local search command`,help:`Gets the query on stdin, prints passages. Comma separated.`,type:`list`,placeholder:`python, rag/search.py`},{key:`rag.token_env`,label:`Search service token`,type:`var`,placeholder:`RAG_TOKEN`},{key:`rag.top_k`,label:`Passages per search`,type:`number`,default:5},{key:`rag.timeout_seconds`,label:`Search time limit`,help:`In seconds.`,type:`number`,default:20},{key:`guardrails.dir`,label:`Guardrails folder`,type:`path`,default:`.forgeqe/guardrails`},{key:`prompts.guiderails`,label:`Guardrails kept in forgeqe.yaml`,help:`The older way: one rule per line. Prefer Guardrails.`,type:`textarea`}]},{title:`Capabilities`,help:`The agent gets the tools a request is about. Pin some on, or turn some off for this project (forgeqe features lists them).`,base:[`agent`,`capabilities`],fields:[{key:`always`,label:`Always given`,type:`list`,placeholder:`regression-packs`},{key:`off`,label:`Never given`,type:`list`,placeholder:`desktop-apps`}]}],Vi=[{id:`jira`,icon:Hn,name:`Jira`,note:`Test cases, results and bugs`,base:[`sources`,`jira`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.atlassian.net`},{key:`email_env`,label:`Email variable`,help:`Cloud only.`,type:`var`,default:`JIRA_EMAIL`},{key:`token_env`,label:`Token variable`,type:`var`,default:`JIRA_API_TOKEN`},{key:`mcp`,label:`MCP server`,type:`select`,default:`mcp-atlassian`,options:V([`mcp-atlassian`,`mcp-atlassian (Cloud and Server)`],[`rovo`,`Rovo (Atlassian's, Cloud)`],[`false`,`None`])}]},{id:`azure_devops`,icon:Xn,name:`Azure DevOps`,note:`Test plans, work items and wiki`,base:[`sources`,`azure_devops`],vars:[`token_env`],fields:[{key:`org_url`,label:`Organization`,type:`url`,placeholder:`https://dev.azure.com/acme`},{key:`project`,label:`Project`,help:`Empty: every project.`,type:`text`,placeholder:`Shop`},{key:`token_env`,label:`Token variable`,help:`A PAT with Test Management and Work Items, read and write.`,type:`var`,default:`ADO_PAT`},{key:`mcp`,label:`Use Microsoft's MCP server`,type:`switch`,default:!0},{key:`mcp_domains`,label:`MCP tool groups`,type:`list`,placeholder:`core, work, work-items, pipelines`}]},{id:`xray`,icon:Vt,name:`Xray`,note:`Test cases in Jira, through Xray Cloud`,base:[`sources`,`xray`],vars:[`client_id_env`,`client_secret_env`],fields:[{key:`url`,label:`Address`,type:`url`,default:`https://xray.cloud.getxray.app`},{key:`client_id_env`,label:`Client id variable`,type:`var`,default:`XRAY_CLIENT_ID`},{key:`client_secret_env`,label:`Client secret variable`,type:`var`,default:`XRAY_CLIENT_SECRET`}]},{id:`confluence`,icon:$e,name:`Confluence`,note:`Requirements pages`,base:[`sources`,`confluence`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,help:`Empty: the Jira site, same account.`,type:`url`,placeholder:`https://acme.atlassian.net/wiki`},{key:`email_env`,label:`Email variable`,type:`var`,default:`CONFLUENCE_EMAIL`},{key:`token_env`,label:`Token variable`,type:`var`,default:`CONFLUENCE_TOKEN`},{key:`space`,label:`Space`,help:`Search this space only.`,type:`text`,placeholder:`QA`}]},{id:`testrail`,icon:rn,name:`TestRail`,note:`Test cases and results`,base:[`sources`,`testrail`],vars:[`email_env`,`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.testrail.io`},{key:`email_env`,label:`Email variable`,type:`var`,default:`TESTRAIL_EMAIL`},{key:`token_env`,label:`API key variable`,type:`var`,default:`TESTRAIL_API_KEY`},{key:`project_id`,label:`Project id`,type:`number`}]},{id:`zephyr`,icon:Se,name:`Zephyr Scale`,note:`Test cases and results`,base:[`sources`,`zephyr`],vars:[`token_env`],fields:[{key:`token_env`,label:`Token variable`,type:`var`,default:`ZEPHYR_API_TOKEN`},{key:`project_key`,label:`Project key`,type:`text`,placeholder:`SHOP`}]},{id:`qtest`,icon:Rn,name:`qTest`,note:`Test cases and results`,base:[`sources`,`qtest`],vars:[`token_env`],fields:[{key:`url`,label:`Site`,type:`url`,placeholder:`https://acme.qtestnet.com`},{key:`token_env`,label:`Token variable`,type:`var`,default:`QTEST_TOKEN`},{key:`project_id`,label:`Project id`,type:`number`},{key:`statuses`,label:`Status names`,help:`Your qTest's automation status for each result, one per line.`,type:`kv`,placeholder:`passed = PASS
|
|
19
|
-
failed = FAIL
|
|
20
|
-
error = BLOCKED`}]},{id:`github`,icon:Xe,name:`GitHub`,note:`Issues as test cases, bugs, pull requests`,base:[`sources`,`github`],vars:[`token_env`],fields:[{key:`repo`,label:`Repository`,type:`text`,placeholder:`acme/shop`},{key:`token_env`,label:`Token variable`,help:`Without it, the GitHub CLI's sign-in.`,type:`var`,default:`GITHUB_TOKEN`},{key:`toolsets`,label:`MCP tool groups`,type:`list`,placeholder:`repos, issues, pull_requests, actions`}]}],Hi={title:`Bugs`,help:`A bug for each defect a run finds; a comment on the open bug while it still fails.`,base:[`sources`,`bugs`],fields:[{key:`system`,label:`Where bugs go`,type:`select`,options:V([`jira`,`Jira`],[`azure_devops`,`Azure DevOps`],[`github`,`GitHub`])},{key:`project`,label:`Project`,help:`Jira project key, or GitHub owner/repo.`,type:`text`,placeholder:`SHOP`},{key:`type`,label:`Issue type`,type:`text`,default:`Bug`},{key:`labels`,label:`Labels`,help:`Jira labels, or Azure DevOps tags.`,type:`list`,placeholder:`forgeqe`},{key:`area_path`,label:`Area path`,help:`Azure DevOps.`,type:`text`,placeholder:`Shop\\Web`},{key:`group_by`,label:`One bug per`,type:`select`,default:`defect`,options:V([`defect`,`Defect (cases failing the same way share one)`],[`case`,`Case`])},{key:`on_error`,label:`Also for cases that could not run`,type:`switch`,default:!1}]},Ui=[[`suite_failed`,`A suite failed`],[`suite_passed`,`A suite passed`],[`release`,`Release verdict`],[`eval_failed`,`An eval failed`],[`job_failed`,`A schedule failed`],[`job_recovered`,`A schedule recovered`],[`job_done`,`A schedule finished`],[`job_investigated`,`A failure was investigated`]],Wi=[{title:`Project report`,help:`forgeqe bi builds a static site from ForgeQE's data and the datasets below, with no server (Reports, Build project report).`,base:[`bi`],fields:[{key:`title`,label:`Title`,type:`text`,default:`ForgeQE BI`},{key:`evidence_dir`,label:`Evidence project`,type:`path`,default:`./evidence`},{key:`data_dir`,label:`Data folder`,type:`path`,default:`./evidence/sources/forgeqe`},{key:`build_dir`,label:`Built site`,type:`path`,default:`./.forgeqe/reports/bi`},{key:`collect`,label:`Teammates' exports`,help:`Files or folders of forgeqe bi export, comma separated.`,type:`list`,placeholder:`//share/qa-reports`}]}],Gi=[{key:`kind`,label:`From`,type:`select`,options:V([`ado_wiql`,`Azure DevOps (WIQL)`],[`jira_jql`,`Jira (JQL)`])},{key:`title`,label:`Title`,type:`text`,placeholder:`Current sprint stories`},{key:`project`,label:`Azure DevOps project`,type:`text`,placeholder:`Shop`},{key:`wiql`,label:`WIQL`,type:`textarea`,placeholder:`SELECT [System.Id] FROM WorkItems WHERE ...`},{key:`jql`,label:`JQL`,type:`textarea`,placeholder:`project = SHOP AND issuetype = Bug`}],Ki=[{title:`Running in parallel`,help:`More at once finishes sooner, and uses more of this machine (or of your grid's sessions) and more model calls at the same time.`,base:[],fields:[{key:`suite.parallel`,label:`Browsers at once in a suite`,help:`Test cases of one suite run side by side. Coding jobs always go one at a time.`,type:`number`,default:1},{key:`jobs.parallel`,label:`Scheduled runs at once`,help:`Over all jobs of the jobs service.`,type:`number`,default:2},{key:`monitor.parallel`,label:`Monitor checks at once`,help:`In each monitor round.`,type:`number`,default:1}]}],qi=`Kept in your credential store; the file has only the variable's name.`,Ji=[{title:`Driver`,help:`Appium runs workflows step by step and explores goals; Maestro replays them and runs your team's own flows. The apps themselves are in Environments (kind: mobile).`,base:[`mobile`],fields:[{key:`driver`,label:`Replays run on`,type:`select`,default:`appium`,options:V([`appium`,`Appium`],[`maestro`,`Maestro`])},{key:`heal`,label:`Heal a replay that breaks`,help:`A step that no longer finds its element is found again from the screen.`,type:`switch`,default:!0},{key:`secrets`,label:`Secrets a flow may read`,help:`The only environment variables {{secret:…}} may read, comma separated.`,type:`list`,placeholder:`COURIER_PASSWORD`}]},{title:`Appium`,base:[`mobile`,`appium`],fields:[{key:`url`,label:`Appium server`,help:`Yours, or a device cloud's hub. No user or key in it.`,type:`url`,default:`http://127.0.0.1:4723`},{key:`capabilities`,label:`Capabilities`,help:`Added to every session, one per line.`,type:`kv`,placeholder:`appium:deviceName = Pixel 8
|
|
21
|
-
appium:udid = emulator-5554`},{key:`username_env`,label:`Device cloud user`,help:qi,type:`var`,placeholder:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Device cloud key`,help:qi,type:`var`,placeholder:`BROWSERSTACK_ACCESS_KEY`}]},{title:`Maestro`,base:[`mobile`,`maestro`],fields:[{key:`command`,label:`Maestro program`,help:`With its arguments, comma separated.`,type:`list`,placeholder:`maestro`},{key:`device`,label:`Device`,help:`From adb devices or xcrun simctl list. Empty: the one connected.`,type:`text`,placeholder:`emulator-5554`},{key:`testmu.devices`,label:`TestMu AI devices`,help:`Run flows on TestMu AI's devices instead, comma separated.`,type:`list`,placeholder:`Pixel 6-14`},{key:`testmu.region`,label:`TestMu AI region`,type:`text`,placeholder:`us`},{key:`testmu.real_device`,label:`Real devices`,help:`Off: emulators and simulators.`,type:`switch`,default:!0},{key:`testmu.cli`,label:`hyperexecute program`,type:`path`,placeholder:`hyperexecute`},{key:`testmu.username_env`,label:`TestMu AI user`,help:qi,type:`var`,default:`LT_USERNAME`},{key:`testmu.access_key_env`,label:`TestMu AI key`,help:qi,type:`var`,default:`LT_ACCESS_KEY`}]}],Yi=[{title:`Windows desktop apps`,help:`The apps themselves are in Environments (kind: desktop).`,base:[`desktop`],fields:[{key:`heal`,label:`Heal a replay that breaks`,help:`The model re-finds a control that moved.`,type:`switch`,default:!0},{key:`screenshots`,label:`Screenshot each replayed step`,type:`switch`,default:!0},{key:`secrets`,label:`Secrets a workflow may read`,help:`The only environment variables {{secret:…}} may read, comma separated.`,type:`list`,placeholder:`BILLING_PASSWORD`}]}],Xi=[{title:`Runtime`,help:`ForgeQE starts only what is declared here, with ports on 127.0.0.1 and read-only mounts inside the project. Images take an exact version or a digest, never latest.`,base:[`containers`],fields:[{key:`runtime`,label:`Runtime`,type:`select`,emptyLabel:`Docker, else Podman`,options:V([`docker`,`Docker`],[`podman`,`Podman`])},{key:`compose`,label:`Compose files`,help:`Services from a compose file too, checked by the same rules.`,type:`list`,placeholder:`docker-compose.yml`},{key:`mock.image`,label:`Mocks' image`,type:`text`,placeholder:`wiremock/wiremock:3.9.1`}]},{title:`Tests in a container`,help:`run_tests runs the repository's tests in this image, its services started first and reachable by name.`,base:[`containers`,`tests`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`mcr.microsoft.com/playwright:v1.48.2-jammy`},{key:`services`,label:`Services first`,type:`list`,placeholder:`db`},{key:`env`,label:`Environment`,type:`kv`,placeholder:`CI = true`},{key:`secrets`,label:`Secrets`,help:`Environment variable names.`,type:`list`,placeholder:`TEST_DB_PASSWORD`}]},{title:`The coding agents' workspace`,help:`Their shell commands, builds and test runs happen in this image, with the repository mounted; the agents and their keys stay on this machine.`,base:[`containers`,`workspace`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`node:20.18.0`},{key:`services`,label:`Services first`,type:`list`,placeholder:`db`},{key:`env`,label:`Environment`,type:`kv`},{key:`secrets`,label:`Secrets`,type:`list`}]},{title:`Browser in a container`,help:`Used when Browser is set to Chrome in Docker.`,base:[`containers`,`browser`],fields:[{key:`image`,label:`Image`,type:`text`,placeholder:`the image ForgeQE ships`},{key:`headless`,label:`Without a window`,type:`switch`,default:!0}]}],Zi=[{key:`image`,label:`Image`,help:`An exact version or a digest.`,type:`text`,placeholder:`postgres:16.4`},{key:`description`,label:`What it is`,type:`text`,placeholder:`Orders database`},{key:`ports`,label:`Ports`,help:`5432, or 15432:5432 (this machine:container). On 127.0.0.1 only.`,type:`list`,placeholder:`5432`},{key:`env`,label:`Environment`,type:`kv`,placeholder:`POSTGRES_DB = shop`},{key:`secrets`,label:`Secrets`,help:`Environment variable names (.env works).`,type:`list`,placeholder:`POSTGRES_PASSWORD`},{key:`volumes`,label:`Mounts`,help:`Read-only, inside the project: ./host:/container.`,type:`list`,placeholder:`./db/init:/docker-entrypoint-initdb.d`},{key:`command`,label:`Command`,help:`Its arguments, comma separated.`,type:`list`},{key:`depends_on`,label:`Starts after`,type:`list`,placeholder:`db`},{key:`ready.tcp`,label:`Ready when this port answers`,type:`number`,placeholder:`5432`},{key:`ready.http`,label:`Or when this path answers`,type:`text`,placeholder:`/health`},{key:`ready.port`,label:`On port`,type:`number`,placeholder:`8080`},{key:`timeout`,label:`Wait for it`,help:`In seconds.`,type:`number`,placeholder:`60`}],Qi=[{key:`description`,label:`What it holds`,type:`text`,placeholder:`Orders written by the checkout app`},{key:`url_env`,label:`Connection string`,help:`A whole URI, JDBC or ADO.NET string. Or give the parts below.`,type:`var`,placeholder:`ORDERS_DB_URL`},{key:`engine`,label:`Engine`,type:`select`,options:V([`postgres`,`PostgreSQL`],[`mysql`,`MySQL`],[`mariadb`,`MariaDB`],[`mssql`,`SQL Server`],[`oracle`,`Oracle`],[`snowflake`,`Snowflake`],[`redshift`,`Redshift`],[`cockroachdb`,`CockroachDB`],[`sqlite`,`SQLite`],[`duckdb`,`DuckDB`],[`mongodb`,`MongoDB`],[`kafka`,`Kafka`])},{key:`host`,label:`Host`,type:`text`,placeholder:`localhost`},{key:`port`,label:`Port`,type:`number`,placeholder:`5432`},{key:`database`,label:`Database`,type:`text`,placeholder:`test`},{key:`schema`,label:`Schema`,type:`text`},{key:`path`,label:`File`,help:`SQLite or DuckDB.`,type:`path`,placeholder:`./data/test.db`},{key:`user`,label:`User`,type:`text`,placeholder:`qa`},{key:`auth`,label:`Signs in with`,type:`select`,default:`password`,options:V([`password`,`A password`],[`azure`,`Microsoft Entra`],[`aws_iam`,`AWS IAM`],[`none`,`Nothing`])},{key:`password_env`,label:`Password`,type:`var`,placeholder:`FIXTURES_DB_PASSWORD`},{key:`region`,label:`AWS region`,type:`text`,placeholder:`eu-west-1`},{key:`ssl`,label:`TLS`,type:`select`,emptyLabel:`The driver's default`,options:V([`verify`,`Verify the certificate`],[`require`,`Require`],[`disable`,`Off`])},{key:`ssl_ca`,label:`CA certificate`,type:`path`,placeholder:`./certs/ca.pem`},{key:`writable`,label:`Writable`,help:`Allows confirmed INSERT, and UPDATE or DELETE with a WHERE clause. Each one is asked first.`,type:`switch`,default:!1},{key:`timeout_seconds`,label:`Query time limit`,help:`In seconds.`,type:`number`,placeholder:`30`},{key:`options`,label:`Driver options`,type:`kv`}];function H({groups:e,edit:t,continued:n}){return(0,R.jsx)(R.Fragment,{children:e.map((e,r)=>(0,R.jsxs)(`div`,{children:[(0,R.jsx)(Je,{help:e.help,first:r===0&&!n,children:e.title}),(0,R.jsx)(a,{defs:e.fields,edit:t,base:e.base})]},e.title))})}function $i(e,t,n,r){return t.map(t=>{let r=e[t]??n.find(e=>e.key===t)?.default;return typeof r==`string`?r:``}).filter(e=>e&&!r(e))}function ea(e,t,n,r){let i=m(M(e.value,t));return!r||r===n||!/^[A-Za-z0-9_.-]+$/.test(r)||r in i?!1:(e.set(f(e.value,t,A(i,n,r))),!0)}var ta=[{key:`url`,label:`Sign-in page`,type:`url`,placeholder:`https://staging.shop.example/login`},{key:`domains`,label:`Or sites`,help:`Comma separated; * matches a subdomain.`,type:`list`,placeholder:`https://staging.shop.example, https://*.shop.example`},{key:`username_env`,label:`User name variable`,type:`var`,placeholder:`SHOP_USER`},{key:`password_env`,label:`Password variable`,type:`var`,placeholder:`SHOP_PASSWORD`},{key:`totp_env`,label:`Authenticator secret variable`,help:`Optional: a base32 secret for two-factor codes.`,type:`var`,placeholder:`SHOP_TOTP_SECRET`},{key:`save_session`,label:`Keep the session`,help:`The next run starts signed in (.forgeqe/sessions). Off signs in every run.`,type:`switch`,default:!0}];function na({edit:e}){let[t,r]=(0,L.useState)(``),o=b(),s=m(e.value.logins);return(0,R.jsxs)(R.Fragment,{children:[Object.keys(s).length===0&&(0,R.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No sign-ins yet. Add one for each app the agent signs in to.`}),Object.entries(s).map(([i,s],c)=>{let l=m(s),u=$i(l,[`username_env`,`password_env`],ta,e=>n(o,e)),d=l.username_env||l.password_env;return(0,R.jsxs)(Ye,{lead:(0,R.jsx)(Pe,{icon:$t}),title:i,meta:String(l.url||(Array.isArray(l.domains)?l.domains.join(`, `):``)||`No site yet`),state:d?u.length?(0,R.jsx)(`span`,{className:`text-sm text-warn`,title:u.join(`, `),children:u.length===1?`Needs ${u[0]}`:`Needs ${u.length} variables`}):(0,R.jsx)(`span`,{className:`text-sm text-pass`,children:`Ready`}):(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`Not set up`}),open:t===i,onToggle:()=>r(t===i?``:i),actions:(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${i}`,onClick:()=>e.set(f(e.value,[`logins`,i],void 0)),children:`Remove`}),children:[(0,R.jsx)(k,{label:`Name`,help:(0,R.jsxs)(R.Fragment,{children:[`Sign in by hand (SSO, captcha) with `,(0,R.jsxs)(`code`,{className:`font-mono text-[13px]`,children:[`forgeqe login `,i]}),`.`]}),htmlFor:`login-${c}`,children:(0,R.jsx)(S,{id:`login-${c}`,defaultValue:i,spellCheck:!1,onBlur:t=>{ea(e,[`logins`],i,t.target.value.trim())?r(t.target.value.trim()):t.target.value=i},className:`max-w-[420px] flex-[1_1_280px] font-mono text-[13px]`})}),(0,R.jsx)(a,{defs:ta,edit:e,base:[`logins`,i]})]},c)}),(0,R.jsx)(`div`,{className:`pt-4`,children:(0,R.jsx)(P,{onClick:()=>{let t=i(s,`shop`);e.set(f(e.value,[`logins`,t],{username_env:`${t.toUpperCase().replace(/[^A-Z0-9]/g,`_`)}_USER`,password_env:`${t.toUpperCase().replace(/[^A-Z0-9]/g,`_`)}_PASSWORD`})),r(t)},children:`Add a sign-in`})})]})}function ra({rules:e,others:t,onChange:n}){let[r,i]=(0,L.useState)(``),[a,o]=(0,L.useState)(``),s=r.trim().length>0;return(0,R.jsxs)(R.Fragment,{children:[e.length===0&&t.length===0&&(0,R.jsx)(`p`,{className:`m-0 py-5 text-sm text-muted`,children:`No rules yet. Add the first one below.`}),e.map((t,r)=>(0,R.jsxs)(`div`,{className:`flex min-h-14 flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-2.5`,children:[(0,R.jsx)(`span`,{className:`flex-[1_1_300px] leading-normal`,children:t}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove rule: ${t}`,onClick:()=>n(e.filter((e,t)=>t!==r)),children:`Remove`})]},r)),t.map(e=>(0,R.jsxs)(`div`,{className:`flex min-h-14 flex-wrap items-center gap-x-4 gap-y-1 border-t border-line-soft py-2.5`,children:[(0,R.jsx)(`span`,{className:`flex-[1_1_300px] leading-normal`,children:e.text}),(0,R.jsx)(`span`,{className:`font-mono text-[13px] text-muted`,children:e.source})]},e.text)),(0,R.jsxs)(`form`,{onSubmit:a=>{a.preventDefault();let s=r.replace(/^\s*[-*+]\s+/,``).trim();if(s){if(s.length>300)return o(`A rule is at most 300 characters: make it shorter.`);if([...e,...t.map(e=>e.text)].some(e=>e.toLowerCase()===s.toLowerCase()))return o(`That rule is already in force.`);o(``),n([...e,s]),i(``)}},className:`mt-4 flex items-center gap-2 rounded-full border border-line py-1.5 pr-1.5 pl-5 has-[input:focus-visible]:outline-2 has-[input:focus-visible]:outline-offset-2 has-[input:focus-visible]:outline-accent`,children:[(0,R.jsx)(`label`,{htmlFor:`rule`,className:`sr-only`,children:`New rule`}),(0,R.jsx)(`input`,{id:`rule`,value:r,maxLength:300,onChange:e=>{i(e.target.value),o(``)},placeholder:`Add a rule every agent must follow`,className:`min-h-10 min-w-0 flex-auto border-0 bg-transparent text-[15px] outline-none focus-visible:outline-none`}),(0,R.jsx)(`button`,{type:`submit`,disabled:!s,className:T(`inline-flex min-h-10 cursor-pointer items-center rounded-full border-0 px-4 text-sm font-medium disabled:cursor-not-allowed`,s?`bg-accent text-white hover:bg-accent-hover`:`bg-surface-strong text-muted`),children:`Add`})]}),a&&(0,R.jsx)(`p`,{role:`alert`,className:`mt-2 mb-0 text-sm text-fail`,children:a})]})}function ia(e){let t=e=>e.split(/[\\/]/).pop()||e,n=e.paths.environments;return[{id:`config`,label:t(e.paths.config),file:`config`,path:e.paths.config,text:e.raw.config},{id:`models`,label:t(e.paths.models),file:`models`,path:e.paths.models,text:e.raw.models},...e.raw.environments.map(e=>({id:`env:${e.name}`,label:t(e.path),file:`environments`,env:n.layout===`dir`?e.name:void 0,path:e.path,text:e.text}))]}function aa({snap:e,dirty:t,onSave:n}){let r=ia(e),[i,a]=(0,L.useState)(`config`),[o,s]=(0,L.useState)({}),[c,l]=(0,L.useState)(!1),d=r.find(e=>e.id===i)||r[0],f=o[d.id]??d.text,p=f!==d.text,m=e=>`file-tab-${e.id.replace(/[^A-Za-z0-9_-]/g,`_`)}`;return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`div`,{role:`tablist`,"aria-label":`Files`,className:`mb-4 flex flex-wrap gap-x-4 border-b border-line-soft`,children:r.map(e=>(0,R.jsx)(`button`,{id:m(e),type:`button`,role:`tab`,"aria-selected":d.id===e.id,"aria-controls":`file-panel`,tabIndex:d.id===e.id?0:-1,onClick:()=>a(e.id),onKeyDown:t=>{let n=r.indexOf(e),i=t.key===`ArrowRight`?r[(n+1)%r.length]:t.key===`ArrowLeft`?r[(n-1+r.length)%r.length]:void 0;i&&(a(i.id),document.getElementById(m(i))?.focus())},className:T(`-mb-px min-h-10 cursor-pointer border-0 border-b-2 bg-transparent px-0.5 font-mono text-[13px]`,d.id===e.id?`border-ink text-ink`:`border-transparent text-muted hover:text-ink`),children:e.label},e.id))}),(0,R.jsxs)(`div`,{id:`file-panel`,role:`tabpanel`,"aria-labelledby":m(d),className:`flex flex-col gap-3`,children:[(0,R.jsx)(`p`,{className:`m-0 font-mono text-[13px] break-all text-muted`,children:d.path}),e.errors[d.file]&&(0,R.jsxs)(`p`,{role:`alert`,className:`m-0 rounded-[10px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:[`Does not parse: `,e.errors[d.file]]}),(0,R.jsx)(`label`,{htmlFor:`file-text`,className:`sr-only`,children:d.label}),(0,R.jsx)(u,{id:`file-text`,spellCheck:!1,rows:24,value:f,onChange:e=>s({...o,[d.id]:e.target.value}),className:`font-mono text-[13px] leading-[1.6] whitespace-pre`}),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,R.jsx)(P,{variant:`primary`,disabled:!p||c||t[d.file],onClick:async()=>{l(!0);try{if(await n(d.file,f,d.env)){let e={...o};delete e[d.id],s(e)}}finally{l(!1)}},children:c?`Saving…`:`Save file`}),p&&(0,R.jsx)(P,{onClick:()=>{let e={...o};delete e[d.id],s(e)},disabled:c,children:`Discard`}),t[d.file]&&(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`Save or discard the form's changes to this file first.`})]})]})]})}var oa=/^[A-Za-z0-9][A-Za-z0-9_-]{0,62}$/;function sa({edit:e,base:t,defs:n,noun:r,meta:i,start:o={},placeholder:s}){let c=m(M(e.value,t)),[l,u]=(0,L.useState)(null),[d,p]=(0,L.useState)(``),h=d&&!oa.test(d)?`Letters, digits, - and _.`:d in c?`There is a ${r} named ${d}.`:``,g=()=>{d&&!h&&(e.set(f(e.value,[...t,d],{...o})),u(d),p(``))};return(0,R.jsxs)(R.Fragment,{children:[Object.keys(c).length===0&&(0,R.jsx)(`p`,{className:`m-0 border-t border-line-soft py-4 text-sm text-muted`,children:`None yet.`}),Object.entries(c).map(([r,o])=>(0,R.jsx)(Ye,{title:r,meta:i(m(o))||void 0,open:l===r,onToggle:()=>u(l===r?null:r),actions:(0,R.jsx)(P,{size:`sm`,"aria-label":`Remove ${r}`,onClick:()=>e.set(f(e.value,[...t,r],void 0)),children:`Remove`}),children:(0,R.jsx)(a,{defs:n,edit:e,base:[...t,r]})},r)),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2 border-t border-line-soft pt-4`,children:[(0,R.jsxs)(`div`,{className:`flex flex-[0_1_260px] flex-col gap-1`,children:[(0,R.jsx)(S,{"aria-label":`New ${r}'s name`,value:d,spellCheck:!1,placeholder:`Name, such as ${s}`,"aria-invalid":!!h,onChange:e=>p(e.target.value.trim()),onKeyDown:e=>e.key===`Enter`&&g()}),h&&(0,R.jsx)(`span`,{className:`text-[13px] text-fail`,children:h})]}),(0,R.jsxs)(P,{disabled:!d||!!h,onClick:g,children:[`Add a `,r]})]})]})}var ca=[`Test cases and bugs`,`Browser grids`,`Notifications`,`Other tools`],la=[...Vi.map(e=>({id:e.id,kind:`source`,group:ca[0],name:e.name,note:e.note,icon:e.icon,logo:vr[e.id]})),{id:`browserstack`,kind:`grid`,group:ca[1],name:`BrowserStack`,note:`Remote browsers and devices`,icon:Tt,logo:vr.browserstack},{id:`testmu`,kind:`grid`,group:ca[1],name:`TestMu AI`,note:`Remote browsers (LambdaTest)`,icon:Tt},{id:`teams`,kind:`teams`,group:ca[2],name:`Microsoft Teams`,note:`A channel's webhook, for suites, releases and schedules`,icon:cn,logo:mr,many:!0},{id:`email`,kind:`email`,group:ca[2],name:`Email`,note:`The same alerts by email`,icon:cn,many:!0},{id:`mcp`,kind:`mcp`,group:ca[3],name:`MCP server`,note:`Any other system with an MCP server, as tools for ForgeQE's agent`,icon:pt,many:!0}],ua={browserstack:[{key:`username_env`,label:`User name variable`,type:`var`,default:`BROWSERSTACK_USERNAME`},{key:`access_key_env`,label:`Access key variable`,type:`var`,default:`BROWSERSTACK_ACCESS_KEY`},{key:`browser`,label:`Browser`,help:`ForgeQE drives the browser over CDP: Chrome or Edge.`,type:`select`,default:`chrome`,options:[{value:`chrome`,label:`Chrome`},{value:`edge`,label:`Edge`}]},{key:`browser_version`,label:`Browser version`,type:`text`,default:`latest`},{key:`os`,label:`Operating system`,type:`select`,default:`Windows`,options:[{value:`Windows`,label:`Windows`},{value:`OS X`,label:`macOS`}]},{key:`os_version`,label:`Its version`,type:`text`,placeholder:`11, or Sequoia`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`local`,label:`Through BrowserStack Local`,help:`For sites only your network reaches.`,type:`switch`,default:!1}],testmu:[{key:`username_env`,label:`User name variable`,type:`var`,default:`LT_USERNAME`},{key:`access_key_env`,label:`Access key variable`,type:`var`,default:`LT_ACCESS_KEY`},{key:`browser`,label:`Browser`,help:`TestMu AI's CDP endpoint serves Chrome.`,type:`select`,default:`Chrome`,options:[{value:`Chrome`,label:`Chrome`}]},{key:`browser_version`,label:`Browser version`,type:`text`,default:`latest`},{key:`platform`,label:`Platform`,type:`text`,default:`Windows 11`,placeholder:`Windows 11, or macOS Sequoia`},{key:`project`,label:`Project`,type:`text`,placeholder:`ForgeQE`},{key:`build`,label:`Build`,type:`text`,placeholder:`nightly`},{key:`local`,label:`Through the LambdaTest tunnel`,help:`For sites only your network reaches.`,type:`switch`,default:!1}]},da={browserstack:{provider:`browserstack`,remote:{browser:`chrome`,browser_version:`latest`,os:`Windows`,os_version:`11`,username_env:`BROWSERSTACK_USERNAME`,access_key_env:`BROWSERSTACK_ACCESS_KEY`,project:`ForgeQE`,local:!1}},testmu:{provider:`testmu`,remote:{browser:`Chrome`,browser_version:`latest`,platform:`Windows 11`,username_env:`LT_USERNAME`,access_key_env:`LT_ACCESS_KEY`,project:`ForgeQE`,local:!1}}},fa=[{key:`host`,label:`Mail server`,type:`text`,placeholder:`smtp.office365.com`},{key:`port`,label:`Port`,help:`587 is STARTTLS; 465 is TLS from the start.`,type:`number`,default:587},{key:`username_env`,label:`User name variable`,type:`var`,placeholder:`SMTP_USERNAME`},{key:`password_env`,label:`Password variable`,type:`var`,placeholder:`SMTP_PASSWORD`},{key:`from`,label:`From`,help:`Empty: the user name.`,type:`text`,placeholder:`ForgeQE <qa-bot@example.com>`},{key:`to`,label:`To`,help:`Comma separated.`,type:`list`,placeholder:`qa-team@example.com`}],pa=/^[A-Za-z0-9_-][A-Za-z0-9_.-]*$/;function ma({entry:e,title:t,meta:n,state:r,onEdit:i,onRemove:a}){return(0,R.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,R.jsx)(Pe,{icon:e.icon,logo:e.logo}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_220px] flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:t}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:n}),r]}),(0,R.jsxs)(`span`,{className:`flex gap-2`,children:[(0,R.jsx)(P,{size:`sm`,"aria-label":`Edit ${t}`,onClick:i,children:`Edit`}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Disconnect ${t}`,onClick:a,children:`Disconnect`})]})]})}var ha=e=>e.length?(0,R.jsx)(`span`,{className:`text-[13px] text-warn`,children:e.length===1?`Needs its key or password: Edit to add it`:`Needs ${e.length} values: Edit to add them`}):(0,R.jsx)(`span`,{className:`text-[13px] text-pass`,children:`Connected`}),ga={integrations:[ca[0],ca[1]],notifications:[ca[2]],mcp:[ca[3]]};function _a({edit:e,grids:t,setGrids:r,gridPaths:i,view:o=`integrations`}){let[s,c]=(0,L.useState)(null),l=b(),u=e=>n(l,e),d=e.value,p=e.vars,h=m(M(d,[`notify`,`channels`])),g=m(d.mcp),_=String(M(d,[`browser`,`provider`])??`local`),v=e=>la.find(t=>t.id===e),y=e=>{let t=Vi.find(t=>t.id===e),n=M(d,t.base);return n!==void 0&&n!==!1},x=e=>e.kind===`source`?y(e.id):e.kind===`grid`&&!!t[e.id],S=Object.fromEntries(ca.map(e=>[e,[]]));for(let t of Vi){if(!y(t.id))continue;let n=m(M(d,t.base));S[ca[0]].push((0,R.jsx)(ma,{entry:v(t.id),title:t.name,meta:String(n.url||n.org_url||n.repo||t.note),state:ha($i(n,t.vars,t.fields,u)),onEdit:()=>c({step:`form`,entry:v(t.id),mode:`edit`,name:t.id,from:t.id,value:n}),onRemove:()=>e.set(f(d,t.base,void 0))},t.id))}for(let e of[`browserstack`,`testmu`]){let n=t[e];if(!n)continue;let r=m(n.remote),i=v(e),a=[(e=>typeof e==`string`&&e?e[0].toUpperCase()+e.slice(1):e)(r.browser),r.os?`${r.os} ${r.os_version||``}`.trim():r.platform].filter(Boolean).join(`, `);S[ca[1]].push((0,R.jsx)(ma,{entry:i,title:i.name,meta:`${a}${_===e?`, used for browser runs`:``}`,state:ha($i(r,[`username_env`,`access_key_env`],ua[e],u)),onEdit:()=>c({step:`form`,entry:i,mode:`edit`,name:e,from:e,value:n,useGrid:_===e}),onRemove:()=>C(e)},e))}for(let[t,n]of Object.entries(h)){let r=m(n),i=v(r.teams?`teams`:`email`),a=Array.isArray(r.on)?r.on.length:0,o=[...r.teams?$i(m(r.teams),[`webhook_env`],[],u):[],...r.email?$i(m(r.email),[`username_env`,`password_env`],[],u):[]];S[ca[2]].push((0,R.jsx)(ma,{entry:i,title:t,meta:`${[r.teams&&`Teams`,r.email&&`Email`].filter(Boolean).join(` and `)||`No way to reach it yet`}, ${a} event${a===1?``:`s`}`,state:ha(o),onEdit:()=>c({step:`form`,entry:i,mode:`edit`,name:t,from:t,value:r}),onRemove:()=>e.set(f(d,[`notify`,`channels`,t],void 0))},`ch-${t}`))}for(let[t,n]of Object.entries(g)){let r=m(n);S[ca[3]].push((0,R.jsx)(ma,{entry:{...v(`mcp`),icon:De},title:t,meta:String(r.url||r.command||`MCP server`),onEdit:()=>c({step:`form`,entry:v(`mcp`),mode:`edit`,name:t,from:t,value:r}),onRemove:()=>e.set(f(d,[`mcp`,t],void 0))},`mcp-${t}`))}function C(n){let i=f(d,[`browser`,`providers`,n],void 0);_===n&&(i=f(i,[`browser`,`provider`],`local`)),e.set(i),r({...t,[n]:null})}function w(e){if(e.kind===`source`){let t=Vi.find(t=>t.id===e.id);c({step:`form`,entry:e,mode:`add`,name:e.id,from:e.id,value:Object.fromEntries(t.fields.filter(e=>e.type===`var`&&e.default).map(e=>[e.key,e.default]))})}else e.kind===`grid`?c({step:`form`,entry:e,mode:`add`,name:e.id,from:e.id,value:da[e.id],useGrid:_===`local`}):e.kind===`teams`?c({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{teams:{webhook_env:`TEAMS_WEBHOOK_URL`},on:[`suite_failed`,`job_failed`]}}):e.kind===`email`?c({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{email:{port:587},on:[`suite_failed`,`job_failed`]}}):c({step:`form`,entry:e,mode:`add`,name:``,from:``,value:{url:``}})}function T(n){let a=n.entry.kind;if(a===`source`)e.set(f(d,Vi.find(e=>e.id===n.entry.id).base,n.value));else if(a===`grid`){let a=n.entry.id,o=f(d,[`browser`,`providers`,a],i[a]);n.useGrid?o=f(o,[`browser`,`provider`],a):_===a&&(o=f(o,[`browser`,`provider`],`local`)),e.set(o),r({...t,[a]:n.value})}else{let t=a===`mcp`?[`mcp`]:[`notify`,`channels`],r=d;n.mode===`edit`&&n.from!==n.name&&(r=f(r,[...t,n.from],void 0)),e.set(f(r,[...t,n.name],n.value))}c(null)}let E=ga[o],ee=E.filter(e=>S[e].length),O=o===`mcp`?`Add an MCP server`:o===`notifications`?`Add a channel`:`Add an integration`,k=o===`mcp`?`No other MCP servers. The test case systems' own MCP servers are set with each system under Integrations.`:o===`notifications`?`No channels yet: add a Teams channel or an email list, and pick the events it gets.`:`Nothing connected yet.`;return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,R.jsx)(`p`,{className:`m-0 max-w-[60ch] text-sm text-muted`,children:ee.length?o===`mcp`?`Their tools show to ForgeQE's agent as <name>_<tool>. Secrets are {env:NAME} references, never values.`:o===`notifications`?`Each channel gets the events it picks.`:`Connected to ForgeQE.`:k}),(0,R.jsxs)(P,{onClick:()=>o===`mcp`?w(v(`mcp`)):c({step:`catalog`}),children:[(0,R.jsx)(vn,{size:18,"aria-hidden":`true`}),O]})]}),ee.map(e=>(0,R.jsxs)(`div`,{children:[E.length>1&&(0,R.jsx)(Je,{children:e}),S[e]]},e)),o===`notifications`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{children:`Links in alerts`}),(0,R.jsx)(D,{def:{key:`notify.report_url`,label:`Where reports are published`,help:`Teams and email alerts link each report there.`,type:`url`,placeholder:`https://reports.example.com/forgeqe`},edit:e,base:[]})]}),o===`integrations`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{children:`Results and bugs`}),(0,R.jsx)(D,{def:{key:`sources.write_back`,label:`Post results back`,help:`To the system each test case came from.`,type:`switch`,default:!0},edit:e,base:[]}),(0,R.jsx)(Je,{help:Hi.help,children:(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-2`,children:[(0,R.jsx)(_t,{size:18,"aria-hidden":`true`}),Hi.title]})}),(0,R.jsx)(a,{defs:Hi.fields,edit:e,base:Hi.base})]}),(0,R.jsx)(va,{panel:s,setPanel:c,isOn:x,onPick:w,onApply:T,vars:p,taken:(e,t)=>t in(e===`mcp`?g:h),groups:E})]})}function va({panel:e,setPanel:t,isOn:n,onPick:r,onApply:i,vars:o,taken:s,groups:c}){let l=b(),[u,d]=(0,L.useState)({busy:!1}),f=e?.step===`form`?`${e.entry.id}/${e.from}`:e?.step||``;(0,L.useEffect)(()=>d({busy:!1}),[f]);let h=()=>{t(null),d({busy:!1})};if(e?.step===`form`){let n=e,r=n.entry.kind,c=e=>t({...n,value:e}),f=r===`teams`||r===`email`||r===`mcp`,_=f&&n.name?pa.test(n.name)?n.name!==n.from&&s(r,n.name)?`Another one has this name.`:``:`Use letters, digits and _ . -`:``,v=r===`mcp`&&m(n.value).command===void 0,y=(!f||n.name&&!_)&&(r!==`mcp`||String(m(n.value)[v?`url`:`command`]||``).trim()),b=n.mode===`add`?`Connect ${n.entry.name}`:`Edit ${f?n.name:n.entry.name}`,C=!(r===`mcp`&&!v);return(0,R.jsxs)(g,{open:!0,onClose:h,title:b,description:`Saved as soon as you connect it. Keys and passwords you type are kept in ${xe(l.store)}, never in the settings files.`,footer:(0,R.jsxs)(R.Fragment,{children:[n.mode===`add`&&(0,R.jsx)(P,{onClick:()=>t({step:`catalog`}),children:`Back`}),C&&(0,R.jsx)(P,{onClick:async()=>{d({busy:!0});let e=Object.fromEntries(Object.entries(l.pending).filter(e=>typeof e[1]==`string`));try{let t=await p.test(r,n.entry.id,n.value,e);d({busy:!1,ok:t.ok,message:t.message})}catch(e){d({busy:!1,ok:!1,message:e.message})}},disabled:u.busy,className:`mr-auto`,children:u.busy?`Testing…`:r===`teams`||r===`email`?`Send a test message`:`Test connection`}),!C&&(0,R.jsx)(`span`,{className:`mr-auto`}),(0,R.jsx)(P,{onClick:h,children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:!y,onClick:()=>i(n),children:n.mode===`add`?`Connect`:`Done`})]}),children:[(0,R.jsxs)(`div`,{className:`flex items-center gap-3 pt-5 pb-2`,children:[(0,R.jsx)(Pe,{icon:n.entry.icon,logo:n.entry.logo,size:`lg`}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:n.entry.note})]}),(0,R.jsx)(`div`,{"aria-live":`polite`,children:u.message&&(0,R.jsxs)(`p`,{role:u.ok?`status`:`alert`,className:T(`mt-2 mb-1 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm`,u.ok?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[u.ok?(0,R.jsx)(Ct,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,R.jsx)(x,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,R.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:u.message})]})}),f&&(0,R.jsx)(k,{label:`Name`,help:_?(0,R.jsx)(`span`,{className:`text-fail`,children:_}):r===`mcp`?`Its tools show as <name>_<tool> to ForgeQE's agent.`:`A short name for the channel, such as qa or release.`,htmlFor:`int-name`,stacked:!0,children:(0,R.jsx)(S,{id:`int-name`,value:n.name,spellCheck:!1,"aria-invalid":!!_,placeholder:r===`mcp`?`xray`:`qa`,onChange:e=>t({...n,name:e.target.value.trim()})})}),r===`source`&&(0,R.jsx)(a,{defs:Vi.find(e=>e.id===n.entry.id).fields,edit:{value:n.value,set:c,vars:o},base:[],stacked:!0}),r===`grid`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(a,{defs:ua[n.entry.id],edit:{value:n.value,set:c,vars:o},base:[`remote`],stacked:!0}),(0,R.jsxs)(`label`,{className:`mt-2 flex min-h-11 cursor-pointer items-center gap-3 text-sm`,children:[(0,R.jsx)(`input`,{type:`checkbox`,checked:!!n.useGrid,onChange:e=>t({...n,useGrid:e.target.checked}),className:`size-4 accent-accent`}),`Run browser tests here by default`]})]}),(r===`teams`||r===`email`)&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(ya,{value:n.value,set:c}),r===`teams`||m(n.value).teams?(0,R.jsx)(D,{def:{key:`teams.webhook_env`,label:`Webhook variable`,help:`The address of a Teams Workflows webhook (post to a channel when a webhook request is received). It is a secret, so it is kept in your credential store.`,type:`var`,placeholder:`TEAMS_WEBHOOK_URL`},edit:{value:n.value,set:c,vars:o},base:[],stacked:!0}):null,r===`email`||m(n.value).email?(0,R.jsx)(a,{defs:fa,edit:{value:n.value,set:c,vars:o},base:[`email`],stacked:!0}):null]}),r===`mcp`&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 py-3`,children:[(0,R.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Where it runs`}),[[!0,`A server at an address`],[!1,`A command on this machine`]].map(([e,t])=>(0,R.jsxs)(`label`,{className:`flex min-h-10 cursor-pointer items-center gap-3 text-sm`,children:[(0,R.jsx)(`input`,{type:`radio`,name:`mcp-kind`,checked:v===e,onChange:()=>c(e?{url:``}:{command:``}),className:`size-4 accent-accent`}),t]},String(e)))]}),v?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(D,{def:{key:`url`,label:`Address`,type:`url`,placeholder:`https://api.githubcopilot.com/mcp/`},edit:{value:n.value,set:c,vars:o},base:[],stacked:!0}),(0,R.jsx)(ba,{value:n.value,set:c,vars:o})]}):(0,R.jsx)(D,{def:{key:`command`,label:`Command`,help:`Started by ForgeQE's agent runtime. Name secrets as {env:NAME}, never their values.`,type:`path`,placeholder:`npx -y @triparc/xray-mcp`},edit:{value:n.value,set:c,vars:o},base:[],stacked:!0})]})]})}return(0,R.jsx)(g,{open:e?.step===`catalog`,onClose:h,title:`Add an integration`,description:`Pick a service to connect.`,footer:(0,R.jsx)(P,{onClick:h,children:`Close`}),children:c.map(e=>(0,R.jsxs)(`div`,{className:`pt-4`,children:[(0,R.jsx)(`h3`,{className:`m-0 mb-1 text-sm font-medium text-muted`,children:e}),la.filter(t=>t.group===e).map(e=>{let t=!e.many&&n(e);return(0,R.jsxs)(`button`,{type:`button`,disabled:t,onClick:()=>r(e),className:T(`flex min-h-14 w-full items-center gap-3 rounded-[12px] border-0 bg-transparent px-2 py-2 text-left text-ink`,t?`cursor-default`:`cursor-pointer hover:bg-surface-muted`),children:[(0,R.jsx)(Pe,{icon:e.icon,logo:e.logo}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:e.note})]}),(0,R.jsx)(`span`,{className:T(`text-[13px]`,t?`text-pass`:`text-accent`),children:t?`Connected`:e.many?`Add`:`Connect`})]},e.id)})]},e))})}function ya({value:e,set:t}){let n=Array.isArray(e.on)?e.on.map(String):[];return(0,R.jsxs)(`fieldset`,{className:`m-0 border-0 p-0 py-3`,children:[(0,R.jsx)(`legend`,{className:`mb-2 font-medium`,children:`Tell it when`}),(0,R.jsx)(`div`,{className:`grid grid-cols-1 gap-x-4 sm:grid-cols-2`,children:Ui.map(([r,i])=>(0,R.jsxs)(`label`,{className:`flex min-h-10 cursor-pointer items-center gap-2 text-sm`,children:[(0,R.jsx)(`input`,{type:`checkbox`,checked:n.includes(r),onChange:i=>t({...e,on:i.target.checked?[...n,r]:n.filter(e=>e!==r)}),className:`size-4 accent-accent`}),i]},r))})]})}function ba({value:e,set:t,vars:n}){let r=String(m(e.headers).Authorization||``),i=/\{env:([A-Za-z_][A-Za-z0-9_]*)\}/.exec(r)?.[1]||``;return(0,R.jsx)(D,{def:{key:`token`,label:`Token`,help:`Sent as a bearer token. Leave it empty for none.`,type:`var`,placeholder:`MCP_TOKEN`},edit:{value:{token:i},set:n=>{let r=String(n.token||``),i={...m(e.headers)};r?i.Authorization=`Bearer {env:${r}}`:delete i.Authorization,t(Object.keys(i).length?{...e,headers:i}:(({headers:e,...t})=>t)(e))},vars:n},base:[],stacked:!0})}var xa=[{key:`checks`,label:`Checks`,help:`Test case sources, comma separated: files or folders, jira:…, ado:…, testrail:…`,type:`list`,placeholder:`checks/smoke.yaml, jira:SHOP-12`},{key:`every`,label:`How often`,help:`30s, 15m, 1h or 1h30m; at least 10s.`,type:`text`,default:`15m`},{key:`replay`,label:`Checking a recorded run`,help:`Verify: one model call per check confirms the result. Trust: none.`,type:`select`,default:`verify`,options:[{value:`verify`,label:`Verify`},{value:`trust`,label:`Trust`}]},{key:`parallel`,label:`Checks at once`,type:`number`,default:1},{key:`write_back`,label:`Post each round's results`,help:`To the system each check came from.`,type:`switch`,default:!1}],Sa=[{key:`fail_after`,label:`Failing rounds before the first alert`,help:`2 or more rides out a flaky run.`,type:`number`,default:1},{key:`remind_every`,label:`Remind while it keeps failing`,help:`Every 2h, for example. Empty: never.`,type:`text`,placeholder:`2h`},{key:`report_url`,label:`Where rounds are published`,help:`Alerts link each round's report there.`,type:`url`,placeholder:`https://reports.example.com/monitor`},{key:`keep`,label:`Rounds kept`,help:`Older round folders are deleted.`,type:`number`,default:100},{key:`out_dir`,label:`Round folder`,help:`Rounds and state.json: which checks are failing, and since when.`,type:`path`,default:`./.forgeqe/reports/monitor`}];function Ca({kind:e,settings:t}){let n=b(),[r,i]=(0,L.useState)({busy:!1});return(0,R.jsxs)(`div`,{className:`flex flex-col gap-2 py-2`,children:[(0,R.jsx)(P,{size:`sm`,className:`self-start`,disabled:r.busy,onClick:async()=>{i({busy:!0});let r=Object.fromEntries(Object.entries(n.pending).filter(e=>typeof e[1]==`string`));try{let n=await p.test(e,e,t,r);i({busy:!1,ok:n.ok,message:n.message})}catch(e){i({busy:!1,ok:!1,message:e.message})}},children:r.busy?`Sending…`:`Send a test message`}),(0,R.jsx)(`div`,{"aria-live":`polite`,children:r.message&&(0,R.jsxs)(`p`,{role:r.ok?`status`:`alert`,className:T(`m-0 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm`,r.ok?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[r.ok?(0,R.jsx)(Ct,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,R.jsx)(x,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,R.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:r.message})]})})]})}function wa({edit:e}){let t=m(M(e.value,[`monitor`,`alerts`])),n=(t,n)=>e.set(f(e.value,[`monitor`,`alerts`,t],n));return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`p`,{className:`mt-0 mb-2 text-sm text-muted`,children:[`Start it with `,(0,R.jsx)(`code`,{className:`rounded-md bg-surface-strong px-1.5 py-0.5 font-mono text-[13px]`,children:`forgeqe monitor`}),`, or as a schedule.`]}),(0,R.jsx)(Je,{first:!0,children:`What runs`}),(0,R.jsx)(a,{defs:xa,edit:e,base:[`monitor`]}),(0,R.jsx)(Je,{children:`When to alert`}),(0,R.jsx)(a,{defs:Sa,edit:e,base:[`monitor`]}),(0,R.jsx)(Je,{help:`The monitor's own alerts: when a check starts failing, keeps failing, or recovers.`,children:`Alerts`}),(0,R.jsx)(k,{label:`Microsoft Teams`,help:`A channel's Workflows webhook.`,children:(0,R.jsx)(y,{checked:!!t.teams,onChange:e=>n(`teams`,e?{webhook_env:`TEAMS_MONITOR_WEBHOOK_URL`}:void 0),label:`Alert in Microsoft Teams`})}),!!t.teams&&(0,R.jsxs)(`div`,{className:`rounded-[14px] bg-surface-muted px-4 pb-2`,children:[(0,R.jsx)(D,{def:{key:`teams.webhook_env`,label:`Webhook address`,help:`Kept in your credential store.`,type:`var`,placeholder:`TEAMS_MONITOR_WEBHOOK_URL`},edit:e,base:[`monitor`,`alerts`],stacked:!0}),(0,R.jsx)(Ca,{kind:`teams`,settings:{teams:m(t.teams)}})]}),(0,R.jsx)(k,{label:`Email`,help:`The same alerts by email.`,children:(0,R.jsx)(y,{checked:!!t.email,onChange:e=>n(`email`,e?{port:587}:void 0),label:`Alert by email`})}),!!t.email&&(0,R.jsxs)(`div`,{className:`rounded-[14px] bg-surface-muted px-4 pb-2`,children:[(0,R.jsx)(a,{defs:fa,edit:e,base:[`monitor`,`alerts`,`email`],stacked:!0}),(0,R.jsx)(Ca,{kind:`email`,settings:{email:m(t.email)}})]})]})}var Ta=[`llm.models_file`,`llm.active`,`llm.routing`,`llm.fallback`,`llm.routes.*`,`environments.file`,`environments.dir`,`environments.default`,`logins.*.url`,`logins.*.domains`,`logins.*.username_env`,`logins.*.password_env`,`logins.*.totp_env`,`logins.*.save_session`,`browser.providers.browserstack`,`browser.providers.testmu`,`notify.report_url`,`notify.channels.*.teams`,`notify.channels.*.email`,`notify.channels.*.on`,`mcp.*.url`,`mcp.*.headers`,`mcp.*.command`,`mcp.*.env`,...[`checks`,`every`,`replay`,`parallel`,`write_back`,`fail_after`,`remind_every`,`report_url`,`keep`,`out_dir`,`alerts.teams.webhook_env`,`alerts.email.host`,`alerts.email.port`,`alerts.email.username_env`,`alerts.email.password_env`,`alerts.email.from`,`alerts.email.to`].map(e=>`monitor.${e}`),...[`enabled`,`external`,`dirs`,`browser_max_chars`,`disable`].map(e=>`skills.${e}`),...[`run`,`day`,`month`,`currency`].map(e=>`budget.${e}`),`export.format`];[...(e=>e.flatMap(e=>e.fields.map(t=>[...e.base,t.key].join(`.`))))([...Ii,...Li,...Ri,...Ki,...zi,...Bi,...Ji,...Yi,...Xi,...Wi,Hi]),...Vi.flatMap(e=>e.fields.map(t=>[...e.base,t.key].join(`.`))),...Zi.map(e=>`containers.services.*.${e.key}`),...Qi.map(e=>`databases.*.${e.key}`),...Gi.map(e=>`bi.datasets.*.${e.key}`),...Ta];var Ea=(e,t)=>t.flatMap(t=>t.fields.map(n=>({section:e,label:n.label,key:[...t.base,n.key].join(`.`)}))),Da=(e,t,n)=>n.map(n=>({section:e,label:n.label,key:`${t}.*.${n.key}`})),Oa=[...Ea(`browser`,Ii),...Ea(`tests`,Li),...Ea(`runs`,[...Ri,...Wi]),...Da(`runs`,`bi.datasets`,Gi),...Ea(`parallel`,Ki),...Ea(`quality`,zi),...Ea(`agents`,Bi),...Ea(`mobile`,[...Ji,...Yi]),...Ea(`containers`,Xi),...Da(`containers`,`containers.services`,Zi),...Da(`databases`,`databases`,Qi),...Ea(`integrations`,[Hi]),...Vi.flatMap(e=>e.fields.map(t=>({section:`integrations`,label:`${e.name}: ${t.label}`,key:[...e.base,t.key].join(`.`)}))),{section:`integrations`,label:`Post results back`,key:`sources.write_back`},{section:`integrations`,label:`Remote browser grids`,key:`browser.providers`},{section:`models`,label:`Models file`,key:`llm.models_file`},{section:`models`,label:`Profile in use`,key:`llm.active`},{section:`routing`,label:`Routing`,key:`llm.routing`},{section:`routing`,label:`Fall back to a working model`,key:`llm.fallback`},{section:`routing`,label:`Models per area of work`,key:`llm.routes`},{section:`environments`,label:`Environments file`,key:`environments.file`},{section:`environments`,label:`Environments folder`,key:`environments.dir`},{section:`environments`,label:`Active environment`,key:`environments.default`},{section:`signins`,label:`Sign-ins`,key:`logins`},{section:`notifications`,label:`Teams and email channels`,key:`notify.channels`},{section:`notifications`,label:`Where reports are published`,key:`notify.report_url`},{section:`mcp`,label:`MCP servers`,key:`mcp`},{section:`monitor`,label:`Monitor checks, schedule and alerts`,key:`monitor`},{section:`monitor`,label:`Monitor alerts by Teams or email`,key:`monitor.alerts`},{section:`skills`,label:`Skills`,key:`skills`},{section:`tokenomics`,label:`Spending budgets`,key:`budget`},{section:`about`,label:`Version and updates`,key:`forgeqe update`},{section:`about`,label:`Guides: user guide, how to use, architecture`,key:`forgeqe docs`},{section:`notifications`,label:`Send a test notification`,key:`forgeqe notify test`},{section:`agents`,label:`Check the agent's domain knowledge`,key:`forgeqe eval domain`},{section:`generated`,label:`Generated code still in the repository`,key:`forgeqe generated`}],ka=`font-mono text-[13px] [overflow-wrap:anywhere]`;function Aa({ok:e,children:t}){return(0,R.jsxs)(`p`,{role:e?`status`:`alert`,className:T(`m-0 flex items-start gap-2 rounded-[12px] px-3 py-2 text-sm leading-relaxed`,e?`bg-pass-soft text-pass`:`bg-fail-soft text-fail`),children:[e?(0,R.jsx)(Ct,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}):(0,R.jsx)(xt,{size:18,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),(0,R.jsx)(`span`,{className:`[overflow-wrap:anywhere]`,children:t})]})}function ja({open:e,start:t,onClose:n,onPick:r}){let[i,a]=(0,L.useState)(null),[s,c]=(0,L.useState)(``),[l,u]=(0,L.useState)(``),[d,f]=(0,L.useState)(null),[p,m]=(0,L.useState)(!1),h=(0,L.useCallback)(async e=>{u(``);try{let t=await Ae.folders(e);a(t),c(t.path)}catch(e){u(e.message)}},[]);(0,L.useEffect)(()=>{e?h(t||void 0):(f(null),u(``))},[e,t,h]);let _=async()=>{if(i&&d!==null){u(``);try{let e=await Ae.newFolder(i.path,d);a(e),c(e.path),f(null)}catch(e){u(e.message)}}};return(0,R.jsxs)(g,{open:e,onClose:n,wide:!0,title:`Choose the project folder`,description:`The folder of the app or test repository ForgeQE works on. Its settings, reports and logs are kept in it.`,footer:(0,R.jsxs)(R.Fragment,{children:[i?.project&&(0,R.jsx)(`span`,{className:`mr-auto self-center text-sm text-pass`,children:`ForgeQE is set up here`}),(0,R.jsx)(P,{onClick:n,children:`Cancel`}),(0,R.jsx)(P,{variant:`primary`,disabled:!i||p,onClick:async()=>{m(!0);try{await r(i.path)}catch(e){u(e.message)}finally{m(!1)}},children:`Use this folder`})]}),children:[(0,R.jsxs)(`form`,{className:`flex gap-2 pt-5`,onSubmit:e=>{e.preventDefault(),h(s.trim())},children:[(0,R.jsx)(`label`,{htmlFor:`folder-path`,className:`sr-only`,children:`Folder path`}),(0,R.jsx)(S,{id:`folder-path`,value:s,spellCheck:!1,onChange:e=>c(e.target.value),className:`font-mono text-[13px]`,placeholder:`/Users/you/shop`}),(0,R.jsx)(P,{type:`submit`,children:`Go`})]}),(0,R.jsxs)(`div`,{className:`flex flex-wrap gap-2 pt-3`,children:[(0,R.jsxs)(P,{size:`sm`,disabled:!i?.parent,onClick:()=>i?.parent&&void h(i.parent),children:[(0,R.jsx)(lt,{size:16,"aria-hidden":`true`}),`Up`]}),(0,R.jsxs)(P,{size:`sm`,onClick:()=>void h(i?.home),children:[(0,R.jsx)(qe,{size:16,"aria-hidden":`true`}),`Home`]}),(0,R.jsxs)(P,{size:`sm`,disabled:!i,onClick:()=>f(``),children:[(0,R.jsx)(Gt,{size:16,"aria-hidden":`true`}),`New folder`]})]}),d!==null&&(0,R.jsxs)(`form`,{className:`flex flex-wrap gap-2 pt-3`,onSubmit:e=>{e.preventDefault(),_()},children:[(0,R.jsx)(`label`,{htmlFor:`new-folder`,className:`sr-only`,children:`New folder's name`}),(0,R.jsx)(S,{id:`new-folder`,autoFocus:!0,value:d,placeholder:`my-shop-tests`,onChange:e=>f(e.target.value),className:`flex-[1_1_200px]`}),(0,R.jsx)(P,{type:`submit`,variant:`primary`,disabled:!d.trim(),children:`Make it`}),(0,R.jsx)(P,{onClick:()=>f(null),children:`Cancel`})]}),(0,R.jsx)(`div`,{"aria-live":`polite`,className:`pt-3`,children:l&&(0,R.jsx)(Aa,{ok:!1,children:l})}),i&&(0,R.jsxs)(`ul`,{"aria-label":`Folders in ${i.path}`,className:`m-0 mt-2 flex list-none flex-col p-0`,children:[i.folders.length===0&&(0,R.jsx)(`li`,{className:`border-t border-line-soft py-4 text-sm text-muted`,children:`No folders in here.`}),i.folders.map(e=>(0,R.jsx)(`li`,{className:`border-t border-line-soft`,children:(0,R.jsxs)(`button`,{type:`button`,onClick:()=>void h(e.path),className:`flex min-h-12 w-full cursor-pointer items-center gap-3 border-0 bg-transparent px-2 text-left text-ink hover:bg-surface-muted`,children:[e.project?(0,R.jsx)(Ut,{size:18,"aria-hidden":`true`,className:`flex-none text-pass`}):(0,R.jsx)(o,{size:18,"aria-hidden":`true`,className:`flex-none text-muted`}),(0,R.jsx)(`span`,{className:`min-w-0 flex-1 [overflow-wrap:anywhere]`,children:e.name}),e.project&&(0,R.jsx)(He,{tone:`pass`,children:`ForgeQE`})]})},e.path))]})]})}function Ma({state:e,onState:t}){let[n,r]=(0,L.useState)(!1),[i,a]=(0,L.useState)({busy:!1}),[s,c]=(0,L.useState)(null),[l,u]=(0,L.useState)(``),[d,f]=(0,L.useState)(!1),p=(0,L.useCallback)(()=>{u(``),Ae.machine().then(c,e=>u(e.message))},[]);(0,L.useEffect)(p,[p,e.project,e.ready]);let m=!!s?.job?.running;(0,L.useEffect)(()=>{if(!m)return;let e=setInterval(p,1500);return()=>clearInterval(e)},[m,p]);let h=async e=>{let n=await Ae.open(e);a({busy:!1}),t(n),r(!1)},g=s?.job,_=s?.checks.filter(e=>!/^(Models?\b|Copilot sign-in)/.test(e.name))||[],y=_.filter(e=>!e.ok&&/forgeqe setup/.test(e.fix||``));return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{first:!0,help:`The folder of the app or test repository you test. ForgeQE keeps its settings, reports and logs there.`,children:`1. Project folder`}),(0,R.jsxs)(`div`,{className:`flex min-h-[68px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-3`,children:[(0,R.jsx)(Pe,{icon:e.ready?Ut:o}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-[1_1_260px] flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:T(`font-medium`,ka),children:e.project}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:e.ready?`ForgeQE is set up here (${e.config}).`:`ForgeQE is not set up in this folder yet.`})]}),(0,R.jsx)(P,{onClick:()=>r(!0),children:e.ready?`Open another folder`:`Choose a folder`})]}),e.recent.length>0&&(0,R.jsx)(`ul`,{"aria-label":`Recent projects`,className:`m-0 flex list-none flex-col p-0`,children:e.recent.map(e=>(0,R.jsxs)(`li`,{className:`flex min-h-[56px] flex-wrap items-center gap-x-4 gap-y-2 border-t border-line-soft py-2 pl-[52px]`,children:[(0,R.jsx)(`span`,{className:T(`min-w-0 flex-[1_1_260px] text-ink-2`,ka),children:e}),(0,R.jsx)(P,{size:`sm`,"aria-label":`Open ${e}`,onClick:()=>void h(e).catch(e=>u(e.message)),children:`Open`})]},e))}),(0,R.jsx)(Je,{help:`forgeqe.yaml, llms.json, env.yaml and a .forgeqe folder with prompts, skills and guardrails to change. Files already there are kept.`,children:`2. ForgeQE in this folder`}),(0,R.jsx)(k,{label:e.ready?`Set up`:`Not set up yet`,help:e.ready?`${e.config} is in this folder, so every section of Settings is open.`:`Until it is, the other sections of Settings stay locked: there is nothing for them to change.`,children:e.ready?(0,R.jsx)(He,{tone:`pass`,children:`Done`}):(0,R.jsx)(P,{variant:`primary`,disabled:i.busy,onClick:async()=>{a({busy:!0});try{let e=await Ae.init();a({busy:!1,result:e}),t(e.setup)}catch(e){a({busy:!1,error:e.message})}},children:i.busy?`Setting up…`:`Set up this folder`})}),(0,R.jsxs)(`div`,{"aria-live":`polite`,className:`flex flex-col gap-2`,children:[i.error&&(0,R.jsx)(Aa,{ok:!1,children:i.error}),i.result&&(0,R.jsxs)(Aa,{ok:!i.result.failed.length,children:[i.result.created.length?`Made ${i.result.created.join(`, `)}.`:`Nothing new was needed.`,i.result.failed.length>0&&` Could not write: ${i.result.failed.join(`; `)}.`]})]}),(0,R.jsx)(Je,{help:`What ForgeQE runs with: its browser engine and the agent runtime. Installing them needs no admin rights${s?`. ForgeQE ${s.version}`:``}.`,children:`3. This computer`}),l&&(0,R.jsx)(Aa,{ok:!1,children:l}),!s&&!l&&(0,R.jsx)(`p`,{role:`status`,className:`m-0 border-t border-line-soft py-5 text-sm text-muted`,children:`Checking this computer…`}),s&&(0,R.jsx)(`ul`,{"aria-label":`What this computer has`,className:`m-0 flex list-none flex-col p-0`,children:_.map(e=>(0,R.jsxs)(`li`,{className:`flex min-h-[56px] items-start gap-3 border-t border-line-soft py-3`,children:[e.ok?(0,R.jsx)(Ct,{size:18,"aria-label":`Ready`,className:`mt-0.5 flex-none text-pass`}):(0,R.jsx)(xt,{size:18,"aria-label":`Missing`,className:`mt-0.5 flex-none text-warn`}),(0,R.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-medium`,children:e.name}),(0,R.jsxs)(`span`,{className:`text-sm text-muted [overflow-wrap:anywhere]`,children:[e.detail,!e.ok&&e.fix&&(0,R.jsxs)(R.Fragment,{children:[`. `,/forgeqe setup/.test(e.fix)?`Install what's missing, below, sets it up.`:e.fix]})]})]})]},e.name))}),s&&(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 border-t border-line-soft py-4`,children:[(0,R.jsx)(P,{variant:y.length?`primary`:`outline`,disabled:m||d,onClick:async()=>{f(!0);try{await Ae.run(),p()}catch(e){u(e.message)}finally{f(!1)}},children:m?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(v,{state:`handing`,px:16}),`Installing…`]}):y.length?`Install what's missing`:`Check and repair`}),(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`Runs forgeqe setup. The first time it downloads a few hundred MB and takes a few minutes.`})]}),g&&(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[!g.running&&(0,R.jsx)(Aa,{ok:!!g.ok,children:g.ok?`forgeqe setup finished.`:`forgeqe setup stopped with a problem. The last lines below say what.`}),(0,R.jsx)(`pre`,{"aria-label":`forgeqe setup output`,"aria-live":`polite`,className:`m-0 max-h-[280px] overflow-auto rounded-[12px] bg-surface-muted px-4 py-3 font-mono text-[12px] leading-relaxed whitespace-pre-wrap text-ink-2 [overflow-wrap:anywhere]`,children:g.lines.length?g.lines.join(`
|
|
22
|
-
`):`Starting…`})]}),(0,R.jsx)(Je,{help:`At least one model with its key or sign-in, for the agents to think with.`,children:`4. A model`}),(0,R.jsx)(k,{label:s?.model.ready?`Ready`:`Not yet`,help:s?.model.detail||``,children:e.ready?(0,R.jsx)(`a`,{className:ie({variant:s?.model.ready?`outline`:`primary`}),href:E(`settings`,`models`),children:s?.model.ready?`Models`:`Add a model`}):(0,R.jsx)(`span`,{className:`text-sm text-muted`,children:`After step 2`})}),(0,R.jsx)(ja,{open:n,start:e.project,onClose:()=>r(!1),onPick:h})]})}var Na={"notify-test":[`Sending a test card`,`Sent a test card`,`working`],"update-check":[`Looking for a new version`,`Looked for a new version`,`searching`],update:[`Updating ForgeQE`,`Updated ForgeQE`,`working`],"eval-domain":[`Checking the agent's domain knowledge`,`Checked the agent's domain knowledge`,`thinking`]};function Pa(){let[e,t]=(0,L.useState)(null),[n,r]=(0,L.useState)(``),i=(0,L.useCallback)(()=>j.view().then(t,e=>r(e.message)),[]);(0,L.useEffect)(()=>void i(),[i]);let a=!!e?.job?.running;return(0,L.useEffect)(()=>{if(!a)return;let e=setInterval(i,1e3);return()=>clearInterval(e)},[a,i]),{view:e,error:n,run:async(e,t={})=>{r(``);try{await j.run(e,t),i()}catch(e){r(e.message)}},running:a,load:i}}function Fa({job:e,kinds:t,onStop:n}){let r=(0,L.useRef)(null);if((0,L.useEffect)(()=>{r.current&&(r.current.scrollTop=r.current.scrollHeight)},[e?.lines.length]),!e||!t.includes(e.kind))return null;let[i,a,o]=Na[e.kind];return(0,R.jsxs)(`div`,{className:`mt-3 flex flex-col gap-2 rounded-[12px] border border-line-soft p-3`,children:[(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsx)(`span`,{className:`flex-1 text-sm font-medium`,children:e.running?i:a}),(0,R.jsx)(He,{tone:e.running?`running`:e.exitCode===0?`pass`:`fail`,orb:o,children:e.running?`Working`:e.exitCode===0?`Done`:`Did not finish`}),e.running&&(0,R.jsxs)(P,{size:`sm`,onClick:n,className:`border-fail text-fail hover:bg-fail-soft`,children:[(0,R.jsx)(be,{size:12,fill:`currentColor`,"aria-hidden":`true`}),`Stop`]})]}),(0,R.jsx)(`pre`,{ref:r,className:`m-0 max-h-[260px] overflow-auto rounded-[10px] bg-surface-muted p-3 font-mono text-[12px] leading-relaxed whitespace-pre-wrap text-ink-2`,children:e.lines.join(`
|
|
23
|
-
`)||`Starting…`})]})}function Ia({text:e,note:t,yes:n,onYes:r,onNo:i}){return(0,R.jsxs)(`div`,{role:`alertdialog`,"aria-label":e,className:`mt-3 flex flex-col gap-2 rounded-[12px] border border-warn bg-warn-soft p-3`,children:[(0,R.jsx)(`span`,{className:`text-sm font-medium`,children:e}),(0,R.jsx)(`span`,{className:`text-[13px] text-ink-2`,children:t}),(0,R.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[(0,R.jsx)(P,{variant:`primary`,onClick:r,children:n}),(0,R.jsx)(P,{onClick:i,children:`Not now`})]})]})}function La(){let{view:e,error:t,run:n,running:r}=Pa(),[i,a]=(0,L.useState)(!1),o=e?.job,s=o?.kind===`update-check`&&!o.running?o.lines.join(`
|
|
24
|
-
`):``,c=/installs (\d[\w.-]*)/.exec(s)?.[1];return(0,R.jsxs)(R.Fragment,{children:[t&&(0,R.jsx)(`p`,{className:`m-0 mb-3 rounded-[12px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:t}),(0,R.jsx)(k,{label:`Version`,help:c?`${c} is out.`:s&&/latest/.test(s)?`This is the latest.`:`forgeqe update installs a new one for every forgeqe on this computer (bun, npm, pip).`,className:`border-t-0 pt-0`,children:(0,R.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsx)(`span`,{className:`font-mono text-[15px]`,children:e?.version??`…`}),(0,R.jsxs)(P,{disabled:r,onClick:()=>void n(`update-check`),children:[(0,R.jsx)(bn,{size:16,"aria-hidden":`true`}),`Check for updates`]}),(0,R.jsxs)(P,{variant:c?`primary`:`outline`,disabled:r,onClick:()=>a(!0),children:[(0,R.jsx)(Nt,{size:16,"aria-hidden":`true`}),`Update`,c?` to ${c}`:``]})]})}),i&&(0,R.jsx)(Ia,{text:`Update ForgeQE${c?` to ${c}`:` to the latest version`} on this computer?`,note:`It replaces every forgeqe on PATH. Restart forgeqe web when it is done; on Windows the update starts once ForgeQE exits.`,yes:`Update`,onYes:()=>{a(!1),n(`update`,{confirmed:!0})},onNo:()=>a(!1)}),(0,R.jsx)(Fa,{job:o,kinds:[`update-check`,`update`],onStop:()=>void j.stop()}),(0,R.jsx)(Je,{children:`Guides`}),[[`User guide`,`Every feature, with examples, in one page.`,e?.help.guide],[`How to use`,`The full reference: settings, commands and how each feature works.`,e?.help.howTo],[`Architecture`,`How ForgeQE is built: its agents, the engine and where data goes.`,e?.help.architecture]].map(([e,t,n])=>(0,R.jsx)(k,{label:e,help:t,children:(0,R.jsxs)(`a`,{href:n||`#`,target:`_blank`,rel:`noreferrer noopener`,className:`inline-flex min-h-10 items-center gap-2 rounded-full border border-line px-4 text-sm font-medium text-ink no-underline hover:bg-surface-muted hover:text-ink`,children:[(0,R.jsx)($e,{size:16,"aria-hidden":`true`}),`Open`]})},e))]})}function Ra(){let{view:e,error:t,run:n,running:r}=Pa(),[i,a]=(0,L.useState)(``);return e?.channels.length?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{help:`A card says it is a test and which events each channel gets; nothing else is sent.`,children:`Send a test`}),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsxs)(w,{"aria-label":`Channel`,value:i,onChange:e=>a(e.target.value),className:`w-[220px]`,children:[(0,R.jsx)(`option`,{value:``,children:`Every channel`}),e.channels.map(e=>(0,R.jsx)(`option`,{children:e},e))]}),(0,R.jsxs)(P,{disabled:r,onClick:()=>void n(`notify-test`,i?{channel:i}:{}),children:[(0,R.jsx)(On,{size:16,"aria-hidden":`true`}),`Send a test`]})]}),t&&(0,R.jsx)(`p`,{className:`m-0 mt-2 text-sm text-fail`,children:t}),(0,R.jsx)(Fa,{job:e.job,kinds:[`notify-test`],onStop:()=>void j.stop()})]}):null}function za(){let{view:e,error:t,run:n,running:r}=Pa(),[i,a]=(0,L.useState)(``),[o,s]=(0,L.useState)(!1);return e?.evalCases.length?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Je,{help:`Runs stories from ForgeQE's evaluation cases (banking, insurance, lending, privacy) with the domain declared and without, and scores how many domain and regulation expectations the agent's test design meets. It makes model calls for each case.`,children:`Check the agent's domain knowledge`}),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,R.jsxs)(w,{"aria-label":`Cases`,value:i,onChange:e=>a(e.target.value),className:`w-[320px] max-w-full`,children:[(0,R.jsxs)(`option`,{value:``,children:[`All `,e.evalCases.length,` cases`]}),e.evalCases.map(e=>(0,R.jsx)(`option`,{value:e.id,children:e.title},e.id))]}),(0,R.jsxs)(P,{disabled:r,onClick:()=>s(!0),children:[(0,R.jsx)(Vt,{size:16,"aria-hidden":`true`}),`Run the check`]})]}),o&&(0,R.jsx)(Ia,{text:`Run ${i?`one case`:`all ${e.evalCases.length} cases`} of the domain check?`,note:`Each case is a model session with the domain and one without, plus a judge; it takes a few minutes and costs tokens.`,yes:`Run it`,onYes:()=>{s(!1),n(`eval-domain`,{confirmed:!0,...i?{only:[i]}:{}})},onNo:()=>s(!1)}),t&&(0,R.jsx)(`p`,{className:`m-0 mt-2 text-sm text-fail`,children:t}),(0,R.jsx)(Fa,{job:e.job,kinds:[`eval-domain`],onStop:()=>void j.stop()})]}):null}function Ba(){let[t,n]=(0,L.useState)(null),[r,i]=(0,L.useState)(``);if((0,L.useEffect)(()=>{j.generated().then(n,e=>i(e.message))},[]),r)return(0,R.jsx)(`p`,{className:`m-0 rounded-[12px] bg-fail-soft px-3 py-2 text-sm text-fail`,children:r});if(!t)return(0,R.jsx)(`p`,{className:`m-0 text-sm text-muted`,children:`Loading…`});let a=(e,t)=>t?`${Math.round(e/t*100)}%`:`–`;return t.runs?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsxs)(`p`,{className:`mt-0 mb-4 text-sm text-muted`,children:[`In `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:t.repo}),`, from .forgeqe/generated.jsonl: every line ForgeQE added, checked against the files as they are now.`]}),(0,R.jsxs)(`div`,{className:`flex flex-wrap gap-3`,children:[(0,R.jsx)(Me,{label:`Lines written`,value:t.written.toLocaleString(),note:`${e(t.files,`file`)}: ${t.created} created, ${t.edited} edited`}),(0,R.jsx)(Me,{label:`Still in the code`,value:a(t.present,t.written),note:`${t.present.toLocaleString()} lines`}),(0,R.jsx)(Me,{label:`Share of those files`,value:a(t.present,t.totalLines),note:`of ${t.totalLines.toLocaleString()} lines`}),(0,R.jsx)(Me,{label:`Files it created`,value:String(t.headers.unchanged),note:`as written; ${t.headers.changed} changed, ${t.headers.removed} gone`})]}),(0,R.jsx)(Je,{children:`By run, newest first`}),(0,R.jsx)(ve,{label:`Runs that wrote code`,head:[`Run`,`Files`,`Lines still there`],children:t.byRun.map(e=>(0,R.jsx)(ze,{cells:[(0,R.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{className:`font-mono text-[12px]`,children:e.fq}),(0,R.jsxs)(`span`,{className:`text-[13px] text-muted [overflow-wrap:anywhere]`,children:[e.run,e.test?` · ${e.test}`:``]})]},`r`),e.files,`${e.present} of ${e.written}`]},e.fq))}),t.missing.length>0&&(0,R.jsxs)(`p`,{className:`m-0 mt-3 text-[13px] text-muted [overflow-wrap:anywhere]`,children:[`Not found now: `,t.missing.slice(0,10).join(`, `)]})]}):(0,R.jsxs)(`p`,{className:`m-0 flex items-center gap-2 text-sm text-muted`,children:[(0,R.jsx)(zt,{size:16,"aria-hidden":`true`}),`ForgeQE has not written code in `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:t.repo}),` yet.`]})}var Va=[{id:`setup`,group:`Start`,icon:Sn,label:`Set up`,file:``,intro:`The project folder ForgeQE works on, ForgeQE in it, and what this computer needs to run it.`},{id:`environments`,group:`General`,icon:tn,label:`Environments`,file:``,intro:`Where tests run and the apps in each place. The active one is used unless a request names another.`},{id:`browser`,group:`General`,icon:qt,label:`Browser`,file:`forgeqe.yaml`,intro:`How the browser agent runs: where, how it looks, and how long it may take.`},{id:`signins`,group:`General`,icon:$t,label:`Sign-ins`,file:`forgeqe.yaml`,intro:`Logins for the apps you test. Passwords are kept in your credential store, and the model only ever sees a placeholder.`},{id:`integrations`,group:`General`,icon:gn,label:`Integrations`,file:`forgeqe.yaml`,intro:`Test case systems and bugs (sources:), and remote browser grids (browser.providers).`},{id:`notifications`,group:`General`,icon:dt,label:`Notifications`,file:`forgeqe.yaml`,intro:`Teams channels and email lists, and the events each one gets (notify:). Monitor alerts are set under Monitor.`},{id:`mcp`,group:`General`,icon:De,label:`MCP servers`,file:`forgeqe.yaml`,intro:`More MCP servers whose tools ForgeQE's agent gets (mcp:). Each test case system's own server is set with it under Integrations.`},{id:`models`,group:`AI`,icon:je,label:`Models`,file:`llms.json and forgeqe.yaml`,intro:`Which model the agents use, and where the models file is (llm:). API keys you type are kept in your credential store, never in the settings files.`},{id:`routing`,group:`AI`,icon:wn,label:`Routing`,file:`forgeqe.yaml`,intro:`Which model each area of work gets (llm.routing, llm.routes), and falling back to one that works.`},{id:`skills`,group:`AI`,icon:Ze,label:`Skills`,file:`forgeqe.yaml`,intro:`What the agents know how to do: your test conventions, frameworks and apps, as folders with a SKILL.md, grouped by the agents that use them. Add your own for this project.`},{id:`prompts`,group:`AI`,icon:_e,label:`Prompts`,file:``,intro:`The instructions each agent starts from, with the agents that use each. Edit one to change how that agent works in this project, or add your own prompt for the agents you choose.`},{id:`guardrails`,group:`AI`,icon:Ve,label:`Guardrails`,file:`guardrails.md`,intro:`Rules every agent follows, in every chat and schedule.`},{id:`agents`,group:`AI`,icon:ht,label:`Agents`,file:`forgeqe.yaml`,intro:`What the agents know about your product and its rules, where their knowledge and guardrails are, and the tools they get.`},{id:`tests`,group:`Testing`,icon:Dt,label:`Code`,file:`forgeqe.yaml`,intro:`Writing tests (code:): where passed runs become tests, how hard the coding agent tries, its time limits, and the help it gets.`},{id:`runs`,group:`Testing`,icon:yt,label:`Reports and memory`,file:`forgeqe.yaml`,intro:`Where reports are exported (export:, report:), page memory and replays (memory:, registry:), suites, flaky tests, release readiness, defect analysis, and the project report (bi:).`},{id:`parallel`,group:`Testing`,icon:Bn,label:`Parallel execution`,file:`forgeqe.yaml`,intro:`How many browsers, scheduled runs and monitor checks go at once.`},{id:`monitor`,group:`Testing`,icon:Yt,label:`Monitor`,file:`forgeqe.yaml`,intro:`Checks that run on a schedule, and the alerts when one starts failing, keeps failing, or recovers.`},{id:`mobile`,group:`Testing`,icon:Pn,label:`Mobile and desktop`,file:`forgeqe.yaml`,intro:`How Android and iOS apps run (mobile:): Appium or Maestro, devices and device clouds; and how Windows desktop apps replay (desktop:). The apps themselves are in Environments.`},{id:`containers`,group:`Testing`,icon:jt,label:`Containers`,file:`forgeqe.yaml`,intro:`Services for test runs in Docker or Podman (containers:): databases, queues, the API under test, mocks, and the images tests and agents run in.`},{id:`databases`,group:`Testing`,icon:we,label:`Databases`,file:`forgeqe.yaml`,intro:`Databases the agent may read, and write to after you confirm (databases:), for questions, test data and data flows. An environment can add its own.`},{id:`quality`,group:`Testing`,icon:O,label:`Quality`,file:`forgeqe.yaml`,intro:`Accessibility, performance, visual and API checks on every page a run visits.`},{id:`registry`,group:`Activity`,icon:he,label:`Registry`,file:`forgeqe.yaml`,intro:`The plans ForgeQE recorded from passed runs, which it replays without a model, and what each request cost.`},{id:`logs`,group:`Activity`,icon:Ge,label:`Logs`,file:``,intro:`A log of each chat, run and suite on this machine, for finding out what happened.`},{id:`audit`,group:`Activity`,icon:de,label:`Audit`,file:``,intro:`What ForgeQE did and what went wrong: sessions, tool and model calls, runs and errors, and who changed which setting.`},{id:`tokenomics`,group:`Activity`,icon:r,label:`Tokenomics`,file:`forgeqe.yaml`,intro:`Where the tokens and money went, from this project's reports, and the budgets that warn before they run out.`},{id:`generated`,group:`Activity`,icon:zt,label:`Generated code`,file:``,intro:`How much of the code ForgeQE wrote in the repository is still there, by run (forgeqe generated).`},{id:`files`,group:`Advanced`,icon:c,label:`Files`,file:``,intro:`Each file as text, for the settings the form does not cover: mobile, containers, databases, BI and defect analysis.`},{id:`about`,group:`Advanced`,icon:Zt,label:`About ForgeQE`,file:``,intro:`The version of ForgeQE on this computer, updating it, and its guides.`}],Ha=[`guardrails`,`skills`,`prompts`],Ua=Va.filter(e=>!Ha.includes(e.id)),Wa=[...new Set(Ua.map(e=>e.group))],Ga={config:`forgeqe.yaml`,models:`llms.json`,environments:`the environment files`,guardrails:`guardrails.md`,grids:`the browser grid files`,secrets:`keys and passwords`};function Ka(e,t){let n=e.paths.base.replace(/[\\/]+$/,``);return t.startsWith(`${n}/`)||t.startsWith(`${n}\\`)?`./${t.slice(n.length+1).replace(/\\/g,`/`)}`:t}function qa(e){return{config:e.config,models:e.models,environments:e.environments,guardrails:e.guardrails.filter(e=>e.editable).map(e=>e.text),grids:{browserstack:e.grids.browserstack.linked?e.grids.browserstack.value:null,testmu:e.grids.testmu.linked?e.grids.testmu.value:null},secrets:{}}}function Ja({section:e,only:t}){let n=t??e,[r,i]=(0,L.useState)(null),[a,o]=(0,L.useState)(null),[s,c]=(0,L.useState)(``),[l,u]=(0,L.useState)(``),[d,f]=(0,L.useState)(``),[m,g]=(0,L.useState)(!1),[y,b]=(0,L.useState)(!1),[x,S]=(0,L.useState)(null),C=(0,L.useCallback)(()=>{c(``),p.settings().then(e=>{i(e),o(qa(e))},e=>c(e.message))},[]),ee=(0,L.useCallback)(()=>{c(``),Ae.state().then(e=>{S(e),e.ready&&C()},e=>c(e.message))},[C]);(0,L.useEffect)(ee,[ee]);let D=e=>{e.project===x?.project&&e.ready||(i(null),o(null)),S(e),e.ready&&C()},O=!!x?.ready;(0,L.useEffect)(()=>{x&&!O&&n!==`setup`?location.replace(E(`settings`,`setup`)):!t&&n&&Ha.includes(n)&&location.replace(E(n))},[x,O,n]);let k=(x&&!O?Va[0]:Va.find(e=>e.id===n))||Va.find(e=>e.id===`models`);(0,L.useEffect)(()=>{f(``),u(``),b(!1)},[k.id]);let te=r?qa(r):null,A=e=>!!a&&!!te&&!ne(a[e],te[e]),j=Object.keys(Ga).filter(A);(0,L.useEffect)(()=>{if(!j.length)return;let e=e=>e.preventDefault();return window.addEventListener(`beforeunload`,e),()=>window.removeEventListener(`beforeunload`,e)},[j.length]);let M=e=>({value:a[e],set:t=>{f(``),o(n=>({...n,[e]:t}))},vars:r.variables,...e===`config`?{file:`forgeqe.yaml`}:{}}),N=(0,L.useRef)(a);N.current=a;let re=(0,L.useRef)(r);re.current=r;let[ie,F]=(0,L.useState)(``),ae=(0,L.useCallback)(async()=>{let e=N.current,t=re.current;if(!e||!t)return;let n=qa(t),r=Object.keys(Ga).filter(t=>!ne(e[t],n[t]));if(!r.length)return;g(!0),u(``),b(!1);let a=t,s=(t,n)=>o(r=>{if(!r)return r;let i=qa(t),a={...r};for(let t of Object.keys(Ga))if(t===`secrets`){if(!n)continue;a.secrets=Object.fromEntries(Object.entries(r.secrets).filter(([t,n])=>e.secrets[t]!==n))}else(n?ne(r[t],e[t]):ne(r[t],i[t]))&&(a[t]=i[t]);return a});try{for(let i of r)if(i===`secrets`)a=await p.saveSecrets(e.secrets);else if(i===`grids`)for(let[r,i]of Object.entries(e.grids))i&&!ne(i,n.grids[r])&&(a=await p.saveGrid(r,i,t.versions[`grid:${r}`]));else a=i===`guardrails`?await p.saveGuardrails(e.guardrails,t.versions.guardrails):await p.save(i,e[i],t.versions[i]);i(a),s(a,!0),F(``),f(`Saved`)}catch(n){u(n.message),b(n instanceof h&&n.status===409),F(JSON.stringify(e)),a!==t&&(i(a),s(a,!1))}finally{g(!1)}},[]);(0,L.useEffect)(()=>{if(!d)return;let e=setTimeout(()=>f(``),4e3);return()=>clearTimeout(e)},[d]);let oe=a?JSON.stringify(a):``;(0,L.useEffect)(()=>{if(!j.length||m||y||ie&&ie===oe)return;let e=j.every(e=>e===`secrets`),t=setTimeout(ae,e?2e3:1e3);return()=>clearTimeout(t)},[oe,m,y,ie]);let se=async()=>{u(``);try{let e=await p.splitEnvironments();i(e),o(qa(e)),f(`Each environment is now its own file in environments/. The old file is left as it is; ForgeQE no longer reads it.`)}catch(e){u(e.message)}},ce=async(e,t,n)=>{u(``);try{let a=await p.saveText(e,t,n,r?.versions[e]);return i(a),o(qa(a)),f(`Saved ${Ga[e]}.`),!0}catch(e){return u(e.message),!1}},I=null;if(k.id===`setup`)I=x&&(0,R.jsx)(Ma,{state:x,onState:D});else if(r&&a){let e=(k.id===`models`||k.id===`routing`?[`models`,`config`]:k.id===`environments`?[`environments`,`config`]:[`files`,`guardrails`,`prompts`,`logs`,`audit`,`generated`,`about`].includes(k.id)?[]:[`config`]).find(e=>r.errors[e]);switch(k.id){case`models`:I=(0,R.jsx)(B,{config:M(`config`),models:M(`models`),vars:r.variables});break;case`environments`:I=(0,R.jsx)(Di,{envs:M(`environments`),layout:r.paths.environments,files:r.raw.environments,base:r.paths.base,onSplit:se,config:M(`config`),splitBlocked:A(`environments`)||A(`config`)?`Save or discard your changes to the environments and forgeqe.yaml first.`:``});break;case`browser`:I=(0,R.jsx)(H,{groups:Ii,edit:M(`config`)});break;case`routing`:I=(0,R.jsx)(Fi,{config:M(`config`),models:M(`models`)});break;case`generated`:I=(0,R.jsx)(Ba,{});break;case`about`:I=(0,R.jsx)(La,{});break;case`notifications`:case`mcp`:I=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(_a,{view:k.id,edit:M(`config`),grids:a.grids,setGrids:e=>o(t=>({...t,grids:e})),gridPaths:{browserstack:Ka(r,r.grids.browserstack.file),testmu:Ka(r,r.grids.testmu.file)}}),k.id===`notifications`&&(0,R.jsx)(Ra,{})]});break;case`parallel`:I=(0,R.jsx)(H,{groups:Ki,edit:M(`config`)});break;case`mobile`:I=(0,R.jsx)(H,{groups:[...Ji,...Yi],edit:M(`config`)});break;case`containers`:I=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(H,{groups:Xi.slice(0,1),edit:M(`config`)}),(0,R.jsx)(Je,{help:`Each one ForgeQE may start, stop and read: a database, a queue, the API under test.`,children:`Services`}),(0,R.jsx)(sa,{edit:M(`config`),base:[`containers`,`services`],defs:Zi,noun:`service`,placeholder:`db`,meta:e=>[e.image,Array.isArray(e.ports)?`ports ${e.ports.join(`, `)}`:``].filter(Boolean).map(String).join(`, `)}),(0,R.jsx)(H,{groups:Xi.slice(1),edit:M(`config`),continued:!0})]});break;case`databases`:I=(0,R.jsx)(sa,{edit:M(`config`),base:[`databases`],defs:Qi,noun:`database`,placeholder:`orders`,meta:e=>[e.description,e.engine,e.url_env?`from ${e.url_env}`:e.host,e.writable?`writable`:`read only`].filter(Boolean).map(String).join(`, `)});break;case`signins`:I=(0,R.jsx)(na,{edit:M(`config`)});break;case`integrations`:I=(0,R.jsx)(_a,{edit:M(`config`),grids:a.grids,setGrids:e=>{f(``),o(t=>({...t,grids:e}))},gridPaths:{browserstack:Ka(r,r.grids.browserstack.file),testmu:Ka(r,r.grids.testmu.file)}});break;case`tests`:I=(0,R.jsx)(H,{groups:Li,edit:M(`config`)});break;case`runs`:I=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(H,{groups:Ri,edit:M(`config`)}),(0,R.jsx)(H,{groups:Wi,edit:M(`config`),continued:!0}),(0,R.jsx)(Je,{help:`Each one a table of the project report: forgeqe.<name>.`,children:`Report datasets`}),(0,R.jsx)(sa,{edit:M(`config`),base:[`bi`,`datasets`],defs:Gi,noun:`dataset`,placeholder:`open_bugs`,meta:e=>[e.title,e.kind===`jira_jql`?`Jira`:e.kind===`ado_wiql`?`Azure DevOps`:``].filter(Boolean).map(String).join(`, `)})]});break;case`quality`:I=(0,R.jsx)(H,{groups:zi,edit:M(`config`)});break;case`agents`:I=(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(H,{groups:Bi,edit:M(`config`)}),(0,R.jsx)(za,{})]});break;case`guardrails`:I=(0,R.jsx)(ra,{rules:a.guardrails,others:r.guardrails.filter(e=>!e.editable),onChange:e=>o({...a,guardrails:e})});break;case`monitor`:I=(0,R.jsx)(wa,{edit:M(`config`)});break;case`skills`:I=(0,R.jsx)(mi,{edit:M(`config`)});break;case`prompts`:I=(0,R.jsx)(yi,{onChanged:f});break;case`registry`:I=(0,R.jsx)(ue,{edit:M(`config`)});break;case`logs`:I=(0,R.jsx)(Ue,{});break;case`audit`:I=(0,R.jsx)(ke,{});break;case`tokenomics`:I=(0,R.jsx)(ge,{edit:M(`config`)});break;case`files`:I=(0,R.jsx)(aa,{snap:r,dirty:{config:A(`config`),models:A(`models`),environments:A(`environments`)},onSave:ce})}e&&(I=(0,R.jsxs)(`p`,{role:`alert`,className:`m-0 rounded-[12px] bg-fail-soft px-4 py-3 text-sm leading-relaxed text-fail`,children:[e===`environments`?`An environment file`:Ga[e],` does not parse, so the form cannot show it: `,r.errors[e],`. Fix it under `,(0,R.jsx)(`a`,{href:E(`settings`,`files`),children:`Files`}),`.`]}))}let de=l?(0,R.jsxs)(`div`,{role:`alert`,className:`flex w-full flex-wrap items-center gap-3 rounded-[14px] border border-fail-soft bg-fail-soft px-4 py-3 text-sm leading-relaxed text-fail shadow-composer`,children:[(0,R.jsx)(`span`,{className:`flex-[1_1_260px] [overflow-wrap:anywhere]`,children:l}),y?(0,R.jsx)(P,{onClick:()=>{b(!1),u(``),F(``),ee()},children:`Reload, and lose my unsaved changes`}):(0,R.jsxs)(`span`,{className:`flex gap-2`,children:[j.length>0&&(0,R.jsx)(P,{onClick:()=>{o(te),u(``),F(``)},children:`Undo my change`}),(0,R.jsx)(P,{onClick:()=>{u(``),F(``),ae()},children:`Try again`})]})]}):null,fe={pending:a?.secrets||{},set:(e,t)=>{f(``),o(n=>{let r={...n.secrets};return t===void 0?delete r[e]:r[e]=t,{...n,secrets:r}})},saved:new Set(r?.saved||[]),vars:r?.variables||{},store:r?.store||`the credential store`};return(0,R.jsx)(Ce.Provider,{value:fe,children:(0,R.jsxs)(`div`,{className:`flex min-h-screen flex-col`,children:[(0,R.jsx)(Ie,{}),(0,R.jsxs)(`main`,{className:T(`mx-auto box-border flex w-full flex-auto flex-col items-stretch gap-x-10 gap-y-6 px-6 pt-10 pb-12 sm:flex-row sm:items-start`,t?`max-w-[800px]`:`max-w-[1080px]`),children:[(0,R.jsxs)(`div`,{className:T(`w-full flex-col gap-1 sm:sticky sm:top-6 sm:max-h-[calc(100vh-48px)] sm:w-[220px] sm:flex-none sm:overflow-y-auto sm:pb-4`,t?`hidden`:`flex`),children:[(0,R.jsxs)(`div`,{className:`mb-4 ml-3 flex items-center gap-3`,children:[(0,R.jsx)(Pe,{icon:le,size:`lg`}),(0,R.jsx)(`h1`,{className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:`Settings`})]}),(0,R.jsx)(Ya,{ready:O}),(0,R.jsx)(`label`,{htmlFor:`section-pick`,className:`sr-only`,children:`Section`}),(0,R.jsx)(w,{id:`section-pick`,value:k.id,onChange:e=>location.hash=E(`settings`,e.target.value),className:`sm:hidden`,children:Wa.map(e=>(0,R.jsx)(`optgroup`,{label:e,children:Ua.filter(t=>t.group===e).map(e=>(0,R.jsx)(`option`,{value:e.id,disabled:!O&&e.id!==`setup`,children:e.label},e.id))},e))}),(0,R.jsx)(`nav`,{"aria-label":`Settings sections`,className:`hidden flex-col gap-5 sm:flex`,children:Wa.map(e=>(0,R.jsxs)(`div`,{role:`group`,"aria-labelledby":`group-${e}`,className:`flex flex-col gap-0.5`,children:[(0,R.jsx)(`span`,{id:`group-${e}`,className:`px-3 pb-1 text-[13px] font-medium text-muted`,children:e}),Ua.filter(t=>t.group===e).map(e=>x&&!O&&e.id!==`setup`?(0,R.jsxs)(`span`,{"aria-disabled":`true`,title:`Set up ForgeQE in a project folder first`,className:`flex min-h-10 cursor-not-allowed items-center gap-3 rounded-[10px] px-3 text-sm font-medium text-muted opacity-60`,children:[(0,R.jsx)(e.icon,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none`}),(0,R.jsx)(`span`,{className:`flex-1`,children:e.label}),(0,R.jsx)(on,{size:14,"aria-label":`Locked`,className:`flex-none`})]},e.id):(0,R.jsxs)(`a`,{href:E(`settings`,e.id),"aria-current":k.id===e.id?`page`:void 0,className:T(`flex min-h-10 items-center gap-3 rounded-[10px] px-3 text-sm font-medium no-underline`,k.id===e.id?`bg-surface-strong text-ink hover:text-ink`:`text-muted hover:bg-surface-muted hover:text-ink`),children:[(0,R.jsx)(e.icon,{size:18,strokeWidth:1.8,"aria-hidden":`true`,className:`flex-none`}),e.label]},e.id))]},e))})]}),(0,R.jsxs)(`section`,{"aria-labelledby":`sec-h`,className:`flex min-w-0 flex-1 flex-col`,children:[(0,R.jsxs)(`div`,{className:`mb-1 flex items-center gap-3`,children:[(0,R.jsx)(Pe,{icon:k.icon,size:`lg`}),t?(0,R.jsx)(`h1`,{id:`sec-h`,className:`m-0 text-[26px] font-semibold tracking-[-0.01em]`,children:k.label}):(0,R.jsx)(`h2`,{id:`sec-h`,className:`m-0 text-lg font-semibold`,children:k.label})]}),(0,R.jsxs)(`p`,{className:`mt-0 mb-5 max-w-[60ch] text-sm leading-relaxed text-muted`,children:[k.intro,k.file&&r&&(0,R.jsxs)(R.Fragment,{children:[` `,`Saved in `,(0,R.jsx)(`span`,{className:`font-mono text-[13px]`,children:k.file}),`.`]})]}),s&&(0,R.jsxs)(`div`,{role:`alert`,className:`flex flex-col items-start gap-4 rounded-[18px] border border-line p-6`,children:[(0,R.jsx)(`p`,{className:`m-0 max-w-[60ch] leading-relaxed text-ink-2`,children:s}),(0,R.jsx)(P,{onClick:ee,children:`Try again`})]}),x&&!O&&(0,R.jsxs)(`p`,{className:`mt-0 mb-5 flex items-start gap-2 rounded-[12px] bg-surface-muted px-4 py-3 text-sm leading-relaxed text-ink-2`,children:[(0,R.jsx)(on,{size:16,"aria-hidden":`true`,className:`mt-0.5 flex-none`}),`The other sections open once ForgeQE is set up in a project folder: choose the folder, then Set up this folder.`]}),!s&&(!x||k.id!==`setup`&&!r)&&(0,R.jsx)(`p`,{role:`status`,className:`m-0 text-sm text-muted`,children:`Loading settings…`}),I,(0,R.jsxs)(`div`,{className:`sticky bottom-4 z-10 mt-8 flex flex-col items-end gap-2`,children:[de,(0,R.jsx)(`div`,{"aria-live":`polite`,className:`contents`,children:!l&&(j.length>0||m||d)&&(0,R.jsx)(`span`,{className:T(`inline-flex min-h-9 items-center gap-2 rounded-full border border-line bg-bg px-4 text-[13px] shadow-composer`,j.length||m?`text-ink-2`:`text-pass`),children:j.length||m?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(v,{state:`working`,px:16}),`Saving…`]}):(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(_,{size:14,"aria-hidden":`true`}),d]})})})]})]})]})]})})}function Ya({ready:e}){let[t,n]=(0,L.useState)(``),r=t.toLowerCase().split(/\s+/).filter(Boolean),i=e=>Va.find(t=>t.id===e)?.label||e,a=r.length?Oa.filter(e=>r.every(t=>`${e.label} ${e.key} ${i(e.section)}`.toLowerCase().includes(t))).slice(0,12):[];return(0,R.jsxs)(`div`,{className:`mb-4 flex flex-col gap-1 px-1`,children:[(0,R.jsx)(`label`,{htmlFor:`find-setting`,className:`sr-only`,children:`Find a setting`}),(0,R.jsx)(S,{id:`find-setting`,type:`search`,value:t,disabled:!e,placeholder:`Find a setting`,title:`By its name or its forgeqe.yaml key: max attempts, memory.dir`,onChange:e=>n(e.target.value)}),r.length>0&&(0,R.jsxs)(`ul`,{"aria-label":`Settings found`,className:`m-0 flex list-none flex-col p-0`,children:[a.length===0&&(0,R.jsx)(`li`,{className:`px-2 py-2 text-[13px] text-muted`,children:`Nothing called that. Every key can also be edited as text under Files.`}),a.map(e=>(0,R.jsx)(`li`,{children:(0,R.jsxs)(`a`,{href:E(`settings`,e.section),onClick:()=>n(``),className:`flex flex-col rounded-[10px] px-2 py-1.5 text-ink no-underline hover:bg-surface-muted hover:text-ink`,children:[(0,R.jsx)(`span`,{className:`text-sm`,children:e.label}),(0,R.jsxs)(`span`,{className:`text-[12px] text-muted`,children:[i(e.section),` · `,(0,R.jsx)(`code`,{className:`font-mono text-[11.5px]`,children:e.key})]})]})},`${e.section}:${e.key}`))]})]})}var Xa=`modulepreload`,Za=function(e){return`/`+e},Qa={},$a=function(e){return e.pathname.endsWith(`.css`)},eo=function(e,t,n){if(t in e)return e[t];let r=n();if(!r){e[t]=void 0;return}let i=r.then(()=>{e[t]=void 0},n=>{throw e[t]=void 0,n});return e[t]=i,i},to=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e,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?new URL(import.meta.resolve(e)):new URL(e,import.meta.url)}r=o(t.map(t=>{t=Za(t,n);let r=s(t),i=$a(r);return eo(Qa,r.href,()=>{if(e===void 0){e={all:new Set,styles:new Set};let t=document.getElementsByTagName(`link`);for(let n=t.length-1;n>=0;n--){let r=t[n];e.all.add(r.href),r.rel===`stylesheet`&&e.styles.add(r.href)}}if((i?e.styles:e.all).has(r.href))return;let t=document.createElement(`link`);if(t.rel=i?`stylesheet`:Xa,i||(t.as=`script`),t.crossOrigin=``,t.href=r.href,a&&t.setAttribute(`nonce`,a),document.head.appendChild(t),i)return new Promise((e,n)=>{t.addEventListener(`load`,e),t.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${r}`)))})})}).filter(e=>e!==void 0))}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)})},no=(0,L.lazy)(()=>to(()=>import(`./Chat-BRCv-waj.js`).then(e=>({default:e.Chat})),__vite__mapDeps([0,1,2,3,4,5]))),ro=(0,L.lazy)(()=>to(()=>import(`./Chat-BRCv-waj.js`).then(e=>({default:e.Chats})),__vite__mapDeps([0,1,2,3,4,5]))),io=(0,L.lazy)(()=>to(()=>import(`./Reports-CZTOMDhT.js`).then(e=>({default:e.Reports})),__vite__mapDeps([6,1,7,3,4,5]))),ao=(0,L.lazy)(()=>to(()=>import(`./Runs-B29dpes6.js`).then(e=>({default:e.Runs})),__vite__mapDeps([8,1,9,10,3,4,11,2]))),oo=(0,L.lazy)(()=>to(()=>import(`./Record-uvTYm_xC.js`).then(e=>({default:e.Record})),__vite__mapDeps([12,1,9,3,4,11,13,14]))),so=(0,L.lazy)(()=>to(()=>import(`./Regression-C09uOUEu.js`).then(e=>({default:e.Regression})),__vite__mapDeps([15,1,4,13]))),co=(0,L.lazy)(()=>to(()=>import(`./ApiTests-CoFraMwL.js`).then(e=>({default:e.ApiTests})),__vite__mapDeps([16,1,3,4,11]))),lo=(0,L.lazy)(()=>to(()=>import(`./Quality-DS_r7p5G.js`).then(e=>({default:e.Quality})),__vite__mapDeps([17,1,3,4]))),U=(0,L.lazy)(()=>to(()=>import(`./Data-C-xQyf3P.js`).then(e=>({default:e.Data})),__vite__mapDeps([18,1,3,4,11,14]))),W=(0,L.lazy)(()=>to(()=>import(`./Features-VtoyECeO.js`).then(e=>({default:e.Features})),__vite__mapDeps([19,1,7,3,4]))),uo=(0,L.lazy)(()=>to(()=>import(`./Jobs-8t_bMM0e.js`).then(e=>({default:e.Jobs})),__vite__mapDeps([20,1,10,3,4,14])));function fo(){let[e=``,t,...n]=Qe(),[,r]=(0,L.useState)(0);return(0,L.useEffect)(()=>{ae.get().then(e=>{Ke(e),r(e=>e+1)},()=>{})},[]),(0,R.jsx)(ye,{current:e,chat:e===`chats`?t:void 0,children:(0,R.jsx)(po,{page:e,sub:e===`data`&&t?[t,...n].join(`/`):t})})}function po({page:e,sub:t}){if(e===`settings`)return(0,R.jsx)(Ja,{section:t});if(e===`chats`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:t?(0,R.jsx)(no,{id:t}):(0,R.jsx)(ro,{})});if(e===`reports`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(io,{sub:t})});if(e===`jobs`||e===`schedules`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(uo,{sub:e===`jobs`?t:void 0})});if(e===`regression`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(so,{sub:t})});if(e===`api-tests`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(co,{sub:t})});if(e===`quality`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(lo,{sub:t})});if(e===`data`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(U,{sub:t})});if(e===`features`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(W,{})});if(e===`record`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(oo,{})});if(e===`runs`)return(0,R.jsx)(L.Suspense,{fallback:(0,R.jsx)(`p`,{className:`m-0 px-6 py-10 text-sm text-muted`,children:`Opening…`}),children:(0,R.jsx)(ao,{sub:t})});if(e===`knowledge`)return(0,R.jsx)(Ar,{});if(e===`memory`)return(0,R.jsx)(Vr,{});if(Ha.includes(e))return(0,R.jsx)(Ja,{only:e},e);let n=Hr.find(t=>t.id===e);return n?(0,R.jsx)(Ur,{section:n}):(0,R.jsx)(Dr,{})}Be(),I(),(0,Zn.createRoot)(document.getElementById(`root`)).render((0,R.jsx)(L.StrictMode,{children:(0,R.jsx)(fo,{})}));export{Ct as A,fn as C,qt as D,Yt as E,ht as M,dt as N,Vt as O,lt as P,vn as S,Zt as T,Mn as _,xr as a,En as b,rr as c,Qn as d,Xn as f,In as g,Hn as h,wr as i,xt as j,Nt as k,er as l,Wn as m,si as n,tr as o,Jn as p,li as r,nr as s,di as t,$n as u,An as v,rn as w,wn as x,On as y};
|