@aistrike-dev/ui-shell-dev 2.0.2 → 2.0.3

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aistrike-dev/ui-shell-dev",
3
- "version": "2.0.2",
3
+ "version": "2.0.3",
4
4
  "description": "A Vite plugin that serves the AiStrike UI shell from your micro front-end's dev server, plus a dev-token CLI.",
5
5
  "license": "SEE LICENSE IN LICENSE",
6
6
  "repository": {
@@ -1,2 +1,2 @@
1
- import{$ as e,A as t,At as n,B as r,C as i,Ct as a,D as o,Dt as s,E as c,Et as l,F as u,Ft as d,G as f,H as p,I as m,It as h,J as g,K as _,L as v,Lt as y,M as b,Mt as x,N as S,Nt as C,O as w,Ot as T,P as E,Pt as D,Q as ee,R as O,S as te,St as k,T as A,Tt as ne,U as j,V as M,W as N,X as P,Y as F,Z as re,_ as I,_t as L,a as R,at as z,b as ie,bt as ae,c as B,ct as oe,d as se,dt as ce,et as le,f as V,ft as H,g as ue,gt as de,h as U,ht as fe,i as pe,it as me,j as he,jt as ge,k as _e,kt as ve,l as ye,lt as W,m as G,mt as K,n as be,nt as xe,o as Se,ot as Ce,p as we,pt as q,q as Te,r as Ee,rt as De,s as Oe,st as ke,t as Ae,tt as je,u as J,ut as Me,v as Ne,vt as Pe,w as Fe,wt as Ie,x as Le,xt as Re,y as ze,yt as Be,z as Ve}from"./index-BoywW9k1.js";function He(e){return q(`MuiCheckbox`,e)}var Ue=H(`MuiCheckbox`,[`root`,`checked`,`disabled`,`indeterminate`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`]);function We(e){return q(`MuiFormControlLabel`,e)}var Ge=H(`MuiFormControlLabel`,[`root`,`labelPlacementStart`,`labelPlacementEnd`,`labelPlacementTop`,`labelPlacementBottom`,`disabled`,`label`,`error`,`required`,`asterisk`]);function Ke(e){return q(`MuiSlider`,e)}var Y=H(`MuiSlider`,`root.active.colorPrimary.colorSecondary.colorError.colorInfo.colorSuccess.colorWarning.disabled.dragging.focusVisible.mark.markActive.marked.markLabel.markLabelActive.rail.sizeSmall.thumb.track.trackInverted.trackFalse.valueLabel.valueLabelOpen.valueLabelCircle.valueLabelLabel.vertical`.split(`.`));function qe(e){return q(`MuiToggleButton`,e)}var Je=H(`MuiToggleButton`,[`root`,`disabled`,`selected`,`standard`,`primary`,`secondary`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`fullWidth`]);function Ye(e){return q(`PrivateSwitchBase`,e)}H(`PrivateSwitchBase`,[`root`,`checked`,`disabled`,`input`,`edgeStart`,`edgeEnd`]);var X=y(Be(),1),Z=fe(),Xe=e=>{let{classes:t,checked:n,disabled:r,edge:i}=e,a={root:[`root`,n&&`checked`,r&&`disabled`,i&&`edge${_(i)}`],input:[`input`]};return ke(a,Ye,t)},Ze=F(_e,{name:`MuiSwitchBase`})({padding:9,borderRadius:`50%`,variants:[{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:({edge:e,ownerState:t})=>e===`start`&&t.size!==`small`,style:{marginLeft:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}},{props:({edge:e,ownerState:t})=>e===`end`&&t.size!==`small`,style:{marginRight:-12}}]}),Qe=F(`input`,{name:`MuiSwitchBase`,shouldForwardProp:P})({cursor:`inherit`,position:`absolute`,opacity:0,width:`100%`,height:`100%`,top:0,left:0,margin:0,padding:0,zIndex:1}),$e=X.forwardRef(function(t,n){let{autoFocus:r,checked:i,checkedIcon:a,defaultChecked:o,disabled:s,disableFocusRipple:c=!1,edge:l=!1,icon:d,id:f,name:p,onBlur:m,onChange:h,onFocus:g,readOnly:_,required:v=!1,tabIndex:y,type:b,value:x,slots:S={},slotProps:C={},...w}=t,{nativeButton:T,...E}=w,[D,ee]=u({controlled:i,default:!!o,name:`SwitchBase`,state:`checked`}),O=e(),te=e=>{g&&g(e),O&&O.onFocus&&O.onFocus(e)},k=e=>{m&&m(e),O&&O.onBlur&&O.onBlur(e)},ne=e=>{if(e.nativeEvent.defaultPrevented||_)return;let t=e.target.checked;ee(t),h&&h(e,t)},j=s;O&&j===void 0&&(j=O.disabled);let M=b===`checkbox`||b===`radio`,N={...t,checked:D,disabled:j,disableFocusRipple:c,edge:l},P=Xe(N),F={slots:S,slotProps:C},[re,I]=A(`root`,{ref:n,elementType:Ze,className:P.root,shouldForwardComponentProp:!0,externalForwardedProps:{...F,component:`span`,...E},getSlotProps:e=>({...e,onFocus:t=>{e.onFocus?.(t),te(t)},onBlur:t=>{e.onBlur?.(t),k(t)}}),ownerState:N,additionalProps:{centerRipple:!0,focusRipple:!c,role:void 0,tabIndex:null,internalDisabledThemeFocusVisible:!0}}),[L,R]=A(`input`,{elementType:Qe,className:P.input,externalForwardedProps:F,getSlotProps:e=>({...e,onChange:t=>{e.onChange?.(t),ne(t)}}),ownerState:N,additionalProps:{autoFocus:r,checked:i,defaultChecked:o,disabled:j,id:M?f:void 0,name:p,readOnly:_,required:v,tabIndex:y,type:b,...b===`checkbox`&&x===void 0?{}:{value:x}}});return(0,Z.jsxs)(re,{...I,children:[(0,Z.jsx)(L,{...R}),D?a:d]})}),et=Ve((0,Z.jsx)(`path`,{d:`M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z`}),`CheckBoxOutlineBlank`),tt=Ve((0,Z.jsx)(`path`,{d:`M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z`}),`CheckBox`),nt=Ve((0,Z.jsx)(`path`,{d:`M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z`}),`IndeterminateCheckBox`),rt=e=>{let{classes:t,indeterminate:n,color:r,size:i}=e,a={root:[`root`,n&&`indeterminate`,`color${_(r)}`,`size${_(i)}`]},o=ke(a,He,t);return{...t,...o}},it=F($e,{shouldForwardProp:e=>P(e)||e===`classes`,name:`MuiCheckbox`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${_(n.size)}`],n.color!=="default"&&t[`color${_(n.color)}`]]}})(g(({theme:e})=>({color:(e.vars||e).palette.text.secondary,...e.focusVisible&&{[`&.${t.focusVisible} svg:first-of-type`]:{...Ce,borderRadius:(e.vars||e).shape.borderRadius,...e.focusVisible}},variants:[{props:{color:`default`,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity)}}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}})),...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{[`&.${Ue.checked}, &.${Ue.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Ue.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:`transparent`}}}}]}))),at=(0,Z.jsx)(tt,{}),ot=(0,Z.jsx)(et,{}),st=(0,Z.jsx)(nt,{}),ct=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiCheckbox`}),{checkedIcon:r=at,color:i=`primary`,icon:a=ot,indeterminate:o=!1,indeterminateIcon:s=st,size:c=`medium`,disableRipple:l=!1,className:u,slots:d={},slotProps:f={},...p}=n,m=o?s:a,h=o?s:r,g={...n,disableRipple:l,color:i,indeterminate:o,size:c},_=rt(g),v=f.input,[y,b]=A(`root`,{ref:t,elementType:it,className:K(_.root,u),shouldForwardComponentProp:!0,externalForwardedProps:{slots:d,slotProps:f,...p},ownerState:g,additionalProps:{type:`checkbox`,icon:X.cloneElement(m,{fontSize:m.props.fontSize??c}),checkedIcon:X.cloneElement(h,{fontSize:h.props.fontSize??c}),disableRipple:n.disableRipple,slots:d,slotProps:{input:S(typeof v==`function`?v(g):v,{"data-indeterminate":o,"aria-checked":o?`mixed`:void 0})}}});return(0,Z.jsx)(y,{...b,classes:_})});function lt(e){return q(`MuiSwitch`,e)}var Q=H(`MuiSwitch`,[`root`,`edgeStart`,`edgeEnd`,`switchBase`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`,`checked`,`disabled`,`input`,`thumb`,`track`]),ut=e=>{let{classes:t,edge:n,size:r,color:i,checked:a,disabled:o}=e,s={root:[`root`,n&&`edge${_(n)}`,`size${_(r)}`],switchBase:[`switchBase`,`color${_(i)}`,a&&`checked`,o&&`disabled`],thumb:[`thumb`],track:[`track`],input:[`input`]},c=ke(s,lt,t);return{...t,...c}},dt=F(`span`,{name:`MuiSwitch`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.edge&&t[`edge${_(n.edge)}`],t[`size${_(n.size)}`]]}})({display:`inline-flex`,width:58,height:38,overflow:`hidden`,padding:12,boxSizing:`border-box`,position:`relative`,flexShrink:0,zIndex:0,verticalAlign:`middle`,"@media print":{colorAdjust:`exact`},variants:[{props:{edge:`start`},style:{marginLeft:-8}},{props:{edge:`end`},style:{marginRight:-8}},{props:{size:`small`},style:{width:40,height:24,padding:7,[`& .${Q.thumb}`]:{width:16,height:16},[`& .${Q.switchBase}`]:{padding:4,[`&.${Q.checked}`]:{transform:`translateX(16px)`}}}}]}),ft=F($e,{name:`MuiSwitch`,slot:`SwitchBase`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.switchBase,{[`& .${Q.input}`]:t.input},n.color!=="default"&&t[`color${_(n.color)}`]]}})(g(({theme:e})=>({position:`absolute`,top:0,left:0,zIndex:1,color:e.vars?e.vars.palette.Switch.defaultColor:`${e.palette.mode===`light`?e.palette.common.white:e.palette.grey[300]}`,...M(e,[`left`,`transform`],{duration:e.transitions.duration.shortest}),[`&.${Q.checked}`]:{transform:`translateX(20px)`},[`&.${Q.disabled}`]:{color:e.vars?e.vars.palette.Switch.defaultDisabledColor:`${e.palette.mode===`light`?e.palette.grey[100]:e.palette.grey[600]}`},...e.focusVisible?{[`&.${t.focusVisible} ~ .${Q.track}`]:{...Ce,...e.focusVisible},[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,.5)},[`&.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)}}:{[`&.${Q.checked} + .${Q.track}`]:{opacity:.5},[`&.${Q.disabled} + .${Q.track}`]:{opacity:e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`}},[`& .${Q.input}`]:{left:`-100%`,width:`300%`}})),g(({theme:e})=>({"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},variants:[...Object.entries(e.palette).filter(w([`light`])).map(([t])=>({props:{color:t},style:{[`&.${Q.checked}`]:{color:(e.vars||e).palette[t].main,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},[`&.${Q.disabled}`]:{color:e.vars?e.vars.palette.Switch[`${t}DisabledColor`]:`${e.palette.mode===`light`?e.lighten(e.palette[t].main,.62):e.darken(e.palette[t].main,.55)}`}},[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:(e.vars||e).palette[t].main},...e.focusVisible&&{[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,.5)},[`&.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)},[`&.${Q.checked}.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)}}}}))]}))),pt=F(`span`,{name:`MuiSwitch`,slot:`Track`})(g(({theme:e})=>({height:`100%`,width:`100%`,borderRadius:7,zIndex:-1,...M(e,[`opacity`,`background-color`],{duration:e.transitions.duration.shortest}),"@media (forced-colors: active)":{boxSizing:`border-box`,border:`1px solid ButtonBorder`},...e.focusVisible?{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrack:`${e.palette.mode===`light`?.38:.3}`)}:{backgroundColor:e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,opacity:e.vars?e.vars.opacity.switchTrack:`${e.palette.mode===`light`?.38:.3}`}}))),mt=F(`span`,{name:`MuiSwitch`,slot:`Thumb`})(g(({theme:e})=>({boxShadow:(e.vars||e).shadows[1],backgroundColor:`currentColor`,boxSizing:`border-box`,border:`1px solid transparent`,width:20,height:20,borderRadius:`50%`}))),ht=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiSwitch`}),{className:r,color:i=`primary`,edge:a=!1,size:o=`medium`,sx:s,slots:c={},slotProps:l={},...u}=n,d={...n,color:i,edge:a,size:o},f=ut(d),p=l.input,m={slots:c,slotProps:l},[h,g]=A(`root`,{className:K(f.root,r),elementType:dt,externalForwardedProps:m,ownerState:d,additionalProps:{sx:s}}),[_,v]=A(`thumb`,{className:f.thumb,elementType:mt,externalForwardedProps:m,ownerState:d}),y=(0,Z.jsx)(_,{...v}),[b,x]=A(`track`,{className:f.track,elementType:pt,externalForwardedProps:m,ownerState:d});return(0,Z.jsxs)(h,{...g,children:[(0,Z.jsx)(ft,{type:`checkbox`,icon:y,checkedIcon:y,ref:t,ownerState:d,...u,classes:{...f,root:f.switchBase},slots:{...c.switchBase&&{root:c.switchBase},...c.input&&{input:c.input}},slotProps:{...l.switchBase&&{root:typeof l.switchBase==`function`?l.switchBase(d):l.switchBase},input:S(typeof p==`function`?p(d):p,{role:`switch`})}}),(0,Z.jsx)(b,{...x})]})}),gt={border:0,clipPath:`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:0,position:`absolute`,whiteSpace:`nowrap`,width:`1px`};function _t(e,t,n=(e,t)=>e===t){return e.length===t.length&&e.every((e,r)=>n(e,t[r]))}var vt=2,yt=[],bt={};function xt(e,t,n,r,i){return n===1?Math.min(e+t,i):Math.max(e-t,r)}function St(e,t){return e-t}function Ct(e,t,n=-1){let{index:r}=e.reduce((e,n,r)=>{let i=Math.abs(t-n);return e==null||i<=e.distance?{distance:i,index:r}:e},null)??bt;return r==null?r:n>=0&&e[n]===e[r]?n:r}function wt(e,t){if(t.current!=null&&e.changedTouches){let n=e;for(let e=0;e<n.changedTouches.length;e+=1){let r=n.changedTouches[e];if(r.identifier===t.current)return{x:r.clientX,y:r.clientY}}return!1}return{x:e.clientX,y:e.clientY}}function Tt(e,t,n){return(e-t)*100/(n-t)}function Et(e,t,n){return(n-t)*e+t}function Dt(e){if(Math.abs(e)<1){let t=e.toExponential().split(`e-`),n=t[0].split(`.`)[1];return(n?n.length:0)+parseInt(t[1],10)}let t=e.toString().split(`.`)[1];return t?t.length:0}function Ot(e,t,n){let r=Math.round((e-n)/t)*t+n;return Number(r.toFixed(Dt(t)))}function kt(e,t,n){let r=e.slice();return r[n]=t,r.sort(St)}function At(e,t,n,r){let i=je(e.current),a=p(i);if(!ze(e.current,a)||Number(a?.getAttribute(`data-index`))!==t){let n=e.current?.querySelector(`[type="range"][data-index="${t}"]`);n!=null&&(r==null?n.focus({preventScroll:!0}):n.focus({preventScroll:!0,focusVisible:r}))}n&&n(t)}function jt(e,t){return typeof e==`number`&&typeof t==`number`?e===t:typeof e==`object`&&typeof t==`object`&&_t(e,t)}var Mt={horizontal:{offset:e=>({left:`${e}%`}),leap:e=>({width:`${e}%`})},"horizontal-reverse":{offset:e=>({right:`${e}%`}),leap:e=>({width:`${e}%`})},vertical:{offset:e=>({bottom:`${e}%`}),leap:e=>({height:`${e}%`})}},Nt=e=>e;function Pt(e){let{"aria-labelledby":t,defaultValue:n,disabled:r=!1,disableSwap:i=!1,isRtl:a=!1,marks:o=!1,max:s=100,min:l=0,name:u,onChange:d,onChangeCommitted:f,orientation:h=`horizontal`,rootRef:g,scale:_=Nt,step:v=1,shiftStep:y=10,tabIndex:x,value:S}=e,C=X.useRef(void 0),w=X.useRef(null),[T,E]=X.useState(-1),[D,ee]=X.useState(-1),[O,te]=X.useState(!1),k=X.useRef(0),A=X.useRef(-1),ne=X.useRef(!1),j=X.useRef(-1),M=xe(()=>{w.current!=null&&(cancelAnimationFrame(w.current),w.current=null)}),N=X.useRef(null),[P,F]=m({controlled:S,default:n??l,name:`Slider`}),re=xe((e,t,n)=>{let r=`nativeEvent`in e?e.nativeEvent:e,i=new r.constructor(r.type,r);Object.defineProperty(i,"target",{writable:!0,value:{value:t,name:u}}),N.current=t,d?.(i,t,n)}),I=Array.isArray(P),L=X.useMemo(()=>{if(typeof P==`number`)return[W(P,l,s)];if(P==null)return[l];let e=P.slice().sort(St);for(let t=0;t<e.length;t+=1){let n=e[t];e[t]=n==null?l:W(n,l,s)}return e},[P,l,s]),R=X.useMemo(()=>{if(o===!0&&v!=null){let e=Array(Math.floor((s-l)/v)+1);for(let t=0;t<e.length;t+=1)e[t]={value:l+v*t};return e}return Array.isArray(o)?o:yt},[o,v,l,s]),z=X.useMemo(()=>{let e=Array(R.length);for(let t=0;t<R.length;t+=1)e[t]=R[t].value;return e},[R]),[ie,ae]=X.useState(-1),B=X.useRef(null),oe=De(g,B),se=e=>t=>{let n=Number(t.currentTarget.getAttribute(`data-index`));b(t.target)&&ae(n),ee(n),e?.onFocus?.(t)},ce=e=>t=>{b(t.target)||ae(-1),ee(-1),e?.onBlur?.(t)},le=(e,t)=>{let n=Number(e.currentTarget.getAttribute(`data-index`)),r=L[n],a=z.indexOf(r),o=t;if(R&&v==null){let e=z[z.length-1];o=o>=e?e:o<=z[0]?z[0]:o<r?z[a-1]:z[a+1]}if(o=W(o,l,s),I){i&&(o=W(o,L[n-1]||-1/0,L[n+1]||1/0));let e=o;o=kt(L,o,n);let t=n;i||(t=o.indexOf(e)),At(B,t)}F(o),ae(n),d&&!jt(o,P)&&re(e,o,n),f&&f(e,N.current??o)},V=e=>t=>{if([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`].includes(t.key)){t.preventDefault();let e=Number(t.currentTarget.getAttribute(`data-index`)),n=L[e],r=null;if(v!=null){let e=t.shiftKey?y:v;switch(t.key){case`ArrowUp`:r=xt(n,e,1,l,s);break;case`ArrowRight`:r=xt(n,e,a?-1:1,l,s);break;case`ArrowDown`:r=xt(n,e,-1,l,s);break;case`ArrowLeft`:r=xt(n,e,a?1:-1,l,s);break;case`PageUp`:r=xt(n,y,1,l,s);break;case`PageDown`:r=xt(n,y,-1,l,s);break;case`Home`:r=l;break;case`End`:r=s}}else if(R){let e=z[z.length-1],i=z.indexOf(n),o=[a?`ArrowRight`:`ArrowLeft`,`ArrowDown`,`PageDown`,`Home`],s=[a?`ArrowLeft`:`ArrowRight`,`ArrowUp`,`PageUp`,`End`];o.includes(t.key)?r=i===0?z[0]:z[i-1]:s.includes(t.key)&&(r=i===z.length-1?e:z[i+1])}r!=null&&le(t,r)}e?.onKeyDown?.(t)};Me(()=>{let e=p(je(B.current));r&&ze(B.current,e)&&e!=null&&`blur`in e&&e.blur()},[r]),r&&T!==-1&&E(-1),r&&ie!==-1&&ae(-1);let H=e=>t=>{e.onChange?.(t),le(t,t.currentTarget.valueAsNumber)},ue=X.useRef(void 0),de=h;a&&h===`horizontal`&&(de+=`-reverse`);let U=e=>{let{current:t}=B;if(!t)return null;let{width:n,height:r,bottom:a,left:o}=t.getBoundingClientRect(),c;c=de.startsWith(`vertical`)?(a-e.y)/r:(e.x-o)/n,de.includes(`-reverse`)&&(c=1-c);let u;if(u=Et(c,l,s),v)u=Ot(u,v,l);else{let e=Ct(z,u);u=z[e]}u=W(u,l,s);let d=0;if(I){let e=ue.current!==-1;d=e?ue.current:Ct(L,u,A.current),i&&(u=W(u,L[d-1]||-1/0,L[d+1]||1/0));let t=u;u=kt(L,u,d),i&&e||(d=u.indexOf(t),ue.current=d)}return{newValue:u,activeIndex:d}},fe=xe(e=>{if(`pointerId`in e&&e.pointerId!==j.current)return;let t=wt(e,C);if(!t)return;if(k.current+=1,e.type===`pointermove`&&e.buttons===0){pe(e);return}let n=U(t);n&&(At(B,n.activeIndex,E,!1),A.current=n.activeIndex,F(n.newValue),!O&&k.current>vt&&te(!0),d&&!jt(n.newValue,P)&&re(e,n.newValue,n.activeIndex))}),pe=xe(e=>{if(`pointerId`in e&&e.pointerId!==j.current)return;let t=wt(e,C);if(te(!1),!t)return;let n=U(t);E(-1),e.type===`touchend`&&ee(-1),n&&f&&f(e,N.current??n.newValue),`pointerType`in e&&B.current?.hasPointerCapture(e.pointerId)&&B.current.releasePointerCapture(e.pointerId),C.current=void 0,j.current=-1,he()}),me=xe(e=>{if(r)return;if(ne.current){ne.current=!1;let t=e.changedTouches[0];t!=null&&(C.current=t.identifier);return}let t=e.changedTouches[0];t!=null&&(C.current=t.identifier);let n=wt(e,C);if(n!==!1){ue.current=-1;let t=U(n);t&&(At(B,t.activeIndex,E,!1),A.current=t.activeIndex,F(t.newValue),d&&!jt(t.newValue,P)&&re(e,t.newValue,t.activeIndex))}k.current=0;let i=je(B.current);i.addEventListener(`touchmove`,fe,{passive:!0}),i.addEventListener(`touchend`,pe,{passive:!0})}),he=X.useCallback(()=>{let e=je(B.current);e.removeEventListener(`pointermove`,fe),e.removeEventListener(`pointerup`,pe),e.removeEventListener(`touchmove`,fe),e.removeEventListener(`touchend`,pe)},[pe,fe]);X.useEffect(()=>{let e=B.current;if(e)return e.addEventListener(`touchstart`,me,{passive:!0}),()=>{e.removeEventListener(`touchstart`,me),M(),he()}},[he,me,M]),X.useEffect(()=>{r&&(he(),M())},[r,he,M]);let ge=e=>t=>{if(e.onPointerDown?.(t),t.pointerType===`touch`&&(ne.current=!0),r||t.defaultPrevented||t.button!==0)return;let n=wt(t,C);if(n!==!1){ue.current=-1;let e=U(n);if(e){let n=B.current?.querySelector(`input[type="range"][data-index="${e.activeIndex}"]`),r=je(B.current),i=n!=null&&n===p(r);E(e.activeIndex),A.current=e.activeIndex,i?t.preventDefault():(M(),w.current=requestAnimationFrame(()=>{w.current=null,At(B,e.activeIndex,void 0,!1)})),F(e.newValue),d&&!jt(e.newValue,P)&&re(t,e.newValue,e.activeIndex)}}k.current=0,j.current=t.pointerId;let i=je(B.current);try{t.currentTarget.setPointerCapture(t.pointerId)}catch{}i.addEventListener(`pointermove`,fe,{passive:!0}),i.addEventListener(`pointerup`,pe)},_e=Tt(I?L[0]:l,l,s),ve=Tt(L[L.length-1],l,s)-_e,ye=(e=bt)=>{let t=c(e),n={onPointerDown:ge(t)},r={...t,...n};return{...e,ref:oe,...r}},G=e=>t=>{e.onMouseOver?.(t);let n=Number(t.currentTarget.getAttribute(`data-index`));ee(n)},K=e=>t=>{e.onMouseLeave?.(t),ee(-1)},be=(e=bt)=>{let t=c(e),n={onMouseOver:G(t),onMouseLeave:K(t)};return{...e,...t,...n}},Se=e=>{let t;return I?T===e?t=2:A.current===e&&(t=1):T===e&&(t=1),{pointerEvents:T!==-1&&T!==e?`none`:void 0,zIndex:t}},Ce;return h===`vertical`&&(Ce=a?`vertical-rl`:`vertical-lr`),{active:T,axis:de,axisProps:Mt,dragging:O,focusedThumbIndex:ie,getHiddenInputProps:(n=bt)=>{let i=c(n),o={onChange:H(i),onFocus:se(i),onBlur:ce(i),onKeyDown:V(i)},d={...i,...o};return{tabIndex:x,"aria-labelledby":t,"aria-orientation":h,"aria-valuemax":_(s),"aria-valuemin":_(l),name:u,type:`range`,min:e.min,max:e.max,step:e.step===null&&e.marks?`any`:e.step??void 0,disabled:r,...n,...d,style:{...gt,direction:a?`rtl`:`ltr`,width:`100%`,height:`100%`,writingMode:Ce}}},getRootProps:ye,getThumbProps:be,marks:R,open:D,range:I,rootRef:oe,trackLeap:ve,trackOffset:_e,values:L,getThumbStyle:Se}}var Ft=e=>{let{open:t}=e;return{offset:K(t&&Y.valueLabelOpen),circle:Y.valueLabelCircle,label:Y.valueLabelLabel}};function It(e){let{children:t,className:n,value:r}=e,i=Ft(e);return t?X.cloneElement(t,{className:t.props.className},(0,Z.jsxs)(X.Fragment,{children:[t.props.children,(0,Z.jsx)(`span`,{className:K(i.offset,n),"aria-hidden":!0,children:(0,Z.jsx)(`span`,{className:i.circle,children:(0,Z.jsx)(`span`,{className:i.label,children:r})})})]})):null}function Lt(e){return e}var Rt=F(`span`,{name:`MuiSlider`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`color${_(n.color)}`],n.size!==`medium`&&t[`size${_(n.size)}`],n.marked&&t.marked,n.orientation===`vertical`&&t.vertical,n.track===`inverted`&&t.trackInverted,n.track===!1&&t.trackFalse]}})(g(({theme:e})=>({borderRadius:12,boxSizing:`content-box`,display:`inline-block`,position:`relative`,cursor:`pointer`,touchAction:`none`,WebkitTapHighlightColor:`transparent`,"@media print":{colorAdjust:`exact`},[`&.${Y.disabled}`]:{pointerEvents:`none`,cursor:`default`,color:(e.vars||e).palette.grey[400]},[`&.${Y.dragging}`]:{[`& .${Y.thumb}, & .${Y.track}`]:{transition:`none`}},variants:[...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),{props:{orientation:`horizontal`},style:{height:4,width:`100%`,padding:`13px 0`,"@media (pointer: coarse)":{padding:`20px 0`}}},{props:{orientation:`horizontal`,size:`small`},style:{height:2}},{props:{orientation:`horizontal`,marked:!0},style:{marginBottom:20}},{props:{orientation:`vertical`},style:{height:`100%`,width:4,padding:`0 13px`,"@media (pointer: coarse)":{padding:`0 20px`}}},{props:{orientation:`vertical`,size:`small`},style:{width:2}},{props:{orientation:`vertical`,marked:!0},style:{marginRight:44}}]}))),zt=F(`span`,{name:`MuiSlider`,slot:`Rail`})({display:`block`,position:`absolute`,borderRadius:`inherit`,backgroundColor:`currentColor`,opacity:.38,"@media (forced-colors: active)":{border:`1px solid transparent`,boxSizing:`border-box`},variants:[{props:{orientation:`horizontal`},style:{width:`100%`,height:`inherit`,top:`50%`,transform:`translateY(-50%)`}},{props:{orientation:`vertical`},style:{height:`100%`,width:`inherit`,left:`50%`,transform:`translateX(-50%)`}},{props:{track:`inverted`},style:{opacity:1}}]}),Bt=F(`span`,{name:`MuiSlider`,slot:`Track`})(g(({theme:e})=>({display:`block`,position:`absolute`,borderRadius:`inherit`,border:`1px solid currentColor`,backgroundColor:`currentColor`,...M(e,[`left`,`width`,`bottom`,`height`],{duration:e.transitions.duration.shortest}),variants:[{props:{size:`small`},style:{"@media (forced-colors: none)":{border:`none`}}},{props:{orientation:`horizontal`},style:{height:`inherit`,top:`50%`,transform:`translateY(-50%)`}},{props:{orientation:`vertical`},style:{width:`inherit`,left:`50%`,transform:`translateX(-50%)`}},{props:{track:!1},style:{display:`none`}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t,track:`inverted`},style:{...e.vars?{backgroundColor:e.vars.palette.Slider[`${t}Track`],borderColor:e.vars.palette.Slider[`${t}Track`]}:{backgroundColor:e.lighten(e.palette[t].main,.62),borderColor:e.lighten(e.palette[t].main,.62),...e.applyStyles(`dark`,{backgroundColor:e.darken(e.palette[t].main,.5)}),...e.applyStyles(`dark`,{borderColor:e.darken(e.palette[t].main,.5)})}}}))]}))),Vt=F(`span`,{name:`MuiSlider`,slot:`Thumb`})(g(({theme:e})=>({position:`absolute`,width:20,height:20,boxSizing:`border-box`,borderRadius:`50%`,outline:0,backgroundColor:`currentColor`,display:`flex`,alignItems:`center`,justifyContent:`center`,...M(e,[`box-shadow`,`left`,`bottom`],{duration:e.transitions.duration.shortest}),"@media (forced-colors: active)":{border:`1px solid ButtonBorder`},"&::before":{position:`absolute`,content:`""`,borderRadius:`inherit`,width:`100%`,height:`100%`,boxShadow:(e.vars||e).shadows[2]},"&::after":{position:`absolute`,content:`""`,borderRadius:`50%`,width:42,height:42,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`},[`&.${Y.disabled}`]:{"&:hover":{boxShadow:`none`}},...e.focusVisible&&{[`&.${Y.focusVisible}`]:{...Ce,...e.focusVisible}},variants:[{props:{size:`small`},style:{width:12,height:12,"&::before":{boxShadow:`none`}}},{props:{orientation:`horizontal`},style:{top:`50%`,transform:`translate(-50%, -50%)`}},{props:{orientation:`vertical`},style:{left:`50%`,transform:`translate(-50%, 50%)`}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{"&:hover":{boxShadow:`0px 0px 0px 8px ${e.alpha((e.vars||e).palette[t].main,.16)}`,"@media (hover: none)":{boxShadow:`none`}},...!e.focusVisible&&{[`&.${Y.focusVisible}`]:{boxShadow:`0px 0px 0px 8px ${e.alpha((e.vars||e).palette[t].main,.16)}`,"@media (hover: none)":{boxShadow:`none`}}},[`&.${Y.active}`]:{boxShadow:`0px 0px 0px 14px ${e.alpha((e.vars||e).palette[t].main,.16)}`}}}))]}))),Ht=F(It,{name:`MuiSlider`,slot:`ValueLabel`})(g(({theme:e})=>({zIndex:1,whiteSpace:`nowrap`,...e.typography.body2,fontWeight:500,...M(e,[`transform`],{duration:e.transitions.duration.shortest}),position:`absolute`,backgroundColor:(e.vars||e).palette.grey[600],borderRadius:2,color:(e.vars||e).palette.common.white,display:`flex`,alignItems:`center`,justifyContent:`center`,padding:`0.25rem 0.75rem`,variants:[{props:{orientation:`horizontal`},style:{transform:`translateY(-100%) scale(0)`,top:`-10px`,transformOrigin:`bottom center`,"&::before":{position:`absolute`,content:`""`,width:8,height:8,transform:`translate(-50%, 50%) rotate(45deg)`,backgroundColor:`inherit`,bottom:0,left:`50%`},[`&.${Y.valueLabelOpen}`]:{transform:`translateY(-100%) scale(1)`}}},{props:{orientation:`vertical`},style:{transform:`translateY(-50%) scale(0)`,right:`30px`,top:`50%`,transformOrigin:`right center`,"&::before":{position:`absolute`,content:`""`,width:8,height:8,transform:`translate(-50%, -50%) rotate(45deg)`,backgroundColor:`inherit`,right:-8,top:`50%`},[`&.${Y.valueLabelOpen}`]:{transform:`translateY(-50%) scale(1)`}}},{props:{size:`small`},style:{fontSize:e.typography.pxToRem(12),padding:`0.25rem 0.5rem`}},{props:{orientation:`vertical`,size:`small`},style:{right:`20px`}}]}))),Ut=F(`span`,{name:`MuiSlider`,slot:`Mark`,shouldForwardProp:e=>re(e)&&e!==`markActive`,overridesResolver:(e,t)=>{let{markActive:n}=e;return[t.mark,n&&t.markActive]}})(g(({theme:e})=>({position:`absolute`,width:2,height:2,borderRadius:1,backgroundColor:`currentColor`,variants:[{props:{orientation:`horizontal`},style:{top:`50%`,transform:`translate(-1px, -50%)`}},{props:{orientation:`vertical`},style:{left:`50%`,transform:`translate(-50%, 1px)`}},{props:{markActive:!0},style:{backgroundColor:(e.vars||e).palette.background.paper,opacity:.8}}]}))),Wt=F(`span`,{name:`MuiSlider`,slot:`MarkLabel`,shouldForwardProp:e=>re(e)&&e!==`markLabelActive`})(g(({theme:e})=>({...e.typography.body2,color:(e.vars||e).palette.text.secondary,position:`absolute`,whiteSpace:`nowrap`,variants:[{props:{orientation:`horizontal`},style:{top:30,transform:`translateX(-50%)`,"@media (pointer: coarse)":{top:40}}},{props:{orientation:`vertical`},style:{left:36,transform:`translateY(50%)`,"@media (pointer: coarse)":{left:44}}},{props:{markLabelActive:!0},style:{color:(e.vars||e).palette.text.primary}}]}))),Gt=e=>{let{disabled:t,dragging:n,marked:r,orientation:i,track:a,classes:o,color:s,size:c}=e,l={root:[`root`,t&&`disabled`,n&&`dragging`,r&&`marked`,i===`vertical`&&`vertical`,a===`inverted`&&`trackInverted`,a===!1&&`trackFalse`,s&&`color${_(s)}`,c&&`size${_(c)}`],rail:[`rail`],track:[`track`],mark:[`mark`],markActive:[`markActive`],markLabel:[`markLabel`],markLabelActive:[`markLabelActive`],valueLabel:[`valueLabel`],thumb:[`thumb`,t&&`disabled`],active:[`active`],disabled:[`disabled`],focusVisible:[`focusVisible`]};return ke(l,Ke,o)},Kt=({children:e})=>e,qt=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiSlider`}),r=oe(),{"aria-label":i,"aria-valuetext":a,"aria-labelledby":o,color:s=`primary`,classes:c,className:l,disableSwap:u=!1,disabled:d=!1,getAriaLabel:f,getAriaValueText:p,marks:m=!1,max:h=100,min:g=0,name:_,onChange:v,onChangeCommitted:y,orientation:b=`horizontal`,shiftStep:x=10,size:S=`medium`,step:C=1,scale:w=Lt,slotProps:T={},slots:E={},tabIndex:D,track:ee=`normal`,value:O,valueLabelDisplay:te=`off`,valueLabelFormat:k=Lt,...ne}=n,j={...n,isRtl:r,max:h,min:g,classes:c,disabled:d,disableSwap:u,orientation:b,marks:m,color:s,size:S,step:C,shiftStep:x,scale:w,track:ee,valueLabelDisplay:te,valueLabelFormat:k},{axisProps:M,getRootProps:N,getHiddenInputProps:P,getThumbProps:F,open:re,active:I,axis:L,focusedThumbIndex:R,range:z,dragging:ie,marks:ae,values:B,trackOffset:se,trackLeap:ce,getThumbStyle:le}=Pt({...j,rootRef:t});j.marked=ae.length>0&&ae.some(e=>e.label),j.dragging=ie,j.focusedThumbIndex=R;let V=Gt(j),H={slots:E,slotProps:T},[ue,de]=A(`root`,{elementType:Rt,getSlotProps:N,externalForwardedProps:{...H,...ne},ownerState:j,className:[V.root,l]}),[U,fe]=A(`rail`,{elementType:zt,externalForwardedProps:H,ownerState:j,className:V.rail}),[pe,he]=A(`track`,{elementType:Bt,externalForwardedProps:H,additionalProps:{style:{...M[L].offset(se),...M[L].leap(ce)}},ownerState:j,className:V.track}),[ge,_e]=A(`thumb`,{elementType:Vt,getSlotProps:F,externalForwardedProps:H,ownerState:j,className:V.thumb}),[ve,ye]=A(`valueLabel`,{elementType:Ht,externalForwardedProps:H,ownerState:j,className:V.valueLabel}),[W,G]=A(`mark`,{elementType:Ut,externalForwardedProps:H,ownerState:j,className:V.mark}),[be,xe]=A(`markLabel`,{elementType:Wt,externalForwardedProps:H,ownerState:j,className:V.markLabel}),[Se,Ce]=A(`input`,{elementType:`input`,getSlotProps:P,externalForwardedProps:H,ownerState:j});return(0,Z.jsxs)(ue,{...de,children:[(0,Z.jsx)(U,{...fe}),(0,Z.jsx)(pe,{...he}),ae.filter(e=>e.value>=g&&e.value<=h).map((e,t)=>{let n=Tt(e.value,g,h),r=M[L].offset(n),i;return i=ee===!1?B.includes(e.value):ee===`normal`&&(z?e.value>=B[0]&&e.value<=B[B.length-1]:e.value<=B[0])||ee===`inverted`&&(z?e.value<=B[0]||e.value>=B[B.length-1]:e.value>=B[0]),(0,Z.jsxs)(X.Fragment,{children:[(0,Z.jsx)(W,{"data-index":t,...G,...!me(W)&&{markActive:i},style:{...r,...G.style},className:K(G.className,i&&V.markActive)}),e.label==null?null:(0,Z.jsx)(be,{"aria-hidden":!0,"data-index":t,...xe,...!me(be)&&{markLabelActive:i},style:{...r,...xe.style},className:K(V.markLabel,xe.className,i&&V.markLabelActive),children:e.label})]},t)}),B.map((e,t)=>{let n=Tt(e,g,h),r=M[L].offset(n),s=te===`off`?Kt:ve;return(0,Z.jsx)(s,{...!me(s)&&{valueLabelFormat:k,valueLabelDisplay:te,value:typeof k==`function`?k(w(e),t):k,index:t,open:re===t||I===t||te===`on`,disabled:d},...ye,children:(0,Z.jsx)(ge,{"data-index":t,..._e,className:K(V.thumb,_e.className,I===t&&V.active,R===t&&V.focusVisible),style:{...r,...le(t),..._e.style},children:(0,Z.jsx)(Se,{"data-index":t,"aria-label":f?f(t):i,"aria-valuenow":w(e),"aria-labelledby":o,"aria-valuetext":p?p(w(e),t):a,value:B[t],...Ce})})},t)})]})}),Jt=X.createContext({}),Yt=X.createContext(void 0);function Xt(e,t){return t===void 0||e===void 0?!1:Array.isArray(t)?t.includes(e):e===t}function Zt(e,t){let{children:n,disabled:r=!1,selected:a=!1,value:o}=e,s=i(),c=ie({id:o,ref:t,disabled:r,selected:a}),l=s.getItemMap().size===0&&a?0:c.tabIndex;return X.cloneElement(X.Children.only(n),{...c,tabIndex:n.props.tabIndex??l})}var Qt=X.forwardRef(Zt),$t=e=>{let{classes:t,fullWidth:n,selected:r,disabled:i,size:a,color:o}=e,s={root:[`root`,r&&`selected`,i&&`disabled`,n&&`fullWidth`,`size${_(a)}`,o]};return ke(s,qe,t)},en=F(_e,{name:`MuiToggleButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`size${_(n.size)}`]]}})(g(({theme:e})=>({...e.typography.button,borderRadius:(e.vars||e).shape.borderRadius,padding:11,border:`1px solid ${(e.vars||e).palette.divider}`,color:(e.vars||e).palette.action.active,[`&.${Je.disabled}`]:{color:(e.vars||e).palette.action.disabled,border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`},"&:hover":{textDecoration:`none`,backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},variants:[{props:{color:`standard`},style:{[`&.${Je.selected}`]:{color:(e.vars||e).palette.text.primary,backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.selectedOpacity),"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.text.primary,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`),"@media (hover: none)":{backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.selectedOpacity)}}}}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{[`&.${Je.selected}`]:{color:(e.vars||e).palette[t].main,backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.selectedOpacity),"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`),"@media (hover: none)":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.selectedOpacity)}}}}})),{props:{fullWidth:!0},style:{width:`100%`}},{props:{size:`small`},style:{padding:7,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`},style:{padding:15,fontSize:e.typography.pxToRem(15)}}]}))),tn=X.forwardRef(function(e,t){let{value:n,isRovingTabIndex:r,...i}=X.useContext(Jt),a=X.useContext(Yt),o=ce({...i,selected:Xt(e.value,n)},e),s=Te({props:o,name:`MuiToggleButton`}),{children:c,className:l,color:u=`standard`,disabled:d=!1,disableFocusRipple:f=!1,fullWidth:p=!1,onChange:m,onClick:h,selected:g,size:_=`medium`,value:v,...y}=s,b={...s,color:u,disabled:d,disableFocusRipple:f,fullWidth:p,size:_},x=$t(b),S=e=>{h&&(h(e,v),e.defaultPrevented)||m&&m(e,v)},C=a||``,w=(0,Z.jsx)(en,{className:K(i.className,x.root,l,C),internalNativeButton:!0,disabled:d,focusRipple:!f,ref:r?void 0:t,onClick:S,onChange:m,value:v,ownerState:b,"aria-pressed":g,...y,children:c});return r?(0,Z.jsx)(Qt,{disabled:d,selected:g,ref:t,value:v,children:w}):w});function nn(e){return X.Children.toArray(e).filter(e=>X.isValidElement(e))}function rn(e){return q(`MuiToggleButtonGroup`,e)}var $=H(`MuiToggleButtonGroup`,[`root`,`selected`,`horizontal`,`vertical`,`disabled`,`grouped`,`fullWidth`,`firstButton`,`lastButton`,`middleButton`]),an=e=>{let{classes:t,orientation:n,fullWidth:r,disabled:i}=e;return ke({root:[`root`,n,r&&`fullWidth`],grouped:[`grouped`,i&&`disabled`],firstButton:[`firstButton`],lastButton:[`lastButton`],middleButton:[`middleButton`]},rn,t)},on=F(`div`,{name:`MuiToggleButtonGroup`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${$.grouped}`]:t.grouped},{[`& .${$.firstButton}`]:t.firstButton},{[`& .${$.lastButton}`]:t.lastButton},{[`& .${$.middleButton}`]:t.middleButton},t.root,n.orientation===`vertical`&&t.vertical,n.fullWidth&&t.fullWidth]}})(g(({theme:e})=>({display:`inline-flex`,borderRadius:(e.vars||e).shape.borderRadius,...e.focusVisible&&{[`& .${$.grouped}.${t.focusVisible}`]:{zIndex:1}},variants:[{props:{orientation:`vertical`},style:{flexDirection:`column`,[`& .${$.grouped}`]:{[`&.${$.selected} + .${$.grouped}.${$.selected}`]:{borderTop:0,marginTop:0}},[`& .${$.firstButton},& .${$.middleButton}`]:{borderBottomLeftRadius:0,borderBottomRightRadius:0},[`& .${$.lastButton},& .${$.middleButton}`]:{marginTop:-1,borderTop:`1px solid transparent`,borderTopLeftRadius:0,borderTopRightRadius:0},[`& .${$.lastButton}.${Je.disabled},& .${$.middleButton}.${Je.disabled}`]:{borderTop:`1px solid transparent`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{orientation:`horizontal`},style:{[`& .${$.grouped}`]:{[`&.${$.selected} + .${$.grouped}.${$.selected}`]:{borderLeft:0,marginLeft:0}},[`& .${$.firstButton},& .${$.middleButton}`]:{borderTopRightRadius:0,borderBottomRightRadius:0},[`& .${$.lastButton},& .${$.middleButton}`]:{marginLeft:-1,borderLeft:`1px solid transparent`,borderTopLeftRadius:0,borderBottomLeftRadius:0},[`& .${$.lastButton}.${Je.disabled},& .${$.middleButton}.${Je.disabled}`]:{borderLeft:`1px solid transparent`}}}]}))),sn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiToggleButtonGroup`}),{children:r,className:i,color:a=`standard`,disabled:o=!1,exclusive:s=!1,fullWidth:c=!1,onChange:l,orientation:u=`horizontal`,size:d=`medium`,value:f,...p}=n,m={...n,disabled:o,fullWidth:c,orientation:u,size:d},h=an(m),g=oe(),_=X.useCallback((e,t)=>{if(!l)return;let n=f&&f.indexOf(t),r;f&&n>=0?(r=f.slice(),r.splice(n,1)):r=f?f.concat(t):[t],l(e,r)},[l,f]),v=X.useCallback((e,t)=>{l&&l(e,f===t?null:t)},[l,f]),y=X.useMemo(()=>({className:h.grouped,onChange:s?v:_,value:f,size:d,fullWidth:c,color:a,disabled:o,isRovingTabIndex:!0}),[h.grouped,s,v,_,f,d,c,a,o]),b=nn(r),x=b.length,S=e=>{let t=e===0,n=e===x-1;return t&&n?``:t?h.firstButton:n?h.lastButton:h.middleButton},C=Le({orientation:u,isRtl:g}),w=C.getContainerProps(t,p.onFocus,p.onKeyDown);return(0,Z.jsx)(on,{role:`group`,className:K(h.root,i),ownerState:m,...p,...w,children:(0,Z.jsx)(te.Provider,{value:C,children:(0,Z.jsx)(Jt.Provider,{value:y,children:b.map((e,t)=>(0,Z.jsx)(Yt.Provider,{value:S(t),children:e},t))})})})}),cn=e=>{let{classes:t,disabled:n,labelPlacement:r,error:i,required:a}=e,o={root:[`root`,n&&`disabled`,`labelPlacement${_(r)}`,i&&`error`,a&&`required`],label:[`label`,n&&`disabled`],asterisk:[`asterisk`,i&&`error`]};return ke(o,We,t)},ln=F(`label`,{name:`MuiFormControlLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Ge.label}`]:t.label},t.root,t[`labelPlacement${_(n.labelPlacement)}`]]}})(g(({theme:e})=>({display:`inline-flex`,alignItems:`center`,cursor:`pointer`,verticalAlign:`middle`,WebkitTapHighlightColor:`transparent`,marginLeft:-11,marginRight:16,[`&.${Ge.disabled}`]:{cursor:`default`},[`& .${Ge.label}`]:{[`&.${Ge.disabled}`]:{color:(e.vars||e).palette.text.disabled}},variants:[{props:{labelPlacement:`start`},style:{flexDirection:`row-reverse`,marginRight:-11}},{props:{labelPlacement:`top`},style:{flexDirection:`column-reverse`}},{props:{labelPlacement:`bottom`},style:{flexDirection:`column`}},{props:({labelPlacement:e})=>e===`start`||e===`top`||e===`bottom`,style:{marginLeft:16}}]}))),un=F(`span`,{name:`MuiFormControlLabel`,slot:`Asterisk`})(g(({theme:e})=>({[`&.${Ge.error}`]:{color:(e.vars||e).palette.error.main}}))),dn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiFormControlLabel`}),{checked:r,className:i,control:a,disabled:o,disableTypography:s,inputRef:c,label:l,labelPlacement:u=`end`,name:d,onChange:f,required:p,slots:m={},slotProps:h={},value:g,..._}=n,[v,y]=le({props:n,states:[`error`]}),b=o??a.props.disabled??y?.disabled,x=p??a.props.required,S={disabled:b,required:x};[`checked`,`name`,`onChange`,`value`,`inputRef`].forEach(e=>{a.props[e]===void 0&&n[e]!==void 0&&(S[e]=n[e])});let C={...n,disabled:b,labelPlacement:u,required:x,error:v.error},w=cn(C),[T,E]=A(`typography`,{elementType:U,externalForwardedProps:{slots:m,slotProps:h},ownerState:C}),D=l;return D!=null&&D.type!==U&&!s&&(D=(0,Z.jsx)(T,{component:`span`,...E,className:K(w.label,E?.className),children:D})),(0,Z.jsxs)(ln,{className:K(w.root,i),ownerState:C,ref:t,..._,children:[X.cloneElement(a,S),x?(0,Z.jsxs)(`div`,{children:[D,(0,Z.jsxs)(un,{ownerState:C,"aria-hidden":!0,className:w.asterisk,children:[` `,`*`]})]}):D]})});function fn(e){return(1+Math.sin(Math.PI*e-Math.PI/2))/2}function pn(e,t,n,r={},i=()=>{}){let{ease:a=fn,duration:o=300}=r,s=null,c=t[e],l=!1,u=()=>{l=!0},d=r=>{if(l){i(Error(`Animation cancelled`));return}s===null&&(s=r);let u=Math.min(1,(r-s)/o);if(t[e]=a(u)*(n-c)+c,u>=1){requestAnimationFrame(()=>{i(null)});return}requestAnimationFrame(d)};return c===n?(i(Error(`Element already at target position`)),u):(requestAnimationFrame(d),u)}var mn={width:99,height:99,position:`absolute`,top:-9999,overflow:`scroll`,pointerEvents:`none`};function hn(e){let{onChange:t,...n}=e,r=X.useRef(),i=X.useRef(null),a=()=>{r.current=i.current.offsetHeight-i.current.clientHeight};return N(()=>{let e=O(()=>{let e=r.current;a(),e!==r.current&&t(r.current)}),n=v(i.current);return n.addEventListener(`resize`,e),()=>{e.clear(),n.removeEventListener(`resize`,e)}},[t]),X.useEffect(()=>{a(),t(r.current)},[t]),(0,Z.jsx)(`div`,{style:mn,...n,ref:i})}var gn=Ve((0,Z.jsx)(`path`,{d:`M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z`}),`KeyboardArrowLeft`),_n=Ve((0,Z.jsx)(`path`,{d:`M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z`}),`KeyboardArrowRight`);function vn(e){return q(`MuiTabScrollButton`,e)}var yn=H(`MuiTabScrollButton`,[`root`,`vertical`,`horizontal`,`disabled`]),bn=e=>{let{classes:t,orientation:n,disabled:r}=e;return ke({root:[`root`,n,r&&`disabled`]},vn,t)},xn=F(_e,{name:`MuiTabScrollButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.orientation&&t[n.orientation]]}})({width:40,flexShrink:0,opacity:.8,[`&.${yn.disabled}`]:{opacity:0},variants:[{props:{orientation:`vertical`},style:{width:`100%`,height:40,"& svg":{transform:`var(--TabScrollButton-svgRotate)`}}}]}),Sn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTabScrollButton`}),{className:r,slots:i={},slotProps:a={},direction:o,orientation:s,disabled:c,...l}=n,{nativeButton:u,...d}=l,f=oe(),p={isRtl:f,...n},m=bn(p),h=i.StartScrollButtonIcon??gn,g=i.EndScrollButtonIcon??_n,_=Fe({elementType:h,externalSlotProps:a.startScrollButtonIcon,additionalProps:{fontSize:`small`},ownerState:p}),v=Fe({elementType:g,externalSlotProps:a.endScrollButtonIcon,additionalProps:{fontSize:`small`},ownerState:p});return(0,Z.jsx)(xn,{component:`div`,className:K(m.root,r),ref:t,role:null,ownerState:p,tabIndex:null,...d,style:{...d.style,...s===`vertical`&&{"--TabScrollButton-svgRotate":`rotate(${f?-90:90}deg)`}},children:o===`left`?(0,Z.jsx)(h,{..._}):(0,Z.jsx)(g,{...v})})});function Cn(e){return q(`MuiTabs`,e)}var wn=H(`MuiTabs`,[`root`,`vertical`,`list`,`centered`,`scroller`,`fixed`,`scrollableX`,`scrollableY`,`hideScrollbar`,`scrollButtons`,`scrollButtonsHideMobile`,`indicator`]),Tn=e=>{let{vertical:t,fixed:n,hideScrollbar:r,scrollableX:i,scrollableY:a,centered:o,scrollButtonsHideMobile:s,classes:c}=e;return ke({root:[`root`,t&&`vertical`],scroller:[`scroller`,n&&`fixed`,r&&`hideScrollbar`,i&&`scrollableX`,a&&`scrollableY`],list:[`list`,t&&`vertical`,o&&`centered`],indicator:[`indicator`],scrollButtons:[`scrollButtons`,s&&`scrollButtonsHideMobile`],scrollableX:[i&&`scrollableX`],hideScrollbar:[r&&`hideScrollbar`]},Cn,c)},En=F(`div`,{name:`MuiTabs`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${wn.scrollButtons}`]:t.scrollButtons},{[`& .${wn.scrollButtons}`]:n.scrollButtonsHideMobile&&t.scrollButtonsHideMobile},t.root,n.vertical&&t.vertical]}})(g(({theme:e})=>({overflow:`hidden`,minHeight:48,WebkitOverflowScrolling:`touch`,display:`flex`,variants:[{props:({ownerState:e})=>e.vertical,style:{flexDirection:`column`}},{props:({ownerState:e})=>e.scrollButtonsHideMobile,style:{[`& .${wn.scrollButtons}`]:{[e.breakpoints.down(`sm`)]:{display:`none`}}}}]}))),Dn=F(`div`,{name:`MuiTabs`,slot:`Scroller`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.scroller,n.fixed&&t.fixed,n.hideScrollbar&&t.hideScrollbar,n.scrollableX&&t.scrollableX,n.scrollableY&&t.scrollableY]}})({position:`relative`,display:`inline-block`,flex:`1 1 auto`,whiteSpace:`nowrap`,variants:[{props:({ownerState:e})=>e.fixed,style:{overflowX:`hidden`,width:`100%`}},{props:({ownerState:e})=>e.hideScrollbar,style:{scrollbarWidth:`none`,"&::-webkit-scrollbar":{display:`none`}}},{props:({ownerState:e})=>e.scrollableX,style:{overflowX:`auto`,overflowY:`hidden`}},{props:({ownerState:e})=>e.scrollableY,style:{overflowY:`auto`,overflowX:`hidden`}}]}),On=F(`div`,{name:`MuiTabs`,slot:`List`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.list,n.centered&&t.centered]}})({display:`flex`,variants:[{props:({ownerState:e})=>e.vertical,style:{flexDirection:`column`}},{props:({ownerState:e})=>e.centered,style:{justifyContent:`center`}}]}),kn=F(`span`,{name:`MuiTabs`,slot:`Indicator`})(g(({theme:e})=>({position:`absolute`,height:2,bottom:0,width:`100%`,...M(e),variants:[{props:{indicatorColor:`primary`},style:{backgroundColor:(e.vars||e).palette.primary.main}},{props:{indicatorColor:`secondary`},style:{backgroundColor:(e.vars||e).palette.secondary.main}},{props:({ownerState:e})=>e.vertical,style:{height:`100%`,width:2,right:0}}]}))),An=F(hn)({overflowX:`auto`,overflowY:`hidden`,scrollbarWidth:`none`,"&::-webkit-scrollbar":{display:`none`}}),jn={},Mn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTabs`}),r=ee(),i=oe(),a=he(r.motion.reducedMotion,!1),{"aria-label":o,"aria-labelledby":s,action:c,centered:l=!1,children:u,className:d,component:m=`div`,allowScrollButtonsMobile:h=!1,indicatorColor:g=`primary`,onChange:_,orientation:y=`horizontal`,scrollButtons:b=`auto`,selectionFollowsFocus:x,slots:S={},slotProps:C={},textColor:w=`primary`,value:T,variant:D=`standard`,visibleScrollbar:k=!1,...ne}=n,M=D===`scrollable`,N=y===`vertical`,P=N?`scrollTop`:`scrollLeft`,F=N?`top`:`left`,re=N?`bottom`:`right`,I=N?`clientHeight`:`clientWidth`,L=N?`height`:`width`,R={...n,component:m,allowScrollButtonsMobile:h,indicatorColor:g,orientation:y,vertical:N,scrollButtons:b,textColor:w,variant:D,visibleScrollbar:k,fixed:!M,hideScrollbar:M&&!k,scrollableX:M&&!N,scrollableY:M&&N,centered:l&&!M,scrollButtonsHideMobile:!h},z=Tn(R),ie=Fe({elementType:S.startScrollButtonIcon,externalSlotProps:C.startScrollButtonIcon,ownerState:R}),ae=Fe({elementType:S.endScrollButtonIcon,externalSlotProps:C.endScrollButtonIcon,ownerState:R}),[B,se]=X.useState(!1),[ce,le]=X.useState(jn),[V,H]=X.useState(!1),[ue,de]=X.useState(!1),[U,fe]=X.useState(!1),pe=T===!1?null:T,[me,ge]=X.useState(!1),[_e,ve]=X.useState({overflow:`hidden`,scrollbarWidth:0}),ye=new Map,W=X.useRef(null),G=X.useRef(null),be={slots:S,slotProps:C},xe=()=>{let e=W.current,t;if(e){let n=e.getBoundingClientRect();t={clientWidth:e.clientWidth,scrollLeft:e.scrollLeft,scrollTop:e.scrollTop,scrollWidth:e.scrollWidth,top:n.top,bottom:n.bottom,left:n.left,right:n.right}}let n;if(e&&T!==!1){let e=G.current.children;if(e.length>0){let t=e[ye.get(T)];n=t?t.getBoundingClientRect():null}}return{tabsMeta:t,tabMeta:n}},Se=E(()=>{let{tabsMeta:e,tabMeta:t}=xe(),n=0,r;N?(r=`top`,t&&e&&(n=t.top-e.top+e.scrollTop)):(r=i?`right`:`left`,t&&e&&(n=(i?-1:1)*(t[r]-e[r]+e.scrollLeft)));let a={[r]:n,[L]:t?t[L]:0};if(typeof ce[r]!=`number`||typeof ce[L]!=`number`)le(a);else{let e=Math.abs(ce[r]-a[r]),t=Math.abs(ce[L]-a[L]);(e>=1||t>=1)&&le(a)}}),Ce=(e,{animation:t=!0}={})=>{t&&!a.shouldReduceMotion?pn(P,W.current,e,{duration:r.transitions.duration.standard}):W.current[P]=e},we=e=>{let t=W.current[P];t+=N?e:e*(i?-1:1),Ce(t)},q=()=>{let e=W.current[I],t=0,n=Array.from(G.current.children);for(let r=0;r<n.length;r+=1){let i=n[r];if(t+i[I]>e){r===0&&(t=e);break}t+=i[I]}return t},Ee=()=>{we(-1*q())},De=()=>{we(q())},[Oe,{onChange:ke,...Ae}]=A(`scrollbar`,{className:K(z.scrollableX,z.hideScrollbar),elementType:An,shouldForwardComponentProp:!0,externalForwardedProps:be,ownerState:R}),je=X.useCallback(e=>{ke?.(e),ve({overflow:null,scrollbarWidth:e})},[ke]),[J,Me]=A(`scrollButtons`,{className:z.scrollButtons,elementType:Sn,externalForwardedProps:be,ownerState:R,additionalProps:{orientation:y,slots:{StartScrollButtonIcon:S.startScrollButtonIcon,EndScrollButtonIcon:S.endScrollButtonIcon},slotProps:{startScrollButtonIcon:ie,endScrollButtonIcon:ae}}}),Ne=()=>{let e={};e.scrollbarSizeListener=M?(0,Z.jsx)(Oe,{...Ae,onChange:je}):null;let t=M&&(b===`auto`&&(V||ue)||b===!0);return e.scrollButtonStart=t?(0,Z.jsx)(J,{direction:i?`right`:`left`,onClick:Ee,disabled:!V,...Me}):null,e.scrollButtonEnd=t?(0,Z.jsx)(J,{direction:i?`left`:`right`,onClick:De,disabled:!ue,...Me}):null,e},Pe=E(e=>{let{tabsMeta:t,tabMeta:n}=xe();if(n&&t){if(n[F]<t[F]){let r=t[P]+(n[F]-t[F]);Ce(r,{animation:e})}else if(n[re]>t[re]){let r=t[P]+(n[re]-t[re]);Ce(r,{animation:e})}}}),Ie=E(()=>{M&&b!==!1&&fe(!U)});X.useEffect(()=>{let e=O(()=>{W.current&&Se()}),t,n=n=>{n.forEach(e=>{e.removedNodes.forEach(e=>{t?.unobserve(e)}),e.addedNodes.forEach(e=>{t?.observe(e)})}),e(),Ie()},r=v(W.current);r.addEventListener(`resize`,e);let i;return typeof ResizeObserver<`u`&&(t=new ResizeObserver(e),Array.from(G.current.children).forEach(e=>{t.observe(e)})),typeof MutationObserver<`u`&&(i=new MutationObserver(n),i.observe(G.current,{childList:!0})),()=>{e.clear(),r.removeEventListener(`resize`,e),i?.disconnect(),t?.disconnect()}},[Se,Ie]),X.useEffect(()=>{let e=Array.from(G.current.children),t=e.length;if(typeof IntersectionObserver<`u`&&t>0&&M&&b!==!1){let n=e[0],r=e[t-1],i={root:W.current,threshold:.99},a=new IntersectionObserver(e=>{H(!e[0].isIntersecting)},i);a.observe(n);let o=new IntersectionObserver(e=>{de(!e[0].isIntersecting)},i);return o.observe(r),()=>{a.disconnect(),o.disconnect()}}},[M,b,U,u?.length]),X.useEffect(()=>{se(!0)},[]),X.useEffect(()=>{Se()}),X.useEffect(()=>{Pe(jn!==ce)},[Pe,ce]),X.useImperativeHandle(c,()=>({updateIndicator:Se,updateScrollButtons:Ie}),[Se,Ie]);let[Re,Be]=A(`indicator`,{className:z.indicator,elementType:kn,externalForwardedProps:be,ownerState:R,additionalProps:{style:ce}}),Ve=(0,Z.jsx)(Re,{...Be}),He=Le({activeItemId:me?void 0:pe,orientation:y,isRtl:i}),Ue=He.getContainerProps(),We=X.Children.toArray(u).filter(X.isValidElement).map((e,t)=>{let n=e.props.value===void 0?t:e.props.value;return ye.set(n,t),{child:e,index:t,childValue:n}}).map(({child:e,childValue:t})=>{let n=t===T;return X.cloneElement(e,{fullWidth:D===`fullWidth`,indicator:n&&!B&&Ve,selected:n,selectionFollowsFocus:x,onChange:_,textColor:w,value:t})}),Ge=Ne(),[Ke,Y]=A(`root`,{ref:t,className:K(z.root,d),elementType:En,externalForwardedProps:{...be,...ne,component:m},ownerState:R}),[qe,Je]=A(`scroller`,{ref:W,className:z.scroller,elementType:Dn,externalForwardedProps:be,ownerState:R,additionalProps:{style:{overflow:_e.overflow,[N?`margin${i?`Left`:`Right`}`:`marginBottom`]:k?void 0:-_e.scrollbarWidth}}}),Ye=f(Ue.ref,G),Xe=e=>{let t=G.current;p(j(t))?.getAttribute(`role`)===`tab`&&Ue.onKeyDown(e)},[Ze,Qe]=A(`list`,{ref:Ye,className:z.list,elementType:On,externalForwardedProps:be,ownerState:R,getSlotProps:e=>({...e,onBlur:t=>{ze(t.currentTarget,t.relatedTarget)||ge(!1),e.onBlur?.(t)},onKeyDown:t=>{Xe(t),e.onKeyDown?.(t)},onFocus:t=>{ge(!0),Ue.onFocus(t),e.onFocus?.(t)}})});return(0,Z.jsxs)(Ke,{...Y,children:[Ge.scrollButtonStart,Ge.scrollbarSizeListener,(0,Z.jsxs)(qe,{...Je,children:[(0,Z.jsx)(Ze,{"aria-label":o,"aria-labelledby":s,"aria-orientation":y===`vertical`?`vertical`:null,role:`tablist`,...Qe,children:(0,Z.jsx)(te.Provider,{value:He,children:We})}),B&&Ve]}),Ge.scrollButtonEnd]})});function Nn(e){return q(`MuiTab`,e)}var Pn=H(`MuiTab`,[`root`,`labelIcon`,`textColorInherit`,`textColorPrimary`,`textColorSecondary`,`selected`,`disabled`,`fullWidth`,`wrapped`,`icon`]),Fn=e=>{let{classes:t,textColor:n,fullWidth:r,wrapped:i,icon:a,label:o,selected:s,disabled:c}=e,l={root:[`root`,a&&o&&`labelIcon`,`textColor${_(n)}`,r&&`fullWidth`,i&&`wrapped`,s&&`selected`,c&&`disabled`],icon:[`icon`]};return ke(l,Nn,t)},In=F(_e,{name:`MuiTab`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.label&&n.icon&&t.labelIcon,t[`textColor${_(n.textColor)}`],n.fullWidth&&t.fullWidth,n.wrapped&&t.wrapped,{[`& .${Pn.icon}`]:t.icon}]}})(g(({theme:e})=>({...e.typography.button,maxWidth:360,minWidth:90,position:`relative`,minHeight:48,flexShrink:0,padding:`12px 16px`,overflow:`hidden`,whiteSpace:`normal`,textAlign:`center`,lineHeight:1.25,...e.focusVisible&&z(3),variants:[{props:({ownerState:e})=>e.label&&(e.iconPosition===`top`||e.iconPosition===`bottom`),style:{flexDirection:`column`}},{props:({ownerState:e})=>e.label&&e.iconPosition!==`top`&&e.iconPosition!==`bottom`,style:{flexDirection:`row`}},{props:({ownerState:e})=>e.icon&&e.label,style:{minHeight:72,paddingTop:9,paddingBottom:9}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`top`,style:{[`& > .${Pn.icon}`]:{marginBottom:6}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`bottom`,style:{[`& > .${Pn.icon}`]:{marginTop:6}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`start`,style:{[`& > .${Pn.icon}`]:{marginRight:e.spacing(1)}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`end`,style:{[`& > .${Pn.icon}`]:{marginLeft:e.spacing(1)}}},{props:{textColor:`inherit`},style:{color:`inherit`,opacity:.6,[`&.${Pn.selected}`]:{opacity:1},...e.focusVisible&&{[`&.${t.focusVisible}`]:{opacity:1}},[`&.${Pn.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity}}},{props:{textColor:`primary`},style:{color:(e.vars||e).palette.text.secondary,[`&.${Pn.selected}`]:{color:(e.vars||e).palette.primary.main},[`&.${Pn.disabled}`]:{color:(e.vars||e).palette.text.disabled}}},{props:{textColor:`secondary`},style:{color:(e.vars||e).palette.text.secondary,[`&.${Pn.selected}`]:{color:(e.vars||e).palette.secondary.main},[`&.${Pn.disabled}`]:{color:(e.vars||e).palette.text.disabled}}},{props:({ownerState:e})=>e.fullWidth,style:{flexShrink:1,flexGrow:1,flexBasis:0,maxWidth:`none`}},{props:({ownerState:e})=>e.wrapped,style:{fontSize:e.typography.pxToRem(12)}}]}))),Ln=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTab`}),{className:r,disabled:a=!1,disableFocusRipple:o=!1,fullWidth:s,icon:c,iconPosition:l=`top`,indicator:u,label:d,onChange:f,onClick:p,onFocus:m,selected:h,selectionFollowsFocus:g,textColor:_=`inherit`,value:v,wrapped:y=!1,...b}=n,x=i(),S=ie({id:v,ref:t,disabled:a,selected:h}),C=x.getItemMap().size===0&&h?0:S.tabIndex,w={...n,disabled:a,disableFocusRipple:o,selected:h,icon:!!c,iconPosition:l,label:!!d,fullWidth:s,textColor:_,wrapped:y},T=Fn(w),E=c&&d&&X.isValidElement(c)?X.cloneElement(c,{className:K(T.icon,c.props.className)}):c;return(0,Z.jsxs)(In,{internalNativeButton:!0,focusRipple:!o,className:K(T.root,r),ref:S.ref,role:`tab`,"aria-selected":h,disabled:a,onClick:e=>{!h&&f&&f(e,v),p&&p(e)},onFocus:e=>{g&&!h&&f&&f(e,v),m&&m(e)},tabIndex:C,ownerState:w,...b,children:[l===`top`||l===`start`?(0,Z.jsxs)(X.Fragment,{children:[E,d]}):(0,Z.jsxs)(X.Fragment,{children:[d,E]}),u]})}),Rn=`<!-- octopus-revision -->`,zn=e=>String(e).padStart(2,`0`);function Bn(e){return`lab-lock-${`${e.getUTCFullYear()}${zn(e.getUTCMonth()+1)}${zn(e.getUTCDate())}T${zn(e.getUTCHours())}${zn(e.getUTCMinutes())}${zn(e.getUTCSeconds())}Z`}.md`}var Vn=y(Ne(),1),Hn=[{id:`page`,label:`Page`},{id:`labels`,label:`Labels`},{id:`lists`,label:`Lists`},{id:`assistant`,label:`Assistant`}],Un=[{id:`frame`,kind:`choice`,group:`page`,label:`Frame`,attr:`frame`,default:k,question:`Whether the plane fills the main area with no frame, as before the frame; is capped at the page's width and centred in the window; or fills the window with the page's content centred inside it, as Gmail does. Corner beside the assistant applies only under a frame.`,options:[{value:`full`,label:`Full`},{value:`capped`,label:`Capped`},{value:`stretch`,label:`Stretch`}]},{id:`planeCorner`,kind:`choice`,group:`page`,label:`Corner beside the assistant`,attr:`planeCorner`,default:a,question:`The page's top-right corner beside the open assistant. Square, meeting the pane with its shadow along the seam, as the sidebar does; or round, the page above the pane casting its own shadow off its right edge.`,options:[{value:`square`,label:`Square`},{value:`round`,label:`Round`}]},{id:`metaGlassOpacity`,kind:`slider`,group:`page`,label:`Meta field glass`,hook:`metaGlassOpacity`,min:0,max:100,step:5,unit:`%`,default:{light:parseFloat(ne.light),dark:parseFloat(ne.dark)},question:`How much of a raised card's fill a glass meta field takes (MetaField variant = glass): 0 is none, 100 the card. Each mode keeps its own value; the slider moves the one for the mode in view.`},{id:`metaPadY`,kind:`slider`,group:`page`,label:`Meta row padding`,hook:`metaPadY`,min:0,max:24,step:1,unit:`px`,default:0,question:`Padding above and below a subject page's row of facts (its meta slot: on a case, the summary strip). None as designed; Compact sets its own.`},{id:`tabsScrollFade`,kind:`slider`,group:`page`,label:`Fade under the tabs`,hook:`tabsScrollFade`,min:0,max:64,step:2,unit:`px`,default:parseFloat(n),question:`How far below the tab strip the page's content dissolves as it scrolls under. 0 cuts it at the seam, as before.`},{id:`railFoot`,kind:`slider`,group:`page`,label:`Rail foot`,hook:`railFoot`,min:0,max:32,step:1,unit:`px`,default:parseFloat(h),question:`The space under the rail's last item (the settings cog) down to the window's edge. It was 22px.`},{id:`bandGlassOpacity`,kind:`slider`,group:`page`,label:`Header band wash`,hook:`bandGlassOpacity`,min:0,max:1,step:.05,unit:``,default:{light:s.light.band.opacity,dark:s.dark.band.opacity},question:`How much of the page's ground tone a table header's band lays over what scrolls under it. Each mode keeps its own value; the slider moves the one for the mode in view.`},{id:`bandGlassBlur`,kind:`slider`,group:`page`,label:`Header band blur`,hook:`bandGlassBlur`,min:0,max:16,step:1,unit:`px`,default:s.light.band.blur,question:`How far a table header's band blurs what scrolls under it.`},{id:`themeFade`,kind:`slider`,group:`page`,label:`Switch fade`,hook:`appearanceFade`,min:0,max:1e3,step:50,unit:`ms`,default:parseFloat(ae),question:`How long a change of theme or mode crossfades, the whole page at once. 0 swaps it in a single frame.`}],Wn=[{id:`countStyle`,kind:`choice`,group:`labels`,label:`Count drawing`,attr:`countStyle`,default:Ie,question:`The figure beside a tab's or heading's label ("Analysis 9"): a tinted label, an outlined one, or the bare figure.`,options:[{value:`fill`,label:`Fill`},{value:`outline`,label:`Outline`},{value:`plain`,label:`Plain`}]},{id:`countRadius`,kind:`slider`,group:`labels`,label:`Count radius`,hook:`countRadius`,min:0,max:6,step:1,unit:``,default:D.kbd,question:`How rounded the count label's corners are, as a radius token before the radius scale. 6 is a full pill at its height; ${D.kbd} is the kbd radius it defaults to.`},{id:`chipRadius`,kind:`slider`,group:`labels`,label:`Chip radius`,hook:`chipRadius`,min:0,max:16,step:1,unit:`px`,default:16,question:`How rounded a chip's corners are. 14px and up is a full pill on a medium chip (11px on a small one); 4px is a tag.`},{id:`chipPadX`,kind:`slider`,group:`labels`,label:`Chip padding`,hook:`chipPadX`,min:2,max:20,step:1,unit:`px`,default:parseFloat(Re.medium),question:`The space either side of a medium chip's label. MUI's 12px.`},{id:`chipPadXSmall`,kind:`slider`,group:`labels`,label:`Chip padding, small`,hook:`chipPadXSmall`,min:2,max:16,step:1,unit:`px`,default:parseFloat(Re.small),question:`The space either side of a small chip's label: tables, filters, counts beside tabs. MUI's 8px.`},{id:`chipPadY`,kind:`slider`,group:`labels`,label:`Chip padding, vertical`,hook:`chipPadY`,min:0,max:10,step:1,unit:`px`,default:d.medium,question:`The space above and below a medium chip's label, which sets its height: 4px is the 28px it has always been.`},{id:`chipPadYSmall`,kind:`slider`,group:`labels`,label:`Chip padding, vertical, small`,hook:`chipPadYSmall`,min:0,max:8,step:1,unit:`px`,default:d.small,question:`The same for a small chip: 3px is its 22px.`}],Gn=[{id:`rowIconGap`,kind:`slider`,group:`lists`,label:`Row icon gap`,hook:`rowIconGap`,min:0,max:20,step:1,unit:`px`,default:8,question:`The space between a row's icon (the settings cog, the agent) and its label. Investigations drew about 18px.`},{id:`rowIconSize`,kind:`slider`,group:`lists`,label:`Row icon size`,hook:`rowIconSize`,min:12,max:24,step:1,unit:`px`,default:parseFloat(l),question:`How big a row's icon is beside its 14px label. Investigations drew 20px.`}],Kn=[{id:`seamBlur`,kind:`slider`,group:`assistant`,label:`Seam shadow blur`,hook:`seamBlur`,min:0,max:40,step:1,unit:`px`,default:parseFloat(x.blur),question:`The shadow the plane casts onto the assistant's pane along their seam: how far it spreads. It was 12px.`},{id:`seamStrength`,kind:`slider`,group:`assistant`,label:`Seam shadow strength`,hook:`seamStrength`,min:0,max:2,step:.05,unit:``,default:1,question:`How dark that shadow is, as a share of the designed opacity (0.14 in light, 0.5 in dark; light was 0.18). It falls over the pane's content, the assistant's header rule included.`},{id:`assistantScrollFade`,kind:`slider`,group:`assistant`,label:`Conversation fade`,hook:`assistantScrollFade`,min:0,max:48,step:2,unit:`px`,default:parseFloat(ge),question:`How far the conversation dissolves at its top and bottom edges, under the header and above the composer. 0 cuts it.`}],qn=[...Un,...Wn,...Gn,...Kn],Jn={width:340,height:640},Yn=`This browser can't open a Picture-in-Picture window.`;function Xn(e=globalThis){return`documentPictureInPicture`in e}function Zn(e=globalThis){let t=e.documentPictureInPicture;return t?t.requestWindow(Jn):Promise.reject(Error(Yn))}function Qn(e,t){let n=t.join(` `).toLowerCase();return e.toLowerCase().split(/\s+/).filter(Boolean).every(e=>n.includes(e))}function $n(e){let t=Hn.find(t=>t.id===e.group)?.label,n=e.kind===`choice`?e.options.map(e=>e.label):[];return[e.label,e.question,e.id,t,...n]}function er(e){let t=e.options.flatMap(e=>[e.label,e.description]);return[e.title,e.id,e.group,e.description,...t]}function tr(e){let t=e,n=new Set;return{get:()=>t,set(e){t=typeof e==`function`?e(t):e;for(let e of[...n])e()},subscribe(e){return n.add(e),()=>{n.delete(e)}}}}function nr(e,t){return(0,X.useSyncExternalStore)(e.subscribe,()=>t(e.get()),()=>t(e.get()))}var rr=`aistrike.lab`,ir=[`light`,`dark`],ar=`data-ds-mode`;function or(e){return e.kind===`slider`&&typeof e.default==`object`}function sr(e,t){if(!or(e))return e.id;if(t===void 0)throw Error(`The lab control ${e.id} holds a value per mode; name the mode`);return`${e.id}.${t}`}function cr(e){return e.getAttribute(ar)===`light`?`light`:`dark`}function lr(e){if(e.kind===`slider`&&typeof e.default==`object`){let t=e.default;return ir.map(n=>({key:sr(e,n),fallback:t[n]}))}return[{key:e.id,fallback:e.default}]}function ur(e,t){return e.kind===`slider`&&typeof e.default==`object`?e.default[t]:e.default}function dr(e){return Object.fromEntries(e.flatMap(lr).map(({key:e,fallback:t})=>[e,t]))}function fr(e,t){return e.kind===`slider`?typeof t==`number`&&Number.isFinite(t)&&t>=e.min&&t<=e.max:typeof t==`string`&&e.options.some(e=>e.value===t)}function pr(e,t){let n=typeof e==`object`&&e&&!Array.isArray(e)?e:{};return Object.fromEntries(t.flatMap(e=>lr(e).map(({key:t,fallback:r})=>{let i=n[t];return[t,fr(e,i)?i:r]})))}function mr(e,t=localStorage){try{return pr(JSON.parse(t.getItem(`aistrike.lab`)??`null`),e)}catch{return dr(e)}}function hr(e,t=localStorage){try{t.setItem(rr,JSON.stringify(e))}catch{}}function gr(e,t,n=document.documentElement,r=cr(n)){for(let i of t)if(i.kind===`choice`)i.attr!==void 0&&n.setAttribute(ve[i.attr],String(e[i.id]??i.default));else if(i.hook!==void 0){let t=T[i.hook],a=ur(i,r),o=e[sr(i,r)]??a;o===a?n.style.removeProperty(t):n.style.setProperty(t,`${o}${i.kind===`slider`?i.unit:``}`)}}function _r(e,t=document.documentElement){for(let n of e)n.kind===`choice`?n.attr!==void 0&&t.removeAttribute(ve[n.attr]):n.hook!==void 0&&t.style.removeProperty(T[n.hook])}var vr=(e,t)=>{if(typeof MutationObserver>`u`||typeof Node>`u`||!(e instanceof Node))return()=>void 0;let n=new MutationObserver(t);return n.observe(e,{attributes:!0,attributeFilter:[ar]}),()=>{n.disconnect()}};function yr(e){let{controls:t}=e,n=e.root??document.documentElement,r=e.storage??localStorage,i=e.experiments??Ae(),a=new Map(t.map(e=>[e.id,e])),o=tr(mr(t,r)),s=i.isPaused(),c=e=>{s?_r(t,n):gr(e,t,n)};c(o.get());let l=e=>{c(e),hr(e,r),o.set(e)},u=(e.observeMode??vr)(n,()=>{c(o.get()),o.set({...o.get()})}),d=i.subscribe(()=>{i.isPaused()!==s&&(s=i.isPaused(),c(o.get()))}),f=()=>{u(),d()};return{store:o,set(e,t,r){let i=a.get(e);i===void 0||!fr(i,t)||l({...o.get(),[sr(i,r??cr(n))]:t})},replace(e){l(pr(e,t))},reset(){l(dr(t))},dispose(){f()}}}var br=`docs/decisions/2026-10-21-design-lab-in-octopus.md`,xr=[`light`,`dark`],Sr=(e,t)=>`${t}${e.kind===`slider`?e.unit:``}`;function Cr(e){return e.kind===`choice`?e.attr===void 0?`—`:ve[e.attr]:e.hook===void 0?`—`:T[e.hook]}function wr(e,t,n){return t.filter(e=>n.includes(e.id)).flatMap(t=>{let n=(n,r)=>{let i=sr(t,n??void 0);return{id:t.id,label:t.label,hook:Cr(t),mode:n,old:Sr(t,r),next:Sr(t,e[i]??r)}};if(t.kind===`slider`&&typeof t.default==`object`&&or(t)){let e=t.default;return xr.map(t=>n(t,e[t]))}return[n(null,t.default)]})}function Tr({rows:e,url:t,host:n,version:r,lockedAt:i}){let a=[...new Set(e.map(e=>e.id))],o=i.toISOString(),s=e.map(e=>`| ${e.id} | ${e.hook} | ${e.mode??`—`} | ${e.old} | ${e.next} |`);return[`---`,`status: new`,`type: background`,`title: Promote lab lock ${o.slice(0,16)}Z`,`summary: Settle ${a.length} lab controls: ${a.join(`, `)}`,`depends:`,`groomed:`,`worktree:`,`dev:`,`---`,``,`## Request`,``,`Design Lab lock from ${t} (${n}), judged against @aistrike-dev/ui ${r}${Rn}, ${o}.`,``,`| Control | Hook | Mode | Old | New |`,`| --- | --- | --- | --- | --- |`,...s,``,`Promote: set each control's Octopus default to New; remove the control from the lab; remove its hook from`,"`DS_HOOKS` and every read of it (the value becomes the constant); record the decision in",`${br}. Leave the change uncommitted.`,``,`## Clarifications`,``,`## Progress`,``].join(`
1
+ import{$ as e,A as t,At as n,B as r,C as i,Ct as a,D as o,Dt as s,E as c,Et as l,F as u,Ft as d,G as f,H as p,I as m,It as h,J as g,K as _,L as v,Lt as y,M as b,Mt as x,N as S,Nt as C,O as w,Ot as T,P as E,Pt as D,Q as ee,R as O,S as te,St as k,T as A,Tt as ne,U as j,V as M,W as N,X as P,Y as F,Z as re,_ as I,_t as L,a as R,at as z,b as ie,bt as ae,c as B,ct as oe,d as se,dt as ce,et as le,f as V,ft as H,g as ue,gt as de,h as U,ht as fe,i as pe,it as me,j as he,jt as ge,k as _e,kt as ve,l as ye,lt as W,m as G,mt as K,n as be,nt as xe,o as Se,ot as Ce,p as we,pt as q,q as Te,r as Ee,rt as De,s as Oe,st as ke,t as Ae,tt as je,u as J,ut as Me,v as Ne,vt as Pe,w as Fe,wt as Ie,x as Le,xt as Re,y as ze,yt as Be,z as Ve}from"./index-CqB5Mswt.js";function He(e){return q(`MuiCheckbox`,e)}var Ue=H(`MuiCheckbox`,[`root`,`checked`,`disabled`,`indeterminate`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`]);function We(e){return q(`MuiFormControlLabel`,e)}var Ge=H(`MuiFormControlLabel`,[`root`,`labelPlacementStart`,`labelPlacementEnd`,`labelPlacementTop`,`labelPlacementBottom`,`disabled`,`label`,`error`,`required`,`asterisk`]);function Ke(e){return q(`MuiSlider`,e)}var Y=H(`MuiSlider`,`root.active.colorPrimary.colorSecondary.colorError.colorInfo.colorSuccess.colorWarning.disabled.dragging.focusVisible.mark.markActive.marked.markLabel.markLabelActive.rail.sizeSmall.thumb.track.trackInverted.trackFalse.valueLabel.valueLabelOpen.valueLabelCircle.valueLabelLabel.vertical`.split(`.`));function qe(e){return q(`MuiToggleButton`,e)}var Je=H(`MuiToggleButton`,[`root`,`disabled`,`selected`,`standard`,`primary`,`secondary`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`fullWidth`]);function Ye(e){return q(`PrivateSwitchBase`,e)}H(`PrivateSwitchBase`,[`root`,`checked`,`disabled`,`input`,`edgeStart`,`edgeEnd`]);var X=y(Be(),1),Z=fe(),Xe=e=>{let{classes:t,checked:n,disabled:r,edge:i}=e,a={root:[`root`,n&&`checked`,r&&`disabled`,i&&`edge${_(i)}`],input:[`input`]};return ke(a,Ye,t)},Ze=F(_e,{name:`MuiSwitchBase`})({padding:9,borderRadius:`50%`,variants:[{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:({edge:e,ownerState:t})=>e===`start`&&t.size!==`small`,style:{marginLeft:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}},{props:({edge:e,ownerState:t})=>e===`end`&&t.size!==`small`,style:{marginRight:-12}}]}),Qe=F(`input`,{name:`MuiSwitchBase`,shouldForwardProp:P})({cursor:`inherit`,position:`absolute`,opacity:0,width:`100%`,height:`100%`,top:0,left:0,margin:0,padding:0,zIndex:1}),$e=X.forwardRef(function(t,n){let{autoFocus:r,checked:i,checkedIcon:a,defaultChecked:o,disabled:s,disableFocusRipple:c=!1,edge:l=!1,icon:d,id:f,name:p,onBlur:m,onChange:h,onFocus:g,readOnly:_,required:v=!1,tabIndex:y,type:b,value:x,slots:S={},slotProps:C={},...w}=t,{nativeButton:T,...E}=w,[D,ee]=u({controlled:i,default:!!o,name:`SwitchBase`,state:`checked`}),O=e(),te=e=>{g&&g(e),O&&O.onFocus&&O.onFocus(e)},k=e=>{m&&m(e),O&&O.onBlur&&O.onBlur(e)},ne=e=>{if(e.nativeEvent.defaultPrevented||_)return;let t=e.target.checked;ee(t),h&&h(e,t)},j=s;O&&j===void 0&&(j=O.disabled);let M=b===`checkbox`||b===`radio`,N={...t,checked:D,disabled:j,disableFocusRipple:c,edge:l},P=Xe(N),F={slots:S,slotProps:C},[re,I]=A(`root`,{ref:n,elementType:Ze,className:P.root,shouldForwardComponentProp:!0,externalForwardedProps:{...F,component:`span`,...E},getSlotProps:e=>({...e,onFocus:t=>{e.onFocus?.(t),te(t)},onBlur:t=>{e.onBlur?.(t),k(t)}}),ownerState:N,additionalProps:{centerRipple:!0,focusRipple:!c,role:void 0,tabIndex:null,internalDisabledThemeFocusVisible:!0}}),[L,R]=A(`input`,{elementType:Qe,className:P.input,externalForwardedProps:F,getSlotProps:e=>({...e,onChange:t=>{e.onChange?.(t),ne(t)}}),ownerState:N,additionalProps:{autoFocus:r,checked:i,defaultChecked:o,disabled:j,id:M?f:void 0,name:p,readOnly:_,required:v,tabIndex:y,type:b,...b===`checkbox`&&x===void 0?{}:{value:x}}});return(0,Z.jsxs)(re,{...I,children:[(0,Z.jsx)(L,{...R}),D?a:d]})}),et=Ve((0,Z.jsx)(`path`,{d:`M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z`}),`CheckBoxOutlineBlank`),tt=Ve((0,Z.jsx)(`path`,{d:`M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z`}),`CheckBox`),nt=Ve((0,Z.jsx)(`path`,{d:`M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z`}),`IndeterminateCheckBox`),rt=e=>{let{classes:t,indeterminate:n,color:r,size:i}=e,a={root:[`root`,n&&`indeterminate`,`color${_(r)}`,`size${_(i)}`]},o=ke(a,He,t);return{...t,...o}},it=F($e,{shouldForwardProp:e=>P(e)||e===`classes`,name:`MuiCheckbox`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${_(n.size)}`],n.color!=="default"&&t[`color${_(n.color)}`]]}})(g(({theme:e})=>({color:(e.vars||e).palette.text.secondary,...e.focusVisible&&{[`&.${t.focusVisible} svg:first-of-type`]:{...Ce,borderRadius:(e.vars||e).shape.borderRadius,...e.focusVisible}},variants:[{props:{color:`default`,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity)}}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}})),...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{[`&.${Ue.checked}, &.${Ue.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Ue.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:`transparent`}}}}]}))),at=(0,Z.jsx)(tt,{}),ot=(0,Z.jsx)(et,{}),st=(0,Z.jsx)(nt,{}),ct=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiCheckbox`}),{checkedIcon:r=at,color:i=`primary`,icon:a=ot,indeterminate:o=!1,indeterminateIcon:s=st,size:c=`medium`,disableRipple:l=!1,className:u,slots:d={},slotProps:f={},...p}=n,m=o?s:a,h=o?s:r,g={...n,disableRipple:l,color:i,indeterminate:o,size:c},_=rt(g),v=f.input,[y,b]=A(`root`,{ref:t,elementType:it,className:K(_.root,u),shouldForwardComponentProp:!0,externalForwardedProps:{slots:d,slotProps:f,...p},ownerState:g,additionalProps:{type:`checkbox`,icon:X.cloneElement(m,{fontSize:m.props.fontSize??c}),checkedIcon:X.cloneElement(h,{fontSize:h.props.fontSize??c}),disableRipple:n.disableRipple,slots:d,slotProps:{input:S(typeof v==`function`?v(g):v,{"data-indeterminate":o,"aria-checked":o?`mixed`:void 0})}}});return(0,Z.jsx)(y,{...b,classes:_})});function lt(e){return q(`MuiSwitch`,e)}var Q=H(`MuiSwitch`,[`root`,`edgeStart`,`edgeEnd`,`switchBase`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`,`checked`,`disabled`,`input`,`thumb`,`track`]),ut=e=>{let{classes:t,edge:n,size:r,color:i,checked:a,disabled:o}=e,s={root:[`root`,n&&`edge${_(n)}`,`size${_(r)}`],switchBase:[`switchBase`,`color${_(i)}`,a&&`checked`,o&&`disabled`],thumb:[`thumb`],track:[`track`],input:[`input`]},c=ke(s,lt,t);return{...t,...c}},dt=F(`span`,{name:`MuiSwitch`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.edge&&t[`edge${_(n.edge)}`],t[`size${_(n.size)}`]]}})({display:`inline-flex`,width:58,height:38,overflow:`hidden`,padding:12,boxSizing:`border-box`,position:`relative`,flexShrink:0,zIndex:0,verticalAlign:`middle`,"@media print":{colorAdjust:`exact`},variants:[{props:{edge:`start`},style:{marginLeft:-8}},{props:{edge:`end`},style:{marginRight:-8}},{props:{size:`small`},style:{width:40,height:24,padding:7,[`& .${Q.thumb}`]:{width:16,height:16},[`& .${Q.switchBase}`]:{padding:4,[`&.${Q.checked}`]:{transform:`translateX(16px)`}}}}]}),ft=F($e,{name:`MuiSwitch`,slot:`SwitchBase`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.switchBase,{[`& .${Q.input}`]:t.input},n.color!=="default"&&t[`color${_(n.color)}`]]}})(g(({theme:e})=>({position:`absolute`,top:0,left:0,zIndex:1,color:e.vars?e.vars.palette.Switch.defaultColor:`${e.palette.mode===`light`?e.palette.common.white:e.palette.grey[300]}`,...M(e,[`left`,`transform`],{duration:e.transitions.duration.shortest}),[`&.${Q.checked}`]:{transform:`translateX(20px)`},[`&.${Q.disabled}`]:{color:e.vars?e.vars.palette.Switch.defaultDisabledColor:`${e.palette.mode===`light`?e.palette.grey[100]:e.palette.grey[600]}`},...e.focusVisible?{[`&.${t.focusVisible} ~ .${Q.track}`]:{...Ce,...e.focusVisible},[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,.5)},[`&.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)}}:{[`&.${Q.checked} + .${Q.track}`]:{opacity:.5},[`&.${Q.disabled} + .${Q.track}`]:{opacity:e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`}},[`& .${Q.input}`]:{left:`-100%`,width:`300%`}})),g(({theme:e})=>({"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},variants:[...Object.entries(e.palette).filter(w([`light`])).map(([t])=>({props:{color:t},style:{[`&.${Q.checked}`]:{color:(e.vars||e).palette[t].main,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},[`&.${Q.disabled}`]:{color:e.vars?e.vars.palette.Switch[`${t}DisabledColor`]:`${e.palette.mode===`light`?e.lighten(e.palette[t].main,.62):e.darken(e.palette[t].main,.55)}`}},[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:(e.vars||e).palette[t].main},...e.focusVisible&&{[`&.${Q.checked} + .${Q.track}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,.5)},[`&.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)},[`&.${Q.checked}.${Q.disabled} + .${Q.track}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,e.vars?e.vars.opacity.switchTrackDisabled:`${e.palette.mode===`light`?.12:.2}`)}}}}))]}))),pt=F(`span`,{name:`MuiSwitch`,slot:`Track`})(g(({theme:e})=>({height:`100%`,width:`100%`,borderRadius:7,zIndex:-1,...M(e,[`opacity`,`background-color`],{duration:e.transitions.duration.shortest}),"@media (forced-colors: active)":{boxSizing:`border-box`,border:`1px solid ButtonBorder`},...e.focusVisible?{backgroundColor:e.alpha(e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,e.vars?e.vars.opacity.switchTrack:`${e.palette.mode===`light`?.38:.3}`)}:{backgroundColor:e.vars?e.vars.palette.common.onBackground:`${e.palette.mode===`light`?e.palette.common.black:e.palette.common.white}`,opacity:e.vars?e.vars.opacity.switchTrack:`${e.palette.mode===`light`?.38:.3}`}}))),mt=F(`span`,{name:`MuiSwitch`,slot:`Thumb`})(g(({theme:e})=>({boxShadow:(e.vars||e).shadows[1],backgroundColor:`currentColor`,boxSizing:`border-box`,border:`1px solid transparent`,width:20,height:20,borderRadius:`50%`}))),ht=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiSwitch`}),{className:r,color:i=`primary`,edge:a=!1,size:o=`medium`,sx:s,slots:c={},slotProps:l={},...u}=n,d={...n,color:i,edge:a,size:o},f=ut(d),p=l.input,m={slots:c,slotProps:l},[h,g]=A(`root`,{className:K(f.root,r),elementType:dt,externalForwardedProps:m,ownerState:d,additionalProps:{sx:s}}),[_,v]=A(`thumb`,{className:f.thumb,elementType:mt,externalForwardedProps:m,ownerState:d}),y=(0,Z.jsx)(_,{...v}),[b,x]=A(`track`,{className:f.track,elementType:pt,externalForwardedProps:m,ownerState:d});return(0,Z.jsxs)(h,{...g,children:[(0,Z.jsx)(ft,{type:`checkbox`,icon:y,checkedIcon:y,ref:t,ownerState:d,...u,classes:{...f,root:f.switchBase},slots:{...c.switchBase&&{root:c.switchBase},...c.input&&{input:c.input}},slotProps:{...l.switchBase&&{root:typeof l.switchBase==`function`?l.switchBase(d):l.switchBase},input:S(typeof p==`function`?p(d):p,{role:`switch`})}}),(0,Z.jsx)(b,{...x})]})}),gt={border:0,clipPath:`inset(50%)`,height:`1px`,margin:`-1px`,overflow:`hidden`,padding:0,position:`absolute`,whiteSpace:`nowrap`,width:`1px`};function _t(e,t,n=(e,t)=>e===t){return e.length===t.length&&e.every((e,r)=>n(e,t[r]))}var vt=2,yt=[],bt={};function xt(e,t,n,r,i){return n===1?Math.min(e+t,i):Math.max(e-t,r)}function St(e,t){return e-t}function Ct(e,t,n=-1){let{index:r}=e.reduce((e,n,r)=>{let i=Math.abs(t-n);return e==null||i<=e.distance?{distance:i,index:r}:e},null)??bt;return r==null?r:n>=0&&e[n]===e[r]?n:r}function wt(e,t){if(t.current!=null&&e.changedTouches){let n=e;for(let e=0;e<n.changedTouches.length;e+=1){let r=n.changedTouches[e];if(r.identifier===t.current)return{x:r.clientX,y:r.clientY}}return!1}return{x:e.clientX,y:e.clientY}}function Tt(e,t,n){return(e-t)*100/(n-t)}function Et(e,t,n){return(n-t)*e+t}function Dt(e){if(Math.abs(e)<1){let t=e.toExponential().split(`e-`),n=t[0].split(`.`)[1];return(n?n.length:0)+parseInt(t[1],10)}let t=e.toString().split(`.`)[1];return t?t.length:0}function Ot(e,t,n){let r=Math.round((e-n)/t)*t+n;return Number(r.toFixed(Dt(t)))}function kt(e,t,n){let r=e.slice();return r[n]=t,r.sort(St)}function At(e,t,n,r){let i=je(e.current),a=p(i);if(!ze(e.current,a)||Number(a?.getAttribute(`data-index`))!==t){let n=e.current?.querySelector(`[type="range"][data-index="${t}"]`);n!=null&&(r==null?n.focus({preventScroll:!0}):n.focus({preventScroll:!0,focusVisible:r}))}n&&n(t)}function jt(e,t){return typeof e==`number`&&typeof t==`number`?e===t:typeof e==`object`&&typeof t==`object`&&_t(e,t)}var Mt={horizontal:{offset:e=>({left:`${e}%`}),leap:e=>({width:`${e}%`})},"horizontal-reverse":{offset:e=>({right:`${e}%`}),leap:e=>({width:`${e}%`})},vertical:{offset:e=>({bottom:`${e}%`}),leap:e=>({height:`${e}%`})}},Nt=e=>e;function Pt(e){let{"aria-labelledby":t,defaultValue:n,disabled:r=!1,disableSwap:i=!1,isRtl:a=!1,marks:o=!1,max:s=100,min:l=0,name:u,onChange:d,onChangeCommitted:f,orientation:h=`horizontal`,rootRef:g,scale:_=Nt,step:v=1,shiftStep:y=10,tabIndex:x,value:S}=e,C=X.useRef(void 0),w=X.useRef(null),[T,E]=X.useState(-1),[D,ee]=X.useState(-1),[O,te]=X.useState(!1),k=X.useRef(0),A=X.useRef(-1),ne=X.useRef(!1),j=X.useRef(-1),M=xe(()=>{w.current!=null&&(cancelAnimationFrame(w.current),w.current=null)}),N=X.useRef(null),[P,F]=m({controlled:S,default:n??l,name:`Slider`}),re=xe((e,t,n)=>{let r=`nativeEvent`in e?e.nativeEvent:e,i=new r.constructor(r.type,r);Object.defineProperty(i,"target",{writable:!0,value:{value:t,name:u}}),N.current=t,d?.(i,t,n)}),I=Array.isArray(P),L=X.useMemo(()=>{if(typeof P==`number`)return[W(P,l,s)];if(P==null)return[l];let e=P.slice().sort(St);for(let t=0;t<e.length;t+=1){let n=e[t];e[t]=n==null?l:W(n,l,s)}return e},[P,l,s]),R=X.useMemo(()=>{if(o===!0&&v!=null){let e=Array(Math.floor((s-l)/v)+1);for(let t=0;t<e.length;t+=1)e[t]={value:l+v*t};return e}return Array.isArray(o)?o:yt},[o,v,l,s]),z=X.useMemo(()=>{let e=Array(R.length);for(let t=0;t<R.length;t+=1)e[t]=R[t].value;return e},[R]),[ie,ae]=X.useState(-1),B=X.useRef(null),oe=De(g,B),se=e=>t=>{let n=Number(t.currentTarget.getAttribute(`data-index`));b(t.target)&&ae(n),ee(n),e?.onFocus?.(t)},ce=e=>t=>{b(t.target)||ae(-1),ee(-1),e?.onBlur?.(t)},le=(e,t)=>{let n=Number(e.currentTarget.getAttribute(`data-index`)),r=L[n],a=z.indexOf(r),o=t;if(R&&v==null){let e=z[z.length-1];o=o>=e?e:o<=z[0]?z[0]:o<r?z[a-1]:z[a+1]}if(o=W(o,l,s),I){i&&(o=W(o,L[n-1]||-1/0,L[n+1]||1/0));let e=o;o=kt(L,o,n);let t=n;i||(t=o.indexOf(e)),At(B,t)}F(o),ae(n),d&&!jt(o,P)&&re(e,o,n),f&&f(e,N.current??o)},V=e=>t=>{if([`ArrowUp`,`ArrowDown`,`ArrowLeft`,`ArrowRight`,`PageUp`,`PageDown`,`Home`,`End`].includes(t.key)){t.preventDefault();let e=Number(t.currentTarget.getAttribute(`data-index`)),n=L[e],r=null;if(v!=null){let e=t.shiftKey?y:v;switch(t.key){case`ArrowUp`:r=xt(n,e,1,l,s);break;case`ArrowRight`:r=xt(n,e,a?-1:1,l,s);break;case`ArrowDown`:r=xt(n,e,-1,l,s);break;case`ArrowLeft`:r=xt(n,e,a?1:-1,l,s);break;case`PageUp`:r=xt(n,y,1,l,s);break;case`PageDown`:r=xt(n,y,-1,l,s);break;case`Home`:r=l;break;case`End`:r=s}}else if(R){let e=z[z.length-1],i=z.indexOf(n),o=[a?`ArrowRight`:`ArrowLeft`,`ArrowDown`,`PageDown`,`Home`],s=[a?`ArrowLeft`:`ArrowRight`,`ArrowUp`,`PageUp`,`End`];o.includes(t.key)?r=i===0?z[0]:z[i-1]:s.includes(t.key)&&(r=i===z.length-1?e:z[i+1])}r!=null&&le(t,r)}e?.onKeyDown?.(t)};Me(()=>{let e=p(je(B.current));r&&ze(B.current,e)&&e!=null&&`blur`in e&&e.blur()},[r]),r&&T!==-1&&E(-1),r&&ie!==-1&&ae(-1);let H=e=>t=>{e.onChange?.(t),le(t,t.currentTarget.valueAsNumber)},ue=X.useRef(void 0),de=h;a&&h===`horizontal`&&(de+=`-reverse`);let U=e=>{let{current:t}=B;if(!t)return null;let{width:n,height:r,bottom:a,left:o}=t.getBoundingClientRect(),c;c=de.startsWith(`vertical`)?(a-e.y)/r:(e.x-o)/n,de.includes(`-reverse`)&&(c=1-c);let u;if(u=Et(c,l,s),v)u=Ot(u,v,l);else{let e=Ct(z,u);u=z[e]}u=W(u,l,s);let d=0;if(I){let e=ue.current!==-1;d=e?ue.current:Ct(L,u,A.current),i&&(u=W(u,L[d-1]||-1/0,L[d+1]||1/0));let t=u;u=kt(L,u,d),i&&e||(d=u.indexOf(t),ue.current=d)}return{newValue:u,activeIndex:d}},fe=xe(e=>{if(`pointerId`in e&&e.pointerId!==j.current)return;let t=wt(e,C);if(!t)return;if(k.current+=1,e.type===`pointermove`&&e.buttons===0){pe(e);return}let n=U(t);n&&(At(B,n.activeIndex,E,!1),A.current=n.activeIndex,F(n.newValue),!O&&k.current>vt&&te(!0),d&&!jt(n.newValue,P)&&re(e,n.newValue,n.activeIndex))}),pe=xe(e=>{if(`pointerId`in e&&e.pointerId!==j.current)return;let t=wt(e,C);if(te(!1),!t)return;let n=U(t);E(-1),e.type===`touchend`&&ee(-1),n&&f&&f(e,N.current??n.newValue),`pointerType`in e&&B.current?.hasPointerCapture(e.pointerId)&&B.current.releasePointerCapture(e.pointerId),C.current=void 0,j.current=-1,he()}),me=xe(e=>{if(r)return;if(ne.current){ne.current=!1;let t=e.changedTouches[0];t!=null&&(C.current=t.identifier);return}let t=e.changedTouches[0];t!=null&&(C.current=t.identifier);let n=wt(e,C);if(n!==!1){ue.current=-1;let t=U(n);t&&(At(B,t.activeIndex,E,!1),A.current=t.activeIndex,F(t.newValue),d&&!jt(t.newValue,P)&&re(e,t.newValue,t.activeIndex))}k.current=0;let i=je(B.current);i.addEventListener(`touchmove`,fe,{passive:!0}),i.addEventListener(`touchend`,pe,{passive:!0})}),he=X.useCallback(()=>{let e=je(B.current);e.removeEventListener(`pointermove`,fe),e.removeEventListener(`pointerup`,pe),e.removeEventListener(`touchmove`,fe),e.removeEventListener(`touchend`,pe)},[pe,fe]);X.useEffect(()=>{let e=B.current;if(e)return e.addEventListener(`touchstart`,me,{passive:!0}),()=>{e.removeEventListener(`touchstart`,me),M(),he()}},[he,me,M]),X.useEffect(()=>{r&&(he(),M())},[r,he,M]);let ge=e=>t=>{if(e.onPointerDown?.(t),t.pointerType===`touch`&&(ne.current=!0),r||t.defaultPrevented||t.button!==0)return;let n=wt(t,C);if(n!==!1){ue.current=-1;let e=U(n);if(e){let n=B.current?.querySelector(`input[type="range"][data-index="${e.activeIndex}"]`),r=je(B.current),i=n!=null&&n===p(r);E(e.activeIndex),A.current=e.activeIndex,i?t.preventDefault():(M(),w.current=requestAnimationFrame(()=>{w.current=null,At(B,e.activeIndex,void 0,!1)})),F(e.newValue),d&&!jt(e.newValue,P)&&re(t,e.newValue,e.activeIndex)}}k.current=0,j.current=t.pointerId;let i=je(B.current);try{t.currentTarget.setPointerCapture(t.pointerId)}catch{}i.addEventListener(`pointermove`,fe,{passive:!0}),i.addEventListener(`pointerup`,pe)},_e=Tt(I?L[0]:l,l,s),ve=Tt(L[L.length-1],l,s)-_e,ye=(e=bt)=>{let t=c(e),n={onPointerDown:ge(t)},r={...t,...n};return{...e,ref:oe,...r}},G=e=>t=>{e.onMouseOver?.(t);let n=Number(t.currentTarget.getAttribute(`data-index`));ee(n)},K=e=>t=>{e.onMouseLeave?.(t),ee(-1)},be=(e=bt)=>{let t=c(e),n={onMouseOver:G(t),onMouseLeave:K(t)};return{...e,...t,...n}},Se=e=>{let t;return I?T===e?t=2:A.current===e&&(t=1):T===e&&(t=1),{pointerEvents:T!==-1&&T!==e?`none`:void 0,zIndex:t}},Ce;return h===`vertical`&&(Ce=a?`vertical-rl`:`vertical-lr`),{active:T,axis:de,axisProps:Mt,dragging:O,focusedThumbIndex:ie,getHiddenInputProps:(n=bt)=>{let i=c(n),o={onChange:H(i),onFocus:se(i),onBlur:ce(i),onKeyDown:V(i)},d={...i,...o};return{tabIndex:x,"aria-labelledby":t,"aria-orientation":h,"aria-valuemax":_(s),"aria-valuemin":_(l),name:u,type:`range`,min:e.min,max:e.max,step:e.step===null&&e.marks?`any`:e.step??void 0,disabled:r,...n,...d,style:{...gt,direction:a?`rtl`:`ltr`,width:`100%`,height:`100%`,writingMode:Ce}}},getRootProps:ye,getThumbProps:be,marks:R,open:D,range:I,rootRef:oe,trackLeap:ve,trackOffset:_e,values:L,getThumbStyle:Se}}var Ft=e=>{let{open:t}=e;return{offset:K(t&&Y.valueLabelOpen),circle:Y.valueLabelCircle,label:Y.valueLabelLabel}};function It(e){let{children:t,className:n,value:r}=e,i=Ft(e);return t?X.cloneElement(t,{className:t.props.className},(0,Z.jsxs)(X.Fragment,{children:[t.props.children,(0,Z.jsx)(`span`,{className:K(i.offset,n),"aria-hidden":!0,children:(0,Z.jsx)(`span`,{className:i.circle,children:(0,Z.jsx)(`span`,{className:i.label,children:r})})})]})):null}function Lt(e){return e}var Rt=F(`span`,{name:`MuiSlider`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`color${_(n.color)}`],n.size!==`medium`&&t[`size${_(n.size)}`],n.marked&&t.marked,n.orientation===`vertical`&&t.vertical,n.track===`inverted`&&t.trackInverted,n.track===!1&&t.trackFalse]}})(g(({theme:e})=>({borderRadius:12,boxSizing:`content-box`,display:`inline-block`,position:`relative`,cursor:`pointer`,touchAction:`none`,WebkitTapHighlightColor:`transparent`,"@media print":{colorAdjust:`exact`},[`&.${Y.disabled}`]:{pointerEvents:`none`,cursor:`default`,color:(e.vars||e).palette.grey[400]},[`&.${Y.dragging}`]:{[`& .${Y.thumb}, & .${Y.track}`]:{transition:`none`}},variants:[...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),{props:{orientation:`horizontal`},style:{height:4,width:`100%`,padding:`13px 0`,"@media (pointer: coarse)":{padding:`20px 0`}}},{props:{orientation:`horizontal`,size:`small`},style:{height:2}},{props:{orientation:`horizontal`,marked:!0},style:{marginBottom:20}},{props:{orientation:`vertical`},style:{height:`100%`,width:4,padding:`0 13px`,"@media (pointer: coarse)":{padding:`0 20px`}}},{props:{orientation:`vertical`,size:`small`},style:{width:2}},{props:{orientation:`vertical`,marked:!0},style:{marginRight:44}}]}))),zt=F(`span`,{name:`MuiSlider`,slot:`Rail`})({display:`block`,position:`absolute`,borderRadius:`inherit`,backgroundColor:`currentColor`,opacity:.38,"@media (forced-colors: active)":{border:`1px solid transparent`,boxSizing:`border-box`},variants:[{props:{orientation:`horizontal`},style:{width:`100%`,height:`inherit`,top:`50%`,transform:`translateY(-50%)`}},{props:{orientation:`vertical`},style:{height:`100%`,width:`inherit`,left:`50%`,transform:`translateX(-50%)`}},{props:{track:`inverted`},style:{opacity:1}}]}),Bt=F(`span`,{name:`MuiSlider`,slot:`Track`})(g(({theme:e})=>({display:`block`,position:`absolute`,borderRadius:`inherit`,border:`1px solid currentColor`,backgroundColor:`currentColor`,...M(e,[`left`,`width`,`bottom`,`height`],{duration:e.transitions.duration.shortest}),variants:[{props:{size:`small`},style:{"@media (forced-colors: none)":{border:`none`}}},{props:{orientation:`horizontal`},style:{height:`inherit`,top:`50%`,transform:`translateY(-50%)`}},{props:{orientation:`vertical`},style:{width:`inherit`,left:`50%`,transform:`translateX(-50%)`}},{props:{track:!1},style:{display:`none`}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t,track:`inverted`},style:{...e.vars?{backgroundColor:e.vars.palette.Slider[`${t}Track`],borderColor:e.vars.palette.Slider[`${t}Track`]}:{backgroundColor:e.lighten(e.palette[t].main,.62),borderColor:e.lighten(e.palette[t].main,.62),...e.applyStyles(`dark`,{backgroundColor:e.darken(e.palette[t].main,.5)}),...e.applyStyles(`dark`,{borderColor:e.darken(e.palette[t].main,.5)})}}}))]}))),Vt=F(`span`,{name:`MuiSlider`,slot:`Thumb`})(g(({theme:e})=>({position:`absolute`,width:20,height:20,boxSizing:`border-box`,borderRadius:`50%`,outline:0,backgroundColor:`currentColor`,display:`flex`,alignItems:`center`,justifyContent:`center`,...M(e,[`box-shadow`,`left`,`bottom`],{duration:e.transitions.duration.shortest}),"@media (forced-colors: active)":{border:`1px solid ButtonBorder`},"&::before":{position:`absolute`,content:`""`,borderRadius:`inherit`,width:`100%`,height:`100%`,boxShadow:(e.vars||e).shadows[2]},"&::after":{position:`absolute`,content:`""`,borderRadius:`50%`,width:42,height:42,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`},[`&.${Y.disabled}`]:{"&:hover":{boxShadow:`none`}},...e.focusVisible&&{[`&.${Y.focusVisible}`]:{...Ce,...e.focusVisible}},variants:[{props:{size:`small`},style:{width:12,height:12,"&::before":{boxShadow:`none`}}},{props:{orientation:`horizontal`},style:{top:`50%`,transform:`translate(-50%, -50%)`}},{props:{orientation:`vertical`},style:{left:`50%`,transform:`translate(-50%, 50%)`}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{"&:hover":{boxShadow:`0px 0px 0px 8px ${e.alpha((e.vars||e).palette[t].main,.16)}`,"@media (hover: none)":{boxShadow:`none`}},...!e.focusVisible&&{[`&.${Y.focusVisible}`]:{boxShadow:`0px 0px 0px 8px ${e.alpha((e.vars||e).palette[t].main,.16)}`,"@media (hover: none)":{boxShadow:`none`}}},[`&.${Y.active}`]:{boxShadow:`0px 0px 0px 14px ${e.alpha((e.vars||e).palette[t].main,.16)}`}}}))]}))),Ht=F(It,{name:`MuiSlider`,slot:`ValueLabel`})(g(({theme:e})=>({zIndex:1,whiteSpace:`nowrap`,...e.typography.body2,fontWeight:500,...M(e,[`transform`],{duration:e.transitions.duration.shortest}),position:`absolute`,backgroundColor:(e.vars||e).palette.grey[600],borderRadius:2,color:(e.vars||e).palette.common.white,display:`flex`,alignItems:`center`,justifyContent:`center`,padding:`0.25rem 0.75rem`,variants:[{props:{orientation:`horizontal`},style:{transform:`translateY(-100%) scale(0)`,top:`-10px`,transformOrigin:`bottom center`,"&::before":{position:`absolute`,content:`""`,width:8,height:8,transform:`translate(-50%, 50%) rotate(45deg)`,backgroundColor:`inherit`,bottom:0,left:`50%`},[`&.${Y.valueLabelOpen}`]:{transform:`translateY(-100%) scale(1)`}}},{props:{orientation:`vertical`},style:{transform:`translateY(-50%) scale(0)`,right:`30px`,top:`50%`,transformOrigin:`right center`,"&::before":{position:`absolute`,content:`""`,width:8,height:8,transform:`translate(-50%, -50%) rotate(45deg)`,backgroundColor:`inherit`,right:-8,top:`50%`},[`&.${Y.valueLabelOpen}`]:{transform:`translateY(-50%) scale(1)`}}},{props:{size:`small`},style:{fontSize:e.typography.pxToRem(12),padding:`0.25rem 0.5rem`}},{props:{orientation:`vertical`,size:`small`},style:{right:`20px`}}]}))),Ut=F(`span`,{name:`MuiSlider`,slot:`Mark`,shouldForwardProp:e=>re(e)&&e!==`markActive`,overridesResolver:(e,t)=>{let{markActive:n}=e;return[t.mark,n&&t.markActive]}})(g(({theme:e})=>({position:`absolute`,width:2,height:2,borderRadius:1,backgroundColor:`currentColor`,variants:[{props:{orientation:`horizontal`},style:{top:`50%`,transform:`translate(-1px, -50%)`}},{props:{orientation:`vertical`},style:{left:`50%`,transform:`translate(-50%, 1px)`}},{props:{markActive:!0},style:{backgroundColor:(e.vars||e).palette.background.paper,opacity:.8}}]}))),Wt=F(`span`,{name:`MuiSlider`,slot:`MarkLabel`,shouldForwardProp:e=>re(e)&&e!==`markLabelActive`})(g(({theme:e})=>({...e.typography.body2,color:(e.vars||e).palette.text.secondary,position:`absolute`,whiteSpace:`nowrap`,variants:[{props:{orientation:`horizontal`},style:{top:30,transform:`translateX(-50%)`,"@media (pointer: coarse)":{top:40}}},{props:{orientation:`vertical`},style:{left:36,transform:`translateY(50%)`,"@media (pointer: coarse)":{left:44}}},{props:{markLabelActive:!0},style:{color:(e.vars||e).palette.text.primary}}]}))),Gt=e=>{let{disabled:t,dragging:n,marked:r,orientation:i,track:a,classes:o,color:s,size:c}=e,l={root:[`root`,t&&`disabled`,n&&`dragging`,r&&`marked`,i===`vertical`&&`vertical`,a===`inverted`&&`trackInverted`,a===!1&&`trackFalse`,s&&`color${_(s)}`,c&&`size${_(c)}`],rail:[`rail`],track:[`track`],mark:[`mark`],markActive:[`markActive`],markLabel:[`markLabel`],markLabelActive:[`markLabelActive`],valueLabel:[`valueLabel`],thumb:[`thumb`,t&&`disabled`],active:[`active`],disabled:[`disabled`],focusVisible:[`focusVisible`]};return ke(l,Ke,o)},Kt=({children:e})=>e,qt=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiSlider`}),r=oe(),{"aria-label":i,"aria-valuetext":a,"aria-labelledby":o,color:s=`primary`,classes:c,className:l,disableSwap:u=!1,disabled:d=!1,getAriaLabel:f,getAriaValueText:p,marks:m=!1,max:h=100,min:g=0,name:_,onChange:v,onChangeCommitted:y,orientation:b=`horizontal`,shiftStep:x=10,size:S=`medium`,step:C=1,scale:w=Lt,slotProps:T={},slots:E={},tabIndex:D,track:ee=`normal`,value:O,valueLabelDisplay:te=`off`,valueLabelFormat:k=Lt,...ne}=n,j={...n,isRtl:r,max:h,min:g,classes:c,disabled:d,disableSwap:u,orientation:b,marks:m,color:s,size:S,step:C,shiftStep:x,scale:w,track:ee,valueLabelDisplay:te,valueLabelFormat:k},{axisProps:M,getRootProps:N,getHiddenInputProps:P,getThumbProps:F,open:re,active:I,axis:L,focusedThumbIndex:R,range:z,dragging:ie,marks:ae,values:B,trackOffset:se,trackLeap:ce,getThumbStyle:le}=Pt({...j,rootRef:t});j.marked=ae.length>0&&ae.some(e=>e.label),j.dragging=ie,j.focusedThumbIndex=R;let V=Gt(j),H={slots:E,slotProps:T},[ue,de]=A(`root`,{elementType:Rt,getSlotProps:N,externalForwardedProps:{...H,...ne},ownerState:j,className:[V.root,l]}),[U,fe]=A(`rail`,{elementType:zt,externalForwardedProps:H,ownerState:j,className:V.rail}),[pe,he]=A(`track`,{elementType:Bt,externalForwardedProps:H,additionalProps:{style:{...M[L].offset(se),...M[L].leap(ce)}},ownerState:j,className:V.track}),[ge,_e]=A(`thumb`,{elementType:Vt,getSlotProps:F,externalForwardedProps:H,ownerState:j,className:V.thumb}),[ve,ye]=A(`valueLabel`,{elementType:Ht,externalForwardedProps:H,ownerState:j,className:V.valueLabel}),[W,G]=A(`mark`,{elementType:Ut,externalForwardedProps:H,ownerState:j,className:V.mark}),[be,xe]=A(`markLabel`,{elementType:Wt,externalForwardedProps:H,ownerState:j,className:V.markLabel}),[Se,Ce]=A(`input`,{elementType:`input`,getSlotProps:P,externalForwardedProps:H,ownerState:j});return(0,Z.jsxs)(ue,{...de,children:[(0,Z.jsx)(U,{...fe}),(0,Z.jsx)(pe,{...he}),ae.filter(e=>e.value>=g&&e.value<=h).map((e,t)=>{let n=Tt(e.value,g,h),r=M[L].offset(n),i;return i=ee===!1?B.includes(e.value):ee===`normal`&&(z?e.value>=B[0]&&e.value<=B[B.length-1]:e.value<=B[0])||ee===`inverted`&&(z?e.value<=B[0]||e.value>=B[B.length-1]:e.value>=B[0]),(0,Z.jsxs)(X.Fragment,{children:[(0,Z.jsx)(W,{"data-index":t,...G,...!me(W)&&{markActive:i},style:{...r,...G.style},className:K(G.className,i&&V.markActive)}),e.label==null?null:(0,Z.jsx)(be,{"aria-hidden":!0,"data-index":t,...xe,...!me(be)&&{markLabelActive:i},style:{...r,...xe.style},className:K(V.markLabel,xe.className,i&&V.markLabelActive),children:e.label})]},t)}),B.map((e,t)=>{let n=Tt(e,g,h),r=M[L].offset(n),s=te===`off`?Kt:ve;return(0,Z.jsx)(s,{...!me(s)&&{valueLabelFormat:k,valueLabelDisplay:te,value:typeof k==`function`?k(w(e),t):k,index:t,open:re===t||I===t||te===`on`,disabled:d},...ye,children:(0,Z.jsx)(ge,{"data-index":t,..._e,className:K(V.thumb,_e.className,I===t&&V.active,R===t&&V.focusVisible),style:{...r,...le(t),..._e.style},children:(0,Z.jsx)(Se,{"data-index":t,"aria-label":f?f(t):i,"aria-valuenow":w(e),"aria-labelledby":o,"aria-valuetext":p?p(w(e),t):a,value:B[t],...Ce})})},t)})]})}),Jt=X.createContext({}),Yt=X.createContext(void 0);function Xt(e,t){return t===void 0||e===void 0?!1:Array.isArray(t)?t.includes(e):e===t}function Zt(e,t){let{children:n,disabled:r=!1,selected:a=!1,value:o}=e,s=i(),c=ie({id:o,ref:t,disabled:r,selected:a}),l=s.getItemMap().size===0&&a?0:c.tabIndex;return X.cloneElement(X.Children.only(n),{...c,tabIndex:n.props.tabIndex??l})}var Qt=X.forwardRef(Zt),$t=e=>{let{classes:t,fullWidth:n,selected:r,disabled:i,size:a,color:o}=e,s={root:[`root`,r&&`selected`,i&&`disabled`,n&&`fullWidth`,`size${_(a)}`,o]};return ke(s,qe,t)},en=F(_e,{name:`MuiToggleButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`size${_(n.size)}`]]}})(g(({theme:e})=>({...e.typography.button,borderRadius:(e.vars||e).shape.borderRadius,padding:11,border:`1px solid ${(e.vars||e).palette.divider}`,color:(e.vars||e).palette.action.active,[`&.${Je.disabled}`]:{color:(e.vars||e).palette.action.disabled,border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`},"&:hover":{textDecoration:`none`,backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:`transparent`}},variants:[{props:{color:`standard`},style:{[`&.${Je.selected}`]:{color:(e.vars||e).palette.text.primary,backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.selectedOpacity),"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.text.primary,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`),"@media (hover: none)":{backgroundColor:e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.selectedOpacity)}}}}},...Object.entries(e.palette).filter(w()).map(([t])=>({props:{color:t},style:{[`&.${Je.selected}`]:{color:(e.vars||e).palette[t].main,backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.selectedOpacity),"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`),"@media (hover: none)":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.selectedOpacity)}}}}})),{props:{fullWidth:!0},style:{width:`100%`}},{props:{size:`small`},style:{padding:7,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`},style:{padding:15,fontSize:e.typography.pxToRem(15)}}]}))),tn=X.forwardRef(function(e,t){let{value:n,isRovingTabIndex:r,...i}=X.useContext(Jt),a=X.useContext(Yt),o=ce({...i,selected:Xt(e.value,n)},e),s=Te({props:o,name:`MuiToggleButton`}),{children:c,className:l,color:u=`standard`,disabled:d=!1,disableFocusRipple:f=!1,fullWidth:p=!1,onChange:m,onClick:h,selected:g,size:_=`medium`,value:v,...y}=s,b={...s,color:u,disabled:d,disableFocusRipple:f,fullWidth:p,size:_},x=$t(b),S=e=>{h&&(h(e,v),e.defaultPrevented)||m&&m(e,v)},C=a||``,w=(0,Z.jsx)(en,{className:K(i.className,x.root,l,C),internalNativeButton:!0,disabled:d,focusRipple:!f,ref:r?void 0:t,onClick:S,onChange:m,value:v,ownerState:b,"aria-pressed":g,...y,children:c});return r?(0,Z.jsx)(Qt,{disabled:d,selected:g,ref:t,value:v,children:w}):w});function nn(e){return X.Children.toArray(e).filter(e=>X.isValidElement(e))}function rn(e){return q(`MuiToggleButtonGroup`,e)}var $=H(`MuiToggleButtonGroup`,[`root`,`selected`,`horizontal`,`vertical`,`disabled`,`grouped`,`fullWidth`,`firstButton`,`lastButton`,`middleButton`]),an=e=>{let{classes:t,orientation:n,fullWidth:r,disabled:i}=e;return ke({root:[`root`,n,r&&`fullWidth`],grouped:[`grouped`,i&&`disabled`],firstButton:[`firstButton`],lastButton:[`lastButton`],middleButton:[`middleButton`]},rn,t)},on=F(`div`,{name:`MuiToggleButtonGroup`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${$.grouped}`]:t.grouped},{[`& .${$.firstButton}`]:t.firstButton},{[`& .${$.lastButton}`]:t.lastButton},{[`& .${$.middleButton}`]:t.middleButton},t.root,n.orientation===`vertical`&&t.vertical,n.fullWidth&&t.fullWidth]}})(g(({theme:e})=>({display:`inline-flex`,borderRadius:(e.vars||e).shape.borderRadius,...e.focusVisible&&{[`& .${$.grouped}.${t.focusVisible}`]:{zIndex:1}},variants:[{props:{orientation:`vertical`},style:{flexDirection:`column`,[`& .${$.grouped}`]:{[`&.${$.selected} + .${$.grouped}.${$.selected}`]:{borderTop:0,marginTop:0}},[`& .${$.firstButton},& .${$.middleButton}`]:{borderBottomLeftRadius:0,borderBottomRightRadius:0},[`& .${$.lastButton},& .${$.middleButton}`]:{marginTop:-1,borderTop:`1px solid transparent`,borderTopLeftRadius:0,borderTopRightRadius:0},[`& .${$.lastButton}.${Je.disabled},& .${$.middleButton}.${Je.disabled}`]:{borderTop:`1px solid transparent`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{orientation:`horizontal`},style:{[`& .${$.grouped}`]:{[`&.${$.selected} + .${$.grouped}.${$.selected}`]:{borderLeft:0,marginLeft:0}},[`& .${$.firstButton},& .${$.middleButton}`]:{borderTopRightRadius:0,borderBottomRightRadius:0},[`& .${$.lastButton},& .${$.middleButton}`]:{marginLeft:-1,borderLeft:`1px solid transparent`,borderTopLeftRadius:0,borderBottomLeftRadius:0},[`& .${$.lastButton}.${Je.disabled},& .${$.middleButton}.${Je.disabled}`]:{borderLeft:`1px solid transparent`}}}]}))),sn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiToggleButtonGroup`}),{children:r,className:i,color:a=`standard`,disabled:o=!1,exclusive:s=!1,fullWidth:c=!1,onChange:l,orientation:u=`horizontal`,size:d=`medium`,value:f,...p}=n,m={...n,disabled:o,fullWidth:c,orientation:u,size:d},h=an(m),g=oe(),_=X.useCallback((e,t)=>{if(!l)return;let n=f&&f.indexOf(t),r;f&&n>=0?(r=f.slice(),r.splice(n,1)):r=f?f.concat(t):[t],l(e,r)},[l,f]),v=X.useCallback((e,t)=>{l&&l(e,f===t?null:t)},[l,f]),y=X.useMemo(()=>({className:h.grouped,onChange:s?v:_,value:f,size:d,fullWidth:c,color:a,disabled:o,isRovingTabIndex:!0}),[h.grouped,s,v,_,f,d,c,a,o]),b=nn(r),x=b.length,S=e=>{let t=e===0,n=e===x-1;return t&&n?``:t?h.firstButton:n?h.lastButton:h.middleButton},C=Le({orientation:u,isRtl:g}),w=C.getContainerProps(t,p.onFocus,p.onKeyDown);return(0,Z.jsx)(on,{role:`group`,className:K(h.root,i),ownerState:m,...p,...w,children:(0,Z.jsx)(te.Provider,{value:C,children:(0,Z.jsx)(Jt.Provider,{value:y,children:b.map((e,t)=>(0,Z.jsx)(Yt.Provider,{value:S(t),children:e},t))})})})}),cn=e=>{let{classes:t,disabled:n,labelPlacement:r,error:i,required:a}=e,o={root:[`root`,n&&`disabled`,`labelPlacement${_(r)}`,i&&`error`,a&&`required`],label:[`label`,n&&`disabled`],asterisk:[`asterisk`,i&&`error`]};return ke(o,We,t)},ln=F(`label`,{name:`MuiFormControlLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Ge.label}`]:t.label},t.root,t[`labelPlacement${_(n.labelPlacement)}`]]}})(g(({theme:e})=>({display:`inline-flex`,alignItems:`center`,cursor:`pointer`,verticalAlign:`middle`,WebkitTapHighlightColor:`transparent`,marginLeft:-11,marginRight:16,[`&.${Ge.disabled}`]:{cursor:`default`},[`& .${Ge.label}`]:{[`&.${Ge.disabled}`]:{color:(e.vars||e).palette.text.disabled}},variants:[{props:{labelPlacement:`start`},style:{flexDirection:`row-reverse`,marginRight:-11}},{props:{labelPlacement:`top`},style:{flexDirection:`column-reverse`}},{props:{labelPlacement:`bottom`},style:{flexDirection:`column`}},{props:({labelPlacement:e})=>e===`start`||e===`top`||e===`bottom`,style:{marginLeft:16}}]}))),un=F(`span`,{name:`MuiFormControlLabel`,slot:`Asterisk`})(g(({theme:e})=>({[`&.${Ge.error}`]:{color:(e.vars||e).palette.error.main}}))),dn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiFormControlLabel`}),{checked:r,className:i,control:a,disabled:o,disableTypography:s,inputRef:c,label:l,labelPlacement:u=`end`,name:d,onChange:f,required:p,slots:m={},slotProps:h={},value:g,..._}=n,[v,y]=le({props:n,states:[`error`]}),b=o??a.props.disabled??y?.disabled,x=p??a.props.required,S={disabled:b,required:x};[`checked`,`name`,`onChange`,`value`,`inputRef`].forEach(e=>{a.props[e]===void 0&&n[e]!==void 0&&(S[e]=n[e])});let C={...n,disabled:b,labelPlacement:u,required:x,error:v.error},w=cn(C),[T,E]=A(`typography`,{elementType:U,externalForwardedProps:{slots:m,slotProps:h},ownerState:C}),D=l;return D!=null&&D.type!==U&&!s&&(D=(0,Z.jsx)(T,{component:`span`,...E,className:K(w.label,E?.className),children:D})),(0,Z.jsxs)(ln,{className:K(w.root,i),ownerState:C,ref:t,..._,children:[X.cloneElement(a,S),x?(0,Z.jsxs)(`div`,{children:[D,(0,Z.jsxs)(un,{ownerState:C,"aria-hidden":!0,className:w.asterisk,children:[` `,`*`]})]}):D]})});function fn(e){return(1+Math.sin(Math.PI*e-Math.PI/2))/2}function pn(e,t,n,r={},i=()=>{}){let{ease:a=fn,duration:o=300}=r,s=null,c=t[e],l=!1,u=()=>{l=!0},d=r=>{if(l){i(Error(`Animation cancelled`));return}s===null&&(s=r);let u=Math.min(1,(r-s)/o);if(t[e]=a(u)*(n-c)+c,u>=1){requestAnimationFrame(()=>{i(null)});return}requestAnimationFrame(d)};return c===n?(i(Error(`Element already at target position`)),u):(requestAnimationFrame(d),u)}var mn={width:99,height:99,position:`absolute`,top:-9999,overflow:`scroll`,pointerEvents:`none`};function hn(e){let{onChange:t,...n}=e,r=X.useRef(),i=X.useRef(null),a=()=>{r.current=i.current.offsetHeight-i.current.clientHeight};return N(()=>{let e=O(()=>{let e=r.current;a(),e!==r.current&&t(r.current)}),n=v(i.current);return n.addEventListener(`resize`,e),()=>{e.clear(),n.removeEventListener(`resize`,e)}},[t]),X.useEffect(()=>{a(),t(r.current)},[t]),(0,Z.jsx)(`div`,{style:mn,...n,ref:i})}var gn=Ve((0,Z.jsx)(`path`,{d:`M15.41 16.09l-4.58-4.59 4.58-4.59L14 5.5l-6 6 6 6z`}),`KeyboardArrowLeft`),_n=Ve((0,Z.jsx)(`path`,{d:`M8.59 16.34l4.58-4.59-4.58-4.59L10 5.75l6 6-6 6z`}),`KeyboardArrowRight`);function vn(e){return q(`MuiTabScrollButton`,e)}var yn=H(`MuiTabScrollButton`,[`root`,`vertical`,`horizontal`,`disabled`]),bn=e=>{let{classes:t,orientation:n,disabled:r}=e;return ke({root:[`root`,n,r&&`disabled`]},vn,t)},xn=F(_e,{name:`MuiTabScrollButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.orientation&&t[n.orientation]]}})({width:40,flexShrink:0,opacity:.8,[`&.${yn.disabled}`]:{opacity:0},variants:[{props:{orientation:`vertical`},style:{width:`100%`,height:40,"& svg":{transform:`var(--TabScrollButton-svgRotate)`}}}]}),Sn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTabScrollButton`}),{className:r,slots:i={},slotProps:a={},direction:o,orientation:s,disabled:c,...l}=n,{nativeButton:u,...d}=l,f=oe(),p={isRtl:f,...n},m=bn(p),h=i.StartScrollButtonIcon??gn,g=i.EndScrollButtonIcon??_n,_=Fe({elementType:h,externalSlotProps:a.startScrollButtonIcon,additionalProps:{fontSize:`small`},ownerState:p}),v=Fe({elementType:g,externalSlotProps:a.endScrollButtonIcon,additionalProps:{fontSize:`small`},ownerState:p});return(0,Z.jsx)(xn,{component:`div`,className:K(m.root,r),ref:t,role:null,ownerState:p,tabIndex:null,...d,style:{...d.style,...s===`vertical`&&{"--TabScrollButton-svgRotate":`rotate(${f?-90:90}deg)`}},children:o===`left`?(0,Z.jsx)(h,{..._}):(0,Z.jsx)(g,{...v})})});function Cn(e){return q(`MuiTabs`,e)}var wn=H(`MuiTabs`,[`root`,`vertical`,`list`,`centered`,`scroller`,`fixed`,`scrollableX`,`scrollableY`,`hideScrollbar`,`scrollButtons`,`scrollButtonsHideMobile`,`indicator`]),Tn=e=>{let{vertical:t,fixed:n,hideScrollbar:r,scrollableX:i,scrollableY:a,centered:o,scrollButtonsHideMobile:s,classes:c}=e;return ke({root:[`root`,t&&`vertical`],scroller:[`scroller`,n&&`fixed`,r&&`hideScrollbar`,i&&`scrollableX`,a&&`scrollableY`],list:[`list`,t&&`vertical`,o&&`centered`],indicator:[`indicator`],scrollButtons:[`scrollButtons`,s&&`scrollButtonsHideMobile`],scrollableX:[i&&`scrollableX`],hideScrollbar:[r&&`hideScrollbar`]},Cn,c)},En=F(`div`,{name:`MuiTabs`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${wn.scrollButtons}`]:t.scrollButtons},{[`& .${wn.scrollButtons}`]:n.scrollButtonsHideMobile&&t.scrollButtonsHideMobile},t.root,n.vertical&&t.vertical]}})(g(({theme:e})=>({overflow:`hidden`,minHeight:48,WebkitOverflowScrolling:`touch`,display:`flex`,variants:[{props:({ownerState:e})=>e.vertical,style:{flexDirection:`column`}},{props:({ownerState:e})=>e.scrollButtonsHideMobile,style:{[`& .${wn.scrollButtons}`]:{[e.breakpoints.down(`sm`)]:{display:`none`}}}}]}))),Dn=F(`div`,{name:`MuiTabs`,slot:`Scroller`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.scroller,n.fixed&&t.fixed,n.hideScrollbar&&t.hideScrollbar,n.scrollableX&&t.scrollableX,n.scrollableY&&t.scrollableY]}})({position:`relative`,display:`inline-block`,flex:`1 1 auto`,whiteSpace:`nowrap`,variants:[{props:({ownerState:e})=>e.fixed,style:{overflowX:`hidden`,width:`100%`}},{props:({ownerState:e})=>e.hideScrollbar,style:{scrollbarWidth:`none`,"&::-webkit-scrollbar":{display:`none`}}},{props:({ownerState:e})=>e.scrollableX,style:{overflowX:`auto`,overflowY:`hidden`}},{props:({ownerState:e})=>e.scrollableY,style:{overflowY:`auto`,overflowX:`hidden`}}]}),On=F(`div`,{name:`MuiTabs`,slot:`List`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.list,n.centered&&t.centered]}})({display:`flex`,variants:[{props:({ownerState:e})=>e.vertical,style:{flexDirection:`column`}},{props:({ownerState:e})=>e.centered,style:{justifyContent:`center`}}]}),kn=F(`span`,{name:`MuiTabs`,slot:`Indicator`})(g(({theme:e})=>({position:`absolute`,height:2,bottom:0,width:`100%`,...M(e),variants:[{props:{indicatorColor:`primary`},style:{backgroundColor:(e.vars||e).palette.primary.main}},{props:{indicatorColor:`secondary`},style:{backgroundColor:(e.vars||e).palette.secondary.main}},{props:({ownerState:e})=>e.vertical,style:{height:`100%`,width:2,right:0}}]}))),An=F(hn)({overflowX:`auto`,overflowY:`hidden`,scrollbarWidth:`none`,"&::-webkit-scrollbar":{display:`none`}}),jn={},Mn=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTabs`}),r=ee(),i=oe(),a=he(r.motion.reducedMotion,!1),{"aria-label":o,"aria-labelledby":s,action:c,centered:l=!1,children:u,className:d,component:m=`div`,allowScrollButtonsMobile:h=!1,indicatorColor:g=`primary`,onChange:_,orientation:y=`horizontal`,scrollButtons:b=`auto`,selectionFollowsFocus:x,slots:S={},slotProps:C={},textColor:w=`primary`,value:T,variant:D=`standard`,visibleScrollbar:k=!1,...ne}=n,M=D===`scrollable`,N=y===`vertical`,P=N?`scrollTop`:`scrollLeft`,F=N?`top`:`left`,re=N?`bottom`:`right`,I=N?`clientHeight`:`clientWidth`,L=N?`height`:`width`,R={...n,component:m,allowScrollButtonsMobile:h,indicatorColor:g,orientation:y,vertical:N,scrollButtons:b,textColor:w,variant:D,visibleScrollbar:k,fixed:!M,hideScrollbar:M&&!k,scrollableX:M&&!N,scrollableY:M&&N,centered:l&&!M,scrollButtonsHideMobile:!h},z=Tn(R),ie=Fe({elementType:S.startScrollButtonIcon,externalSlotProps:C.startScrollButtonIcon,ownerState:R}),ae=Fe({elementType:S.endScrollButtonIcon,externalSlotProps:C.endScrollButtonIcon,ownerState:R}),[B,se]=X.useState(!1),[ce,le]=X.useState(jn),[V,H]=X.useState(!1),[ue,de]=X.useState(!1),[U,fe]=X.useState(!1),pe=T===!1?null:T,[me,ge]=X.useState(!1),[_e,ve]=X.useState({overflow:`hidden`,scrollbarWidth:0}),ye=new Map,W=X.useRef(null),G=X.useRef(null),be={slots:S,slotProps:C},xe=()=>{let e=W.current,t;if(e){let n=e.getBoundingClientRect();t={clientWidth:e.clientWidth,scrollLeft:e.scrollLeft,scrollTop:e.scrollTop,scrollWidth:e.scrollWidth,top:n.top,bottom:n.bottom,left:n.left,right:n.right}}let n;if(e&&T!==!1){let e=G.current.children;if(e.length>0){let t=e[ye.get(T)];n=t?t.getBoundingClientRect():null}}return{tabsMeta:t,tabMeta:n}},Se=E(()=>{let{tabsMeta:e,tabMeta:t}=xe(),n=0,r;N?(r=`top`,t&&e&&(n=t.top-e.top+e.scrollTop)):(r=i?`right`:`left`,t&&e&&(n=(i?-1:1)*(t[r]-e[r]+e.scrollLeft)));let a={[r]:n,[L]:t?t[L]:0};if(typeof ce[r]!=`number`||typeof ce[L]!=`number`)le(a);else{let e=Math.abs(ce[r]-a[r]),t=Math.abs(ce[L]-a[L]);(e>=1||t>=1)&&le(a)}}),Ce=(e,{animation:t=!0}={})=>{t&&!a.shouldReduceMotion?pn(P,W.current,e,{duration:r.transitions.duration.standard}):W.current[P]=e},we=e=>{let t=W.current[P];t+=N?e:e*(i?-1:1),Ce(t)},q=()=>{let e=W.current[I],t=0,n=Array.from(G.current.children);for(let r=0;r<n.length;r+=1){let i=n[r];if(t+i[I]>e){r===0&&(t=e);break}t+=i[I]}return t},Ee=()=>{we(-1*q())},De=()=>{we(q())},[Oe,{onChange:ke,...Ae}]=A(`scrollbar`,{className:K(z.scrollableX,z.hideScrollbar),elementType:An,shouldForwardComponentProp:!0,externalForwardedProps:be,ownerState:R}),je=X.useCallback(e=>{ke?.(e),ve({overflow:null,scrollbarWidth:e})},[ke]),[J,Me]=A(`scrollButtons`,{className:z.scrollButtons,elementType:Sn,externalForwardedProps:be,ownerState:R,additionalProps:{orientation:y,slots:{StartScrollButtonIcon:S.startScrollButtonIcon,EndScrollButtonIcon:S.endScrollButtonIcon},slotProps:{startScrollButtonIcon:ie,endScrollButtonIcon:ae}}}),Ne=()=>{let e={};e.scrollbarSizeListener=M?(0,Z.jsx)(Oe,{...Ae,onChange:je}):null;let t=M&&(b===`auto`&&(V||ue)||b===!0);return e.scrollButtonStart=t?(0,Z.jsx)(J,{direction:i?`right`:`left`,onClick:Ee,disabled:!V,...Me}):null,e.scrollButtonEnd=t?(0,Z.jsx)(J,{direction:i?`left`:`right`,onClick:De,disabled:!ue,...Me}):null,e},Pe=E(e=>{let{tabsMeta:t,tabMeta:n}=xe();if(n&&t){if(n[F]<t[F]){let r=t[P]+(n[F]-t[F]);Ce(r,{animation:e})}else if(n[re]>t[re]){let r=t[P]+(n[re]-t[re]);Ce(r,{animation:e})}}}),Ie=E(()=>{M&&b!==!1&&fe(!U)});X.useEffect(()=>{let e=O(()=>{W.current&&Se()}),t,n=n=>{n.forEach(e=>{e.removedNodes.forEach(e=>{t?.unobserve(e)}),e.addedNodes.forEach(e=>{t?.observe(e)})}),e(),Ie()},r=v(W.current);r.addEventListener(`resize`,e);let i;return typeof ResizeObserver<`u`&&(t=new ResizeObserver(e),Array.from(G.current.children).forEach(e=>{t.observe(e)})),typeof MutationObserver<`u`&&(i=new MutationObserver(n),i.observe(G.current,{childList:!0})),()=>{e.clear(),r.removeEventListener(`resize`,e),i?.disconnect(),t?.disconnect()}},[Se,Ie]),X.useEffect(()=>{let e=Array.from(G.current.children),t=e.length;if(typeof IntersectionObserver<`u`&&t>0&&M&&b!==!1){let n=e[0],r=e[t-1],i={root:W.current,threshold:.99},a=new IntersectionObserver(e=>{H(!e[0].isIntersecting)},i);a.observe(n);let o=new IntersectionObserver(e=>{de(!e[0].isIntersecting)},i);return o.observe(r),()=>{a.disconnect(),o.disconnect()}}},[M,b,U,u?.length]),X.useEffect(()=>{se(!0)},[]),X.useEffect(()=>{Se()}),X.useEffect(()=>{Pe(jn!==ce)},[Pe,ce]),X.useImperativeHandle(c,()=>({updateIndicator:Se,updateScrollButtons:Ie}),[Se,Ie]);let[Re,Be]=A(`indicator`,{className:z.indicator,elementType:kn,externalForwardedProps:be,ownerState:R,additionalProps:{style:ce}}),Ve=(0,Z.jsx)(Re,{...Be}),He=Le({activeItemId:me?void 0:pe,orientation:y,isRtl:i}),Ue=He.getContainerProps(),We=X.Children.toArray(u).filter(X.isValidElement).map((e,t)=>{let n=e.props.value===void 0?t:e.props.value;return ye.set(n,t),{child:e,index:t,childValue:n}}).map(({child:e,childValue:t})=>{let n=t===T;return X.cloneElement(e,{fullWidth:D===`fullWidth`,indicator:n&&!B&&Ve,selected:n,selectionFollowsFocus:x,onChange:_,textColor:w,value:t})}),Ge=Ne(),[Ke,Y]=A(`root`,{ref:t,className:K(z.root,d),elementType:En,externalForwardedProps:{...be,...ne,component:m},ownerState:R}),[qe,Je]=A(`scroller`,{ref:W,className:z.scroller,elementType:Dn,externalForwardedProps:be,ownerState:R,additionalProps:{style:{overflow:_e.overflow,[N?`margin${i?`Left`:`Right`}`:`marginBottom`]:k?void 0:-_e.scrollbarWidth}}}),Ye=f(Ue.ref,G),Xe=e=>{let t=G.current;p(j(t))?.getAttribute(`role`)===`tab`&&Ue.onKeyDown(e)},[Ze,Qe]=A(`list`,{ref:Ye,className:z.list,elementType:On,externalForwardedProps:be,ownerState:R,getSlotProps:e=>({...e,onBlur:t=>{ze(t.currentTarget,t.relatedTarget)||ge(!1),e.onBlur?.(t)},onKeyDown:t=>{Xe(t),e.onKeyDown?.(t)},onFocus:t=>{ge(!0),Ue.onFocus(t),e.onFocus?.(t)}})});return(0,Z.jsxs)(Ke,{...Y,children:[Ge.scrollButtonStart,Ge.scrollbarSizeListener,(0,Z.jsxs)(qe,{...Je,children:[(0,Z.jsx)(Ze,{"aria-label":o,"aria-labelledby":s,"aria-orientation":y===`vertical`?`vertical`:null,role:`tablist`,...Qe,children:(0,Z.jsx)(te.Provider,{value:He,children:We})}),B&&Ve]}),Ge.scrollButtonEnd]})});function Nn(e){return q(`MuiTab`,e)}var Pn=H(`MuiTab`,[`root`,`labelIcon`,`textColorInherit`,`textColorPrimary`,`textColorSecondary`,`selected`,`disabled`,`fullWidth`,`wrapped`,`icon`]),Fn=e=>{let{classes:t,textColor:n,fullWidth:r,wrapped:i,icon:a,label:o,selected:s,disabled:c}=e,l={root:[`root`,a&&o&&`labelIcon`,`textColor${_(n)}`,r&&`fullWidth`,i&&`wrapped`,s&&`selected`,c&&`disabled`],icon:[`icon`]};return ke(l,Nn,t)},In=F(_e,{name:`MuiTab`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.label&&n.icon&&t.labelIcon,t[`textColor${_(n.textColor)}`],n.fullWidth&&t.fullWidth,n.wrapped&&t.wrapped,{[`& .${Pn.icon}`]:t.icon}]}})(g(({theme:e})=>({...e.typography.button,maxWidth:360,minWidth:90,position:`relative`,minHeight:48,flexShrink:0,padding:`12px 16px`,overflow:`hidden`,whiteSpace:`normal`,textAlign:`center`,lineHeight:1.25,...e.focusVisible&&z(3),variants:[{props:({ownerState:e})=>e.label&&(e.iconPosition===`top`||e.iconPosition===`bottom`),style:{flexDirection:`column`}},{props:({ownerState:e})=>e.label&&e.iconPosition!==`top`&&e.iconPosition!==`bottom`,style:{flexDirection:`row`}},{props:({ownerState:e})=>e.icon&&e.label,style:{minHeight:72,paddingTop:9,paddingBottom:9}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`top`,style:{[`& > .${Pn.icon}`]:{marginBottom:6}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`bottom`,style:{[`& > .${Pn.icon}`]:{marginTop:6}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`start`,style:{[`& > .${Pn.icon}`]:{marginRight:e.spacing(1)}}},{props:({ownerState:e,iconPosition:t})=>e.icon&&e.label&&t===`end`,style:{[`& > .${Pn.icon}`]:{marginLeft:e.spacing(1)}}},{props:{textColor:`inherit`},style:{color:`inherit`,opacity:.6,[`&.${Pn.selected}`]:{opacity:1},...e.focusVisible&&{[`&.${t.focusVisible}`]:{opacity:1}},[`&.${Pn.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity}}},{props:{textColor:`primary`},style:{color:(e.vars||e).palette.text.secondary,[`&.${Pn.selected}`]:{color:(e.vars||e).palette.primary.main},[`&.${Pn.disabled}`]:{color:(e.vars||e).palette.text.disabled}}},{props:{textColor:`secondary`},style:{color:(e.vars||e).palette.text.secondary,[`&.${Pn.selected}`]:{color:(e.vars||e).palette.secondary.main},[`&.${Pn.disabled}`]:{color:(e.vars||e).palette.text.disabled}}},{props:({ownerState:e})=>e.fullWidth,style:{flexShrink:1,flexGrow:1,flexBasis:0,maxWidth:`none`}},{props:({ownerState:e})=>e.wrapped,style:{fontSize:e.typography.pxToRem(12)}}]}))),Ln=X.forwardRef(function(e,t){let n=Te({props:e,name:`MuiTab`}),{className:r,disabled:a=!1,disableFocusRipple:o=!1,fullWidth:s,icon:c,iconPosition:l=`top`,indicator:u,label:d,onChange:f,onClick:p,onFocus:m,selected:h,selectionFollowsFocus:g,textColor:_=`inherit`,value:v,wrapped:y=!1,...b}=n,x=i(),S=ie({id:v,ref:t,disabled:a,selected:h}),C=x.getItemMap().size===0&&h?0:S.tabIndex,w={...n,disabled:a,disableFocusRipple:o,selected:h,icon:!!c,iconPosition:l,label:!!d,fullWidth:s,textColor:_,wrapped:y},T=Fn(w),E=c&&d&&X.isValidElement(c)?X.cloneElement(c,{className:K(T.icon,c.props.className)}):c;return(0,Z.jsxs)(In,{internalNativeButton:!0,focusRipple:!o,className:K(T.root,r),ref:S.ref,role:`tab`,"aria-selected":h,disabled:a,onClick:e=>{!h&&f&&f(e,v),p&&p(e)},onFocus:e=>{g&&!h&&f&&f(e,v),m&&m(e)},tabIndex:C,ownerState:w,...b,children:[l===`top`||l===`start`?(0,Z.jsxs)(X.Fragment,{children:[E,d]}):(0,Z.jsxs)(X.Fragment,{children:[d,E]}),u]})}),Rn=`<!-- octopus-revision -->`,zn=e=>String(e).padStart(2,`0`);function Bn(e){return`lab-lock-${`${e.getUTCFullYear()}${zn(e.getUTCMonth()+1)}${zn(e.getUTCDate())}T${zn(e.getUTCHours())}${zn(e.getUTCMinutes())}${zn(e.getUTCSeconds())}Z`}.md`}var Vn=y(Ne(),1),Hn=[{id:`page`,label:`Page`},{id:`labels`,label:`Labels`},{id:`lists`,label:`Lists`},{id:`assistant`,label:`Assistant`}],Un=[{id:`frame`,kind:`choice`,group:`page`,label:`Frame`,attr:`frame`,default:k,question:`Whether the plane fills the main area with no frame, as before the frame; is capped at the page's width and centred in the window; or fills the window with the page's content centred inside it, as Gmail does. Corner beside the assistant applies only under a frame.`,options:[{value:`full`,label:`Full`},{value:`capped`,label:`Capped`},{value:`stretch`,label:`Stretch`}]},{id:`planeCorner`,kind:`choice`,group:`page`,label:`Corner beside the assistant`,attr:`planeCorner`,default:a,question:`The page's top-right corner beside the open assistant. Square, meeting the pane with its shadow along the seam, as the sidebar does; or round, the page above the pane casting its own shadow off its right edge.`,options:[{value:`square`,label:`Square`},{value:`round`,label:`Round`}]},{id:`metaGlassOpacity`,kind:`slider`,group:`page`,label:`Meta field glass`,hook:`metaGlassOpacity`,min:0,max:100,step:5,unit:`%`,default:{light:parseFloat(ne.light),dark:parseFloat(ne.dark)},question:`How much of a raised card's fill a glass meta field takes (MetaField variant = glass): 0 is none, 100 the card. Each mode keeps its own value; the slider moves the one for the mode in view.`},{id:`metaPadY`,kind:`slider`,group:`page`,label:`Meta row padding`,hook:`metaPadY`,min:0,max:24,step:1,unit:`px`,default:0,question:`Padding above and below a subject page's row of facts (its meta slot: on a case, the summary strip). None as designed; Compact sets its own.`},{id:`tabsScrollFade`,kind:`slider`,group:`page`,label:`Fade under the tabs`,hook:`tabsScrollFade`,min:0,max:64,step:2,unit:`px`,default:parseFloat(n),question:`How far below the tab strip the page's content dissolves as it scrolls under. 0 cuts it at the seam, as before.`},{id:`railFoot`,kind:`slider`,group:`page`,label:`Rail foot`,hook:`railFoot`,min:0,max:32,step:1,unit:`px`,default:parseFloat(h),question:`The space under the rail's last item (the settings cog) down to the window's edge. It was 22px.`},{id:`bandGlassOpacity`,kind:`slider`,group:`page`,label:`Header band wash`,hook:`bandGlassOpacity`,min:0,max:1,step:.05,unit:``,default:{light:s.light.band.opacity,dark:s.dark.band.opacity},question:`How much of the page's ground tone a table header's band lays over what scrolls under it. Each mode keeps its own value; the slider moves the one for the mode in view.`},{id:`bandGlassBlur`,kind:`slider`,group:`page`,label:`Header band blur`,hook:`bandGlassBlur`,min:0,max:16,step:1,unit:`px`,default:s.light.band.blur,question:`How far a table header's band blurs what scrolls under it.`},{id:`themeFade`,kind:`slider`,group:`page`,label:`Switch fade`,hook:`appearanceFade`,min:0,max:1e3,step:50,unit:`ms`,default:parseFloat(ae),question:`How long a change of theme or mode crossfades, the whole page at once. 0 swaps it in a single frame.`}],Wn=[{id:`countStyle`,kind:`choice`,group:`labels`,label:`Count drawing`,attr:`countStyle`,default:Ie,question:`The figure beside a tab's or heading's label ("Analysis 9"): a tinted label, an outlined one, or the bare figure.`,options:[{value:`fill`,label:`Fill`},{value:`outline`,label:`Outline`},{value:`plain`,label:`Plain`}]},{id:`countRadius`,kind:`slider`,group:`labels`,label:`Count radius`,hook:`countRadius`,min:0,max:6,step:1,unit:``,default:D.kbd,question:`How rounded the count label's corners are, as a radius token before the radius scale. 6 is a full pill at its height; ${D.kbd} is the kbd radius it defaults to.`},{id:`chipRadius`,kind:`slider`,group:`labels`,label:`Chip radius`,hook:`chipRadius`,min:0,max:16,step:1,unit:`px`,default:16,question:`How rounded a chip's corners are. 14px and up is a full pill on a medium chip (11px on a small one); 4px is a tag.`},{id:`chipPadX`,kind:`slider`,group:`labels`,label:`Chip padding`,hook:`chipPadX`,min:2,max:20,step:1,unit:`px`,default:parseFloat(Re.medium),question:`The space either side of a medium chip's label. MUI's 12px.`},{id:`chipPadXSmall`,kind:`slider`,group:`labels`,label:`Chip padding, small`,hook:`chipPadXSmall`,min:2,max:16,step:1,unit:`px`,default:parseFloat(Re.small),question:`The space either side of a small chip's label: tables, filters, counts beside tabs. MUI's 8px.`},{id:`chipPadY`,kind:`slider`,group:`labels`,label:`Chip padding, vertical`,hook:`chipPadY`,min:0,max:10,step:1,unit:`px`,default:d.medium,question:`The space above and below a medium chip's label, which sets its height: 4px is the 28px it has always been.`},{id:`chipPadYSmall`,kind:`slider`,group:`labels`,label:`Chip padding, vertical, small`,hook:`chipPadYSmall`,min:0,max:8,step:1,unit:`px`,default:d.small,question:`The same for a small chip: 3px is its 22px.`}],Gn=[{id:`rowIconGap`,kind:`slider`,group:`lists`,label:`Row icon gap`,hook:`rowIconGap`,min:0,max:20,step:1,unit:`px`,default:8,question:`The space between a row's icon (the settings cog, the agent) and its label. Investigations drew about 18px.`},{id:`rowIconSize`,kind:`slider`,group:`lists`,label:`Row icon size`,hook:`rowIconSize`,min:12,max:24,step:1,unit:`px`,default:parseFloat(l),question:`How big a row's icon is beside its 14px label. Investigations drew 20px.`}],Kn=[{id:`seamBlur`,kind:`slider`,group:`assistant`,label:`Seam shadow blur`,hook:`seamBlur`,min:0,max:40,step:1,unit:`px`,default:parseFloat(x.blur),question:`The shadow the plane casts onto the assistant's pane along their seam: how far it spreads. It was 12px.`},{id:`seamStrength`,kind:`slider`,group:`assistant`,label:`Seam shadow strength`,hook:`seamStrength`,min:0,max:2,step:.05,unit:``,default:1,question:`How dark that shadow is, as a share of the designed opacity (0.14 in light, 0.5 in dark; light was 0.18). It falls over the pane's content, the assistant's header rule included.`},{id:`assistantScrollFade`,kind:`slider`,group:`assistant`,label:`Conversation fade`,hook:`assistantScrollFade`,min:0,max:48,step:2,unit:`px`,default:parseFloat(ge),question:`How far the conversation dissolves at its top and bottom edges, under the header and above the composer. 0 cuts it.`}],qn=[...Un,...Wn,...Gn,...Kn],Jn={width:340,height:640},Yn=`This browser can't open a Picture-in-Picture window.`;function Xn(e=globalThis){return`documentPictureInPicture`in e}function Zn(e=globalThis){let t=e.documentPictureInPicture;return t?t.requestWindow(Jn):Promise.reject(Error(Yn))}function Qn(e,t){let n=t.join(` `).toLowerCase();return e.toLowerCase().split(/\s+/).filter(Boolean).every(e=>n.includes(e))}function $n(e){let t=Hn.find(t=>t.id===e.group)?.label,n=e.kind===`choice`?e.options.map(e=>e.label):[];return[e.label,e.question,e.id,t,...n]}function er(e){let t=e.options.flatMap(e=>[e.label,e.description]);return[e.title,e.id,e.group,e.description,...t]}function tr(e){let t=e,n=new Set;return{get:()=>t,set(e){t=typeof e==`function`?e(t):e;for(let e of[...n])e()},subscribe(e){return n.add(e),()=>{n.delete(e)}}}}function nr(e,t){return(0,X.useSyncExternalStore)(e.subscribe,()=>t(e.get()),()=>t(e.get()))}var rr=`aistrike.lab`,ir=[`light`,`dark`],ar=`data-ds-mode`;function or(e){return e.kind===`slider`&&typeof e.default==`object`}function sr(e,t){if(!or(e))return e.id;if(t===void 0)throw Error(`The lab control ${e.id} holds a value per mode; name the mode`);return`${e.id}.${t}`}function cr(e){return e.getAttribute(ar)===`light`?`light`:`dark`}function lr(e){if(e.kind===`slider`&&typeof e.default==`object`){let t=e.default;return ir.map(n=>({key:sr(e,n),fallback:t[n]}))}return[{key:e.id,fallback:e.default}]}function ur(e,t){return e.kind===`slider`&&typeof e.default==`object`?e.default[t]:e.default}function dr(e){return Object.fromEntries(e.flatMap(lr).map(({key:e,fallback:t})=>[e,t]))}function fr(e,t){return e.kind===`slider`?typeof t==`number`&&Number.isFinite(t)&&t>=e.min&&t<=e.max:typeof t==`string`&&e.options.some(e=>e.value===t)}function pr(e,t){let n=typeof e==`object`&&e&&!Array.isArray(e)?e:{};return Object.fromEntries(t.flatMap(e=>lr(e).map(({key:t,fallback:r})=>{let i=n[t];return[t,fr(e,i)?i:r]})))}function mr(e,t=localStorage){try{return pr(JSON.parse(t.getItem(`aistrike.lab`)??`null`),e)}catch{return dr(e)}}function hr(e,t=localStorage){try{t.setItem(rr,JSON.stringify(e))}catch{}}function gr(e,t,n=document.documentElement,r=cr(n)){for(let i of t)if(i.kind===`choice`)i.attr!==void 0&&n.setAttribute(ve[i.attr],String(e[i.id]??i.default));else if(i.hook!==void 0){let t=T[i.hook],a=ur(i,r),o=e[sr(i,r)]??a;o===a?n.style.removeProperty(t):n.style.setProperty(t,`${o}${i.kind===`slider`?i.unit:``}`)}}function _r(e,t=document.documentElement){for(let n of e)n.kind===`choice`?n.attr!==void 0&&t.removeAttribute(ve[n.attr]):n.hook!==void 0&&t.style.removeProperty(T[n.hook])}var vr=(e,t)=>{if(typeof MutationObserver>`u`||typeof Node>`u`||!(e instanceof Node))return()=>void 0;let n=new MutationObserver(t);return n.observe(e,{attributes:!0,attributeFilter:[ar]}),()=>{n.disconnect()}};function yr(e){let{controls:t}=e,n=e.root??document.documentElement,r=e.storage??localStorage,i=e.experiments??Ae(),a=new Map(t.map(e=>[e.id,e])),o=tr(mr(t,r)),s=i.isPaused(),c=e=>{s?_r(t,n):gr(e,t,n)};c(o.get());let l=e=>{c(e),hr(e,r),o.set(e)},u=(e.observeMode??vr)(n,()=>{c(o.get()),o.set({...o.get()})}),d=i.subscribe(()=>{i.isPaused()!==s&&(s=i.isPaused(),c(o.get()))}),f=()=>{u(),d()};return{store:o,set(e,t,r){let i=a.get(e);i===void 0||!fr(i,t)||l({...o.get(),[sr(i,r??cr(n))]:t})},replace(e){l(pr(e,t))},reset(){l(dr(t))},dispose(){f()}}}var br=`docs/decisions/2026-10-21-design-lab-in-octopus.md`,xr=[`light`,`dark`],Sr=(e,t)=>`${t}${e.kind===`slider`?e.unit:``}`;function Cr(e){return e.kind===`choice`?e.attr===void 0?`—`:ve[e.attr]:e.hook===void 0?`—`:T[e.hook]}function wr(e,t,n){return t.filter(e=>n.includes(e.id)).flatMap(t=>{let n=(n,r)=>{let i=sr(t,n??void 0);return{id:t.id,label:t.label,hook:Cr(t),mode:n,old:Sr(t,r),next:Sr(t,e[i]??r)}};if(t.kind===`slider`&&typeof t.default==`object`&&or(t)){let e=t.default;return xr.map(t=>n(t,e[t]))}return[n(null,t.default)]})}function Tr({rows:e,url:t,host:n,version:r,lockedAt:i}){let a=[...new Set(e.map(e=>e.id))],o=i.toISOString(),s=e.map(e=>`| ${e.id} | ${e.hook} | ${e.mode??`—`} | ${e.old} | ${e.next} |`);return[`---`,`status: new`,`type: background`,`title: Promote lab lock ${o.slice(0,16)}Z`,`summary: Settle ${a.length} lab controls: ${a.join(`, `)}`,`depends:`,`groomed:`,`worktree:`,`dev:`,`---`,``,`## Request`,``,`Design Lab lock from ${t} (${n}), judged against @aistrike-dev/ui ${r}${Rn}, ${o}.`,``,`| Control | Hook | Mode | Old | New |`,`| --- | --- | --- | --- | --- |`,...s,``,`Promote: set each control's Octopus default to New; remove the control from the lab; remove its hook from`,"`DS_HOOKS` and every read of it (the value becomes the constant); record the decision in",`${br}. Leave the change uncommitted.`,``,`## Clarifications`,``,`## Progress`,``].join(`
2
2
  `)}var Er={light:`Light`,dark:`Dark`},Dr=e=>e.old!==e.next;function Or(e){return e.map(e=>{let t=Dr(e)?`${e.old} → ${e.next}`:`keep`;return e.mode===null?t:`${Er[e.mode]}: ${t}`}).join(` · `)}function kr({values:e,controls:t,onCancel:n,onConfirm:r}){let i=new Map(t.map(t=>[t.id,wr(e,[t],[t.id])])),[a,s]=(0,X.useState)(()=>new Set(t.filter(e=>i.get(e.id)?.some(Dr)).map(e=>e.id))),c=e=>{s(t=>{let n=new Set(t);return n.delete(e)||n.add(e),n})},l=t.filter(e=>a.has(e.id)).length;return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(V,{children:`Lock in`}),(0,Z.jsxs)(se,{children:[(0,Z.jsx)(U,{variant:`body2`,sx:{mb:1.5,color:`var(--ds-text-quiet)`},children:`Tick what this lock settles. Each becomes a row of a backlog item that promotes it to the design system's default.`}),Hn.map(e=>{let n=t.filter(t=>t.group===e.id);return n.length===0?null:(0,Z.jsxs)(o,{component:`section`,"aria-label":e.label,sx:{mb:1.5},children:[(0,Z.jsx)(U,{variant:`overline`,component:`h3`,sx:{display:`block`},children:e.label}),n.map(e=>(0,Z.jsxs)(o,{component:`label`,sx:{display:`flex`,alignItems:`center`,gap:1,cursor:`pointer`},children:[(0,Z.jsx)(ct,{size:`small`,checked:a.has(e.id),onChange:()=>c(e.id),slotProps:{input:{"aria-label":e.label}}}),(0,Z.jsx)(U,{variant:`body2`,component:`span`,sx:{flex:1},children:e.label}),(0,Z.jsx)(U,{variant:`caption`,component:`span`,sx:{fontFamily:C.mono,color:`var(--ds-text-quiet)`,textAlign:`right`},children:Or(i.get(e.id)??[])})]},e.id))]},e.id)})]}),(0,Z.jsxs)(Se,{children:[(0,Z.jsx)(J,{variant:`ghost`,onClick:n,children:`Cancel`}),(0,Z.jsx)(J,{variant:`primary`,disabled:l===0,onClick:()=>r(t.filter(e=>a.has(e.id)).map(e=>e.id)),children:`Lock ${l}`})]})]})}function Ar({open:e,onCancel:t,container:n,...r}){return(0,Z.jsx)(Oe,{open:e,onClose:t,container:n,fullWidth:!0,maxWidth:`sm`,children:(0,Z.jsx)(kr,{...r,onCancel:t})})}var jr=`style[data-ds-theme]`,Mr=[`fonts.googleapis.com`,`fonts.bunny.net`,`use.typekit.net`,`fonts.adobe.com`];function Nr(e,t){for(let{name:n}of Array.from(t.attributes))e.hasAttribute(n)||t.removeAttribute(n);for(let{name:n,value:r}of Array.from(e.attributes))t.getAttribute(n)!==r&&t.setAttribute(n,r)}function Pr(e,t){let n=e.head.querySelector(jr),r=t.head.querySelector(jr);if(!n){r?.remove();return}r||(r=t.createElement(`style`),r.setAttribute(`data-ds-theme`,``),t.head.appendChild(r)),r.textContent!==n.textContent&&(r.textContent=n.textContent)}var Fr=`data-ds-mirror-font`;function Ir(e,t){let n=new Set,r=``;for(let t of Array.from(e.styleSheets)){let e;try{e=t.cssRules}catch{continue}t.href&&n.add(t.href);for(let t of Array.from(e))t instanceof CSSFontFaceRule&&(r+=`${t.cssText}\n`)}if(r&&!t.head.querySelector(`style[${Fr}]`)){let e=t.createElement(`style`);e.setAttribute(Fr,``),e.textContent=r,t.head.appendChild(e)}let i=new Set(Array.from(t.head.querySelectorAll(`link[${Fr}]`),e=>e.href));for(let r of Array.from(e.head.querySelectorAll(`link[rel="stylesheet"]`))){if(!Mr.some(e=>r.href.includes(e))||n.has(r.href)||i.has(r.href))continue;let e=t.createElement(`link`);e.setAttribute(Fr,``),e.rel=`stylesheet`,e.href=r.href,t.head.appendChild(e),i.add(r.href)}}function Lr(e,t){let n=()=>{Nr(e.documentElement,t.documentElement),Pr(e,t)};n(),Ir(e,t);let r=new MutationObserver(n);r.observe(e.documentElement,{attributes:!0});let i=()=>Pr(e,t),a=e.defaultView;return a?.addEventListener(Pe,i),()=>{r.disconnect(),a?.removeEventListener(Pe,i)}}var Rr=new Set([404,405]);function zr(e,t){let n=URL.createObjectURL(new Blob([t],{type:`text/markdown`})),r=document.createElement(`a`);r.href=n,r.download=e,r.style.display=`none`,document.body.append(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),0)}async function Br(e){if(e.status!==200)return null;try{let t=await e.json(),n=typeof t==`object`&&t?t.file:void 0;return typeof n==`string`&&n!==``?n:null}catch{return null}}async function Vr(e,t,n){let{endpoint:r,fetch:i=fetch,download:a=zr}=n,o=null,s;try{let n=await i(r,{method:`POST`,headers:{"content-type":`application/json`},body:JSON.stringify({fileName:t,markdown:e})});o=await Br(n),!n.ok&&!Rr.has(n.status)&&(s=n.status)}catch{}return o===null?(a(t,e),s===void 0?{kind:`downloaded`,file:t}:{kind:`downloaded`,file:t,refused:s}):{kind:`written`,file:o}}var Hr=e=>{window.history.pushState(null,``,e),window.dispatchEvent(new PopStateEvent(`popstate`))},Ur=`aistrike.lab.snapshots`,Wr=`aistrike.lab.snapshot`;function Gr(e=localStorage){try{return e.getItem(`aistrike.lab.snapshot`)??``}catch{return``}}function Kr(e,t=localStorage){try{t.setItem(Wr,e)}catch{}}function qr(e=localStorage){try{let t=JSON.parse(e.getItem(`aistrike.lab.snapshots`)??`[]`);return Array.isArray(t)?t.filter(e=>typeof e?.name==`string`):[]}catch{return[]}}function Jr(e,t=localStorage){try{t.setItem(Ur,JSON.stringify(e))}catch{}}function Yr(e,t,n,r){let i=dr(r),a=Object.fromEntries(Object.entries(t.store.get()).filter(([e,t])=>t!==i[e])),o={};for(let e of n.definitions()){let t=n.picked(e.id);t!==void 0&&t!==e.baseline&&(o[e.id]=t)}return{name:e,design:a,switches:o}}function Xr(e,t){let n=e.findIndex(e=>e.name===t.name);return n===-1?[...e,t]:e.map((e,r)=>r===n?t:e)}function Zr(e,t,n){t.replace(e.design),n.reset(`experiment`),n.reset(`scenario`),n.setMany(e.switches)}var Qr=`aria-label`,$r={padding:`0 16px 8px`,display:`flex`,gap:8,alignItems:`center`};function ei({lab:e,controls:t,session:n,notify:r}){let[i,a]=(0,X.useState)(()=>qr()),[o,s]=(0,X.useState)(Gr),c=e=>{Kr(e),s(e)},[l,u]=(0,X.useState)(null),d=e=>{Jr(e),a(e)},f=t=>{let a=i.find(e=>e.name===t);a!==void 0&&(Zr(a,e,n),c(t),r(`Loaded ${t}`))},p=(a,o)=>{d(Xr(i,Yr(a,e,n,t))),c(a),u(null),r(`${o} ${a}`)},m=()=>{let e=(l??``).trim();e!==``&&p(e,`Saved`)};return l===null?(0,Z.jsxs)(`div`,{style:$r,children:[(0,Z.jsx)(I,{fullWidth:!0,displayEmpty:!0,size:`small`,value:i.some(e=>e.name===o)?o:``,onChange:e=>f(String(e.target.value)),renderValue:e=>e===``?i.length===0?`No snapshots yet`:`Load a snapshot`:e,SelectDisplayProps:{[Qr]:`Snapshots`},children:i.map(e=>(0,Z.jsx)(G,{value:e.name,children:e.name},e.name))}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,disabled:!i.some(e=>e.name===o),onClick:()=>p(o,`Updated`),children:`Update`}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:()=>u(``),children:`Save`}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,disabled:!i.some(e=>e.name===o),onClick:()=>{d(i.filter(e=>e.name!==o)),r(`Deleted ${o}`),c(``)},children:`Delete`})]}):(0,Z.jsxs)(`div`,{style:$r,children:[(0,Z.jsx)(ue,{autoFocus:!0,fullWidth:!0,size:`small`,placeholder:`Snapshot name`,value:l,slotProps:{htmlInput:{[Qr]:`Snapshot name`}},onChange:e=>u(e.target.value),onKeyDown:e=>{e.key===`Enter`?m():e.key===`Escape`&&u(null)}}),(0,Z.jsx)(J,{variant:`primary`,size:`small`,disabled:l.trim()===``,onClick:m,children:`Save`}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:()=>u(null),children:`Cancel`})]})}var ti=`var(--ds-text-quiet)`,ni=`aria-label`;function ri({query:e}){return(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,color:ti},children:`Nothing matches "${e.trim()}".`})}var ii=500;function ai(){return(0,X.useSyncExternalStore)(e=>{window.addEventListener(`popstate`,e);let t=window.setInterval(e,ii);return()=>{window.removeEventListener(`popstate`,e),window.clearInterval(t)}},()=>window.location.pathname)}var oi=e=>e.group??`Other`,si=e=>e.options.length===2&&e.options[0]?.id===`off`&&e.options[1]?.id===`on`;function ci({definition:e,session:t,copy:n,go:r}){let i=t.picked(e.id)??e.baseline,a=e.options.find(e=>e.id===i),o=si(e);return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{style:{display:`flex`,alignItems:`baseline`,gap:8},children:[(0,Z.jsx)(U,{variant:`subtitle2`,component:`span`,sx:{flex:1,minWidth:0},children:e.title}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,title:`Copy the id`,"aria-label":`Copy ${e.id}`,onClick:()=>n(e.id,e.id),sx:{fontFamily:C.mono,textTransform:`none`,minWidth:0,px:.5,color:ti},children:e.id})]}),e.description===void 0?null:(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,mb:.75,color:ti},children:e.description}),(0,Z.jsxs)(`div`,{style:{display:`flex`,alignItems:`center`,gap:8},children:[o?(0,Z.jsx)(dn,{sx:{flex:1,m:0},label:i===`on`?`On`:`Off`,control:(0,Z.jsx)(ht,{size:`small`,checked:i===`on`,slotProps:{input:{[ni]:e.title}},onChange:(...[,n])=>t.set(e.id,n?`on`:`off`)})}):(0,Z.jsx)(I,{fullWidth:!0,size:`small`,value:i,onChange:n=>t.set(e.id,String(n.target.value)),SelectDisplayProps:{[ni]:e.title},children:e.options.map(t=>(0,Z.jsx)(G,{value:t.id,children:t.id===e.baseline?`${t.label} (ships)`:t.label},t.id))}),r===void 0?null:(0,Z.jsx)(J,{variant:`secondary`,size:`small`,onClick:r,children:`Go`})]}),o?null:(0,Z.jsxs)(U,{variant:`caption`,component:`p`,sx:{m:0,mt:.5,color:ti},children:[(0,Z.jsx)(`span`,{style:{fontFamily:C.mono},children:i}),a?.description===void 0?null:` · ${a.description}`]})]})}var li={experiment:{one:`experiment`,many:`Experiments`,register:`registerExperiment`},scenario:{one:`scenario`,many:`Scenarios`,register:`registerScenario`}};function ui({kind:e,session:t,navigate:n,copy:r,query:i=``}){(0,X.useSyncExternalStore)(t.subscribe,()=>t.shared.revision);let a=ai(),[o,s]=(0,X.useState)(!1),c=t.definitions(e),l=i.trim()!==``,u=c.filter(e=>Qn(i,er(e))),d=u.filter(e=>t.applies(e,a)),f=u.filter(e=>!d.includes(e)),p=li[e],m=e=>{let r=t.hrefOf(e);if(r!==void 0||e.when!==void 0)return()=>{t.setMany(e.when??{}),r!==void 0&&n(r)}},h=(e,n)=>(0,Z.jsx)(ci,{definition:e,session:t,copy:r,go:n?m(e):void 0},e.id),g=(e,t)=>c.some(e=>e.group!==void 0)?[...new Set(c.map(oi))].filter(t=>e.some(e=>oi(e)===t)).map(n=>(0,Z.jsxs)(`section`,{"aria-label":n,style:{display:`grid`,gap:14},children:[(0,Z.jsx)(U,{variant:`subtitle2`,component:`h3`,sx:{m:0,mt:.5,color:ti},children:n}),e.filter(e=>oi(e)===n).map(e=>h(e,t))]},n)):e.map(e=>h(e,t)),_=e===`experiment`?be(t):``;return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{role:`tabpanel`,"aria-label":p.many,style:{flex:1,minHeight:0,overflowY:`auto`,padding:`4px 16px 12px`,display:`grid`,alignContent:`start`,gap:14},children:c.length===0?(0,Z.jsxs)(U,{variant:`body2`,component:`p`,sx:{m:0,color:ti},children:[`No ${p.one} is registered. An app declares one with `,(0,Z.jsx)(`span`,{style:{fontFamily:C.mono},children:p.register}),` from `,(0,Z.jsx)(`span`,{style:{fontFamily:C.mono},children:`@aistrike-dev/ui/experiments`}),`.`]}):l&&u.length===0?(0,Z.jsx)(ri,{query:i}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(U,{variant:`overline`,component:`h2`,sx:{m:0,color:ti},children:`On this page`}),d.length===0?(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,color:ti},children:`No ${p.one} applies here.`}):g(d,!1),f.length===0?null:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(J,{variant:`ghost`,size:`small`,"aria-expanded":o,onClick:()=>s(e=>!e),sx:{justifySelf:`start`},children:`${o?`Hide`:`Show`} library (${f.length})`}),o||l?g(f,!0):null]})]})}),(0,Z.jsxs)(`div`,{style:{padding:`10px 16px 12px`,display:`flex`,gap:8,justifyContent:`flex-end`,borderTop:`1px solid var(--ds-separator)`},children:[(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:()=>t.reset(e),children:`Reset`}),e===`experiment`?(0,Z.jsx)(J,{variant:`primary`,size:`small`,disabled:_===``,onClick:()=>r(_,`the picks`),children:`Copy picks`}):null]})]})}var di=`6.0.0-alpha.13`,fi=`/__octopus/lab/lock`;function pi(e){return e.kind===`written`?`Locked: ${e.file}`:e.refused===void 0?`Downloaded ${e.file}: no design-system checkout is configured`:`Downloaded ${e.file}: the dev server refused the lock (${e.refused})`}var mi=`aistrike.lab.section`,hi=`aistrike.lab.scroll`,gi=`section[aria-label="Design Lab"] [role="tabpanel"]`;function _i(e,t){try{let n=localStorage.getItem(e);return n===null?t:JSON.parse(n)}catch{return t}}function vi(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}var yi=[{id:`design`,label:`Design`},{id:`experiment`,label:`Experiments`},{id:`scenario`,label:`Scenarios`}],bi=4,xi=`aria-label`,Si={light:`Light`,dark:`Dark`},Ci=`var(--ds-text-quiet)`,wi=e=>(String(e).split(`.`)[1]??``).length;function Ti(e,t){let n=Math.round((t-e.min)/e.step),r=Number((e.min+n*e.step).toFixed(Math.max(wi(e.step),wi(e.min))));return Math.min(e.max,Math.max(e.min,r))}function Ei({label:e,question:t}){return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(U,{variant:`subtitle2`,component:`span`,children:e}),(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,mb:.75,color:Ci},children:t})]})}function Di({control:e,label:t,value:n,other:r,onChange:i}){return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{style:{display:`flex`,justifyContent:`space-between`,alignItems:`baseline`},children:[(0,Z.jsx)(U,{variant:`subtitle2`,component:`span`,children:t}),(0,Z.jsx)(U,{variant:`caption`,component:`span`,sx:{fontVariantNumeric:`tabular-nums`},children:`${n}${e.unit}`})]}),(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,color:Ci},children:e.question}),(0,Z.jsx)(qt,{size:`small`,"aria-label":t,min:e.min,max:e.max,step:e.step,value:n,onChange:(...[,t])=>i(Ti(e,Array.isArray(t)?t[0]??n:t))}),r===void 0?null:(0,Z.jsx)(U,{variant:`caption`,component:`p`,sx:{m:0,color:Ci,fontVariantNumeric:`tabular-nums`},children:`${Si[r.mode]}: ${r.value}${e.unit}`})]})}function Oi({control:e,value:t,onChange:n}){return e.options.length>bi?(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(Ei,{label:e.label,question:e.question}),(0,Z.jsx)(I,{fullWidth:!0,size:`small`,value:t,onChange:e=>n(String(e.target.value)),SelectDisplayProps:{[xi]:e.label},children:e.options.map(e=>(0,Z.jsx)(G,{value:e.value,children:e.label},e.value))})]}):(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(Ei,{label:e.label,question:e.question}),(0,Z.jsx)(sn,{exclusive:!0,fullWidth:!0,size:`small`,"aria-label":e.label,value:t,onChange:(...[,e])=>{e!==null&&n(e)},children:e.options.map(e=>(0,Z.jsx)(tn,{value:e.value,sx:{textTransform:`none`,py:.25},children:e.label},e.value))})]})}function ki({control:e,values:t,mode:n,set:r}){if(e.kind===`choice`)return(0,Z.jsx)(Oi,{control:e,value:String(t[e.id]??e.default),onChange:t=>r(e.id,t)});if(or(e)&&typeof e.default==`object`){let i=n===`light`?`dark`:`light`;return(0,Z.jsx)(Di,{control:e,label:`${e.label} (${n})`,value:Number(t[sr(e,n)]??e.default[n]),other:{mode:i,value:Number(t[sr(e,i)]??e.default[i])},onChange:t=>r(e.id,t,n)})}return(0,Z.jsx)(Di,{control:e,label:e.label,value:Number(t[e.id]??e.default),onChange:t=>r(e.id,t)})}function Ai(){return typeof location>`u`?{url:``,host:``}:{url:location.href,host:location.host}}function ji({lab:e,controls:t,lockEndpoint:n,submit:r,experiments:i,navigate:a,container:o,actions:s}){let c=nr(e.store,e=>e),l=(0,X.useSyncExternalStore)(i.subscribe,()=>i.isPaused()),[u,d]=(0,X.useState)(()=>{let e=_i(mi,`design`);return yi.some(t=>t.id===e)?e:`design`}),f=e=>{vi(mi,e),d(e)};(0,X.useLayoutEffect)(()=>{let e=_i(hi,{})[u],t=o.querySelector(gi);t!==null&&typeof e==`number`&&(t.scrollTop=e)},[u,o]);let p=e=>{e.target===o.querySelector(gi)&&vi(hi,{..._i(hi,{}),[u]:e.target.scrollTop})},[m,h]=(0,X.useState)({design:``,experiment:``,scenario:``}),g=m[u],_=yi.find(e=>e.id===u)?.label??``,v=g.trim()!==``,y=cr(document.documentElement),[b,x]=(0,X.useState)(!1),[S,C]=(0,X.useState)(null),w=Hn.filter(e=>t.some(t=>t.group===e.id)),[T,E]=(0,X.useState)(null),D=w.find(e=>e.id===T)?.id??w[0]?.id,ee=async i=>{x(!1);try{let a=new Date;C(pi(await r(Tr({rows:wr(e.store.get(),t,i),...Ai(),version:di,lockedAt:a}),Bn(a),{endpoint:n})))}catch(e){C(`Lock failed: ${e instanceof Error?e.message:String(e)}`)}},O=(e,t)=>{let n=o.ownerDocument.defaultView?.navigator.clipboard;(n===void 0?Promise.reject(Error(`no clipboard`)):n.writeText(e)).then(()=>C(`Copied ${t}`),()=>C(e))},te=v?t.filter(e=>Qn(g,$n(e))):t.filter(e=>e.group===D),k=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{style:{padding:`4px 16px 8px`,display:v?`none`:void 0},children:(0,Z.jsx)(I,{fullWidth:!0,size:`small`,value:D??``,onChange:e=>E(e.target.value),SelectDisplayProps:{[xi]:`Control group`},children:w.map(e=>(0,Z.jsx)(G,{value:e.id,children:e.label},e.id))})}),(0,Z.jsxs)(`div`,{role:`tabpanel`,"aria-label":v?`Matching controls`:w.find(e=>e.id===D)?.label,style:{flex:1,minHeight:0,overflowY:`auto`,padding:`4px 16px 12px`,display:`grid`,alignContent:`start`,gap:14},children:[te.map(t=>(0,Z.jsx)(ki,{control:t,values:c,mode:y,set:e.set},t.id)),te.length===0?(0,Z.jsx)(ri,{query:g}):null]}),(0,Z.jsxs)(`div`,{style:{padding:`10px 16px 12px`,display:`flex`,gap:8,justifyContent:`flex-end`,borderTop:`1px solid var(--ds-separator)`},children:[(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:()=>e.reset(),children:`Reset`}),(0,Z.jsx)(J,{variant:`primary`,size:`small`,onClick:()=>x(!0),children:`Lock in`})]})]});return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(pe,{rung:`raised`,component:`section`,"aria-label":`Design Lab`,onScrollCapture:p,sx:{height:`100vh`,display:`flex`,flexDirection:`column`,borderRadius:0},children:[(0,Z.jsxs)(`div`,{style:{padding:`12px 16px 4px`,display:`flex`,alignItems:`center`,gap:8},children:[(0,Z.jsx)(dn,{sx:{m:0,flex:1,justifyContent:`space-between`},labelPlacement:`start`,label:(0,Z.jsx)(U,{variant:`subtitle2`,component:`span`,children:l?`Overrides off: as it ships`:`Overrides on`}),control:(0,Z.jsx)(ht,{size:`small`,checked:!l,slotProps:{input:{[xi]:`Overrides`}},onChange:(...[,e])=>i.setPaused(!e)})}),s]}),(0,Z.jsx)(ei,{lab:e,controls:t,session:i,notify:C}),(0,Z.jsx)(`div`,{style:{padding:`0 16px 8px`},children:(0,Z.jsx)(Mn,{value:u,variant:`fullWidth`,sx:{display:`flex`},"aria-label":`Lab sections`,onChange:(...[,e])=>f(e),children:yi.map(e=>(0,Z.jsx)(Ln,{value:e.id,label:e.label},e.id))})}),(0,Z.jsx)(`div`,{style:{padding:`0 16px 4px`},children:(0,Z.jsx)(R,{fullWidth:!0,size:`small`,value:g,onChange:e=>h({...m,[u]:e}),placeholder:`Filter ${_.toLowerCase()}`,slotProps:{htmlInput:{[xi]:`Filter ${_.toLowerCase()}`}}})}),u===`design`?k:(0,Z.jsx)(ui,{kind:u,session:i,navigate:a,copy:O,query:g})]}),(0,Z.jsx)(Ar,{open:b,values:c,controls:t,container:o,onCancel:()=>x(!1),onConfirm:e=>{ee(e)}}),(0,Z.jsx)(we,{open:S!==null,message:S??``,autoHideDuration:8e3,anchorOrigin:{vertical:`bottom`,horizontal:`right`},onClose:(...[,e])=>{e!==`clickaway`&&C(null)}})]})}var Mi={disableNestedContext:!0};function Ni(e){return e.title=`Design Lab`,Lr(document,e)}function Pi({lab:e,target:t,controls:n=qn,lockEndpoint:i=fi,submit:a=Vr,experiments:o=Ae(),navigate:s=Hr,actions:c}){let l=(0,X.useMemo)(()=>L({key:`lab`,container:t.document.head}),[t]);(0,X.useLayoutEffect)(()=>Ni(t.document),[t]);let u=t.document.body;return(0,Vn.createPortal)((0,Z.jsx)(de,{value:l,children:(0,Z.jsxs)(B,{theme:ye,...Mi,children:[(0,Z.jsx)(r,{}),(0,Z.jsx)(ji,{lab:e,controls:n,lockEndpoint:i,submit:a,experiments:o,navigate:s,container:u,actions:c})]})}),u)}var Fi=1250,Ii=`--ds-lab-dock`,Li=`octopus.lab.pinned`;function Ri(){try{return localStorage.getItem(Li)===`1`}catch{return!1}}function zi(e){try{localStorage.setItem(Li,e?`1`:`0`)}catch{}}function Bi(e){let t=`${String(Jn.width)}px`;return(0,X.useLayoutEffect)(()=>{let e=document.documentElement;return e.style.setProperty(Ii,t),()=>{e.style.removeProperty(Ii)}},[t]),(0,Z.jsx)(`div`,{style:{position:`fixed`,top:0,right:0,bottom:0,width:t,zIndex:Fi,borderLeft:`1px solid var(--ds-separator)`},children:(0,Z.jsx)(ji,{...e})})}function Vi({lab:e,controls:t=qn,lockEndpoint:n=fi,submit:r=Vr,open:i=Zn,supported:a=Xn(),experiments:o=Ae(),navigate:s=Hr}){(0,X.useLayoutEffect)(()=>{o.activate()},[o]);let[c,l]=(0,X.useState)(null),[u,d]=(0,X.useState)(()=>a&&Ri()),f=e=>{zi(e),d(e)},[p,m]=(0,X.useState)(!1),h=(0,X.useRef)(!0);(0,X.useEffect)(()=>(h.current=!0,()=>{h.current=!1}),[]),(0,X.useEffect)(()=>{if(c===null)return;let e=!1,t=()=>{e=!0,l(null)};return c.addEventListener(`pagehide`,t),()=>{c.removeEventListener(`pagehide`,t),e||c.close()}},[c]);let g=()=>{m(!0),i().then(e=>{if(!h.current){e.close();return}m(!1),f(!1),l(e)},e=>{h.current&&m(!1),console.warn(`Design Lab: the window did not open.`,e)})},_={lab:e,controls:t,lockEndpoint:n,submit:r,experiments:o,navigate:s};if(c!==null){let e=()=>{f(!0),l(null)};return(0,Z.jsx)(Pi,{..._,target:c,actions:(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:e,children:`Pin`})})}if(u){let e=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(J,{variant:`ghost`,size:`small`,disabled:p,onClick:g,children:`Float`}),(0,Z.jsx)(J,{variant:`ghost`,size:`small`,onClick:()=>f(!1),children:`Close`})]});return(0,Z.jsx)(Bi,{..._,container:document.body,actions:e})}return(0,Z.jsxs)(`div`,{style:{position:`fixed`,left:100,bottom:14,zIndex:Fi,display:`flex`,alignItems:`center`,gap:8},children:[(0,Z.jsx)(J,{variant:`secondary`,size:`small`,startIcon:(0,Z.jsx)(Ee,{}),"aria-label":`Open Design Lab`,disabled:!a||p,onClick:g,children:`Design Lab`}),a?null:(0,Z.jsx)(U,{variant:`caption`,component:`span`,sx:{color:`var(--ds-text-quiet)`},children:Yn})]})}var Hi;function Ui(){return Hi===void 0&&Xn()&&(Hi=yr({controls:qn})),Hi}function Wi(){Hi?.dispose(),Hi=void 0,_r(qn)}function Gi(){return yr({controls:qn,root:document.createElement(`html`),storage:{getItem:()=>null,setItem:()=>void 0,removeItem:()=>void 0},observeMode:()=>()=>void 0})}function Ki(){let e=Ui();return e===void 0?(0,Z.jsx)(Vi,{lab:Gi(),supported:!1}):(0,Z.jsx)(Vi,{lab:e})}export{Ki as default,Wi as dropLab,Ui as getLab};
@@ -174,7 +174,7 @@ Error generating stack: `+e.message+`
174
174
  0%, 100% { opacity: 1; }
175
175
  50% { opacity: 0.35; }
176
176
  `,(0,B.createContext)(null),sr.small;var Sw=`data-plane-fill`,Cw=`data-plane-panes`,ww=`data-plane`;function Tw({children:e,dockedEnd:t=!1,sx:n,style:r,...i}){let a=(0,B.useContext)(Ay),o=(0,B.useMemo)(()=>({depth:(a?.depth??0)+1,rung:`primary`}),[a?.depth]);return(0,V.jsx)(Ay.Provider,{value:o,children:(0,V.jsxs)(Y,{component:`main`,[ww]:``,"data-surface":`primary`,"data-docked-end":t?``:void 0,style:r,sx:[{flex:1,minWidth:0,minHeight:0,position:`relative`,display:`flex`,flexDirection:`column`,overflow:`hidden`,color:`var(--ds-text)`,[`&:has([${Cw}]) > [${Sw}]`]:{display:`none`},borderTopLeftRadius:z(_.plane),borderTopRightRadius:t?0:z(_.plane),boxShadow:`var(--ds-elevation-surface)`},...Array.isArray(n)?n:[n]],...i,children:[(0,V.jsx)(Y,{"aria-hidden":!0,[Sw]:``,sx:{position:`absolute`,inset:0,backgroundColor:`var(--ds-glass-plane)`,backdropFilter:ye(`plane`)}}),(0,V.jsx)(Y,{sx:{position:`relative`,flex:1,minHeight:0,minWidth:0,display:`flex`,flexDirection:`column`},children:e})]})})}Qn.duration.slow;var Ew=/[\p{L}\p{N}]+/gu;function Dw(e){let[t,n]=e.match(Ew)??[];return t===void 0?`•`:(n===void 0?[...t].slice(0,2):[[...t][0],[...n][0]]).join(``).toUpperCase()}var Ow=F(`railWidth`,`64px`),kw=F(`railIcon`,`22px`),Aw=`calc(${kw} + 2 * ${F(`railPad`,`12px`)})`,jw=F(`railGap`,`8px`),Mw=F(`railFoot`,ce);function Nw({items:e,selectedId:t,onSelect:n,collapsed:r=!1,header:i,width:a=248,collapsedWidth:o=64,linkComponent:s=`a`,variant:c=`panel`,footerItems:l=[]}){let u=c===`rail`,d=u||r,f=e=>{let i=e.id===t,a=e.href!==void 0,o=(0,V.jsxs)(tC,{selected:i,...d?{"aria-label":e.label}:{},...a?{component:s,href:e.href,target:e.target,rel:e.rel,"aria-current":i?`page`:void 0}:{},onClick:t=>{a&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey)||n?.(e.id)},sx:u?{width:Aw,height:Aw,minHeight:0,p:0,mb:jw,flexGrow:0,justifyContent:`center`,borderRadius:z(_.control),color:m(`textQuiet`,`inherit`),"& .MuiListItemIcon-root":{color:`inherit`,minWidth:0},"& .MuiSvgIcon-root":{fontSize:kw},"&.Mui-selected, &.Mui-selected:hover":{bgcolor:m(`selected`),color:`primary.main`}}:{borderRadius:1,mb:.5,minHeight:44,justifyContent:r?`center`:`flex-start`,"&.Mui-selected":{bgcolor:`action.selected`,color:`primary.main`,"& .MuiListItemIcon-root":{color:`primary.main`}}},children:[e.icon?(0,V.jsx)(O_,{sx:{minWidth:d?0:36,justifyContent:`center`},children:e.icon}):d?(0,V.jsx)(P_,{"aria-hidden":!0,"data-nav-monogram":``,variant:`caption`,component:`span`,sx:{fontWeight:Ue.emphasis,color:`inherit`},children:Dw(e.label)}):null,d?null:(0,V.jsx)(z_,{primary:e.label})]},e.id);return d?(0,V.jsx)(IS,{title:e.label,placement:`right`,children:o},e.id):o},p=u?{display:`flex`,flexDirection:`column`,alignItems:`center`}:{px:1,py:1};return(0,V.jsxs)(Y,{component:`nav`,"aria-label":`Primary`,sx:{width:u?Ow:r?o:a,flexShrink:0,height:`100%`,display:`flex`,flexDirection:`column`,...u?{bgcolor:`transparent`,pt:`30px`,pb:Mw}:{bgcolor:`background.default`,borderRight:1,borderColor:`divider`},transition:$n(`width`,`slow`),overflowX:`hidden`},children:[i?(0,V.jsx)(Y,{sx:{p:d?1:2},children:i}):null,(0,V.jsx)(nh,{disablePadding:!0,sx:p,children:e.map(f)}),l.length>0?(0,V.jsx)(nh,{disablePadding:!0,sx:{...p,mt:`auto`,"& > :last-child":{mb:0}},children:l.map(f)}):null]})}F(`rowPad`,ie),`${Z.sm+Z.xs}`,`${Z.sm}`,`${Z.sm+Z.xs}`;var Pw=e=>typeof e==`number`&&Number.isFinite(e)?e:0;function Fw(e){return Math.min(400,Math.max(0,Math.floor(Pw(e))))}function Iw(e,t){let n=Fw(t.count),r=Pw(t.offsetY),i=t.width===void 0||!Number.isFinite(t.width)?1:Math.max(0,t.width),a=[];for(let t=0;t<n;t+=1){let o=.5+((n===1?.5:t/(n-1))-.5)*i,s=t=>[e.from[t][0]*(1-o)+e.to[t][0]*o,e.from[t][1]*(1-o)+e.to[t][1]*o+r];a.push([s(0),s(1),s(2),s(3)])}return a}var Lw=e=>Number(e.toFixed(2));function Rw(e,t,n){let[r,i,a,o]=e.map(([e,r])=>`${Lw(e*t)} ${Lw(r*n)}`);return`M${r}C${i} ${a} ${o}`}function zw(){return Ze.map(({at:e,size:t,alpha:n},r)=>{let i=`color-mix(in srgb, var(--ds-ground-field-${r+1}) ${Math.round(n*100)}%, transparent)`;return`radial-gradient(ellipse ${t[0]}% ${t[1]}% at ${e[0]}% ${e[1]}%, ${i} 0%, transparent 100%)`}).reverse().join(`, `)}var Bw=[`lineCount`,`ribbonWidth`,`lineWeight`,`lineOffsetY`,`blobIntensity`,`blobBlur`];function Vw(e={}){let t=e,n={...Qe};for(let e of Bw){let r=t[e];typeof r==`number`&&Number.isFinite(r)&&(n[e]=r)}return n}var Hw=1e3,Uw=(e,t,n)=>Number.isFinite(e)?Math.min(n,Math.max(t,e)):t;function Ww({settings:e,sx:t,...n}){let r=Vw(e),{lineCount:i,lineOffsetY:a,ribbonWidth:o}=r,s=Uw(r.blobBlur,0,200),c=Iw(Xe,{count:i,offsetY:a,width:o}).map(e=>Rw(e,Hw,Hw)).join(``);return(0,V.jsxs)(Y,{"aria-hidden":!0,"data-ground":!0,...n,sx:[{position:`absolute`,inset:0,zIndex:0,overflow:`hidden`,pointerEvents:`none`,backgroundColor:`var(--ds-ground-page)`},...Array.isArray(t)?t:[t]],children:[(0,V.jsx)(Y,{"data-ground-fields":!0,sx:{position:`absolute`,inset:0,backgroundRepeat:`no-repeat`,backgroundBlendMode:`var(--ds-ground-blend)`},style:{backgroundImage:zw(),filter:s>0?`blur(${s}px)`:`none`,opacity:Uw(r.blobIntensity,0,1)}}),c!==``&&(0,V.jsx)(Y,{component:`svg`,"data-ground-lines":!0,viewBox:`0 0 ${Hw} ${Hw}`,preserveAspectRatio:`none`,focusable:`false`,sx:{position:`absolute`,inset:0,width:`100%`,height:`100%`,overflow:`hidden`,fill:`none`},children:(0,V.jsx)(`path`,{d:c,style:{stroke:`var(--ds-ground-line)`,strokeOpacity:`var(--ds-ground-line-opacity)`,strokeWidth:`${Uw(r.lineWeight,.1,8)}px`,vectorEffect:`non-scaling-stroke`}})})]})}var Gw=F(`topbarHeight`,ge.height),Kw=F(`commandWidth`,ge.commandWidth),qw=Be(ge.control),Jw=F(`railWidth`,`64px`);function Yw({brand:e=(0,V.jsx)(HC,{}),command:t,commandAside:n,end:r,sx:i}){return(0,V.jsxs)(Y,{component:`header`,"data-top-bar":``,style:{...ar(),...ze()},sx:[{position:`relative`,zIndex:bC.docked,height:Gw,flexShrink:0,boxSizing:`border-box`,pr:3,display:`flex`,alignItems:`center`,gap:2,"& .MuiButton-root":{height:qw,minHeight:qw},"& .MuiIconButton-root":{width:qw,height:qw}},...Array.isArray(i)?i:[i]],children:[(0,V.jsx)(Y,{sx:{flex:`1 1 0`,minWidth:120,display:`flex`,alignItems:`center`,gap:2},children:e!=null&&(0,V.jsx)(Y,{"data-top-bar-brand":``,sx:{width:Jw,flexShrink:0,display:`flex`,justifyContent:`center`},children:e})}),(0,V.jsxs)(Y,{"data-top-bar-command":``,sx:{flex:`0 1 ${Kw}`,minWidth:200,display:`flex`,alignItems:`center`,gap:1},children:[t!==void 0&&(0,V.jsx)(Y,{sx:{flex:1,minWidth:0,display:`flex`},children:t}),n]}),(0,V.jsx)(Y,{"data-top-bar-end":``,sx:{flex:`1 1 0`,minWidth:0,display:`flex`,alignItems:`center`,justifyContent:`flex-end`,gap:1.5},children:r})]})}var Xw={width:560,top:`12vh`,maxHeight:`70vh`,rowHeight:sr.medium};function Zw({open:e,onClose:t,query:n,onQueryChange:r,groups:i,onActivate:a,placeholder:o=`Search, or type a command…`,emptyText:s=`Nothing matches`,label:c=`Command palette`,listLabel:l=`Commands and results`}){let u=(0,B.useMemo)(()=>hw(i),[i]),d=bw({count:u.length,resetKey:e?n:null,onActivate:e=>a(u[e])}),f=n.trim()!==``&&i.every(e=>e.items.length===0&&e.note===void 0);return(0,V.jsxs)(Ny,{open:e,onClose:t,sx:{"& .MuiDialog-container":{alignItems:`flex-start`,pt:Xw.top}},slotProps:{paper:{"aria-label":c,sx:{width:Xw.width,maxWidth:e=>`calc(100vw - ${e.spacing(4)})`,maxHeight:Xw.maxHeight,m:0,display:`flex`,flexDirection:`column`}}},children:[(0,V.jsx)(Y,{sx:{p:1.5,pb:1},children:(0,V.jsx)(__,{autoFocus:!0,fullWidth:!0,size:`small`,value:n,placeholder:o,onChange:e=>r(e.target.value),onKeyDown:d.onKeyDown,slotProps:{htmlInput:{role:`combobox`,autoComplete:`off`,"aria-label":o,...d.fieldProps}}})}),(0,V.jsxs)(Y,{sx:{overflow:`auto`,px:1,pb:1},children:[(0,V.jsx)(vw,{id:d.listboxId,label:l,groups:i,activeIndex:d.activeIndex,onActiveChange:d.setActiveIndex,onActivate:e=>a(e),sx:{'& [role="option"]':{minHeight:Xw.rowHeight}}}),f?(0,V.jsx)(P_,{variant:`body2`,color:`textQuiet`,sx:{px:1.5,py:2},children:s}):null]})]})}var Qw=.5;function $w(e,t=320,n=Qw){return Math.max(t,Math.round(e*n))}function eT(e,t=320,n=Qw){return{min:t,max:$w(e,t,n)}}function tT(e,{min:t,max:n}){return Number.isFinite(e)?Math.round(Math.min(n,Math.max(t,e))):t}var nT=`(prefers-reduced-motion: no-preference)`,rT=()=>typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(nT).matches;function iT(e,t){let[n,r]=(0,B.useState)(e),[i,a]=(0,B.useState)(!1),[o,s]=(0,B.useState)(e),[c,l]=(0,B.useState)(!1);if(e!==n){let t=rT();r(e),l(t),a(!e&&t),s(e&&!t)}let u=(0,B.useCallback)(()=>{l(!1),a(!1)},[]);return(0,B.useLayoutEffect)(()=>{e&&!o&&(t.current?.getBoundingClientRect(),s(!0))},[e,o,t]),(0,B.useEffect)(()=>{if(!c)return;let e=window.setTimeout(u,Qn.duration.slow+600);return()=>window.clearTimeout(e)},[e,c,u]),{shown:e||i,expanded:o,moving:c,settle:u}}function aT(e,t){typeof e==`function`?e(t):e&&(e.current=t)}var oT=(0,B.forwardRef)(function({open:e,width:t,onWidthChange:n,onWidthCommit:r,minWidth:i=320,maxShare:a=Qw,label:o,children:s},c){let l=(0,B.useRef)(null),{shown:u,expanded:d,moving:f,settle:p}=iT(e,l),[m,h]=(0,B.useState)(e);e&&!m&&h(!0);let[g,_]=(0,B.useState)(()=>typeof window>`u`?1440:window.innerWidth);(0,B.useLayoutEffect)(()=>{if(!u)return;let e=()=>_(window.innerWidth);return e(),window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[u]);let v=eT(g,i,a),y=tT(t,v);return(0,B.useLayoutEffect)(()=>{let e=l.current?.parentElement;if(e)return e.style.setProperty(`--ds-docked-pane-width`,`${String(d?y:0)}px`),()=>{e.style.removeProperty(`--ds-docked-pane-width`)}},[d,y]),(0,V.jsxs)(Y,{component:`aside`,"aria-label":o,hidden:!u,ref:e=>{l.current=e,aT(c,e)},"data-docked-pane":``,"data-docked-pane-moving":f?e?`opening`:`closing`:void 0,style:{width:d?y:0},onTransitionEnd:e=>{e.target===e.currentTarget&&e.propertyName===`width`&&p()},sx:{position:`relative`,flexShrink:0,minHeight:0,display:u?`block`:`none`,transition:f?$n(`width`,`slow`):`none`},children:[(0,V.jsx)(AC,{orientation:`vertical`,edge:`start`,value:y,min:v.min,max:v.max,onChange:n,onChangeCommitted:r,label:`Resize ${o}`}),(0,V.jsx)(Y,{"data-docked-pane-clip":``,sx:{position:`absolute`,inset:0,overflow:`hidden`},children:(0,V.jsxs)(Y,{"data-docked-pane-sheet":``,sx:{position:`absolute`,top:0,bottom:0,left:0,display:`flex`,flexDirection:`column`},style:{width:y},children:[(0,V.jsx)(Y,{"aria-hidden":!0,"data-docked-pane-glass":``,sx:{position:`absolute`,inset:0,pointerEvents:`none`,backgroundColor:`var(--ds-glass-pane)`,backdropFilter:ye(`pane`)}}),(0,V.jsx)(Y,{"data-docked-pane-body":``,sx:{position:`relative`,flex:1,minHeight:0,display:`flex`,flexDirection:`column`,overflow:`hidden`},children:m?s:null}),(0,V.jsx)(Y,{"aria-hidden":!0,"data-docked-pane-seam":``,sx:{position:`absolute`,inset:0,pointerEvents:`none`,zIndex:1,boxShadow:`var(--ds-shadow-seam)`}})]})})]})});F(`cardPad`,I),de(`12px`),sr.medium;var sT=`12px`;`${sT}`,SC(`compact`),`${sT}`,`${sT}`,`${sT}`,SC(`compact`),`${sT}`,SC(`compact`),(0,B.createContext)(!1),Le(`tabs`);var cT=class extends Error{manifestUrl;constructor(e,t){super(t?`${e} (${t})`:e),this.name=`ManifestError`,this.manifestUrl=t}},lT=/^[a-z](?:[a-z0-9-]{0,61}[a-z0-9])?$/,uT=/^(?:[a-z][a-z0-9+.-]*:|\/)/i,dT=/[\x00-\x20\x7f\\]/,fT=new Set([`shell`,`preferences`,`commands`,`api`,`assets`,`ui`]);function pT(e){return lT.test(e)&&!fT.has(e)}function mT(e,t,n){if(typeof e!=`string`||e.length===0)throw new cT(`Manifest ${t} must be a non-empty string`,n);return e}function hT(e,t){if(dT.test(e))throw new cT(`Manifest entry contains whitespace, control or backslash characters`,t);if(uT.test(e))throw new cT(`Manifest entry must be a relative path, got ${JSON.stringify(e)}`,t);let n;try{n=new URL(e,`http://probe.invalid/ui/0/manifest.json`)}catch{throw new cT(`Manifest entry must be a relative path, got ${JSON.stringify(e)}`,t)}if(n.origin!==`http://probe.invalid`)throw new cT(`Manifest entry must stay on the manifest's origin, got ${JSON.stringify(e)}`,t)}function gT(e,t,n){if(typeof e!=`object`||!e||Array.isArray(e))throw new cT(`Manifest is not an object`,n);let{id:r,version:i,entry:a}=e;if(typeof r!=`string`||r!==t.id)throw new cT(`Manifest id ${JSON.stringify(r)} does not match expected "${t.id}"`,n);let o=mT(i,`version`,n),s=mT(a,`entry`,n);return hT(s,n),{id:r,version:o,entry:s}}var _T=[`nav`,`settings`,`entities`,`commands`,`mount`,`unmount`],vT=[`assistant`,`pane`,`pageCommands`],yT=e=>typeof e==`object`&&!!e&&!Array.isArray(e),bT={ok:Array.isArray,problem:e=>`${e} must be an array; write [] for none`},xT={ok:e=>typeof e==`function`,problem:e=>`${e} must be a function`},ST={nav:bT,settings:{ok:e=>e===null||yT(e),problem:()=>`settings must be a settings descriptor or null`},entities:bT,commands:bT,mount:xT,unmount:xT};function CT(e,t){return t===void 0?`${e} is required`:ST[e].ok(t)?void 0:ST[e].problem(e)}function wT(e){return yT(e)?_T.flatMap(t=>CT(t,e[t])??[]):[`activation must be an object`]}function TT(e){return yT(e)?vT.filter(t=>t in e):[]}var ET=`__aistrikeTitlePath`,DT=`__aistrikeHistoryPatched`,OT=/[\x00-\x20\x7f\\]/;function kT(e){return!e.startsWith(`/`)||e.startsWith(`//`)?!1:!OT.test(e)}var AT=String.raw`-?(?:\d+(?:\.\d*)?|\.\d+)`,jT=RegExp(`^${AT}(?:[ ,]+${AT}){3}$`),MT=/^[MmZzLlHhVvCcSsQqTtAa0-9eE.,+\s-]+$/,NT=e=>typeof e==`object`&&!!e&&!Array.isArray(e),PT=e=>typeof e==`string`&&e.length>0&&e.length<=8192&&MT.test(e);function FT(e){if(NT(e)){let{stroke:t}=e;return PT(e.d)&&typeof t==`number`&&Number.isFinite(t)&&t>0}return PT(e)}function IT(e){if(!NT(e)||typeof e.viewBox!=`string`||!jT.test(e.viewBox.trim()))return!1;let{paths:t}=e;return Array.isArray(t)&&t.length>0&&t.length<=8&&t.every(FT)}var LT=oC(),RT={session:`aistrike.session`,tenant:`aistrike.tenant`,theme:`aistrike.theme`,brand:`aistrike.brand`,domains:`aistrike.shell.domains`,settings:`aistrike.shell.settings`,route:`aistrike.shell.route`};function zT(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function BT(e,t){try{let n=e.getItem(t);return n===null?null:JSON.parse(n)}catch{return null}}function VT(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function HT(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.sub==`string`&&VT(t.permissions)&&VT(t.modules)&&VT(t.tenants)}function UT(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.accessToken==`string`&&typeof t.expiresAt==`number`&&HT(t.claims)}function WT(e=zT(),t=Date.now()){let n=BT(e.local,RT.session);return UT(n)&&n.expiresAt>t?n:null}function GT(e,t){return WT(e,t)?.accessToken??null}function KT(e=zT()){let t=BT(e.session,RT.tenant);return typeof t?.tenantId==`string`?t.tenantId:null}var qT=/^#[0-9a-f]{6}$/i;function JT(e){if(typeof e!=`object`||!e)return!1;let{accent:t,fields:n,line:r}=e,i=e=>typeof e==`string`&&qT.test(e);return i(t)&&i(r)&&Array.isArray(n)&&n.length===5&&n.every(i)}function YT(e=zT()){try{return e.local.getItem(RT.theme)===`light`?`light`:`dark`}catch{return`dark`}}var XT=[`tab`,`browser`,`user`],ZT=/^[a-z0-9-]+(?:\.[a-z0-9-]+){2,}$/,QT=`__aistrikeTabId`;function $T(){if(typeof crypto.randomUUID==`function`)return crypto.randomUUID();let e=crypto.getRandomValues(new Uint8Array(16));e[6]=64+e[6]%16,e[8]=128+e[8]%64;let t=[...e].map(e=>e.toString(16).padStart(2,`0`)).join(``);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}function eE(){let e=globalThis;return typeof e[QT]!=`string`&&(e[QT]=$T()),e[QT]}function tE(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.topic==`string`&&typeof t.scope==`string`&&XT.includes(t.scope)&&typeof t.source==`string`&&typeof t.tabId==`string`&&typeof t.ts==`number`&&`payload`in t}function nE(e,t){return e.endsWith(`.*`)?t.startsWith(e.slice(0,-1)):t===e}function rE(e){let{source:t}=e,n=e.tabId??eE(),r=(e.createChannel??(e=>new BroadcastChannel(e)))(e.channelName??`aistrike`),i=new Set;return r.onmessage=e=>{let t=e.data;if(tE(t)&&(t.scope!==`tab`||t.tabId===n)){for(let{pattern:e,handler:n}of[...i])if(nE(e,t.topic))try{n(t)}catch(e){typeof reportError==`function`?reportError(e):console.error(e)}}},{source:t,tabId:n,publish(e,i,a){if(!ZT.test(e))throw Error(`Invalid topic "${e}": use <source>.<noun>.<verb>`);if(!e.startsWith(`${t}.`))throw Error(`"${t}" may only publish topics starting with "${t}."`);let o={id:$T(),topic:e,scope:a.scope,source:t,tabId:n,ts:Date.now(),payload:i};return r.postMessage(o),o},subscribe(e,t){let n={pattern:e,handler:t};return i.add(n),()=>{i.delete(n)}},close(){i.clear(),r.close()}}}var iE={sessionChanged:`shell.session.changed`,sessionIdleWarning:`shell.session.idle.warning`,sessionActivity:`shell.session.activity`,sessionEnded:`shell.session.ended`,tenantChanged:`shell.tenant.changed`,themeChanged:`shell.theme.changed`,brandChanged:`shell.brand.changed`,mfeStatus:`shell.mfe.status`,settingsChanged:`shell.settings.changed`,assistantFocused:`shell.assistant.focused`,locationChanged:`shell.location.changed`,contextChanged:`shell.context.changed`,toolInvoked:`shell.tool.invoked`,commandCompleted:`shell.command.completed`,commandInvoked:`shell.command.invoked`,toolCompleted:`shell.tool.completed`,detailsRequested:`shell.details.requested`,detailsResolved:`shell.details.resolved`,assistantAsked:`shell.assistant.asked`},aE=`settings.brand.saved`,oE={paneDismissed:`assistant.pane.dismissed`,contextRequested:`assistant.context.requested`,toolRequested:`assistant.tool.requested`,commandRequested:`assistant.command.requested`,askAccepted:`assistant.ask.accepted`,detailsRequested:`assistant.details.requested`};function sE(e){return{contextChanged:`${e}.context.changed`,contextCleared:`${e}.context.cleared`,askRequested:`${e}.ask.requested`,toolCompleted:`${e}.tool.completed`,commandCompleted:`${e}.command.completed`,detailsResolved:`${e}.details.resolved`}}var cE=/^[a-z0-9-]+$/,lE=/^[a-z][a-z0-9_]*$/,uE=e=>e===void 0||typeof e==`string`,dE=e=>typeof e==`string`&&e!==``;function fE(e){if(typeof e!=`object`||!e)return!1;let{domain:t,type:n,id:r,label:i,href:a,summary:o}=e;return dE(t)&&dE(r)&&typeof i==`string`&&typeof n==`string`&&cE.test(n)&&uE(a)&&uE(o)}function pE({domain:e,type:t,id:n,label:r,summary:i,href:a}){return{domain:e,type:t,id:n,label:r,...typeof i==`string`?{summary:i}:{},...typeof a==`string`?{href:a}:{}}}var mE=`X-Tenant-Id`;function hE(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}async function gE(e,t,n={}){let r=n.areas??hE(),i=n.fetch??globalThis.fetch.bind(globalThis),a=async()=>{let n=new Headers([[`Accept`,`application/json`]]);t.body!==void 0&&n.set(`Content-Type`,`application/json`);let a=GT(r);a!==null&&n.set(`Authorization`,`Bearer ${a}`);let o=KT(r);return o!==null&&n.set(mE,o),i(e,{method:t.method,headers:n,body:t.body,signal:t.signal})},o=await a();return o.status===401?a():o}async function _E(e){let t=await e.json().catch(()=>null),n=typeof t?.message==`string`?`: ${t.message}`:``;return`HTTP ${e.status}${n}`}var vE=/^\/api\/[A-Za-z0-9._~/-]+$/,yE=200,bE=/^[a-z0-9][a-z0-9_./-]*\.js$/,xE=e=>e===`.`||e===`..`;function SE(e){return e.length>yE||!vE.test(e)?!1:e.slice(1).split(`/`).every(e=>e!==``&&!xE(e))}function CE(e){return bE.test(e)&&!e.includes(`//`)&&!e.split(`/`).some(xE)}var wE=e=>typeof e==`object`&&!!e&&!Array.isArray(e),TE=e=>typeof e==`string`&&e.trim()!==``,EE=e=>typeof e==`string`?e:JSON.stringify(e)??`undefined`;function DE(e){return[[typeof e.type==`string`&&cE.test(e.type),`type must match ${cE.source}`],[TE(e.label),`label must be a non-empty string`],[e.icon===null||TE(e.icon),`icon must be null or a non-empty string`],[e.renderer===null||typeof e.renderer==`string`&&CE(e.renderer),`renderer must be null or a built module's path relative to uiBase, such as "renderers/alert.js"`],[e.search===null||typeof e.search==`string`&&SE(e.search),`search must be null or a path on the domain's API, such as "/api/alerts/search"`]].find(([e])=>!e)?.[1]}function OE(e){if(!Array.isArray(e))return{entities:[],problems:[`entities must be an array`]};let t=[],n=[],r=new Set;for(let i of e){if(!wE(i)){n.push(`an entity type is not an object`);continue}let e=DE(i);if(e!==void 0){n.push(`entity type "${EE(i.type)}": ${e}`);continue}let a=i;if(r.has(a.type)){n.push(`duplicate entity type "${a.type}"`);continue}r.add(a.type),t.push({type:a.type,label:a.label,icon:a.icon,renderer:a.renderer,search:a.search})}return{entities:t,problems:n}}function kE(e,t,n){if(!SE(t))return null;try{let r=new URL(e),i=new URL(t,r);return i.search=`?query=${encodeURIComponent(n)}`,i.origin===r.origin?i:null}catch{return null}}async function AE(e){let t=kE(e.apiBase,e.path,e.query);if(t===null)return{ok:!1,error:`the search path "${e.path}" leaves the domain's API`};try{let n=await gE(t.href,{method:`GET`,signal:e.signal},{fetch:e.fetch,areas:e.areas});if(!n.ok)return{ok:!1,error:await _E(n)};let r=await n.json();return Array.isArray(r?.entities)?{ok:!0,entities:r.entities.filter(fE).map(pE)}:{ok:!1,error:`the answer has no entities list`}}catch(e){return{ok:!1,error:e instanceof Error?e.message:String(e)}}}var jE=`modulepreload`,ME=function(e){return`/`+e},NE={},PE=function(e){return e.pathname.endsWith(`.css`)},FE=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=ME(t,n);let r=s(t);if(r.href in NE)return;NE[r.href]=!0;let i=PE(r);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 o=document.createElement(`link`);if(o.rel=i?`stylesheet`:jE,i||(o.as=`script`),o.crossOrigin=``,o.href=r.href,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),i)return new Promise((e,t)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>t(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)})},IE=/^[a-z][a-z0-9_-]*$/,LE=e=>typeof e==`object`&&!!e&&!Array.isArray(e),RE=e=>typeof e==`string`&&e.trim()!==``,zE=e=>typeof e==`string`?e:JSON.stringify(e)??`undefined`;function BE(e,t){let n=`command "${zE(e.id)}"`;return[[typeof e.id==`string`&&IE.test(e.id),`id must match ${IE.source}`],[RE(e.title),`title must be a non-empty string`],[Array.isArray(e.keywords)&&e.keywords.every(RE),`keywords must be an array of non-empty strings`],[e.icon===null||RE(e.icon),`icon must be null or a non-empty string`],...t].filter(([e])=>!e).map(([,e])=>`${n}: ${e}`)}function VE(e){return LE(e)?BE(e,[[!(`href`in e),`a page command has no href`]]):[`a command is not an object`]}function HE(e){return BE(e,[[!(`href`in e),`href was removed; navigate in run`],[typeof e.run==`function`,`run must be a function`]])}function UE(e){if(!Array.isArray(e))return{ok:!1,problems:[`commands must be an array`]};if(e.length>100)return{ok:!1,problems:[`commands must be at most 100, got ${e.length}`]};let t=[],n=new Set;for(let r of e){if(!LE(r)){t.push(`a command is not an object`);continue}t.push(...HE(r)),typeof r.id==`string`&&n.has(r.id)&&t.push(`duplicate command "${r.id}"`),n.add(String(r.id))}return t.length===0?{ok:!0,commands:[...e]}:{ok:!1,problems:t}}var WE=e=>typeof e==`object`&&!!e&&!Array.isArray(e),GE=e=>Array.isArray(e)&&e.every(fE);function KE(e){return WE(e)&&typeof e.id==`string`&&typeof e.text==`string`&&GE(e.refs)&&WE(e.details)}function qE(e){return Array.isArray(e.tools)&&Array.isArray(e.commands)&&Array.isArray(e.suggestions)&&e.suggestions.every(KE)}function JE(e){return WE(e)&&typeof e.clientId==`string`&&typeof e.path==`string`&&(e.summary===void 0||typeof e.summary==`string`)&&GE(e.entities)&&GE(e.selection)&&qE(e)}var YE=1024,XE=4096,ZE=e=>typeof e==`object`&&!!e&&!Array.isArray(e),QE=e=>typeof e==`string`&&e.trim()!==``,$E=e=>typeof e==`string`?e:JSON.stringify(e)??`undefined`,eD=e=>`tool "${$E(e.name)}"`;function tD(e){if(!ZE(e))return[`a tool is not an object`];let t=ZE(e.input)?e.input:{};return[[typeof e.name==`string`&&lE.test(e.name),`name must match ${lE.source}`],[QE(e.description),`description must be a non-empty string`],[e.effect===`read`||e.effect===`write`,`effect must be "read" or "write"`],[t.type===`object`&&ZE(t.properties),`input must be a JSON Schema object with properties`]].filter(([e])=>!e).map(([,t])=>`${eD(e)}: ${t}`)}function nD(e){try{let{name:t,description:n,input:r,effect:i}=e;return{json:JSON.stringify({name:t,description:n,input:r,effect:i})}}catch(e){return{error:e instanceof Error?e.message:String(e)}}}function rD(e){let t=tD(e);if(!ZE(e))return t;typeof e.description==`string`&&e.description.length>1024&&t.push(`${eD(e)}: description must be at most ${YE} characters`);let n=nD(e);return`error`in n?t.push(`${eD(e)}: the descriptor must serialise as JSON: ${n.error}`):n.json.length>4096&&t.push(`${eD(e)}: the descriptor must be at most ${XE} characters of JSON`),t}function iD({name:e,description:t,input:n,effect:r}){return{name:e,description:t,input:JSON.parse(JSON.stringify(n)),effect:r}}var aD=e=>typeof e==`object`&&!!e&&!Array.isArray(e),oD=e=>typeof e==`string`&&e.trim()!==``,sD=e=>typeof e==`string`&&kT(e),cD=(e,t)=>e===void 0||t(e);function lD(e){if(!Array.isArray(e)||e.length>12)return null;let t=[];for(let n of e){if(!aD(n)||typeof n.label!=`string`||typeof n.value!=`string`)return null;t.push({label:n.label,value:n.value})}return t}function uD(e){if(!aD(e)||!oD(e.title))return null;let{icon:t,fields:n,href:r}=e,i=n===void 0?void 0:lD(n);return i===null||!cD(t,oD)||!cD(r,sD)?null:{title:e.title,...typeof t==`string`?{icon:t}:{},...i===void 0?{}:{fields:i},...typeof r==`string`?{href:r}:{}}}var dD=e=>aD(e)&&e.hasDetails===!0&&Object.keys(e).length===1;function fD(e){let t={};for(let[n,r]of Object.entries(aD(e)?e:{})){let e=dD(r)?{hasDetails:!0}:uD(r);e!==null&&(t[n]=e)}return t}function pD(e){if(!aD(e))return null;try{let t=structuredClone(e);return JSON.stringify(t),aD(t)?t:null}catch{return null}}var mD=`expects must name a tool, with an object of plain data as input`;function hD(e){if(e===void 0)return;if(!Array.isArray(e)||e.length>5)return`expects must be an array of at most 5 calls`;let t=[];for(let n of e){if(!aD(n)||typeof n.tool!=`string`)return mD;let e=n.input===void 0?void 0:pD(n.input);if(e===null)return mD;t.push({tool:n.tool,...e===void 0?{}:{input:e}})}return t}function gD(e){if(!aD(e)||typeof e.id!=`string`||typeof e.text!=`string`)return null;let{id:t,text:n,label:r,refs:i,expects:a,details:o}=e,s=hD(a);return r!==void 0&&typeof r!=`string`||typeof s==`string`?null:{id:t,text:n,...r===void 0?{}:{label:r},refs:Array.isArray(i)?i.filter(fE).map(pE):[],...s===void 0?{}:{expects:s},details:fD(o)}}function _D(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function vD(e,t=_D()){t.local.setItem(RT.session,JSON.stringify(e))}function yD(e=_D()){e.local.removeItem(RT.session)}function bD(e,t=_D()){if(e===null){t.session.removeItem(RT.tenant);return}t.session.setItem(RT.tenant,JSON.stringify({tenantId:e}))}function xD(e,t=_D()){t.local.setItem(RT.theme,e)}function SD(e,t=_D()){t.local.setItem(RT.brand,JSON.stringify(e))}function CD(e,t=_D()){t.session.setItem(RT.domains,JSON.stringify(e))}function wD(e,t=_D()){t.session.setItem(RT.settings,JSON.stringify(e))}function TD(e,t=_D()){t.session.setItem(RT.route,JSON.stringify(e))}var ED=`__AISTRIKE_SHELL_DEV__`;function DD(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function OD(e){if(e===void 0)return null;if(!DD(e))return`overrides must be an object`;for(let[t,n]of Object.entries(e)){if(typeof n!=`string`)return`override for "${t}" must be a string origin`;try{new URL(n)}catch{return`override for "${t}" is not a URL: ${n}`}}return null}function kD(e){return typeof e==`number`&&Number.isInteger(e)&&e>0&&e<=65535}function AD(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0}function jD(e,t){return DD(e)?typeof e.id!=`string`||!pT(e.id)?`domains[${t}].id must be a DNS label`:!DD(e.nav)||typeof e.nav.label!=`string`?`domains[${t}].nav.label is required`:kD(e.devPort)?null:`domains[${t}].devPort must be a number`:`domains[${t}] must be an object`}function MD(e){return e===void 0?null:!DD(e)||typeof e.accessToken!=`string`||typeof e.expiresAt!=`number`||!DD(e.claims)?`session must have accessToken, expiresAt and claims`:null}function ND(e){if(e===void 0)return null;if(!Array.isArray(e))return`domains must be an array`;for(let[t,n]of e.entries()){let e=jD(n,t);if(e!==null)return e}return null}function PD(e){return e.profile!==void 0&&typeof e.profile!=`string`?`profile must be a string`:e.landing!==void 0&&(typeof e.landing!=`string`||e.landing===``)?`landing must be a non-empty string`:e.idleTimeoutMs!==void 0&&!AD(e.idleTimeoutMs)?`idleTimeoutMs must be a non-negative number`:e.lab!==void 0&&typeof e.lab!=`boolean`?`lab must be a boolean`:null}function FD(e){if(!DD(e))return`dev config must be an object`;let t=OD(e.overrides);if(t!==null)return t;let n=ND(e.domains);return n===null?PD(e)??MD(e.session):n}function ID(e){return e}function LD(e){if(e===void 0)return null;let t=FD(e);return t===null?ID(e):(console.error(`Ignoring ${ED}: ${t}`),null)}function RD(e,t){let n=e.map(e=>({...e}));for(let e of t??[]){let t=n.find(t=>t.id===e.id);t?(t.nav=e.nav,t.devPort=e.devPort):n.push({id:e.id,nav:e.nav,devPort:e.devPort})}return n}var zD=e=>e.split(`/`).filter(e=>e!==``);function BD(e,t){let n=zD(e),r=zD(t);for(let[e,t]of n.entries()){if(t===`*`&&e===n.length-1)return!0;let i=r[e];if(i===void 0||!t.startsWith(`:`)&&t!==i)return!1}return r.length===n.length}var VD=Symbol.for(`aistrike.experiments.v1`);function HD(){let e=globalThis;return e[VD]??={v:1,active:!1,paused:!1,values:{},definitions:new Map,listeners:new Set,revision:0},e[VD]}var UD=`aistrike.lab.experiments`,WD=/^[A-Za-z0-9._-]+$/;function GD(e){return Object.entries(e).map(([e,t])=>`${e}:${t}`).join(`,`)}function KD(e){let t={};for(let n of e.split(`,`)){let[e,r,i]=n.split(`:`);e!==void 0&&r!==void 0&&i===void 0&&WD.test(e)&&WD.test(r)&&(t[e]=r)}return t}var qD=e=>e===`lab`||e.startsWith(`lab=`);function JD(e){let t=e.replace(/^\?/,``).split(`&`).find(qD);return t===void 0?void 0:decodeURIComponent(t.slice(4))}function YD(e,t){let n=e.replace(/^\?/,``).split(`&`).filter(e=>e!==``&&!qD(e));return t!==``&&n.push(`lab=${t}`),n.length===0?``:`?${n.join(`&`)}`}function XD(e){let{id:t,options:n,baseline:r}=e;if(!WD.test(t))throw Error(`Lab ${e.kind} id "${t}" must match ${String(WD)}`);if(n.length===0)throw Error(`Lab ${e.kind} "${t}" has no options`);let i=new Set;for(let r of n){if(!WD.test(r.id)||i.has(r.id))throw Error(`Lab ${e.kind} "${t}" has a missing, malformed or repeated option id "${r.id}"`);i.add(r.id)}if(!i.has(r))throw Error(`Lab ${e.kind} "${t}" names a baseline, "${r}", that is not one of its options`)}var ZD=(e,t)=>e.base===void 0?t:`${e.base.replace(/\/$/,``)}/${t.replace(/^\//,``)}`;function QD(e){return e.definitions(`experiment`).flatMap(t=>{let n=e.picked(t.id);if(n===void 0||n===t.baseline)return[];let r=t.options.find(e=>e.id===n)?.label??n;return[`${t.id} = ${n} # ${t.title}: ${r}`]}).join(`
177
- `)}var $D=()=>typeof window>`u`?void 0:{storage:window.sessionStorage,location:window.location,history:window.history};function eO(e,t){let n=()=>t??$D()??{},r=()=>{e.revision+=1;for(let t of[...e.listeners])t()},i=()=>{if(!e.active)return;let{storage:t,location:r,history:i}=n();try{t?.setItem(UD,JSON.stringify({values:e.values,paused:e.paused}))}catch{}if(r!==void 0&&i!==void 0){let t=YD(r.search,GD(e.values));t!==r.search&&i.replaceState(i.state,``,`${r.pathname}${t}${r.hash}`)}},a=()=>{i(),r()},o=(e,t)=>t!==void 0&&e.options.some(e=>e.id===t)?t:e.baseline,s={shared:e,activate(){if(e.active)return;let{storage:t,location:r}=n(),i={};try{i=JSON.parse(t?.getItem(`aistrike.lab.experiments`)??`null`)??{}}catch{}let o=r===void 0?void 0:JD(r.search),s=typeof i.values==`object`&&i.values!==null?KD(GD(i.values)):{};e.values={...e.values,...o===void 0?s:KD(o)},e.paused=i.paused===!0,e.active=!0,a()},isActive:()=>e.active,isPaused:()=>e.paused,setPaused(t){e.paused!==t&&(e.paused=t,a())},register(t){XD(t);let n=e.definitions.get(t.id);if(n!==void 0&&n.kind!==t.kind)throw Error(`Lab id "${t.id}" is already registered as a ${n.kind}`);e.definitions.set(t.id,t),r()},unregister(t){e.definitions.delete(t)&&r()},definitions:t=>[...e.definitions.values()].filter(e=>t===void 0||e.kind===t),value(t){let n=e.definitions.get(t);if(n!==void 0)return!e.active||n.kind===`experiment`&&e.paused?n.baseline:o(n,e.values[t])},picked(t){let n=e.definitions.get(t);return n===void 0?void 0:o(n,e.values[t])},set(e,t){s.setMany({[e]:t??``})},setMany(t){let n=!1;for(let[r,i]of Object.entries(t)){let t=e.definitions.get(r);if(t===void 0||i!==``&&!t.options.some(e=>e.id===i))continue;let a=i===``||i===t.baseline?void 0:i;e.values[r]!==a&&(n=!0,a===void 0?delete e.values[r]:e.values[r]=a)}n&&a()},reset(t){let n=Object.keys(e.values).filter(n=>e.definitions.get(n)?.kind===t);if(n.length>0){for(let t of n)delete e.values[t];a()}},applies(e,t){let n=e.paths??[];return(n.length===0||n.some(n=>BD(ZD(e,n),t)))&&Object.entries(e.when??{}).every(([e,t])=>s.picked(e)===t)},hrefOf:e=>e.href===void 0?void 0:ZD(e,e.href),subscribe(t){return e.listeners.add(t),()=>{e.listeners.delete(t)}}};return s}var tO;function nO(){return tO??=eO(HD()),tO}function rO(e=nO()){e.activate()}var iO=(0,B.createContext)(null);function aO(e){return(0,V.jsx)(iO.Provider,{value:e.client,children:e.children})}function oO(){let e=(0,B.useContext)(iO);if(e===null)throw Error(`usePreference needs a PreferencesProvider above it`);return e}function sO(e,t,n){let r=oO(),i=typeof e==`string`?e:e.join(`\0`),a=(0,B.useMemo)(()=>i.split(`\0`),[i]),o=n?.scope,s=(0,B.useRef)({raw:``,value:t}),c=(0,B.useCallback)(e=>r.subscribe(()=>{e()}),[r]),l=(0,B.useCallback)(()=>{let e=r.resolve(a);if(e===void 0)return(s.current.raw!==``||s.current.value!==t)&&(s.current={raw:``,value:t}),s.current.value;let n=JSON.stringify(e);return n!==s.current.raw&&(s.current={raw:n,value:e}),s.current.value},[r,a,t]);return[(0,B.useSyncExternalStore)(c,l,l),(0,B.useCallback)(e=>{r.set(a[0],e,o===void 0?void 0:{scope:o})},[r,a,o])]}function cO(e){let t=e,n=new Set;return{get:()=>t,set(e){t=typeof e==`function`?e(t):e;for(let e of[...n])e()},subscribe(e){return n.add(e),()=>{n.delete(e)}}}}function lO(e,t){return(0,B.useSyncExternalStore)(e.subscribe,()=>t(e.get()),()=>t(e.get()))}var uO=class extends B.Component{state={error:null};static getDerivedStateFromError(e){return{error:e instanceof Error?e:Error(String(e))}}componentDidCatch(e,t){console.error(`The shell frame failed to render`,e,t.componentStack)}render(){return this.state.error===null?this.props.children:(0,V.jsx)(XS,{title:`Something went wrong`,description:this.state.error.message})}},dO=[`tab`,`device`,`user`],fO=`shell`,pO=`landingRoute`,mO=`theme`,hO=`themeDark`,gO=`themeLight`,_O=`brand`,vO=`aistrike.prefs`,yO=/^[a-z0-9-]+$/,bO=new Set([`__proto__`,`constructor`,`prototype`]);function xO(e){return yO.test(e)}function SO(e){return e.length>0&&!bO.has(e)}function CO(e,t){return`${vO}.${e}.${t}`}function wO(e,t){return t===`tab`?e.session:e.local}function TO(e,t,n){let r;try{let i=wO(e,t).getItem(CO(t,n));r=i===null?null:JSON.parse(i)}catch{return{}}if(typeof r!=`object`||!r||Array.isArray(r))return{};let i={};for(let[e,t]of Object.entries(r))SO(e)&&(i[e]=t);return i}function EO(e,t,n,r){wO(e,t).setItem(CO(t,n),JSON.stringify(r))}var DO=`preferences`;function OO(e){return`${DO}.${e}.changed`}function kO(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function AO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.namespace==`string`&&typeof t.name==`string`&&typeof t.scope==`string`&&dO.includes(t.scope)}function jO(e,t){return JSON.stringify(e)===JSON.stringify(t)}function MO(e){let{namespace:t}=e;if(!xO(t))throw Error(`Invalid preferences namespace "${t}": use lowercase letters, digits and hyphens`);let n=e.areas??kO(),r=e.bus===void 0,i=e.bus??rE({source:`preferences`,createChannel:e.createChannel}),a=new Set,o=!1;function s(e){for(let t of[...a])try{t(e)}catch(e){typeof reportError==`function`?reportError(e):console.error(e)}}let c=i.subscribe(OO(t),e=>{AO(e.payload)&&e.payload.namespace===t&&s(e.payload)});function l(e){if(o)throw Error(`Preferences client is closed`);if(!SO(e))throw Error(`Invalid preference name "${e}"`)}function u(e,r,a){let o=a(TO(n,e,t));if(o===null)return;try{EO(n,e,t,o)}catch(e){console.error(e);return}let c={namespace:t,scope:e,name:r};i.publish(OO(t),c,{scope:`browser`}),s(c)}function d(e,t){u(t,e,t=>Object.hasOwn(t,e)?Object.fromEntries(Object.entries(t).filter(([t])=>t!==e)):null)}function f(e){if(SO(e))for(let r of dO){let i=TO(n,r,t);if(Object.hasOwn(i,e))return i[e]}}return{namespace:t,get(e){return f(e)},resolve(e){for(let t of e){let e=f(t);if(e!==void 0)return e}},set(e,t,n){l(e);let r=n?.scope??`user`;if(t===void 0){d(e,r);return}u(r,e,n=>Object.hasOwn(n,e)&&jO(n[e],t)?null:{...n,[e]:t})},remove(e,t){l(e),d(e,t?.scope??`user`)},subscribe(e){if(o)throw Error(`Preferences client is closed`);return a.add(e),()=>{a.delete(e)}},close(){o=!0,a.clear(),c(),r&&i.close()}}}var NO=`keybindings`,PO=`assistant.toggle`,FO=[{id:PO,title:`Assistant: Open or Close`,when:`Anywhere`,defaultBinding:`Mod+I`},{id:`commands.open`,title:`Command menu: Open`,when:`Anywhere`,defaultBinding:`Mod+K`}],IO=[`Mod`,`Ctrl`,`Alt`,`Shift`],LO=new Set([`Meta`,`Control`,`Alt`,`Shift`,`OS`,`AltGraph`]),RO=new Map([[`Period`,`.`],[`Comma`,`,`],[`Slash`,`/`],[`Semicolon`,`;`],[`Quote`,`'`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Backslash`,`\\`],[`Minus`,`-`],[`Equal`,`=`],[`Backquote`,"`"],[`Space`,`Space`]]);function zO(e){let t=/^Key([A-Z])$/.exec(e.code),n=/^Digit(\d)$/.exec(e.code);return t?.[1]??n?.[1]??RO.get(e.code)??(e.key.length===1?e.key.toUpperCase():e.key)}function BO(e,t){if(LO.has(e.key)||!t&&e.metaKey)return null;let n=new Set;return(t?e.metaKey:e.ctrlKey)&&n.add(`Mod`),t&&e.ctrlKey&&n.add(`Ctrl`),e.altKey&&n.add(`Alt`),e.shiftKey&&n.add(`Shift`),[...IO.filter(e=>n.has(e)),zO(e)].join(`+`)}function VO(e,t,n){return BO(e,n)===t}var HO=/^(?:(?:Mod|Ctrl|Alt|Shift)\+)*[^+\s]+$/;function UO(e){return typeof e!=`object`||!e||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(e=>typeof e[1]==`string`&&HO.test(e[1])))}function WO(e,t=FO){let n=UO(e);return new Map(t.map(e=>[e.id,n[e.id]??e.defaultBinding]))}var GO=new Map([[`Mod`,`⌘`],[`Ctrl`,`⌃`],[`Alt`,`⌥`],[`Shift`,`⇧`]]),KO=new Map([[`Mod`,`Ctrl`],[`Ctrl`,`Ctrl`],[`Alt`,`Alt`],[`Shift`,`Shift`]]);function qO(e,t){return e.split(`+`).map(e=>(t?GO:KO).get(e)??e)}function JO(e,t){return qO(e,t).join(t?``:`+`)}var YO=`assistant`,XO=`assistantOpen`,ZO=`assistantWidth`,QO=320,$O=400,ek=Qw;function tk(){return $w(window.innerWidth,QO,ek)}var nk=e=>Math.max(QO,typeof e==`number`&&Number.isFinite(e)?Math.round(e):$O);function rk(){return typeof navigator<`u`&&/mac|iphone|ipad/i.test(navigator.platform||navigator.userAgent)}function ik(e){let t=e.target??window,n=e.mac??rk(),r=cO(e.preferences.get(XO)===!0),i=cO(nk(e.preferences.get(`assistantWidth`)??$O)),a=null,o=null,s=e=>Number.isFinite(e)?(i.set(Math.min(tk(),nk(e))),!0):!1,c=()=>a?.contains(document.activeElement)===!0,l=()=>(a?.querySelector(`textarea, input, [contenteditable="true"]`)??null)!==null,u=()=>{if(!r.get()){let t=document.activeElement;o=t instanceof HTMLElement&&t!==document.body&&!c()?t:null,r.set(!0),e.preferences.set(XO,!0,{scope:`tab`})}e.bus.publish(iE.assistantFocused,void 0,{scope:`tab`})},d=()=>{if(!r.get())return;let t=c()||document.activeElement===document.body?o:null;r.set(!1),e.preferences.remove(XO,{scope:`tab`}),t?.isConnected===!0&&t.focus(),o=null},f=t=>{let i=WO(e.preferences.get(`keybindings`)).get(`assistant.toggle`)??``;if(!document.documentElement.hasAttribute(`data-aistrike-recording-keys`)&&VO(t,i,n)&&e.isBlocked?.()!==!0){if(t.preventDefault(),t.stopPropagation(),r.get()&&l()&&!c()){u();return}r.get()?d():u()}},p=e=>{e.key===`Escape`&&!e.defaultPrevented&&r.get()&&a!==null&&e.target instanceof Node&&a.contains(e.target)&&d()};t.addEventListener(`keydown`,f,{capture:!0}),t.addEventListener(`keydown`,p);let m=e.bus.subscribe(oE.paneDismissed,d);return{open:r,width:i,show:u,hide:d,toggle:()=>r.get()?d():u(),setWidth(e){s(e)},commitWidth(t){s(t)&&e.preferences.set(ZO,i.get(),{scope:`device`})},setPaneElement(e){a=e},dispose(){t.removeEventListener(`keydown`,f,{capture:!0}),t.removeEventListener(`keydown`,p),m()}}}function ak(e){return e instanceof Error?e.message:String(e)}function ok(e,t){let[n,r]=(0,B.useState)(null),[i,a]=(0,B.useState)(!1),[o,s]=(0,B.useState)(0);return(0,B.useEffect)(()=>{if(e===null||t===void 0)return;let n=!0,i=document.createElement(`div`);i.style.cssText=`height:100%;display:flex;flex-direction:column;min-height:0`,e.append(i),r(null),a(!0);let o=Promise.resolve().then(async()=>t.mount(i));return o.then(()=>{n&&a(!1)},e=>{console.error(`The assistant's pane did not mount`,e),n&&(a(!1),r(ak(e)))}),()=>{n=!1,o.catch(()=>void 0).then(async()=>t.unmount()).catch(e=>console.error(`The assistant's pane did not unmount`,e)).finally(()=>i.remove())}},[e,t,o]),{error:n,mounting:i,retry:()=>s(e=>e+1)}}function sk({children:e,onClose:t}){return(0,V.jsxs)(Y,{sx:{position:`relative`,flex:1,display:`flex`,flexDirection:`column`,justifyContent:`center`,p:3},children:[(0,V.jsx)(Y,{sx:{position:`absolute`,top:8,right:8},children:(0,V.jsx)(VS,{label:`Close the assistant`,tooltip:`Close`,icon:(0,V.jsx)(cb,{}),onClick:t})}),e]})}function ck(e,t){return e===void 0||e.state===`gated`?`absent`:e.state===`failed`?`failed`:e.state===`active`?t===void 0?`absent`:`pane`:`loading`}function lk({state:e,reason:t,mounted:n,onRetry:r,onClose:i,slot:a}){let o=e===`pane`&&n.error===null;return(0,V.jsxs)(Y,{sx:{position:`relative`,flex:1,minHeight:0,display:`flex`,flexDirection:`column`,overflow:`hidden`,borderRadius:`inherit`},children:[e===`loading`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{loading:!0,title:`Loading the assistant…`})}),e===`failed`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`The assistant could not load`,description:t??`Unknown error`,action:(0,V.jsx)(ky,{variant:`primary`,onClick:r,children:`Retry`})})}),e===`absent`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`Assistant`,description:`The assistant is not available here.`})}),e===`pane`&&n.error!==null&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`The assistant could not open`,description:n.error,action:(0,V.jsx)(ky,{variant:`primary`,onClick:n.retry,children:`Retry`})})}),(0,V.jsx)(`div`,{ref:a,style:{flex:1,minHeight:0,display:o?`flex`:`none`,flexDirection:`column`}})]})}function uk({controller:e,status:t,onRetry:n}){let r=lO(e.open,e=>e),i=lO(e.width,e=>e),[a,o]=(0,B.useState)(null),s=t?.state===`active`?t.pane:void 0,c=ok(a,s);return(0,V.jsx)(oT,{ref:t=>e.setPaneElement(t),open:r,width:i,onWidthChange:t=>e.setWidth(t),onWidthCommit:t=>e.commitWidth(t),minWidth:QO,maxShare:ek,label:`Assistant`,children:(0,V.jsx)(lk,{state:ck(t,s),reason:t?.reason,mounted:c,onRetry:n,onClose:()=>e.hide(),slot:o})})}var dk=FO.find(e=>e.id===`assistant.toggle`)?.defaultBinding??`Mod+I`;function fk({mac:e,binding:t,onToggle:n}){return(0,V.jsx)(ky,{variant:`agentSoft`,size:`small`,startIcon:(0,V.jsx)(eb,{}),endIcon:(0,V.jsx)(Cy,{children:JO(t??dk,e)}),onClick:n,children:`Ask AI`})}var pk=new Map([[`home`,`home`],[`settings`,`cog-filled`],[`profile`,`user`],[`lab`,`flask`],[`dashboard`,`grid`],[`alerts`,`alert`],[`investigations`,`target`],[`hunt`,`search`],[`agents`,`bot`],[`reports`,`doc`]]);function mk({glyph:e}){return(0,V.jsx)(nf,{viewBox:e.viewBox,children:e.paths.map((e,t)=>typeof e==`string`?(0,V.jsx)(`path`,{d:e},t):(0,V.jsx)(`path`,{d:e.d,fill:`none`,stroke:`currentColor`,strokeWidth:e.stroke},t))})}function hk(e){if(typeof e!=`string`)return IT(e)?(0,V.jsx)(mk,{glyph:e}):null;let t=pk.get(e.toLowerCase()),n=t===void 0?void 0:xb(t);return n===void 0?null:(0,V.jsx)(n,{})}function gk(e){return`/${e}`}function _k(e,t){let n=e.split(`/`)[1];return t.find(e=>e.id===n)??null}var vk=`Go to`,yk=`Shell`,bk=(e,t)=>e.trim()===``?t:e,xk=e=>typeof e==`string`||IT(e)?{icon:e}:{};function Sk(e){let t=[];for(let n of e.domains){let r=e.statuses[n.id];if(r===void 0||r.state===`gated`||n.rail===!1)continue;let i=bk(n.nav.label,n.id);t.push({key:`nav:${n.id}`,title:`Go to ${i}`,group:vk,keywords:[n.id],href:gk(n.id),...n.nav.icon===void 0?{}:{icon:n.nav.icon}});for(let e of(r.nav??[]).filter(e=>e.path!==`/`)){let r=bk(e.label,e.path);t.push({key:`nav:${n.id}:${e.path}`,title:`Go to ${i} › ${r}`,group:vk,keywords:[n.id,r],href:`${gk(n.id)}${e.path}`,...xk(e.icon)})}}return t}function Ck(e,t){return e.domains.flatMap(n=>{let r=e.statuses[n.id];return r?.state===`active`?(r.commands??[]).map(e=>({key:`${n.id}:${e.id}`,title:e.title,group:bk(n.nav.label,n.id),keywords:e.keywords,...e.icon===null?{}:{icon:e.icon},run:()=>t(n.id,e)})):[]})}function wk(e,t){return e.page.map(e=>({key:`page:${e.domainId}:${e.id}`,title:e.title,group:`This page`,keywords:e.keywords,...e.icon===null?{}:{icon:e.icon},run:()=>t(e.domainId,e.id)}))}function Tk(e,t,n){let r=e.toggleAssistant===void 0?[]:[{key:`shell:assistant`,title:`Assistant: Open or Close`,group:yk,keywords:[`ai`,`chat`],run:e.toggleAssistant}];return[...wk(e,t),...r,...Ck(e,n),...Sk(e)].filter(e=>e.href===void 0||kT(e.href))}var Ek=e=>e.toLowerCase().split(/\s+/).filter(e=>e!==``);function Dk(e,t){let n=Ek(t);return n.length===0?[...e]:e.filter(e=>{let t=[e.title,e.group,...e.keywords].join(` `).toLowerCase();return n.every(e=>t.includes(e))})}var Ok=`Search, or type a command…`,kk=`Command menu`,Ak=e=>e.replace(/[^A-Za-z0-9_-]/g,e=>`_${e.codePointAt(0)?.toString(16)??``}_`),jk=e=>{let t=e===void 0?null:hk(e);return t===null?{}:{icon:t}};function Mk(e){return{id:e.key,label:e.title,...jk(e.icon),target:{kind:`command`,command:e}}}function Nk(e,t,n){return{id:`${e}:${t.id}`,label:t.label,...t.summary===void 0?{}:{summary:t.summary},...jk(n),target:{kind:`entity`,ref:t}}}function Pk(e,t){let n=new Map;for(let r of Dk(e,t)){let e=n.get(r.group)??[];e.push(Mk(r)),n.set(r.group,e)}return[...n].map(([e,t])=>({id:Ak(`commands:${e}`),label:e,items:t}))}function Fk({target:e,result:t}){let n=`${e.domainLabel} · ${e.typeLabel}`,r=`search:${e.domainId}:${e.type}`,i=Ak(r);return t.state===`searching`?{id:i,label:n,note:`Searching…`,items:[]}:t.state===`failed`?{id:i,label:n,note:`No answer from ${e.domainLabel}`,items:[]}:t.entities.length===0?null:{id:i,label:n,items:t.entities.map(t=>Nk(r,t,e.icon))}}function Ik(e,t,n){let r=Pk(e,t);if(n.query!==t)return r;for(let e of n.results){let t=Fk(e);t!==null&&r.push(t)}return r}function Lk({target:e},t){e.kind===`entity`?e.ref.href!==void 0&&t(e.ref.href):e.command.href===void 0?e.command.run?.():t(e.command.href)}function Rk(e){let{open:t,onClose:n,commands:r,targets:i,searcher:a,navigate:o}=e,[s,c]=(0,B.useState)(``),l=lO(a.store,e=>e),u=(0,B.useRef)(void 0);(0,B.useEffect)(()=>{t||(clearTimeout(u.current),c(``),a.cancel())},[t,a]),(0,B.useEffect)(()=>()=>clearTimeout(u.current),[]);let d=(0,B.useMemo)(()=>Ik(r,s,l),[r,s,l]);return(0,V.jsx)(Zw,{open:t,onClose:n,query:s,onQueryChange:e=>{c(e),clearTimeout(u.current),u.current=setTimeout(()=>a.search(e,[...i]),150)},groups:d,onActivate:e=>{Lk(e,o),n()},placeholder:Ok,label:kk,listLabel:`Commands and results`})}function zk(e,t,n){return e.flatMap(e=>{let r=t[e.id];if(r?.state!==`active`||r.apiBase===void 0)return[];let i=r.apiBase;return(r.entities??[]).flatMap(t=>t.search===null?[]:[{domainId:e.id,domainLabel:n(e.id),typeLabel:t.label,type:t.type,path:t.search,apiBase:i,...t.icon===null?{}:{icon:t.icon}}])})}var Bk=async(e,t,n)=>AE({apiBase:e.apiBase,path:e.path,query:t,signal:n});function Vk(e){return(Array.isArray(e)?e:[]).filter(fE).filter(e=>e.href!==void 0&&kT(e.href)).slice(0,10)}var Hk=new Set;function Uk(e=Bk){let t=cO({query:``,results:[]}),n=null,r=0,i=()=>{n?.abort(),n=null,r+=1},a=(e,n,i)=>{e===r&&t.set(e=>({...e,results:e.results.map((e,t)=>t===n?{...e,result:i}:e)}))};return{store:t,search(o,s){if(i(),o.trim().length<2||s.length===0){t.set({query:o,results:[]});return}let c=r,l=new AbortController;n=l,t.set({query:o,results:s.map(e=>({target:e,result:{state:`searching`}}))}),s.forEach((t,n)=>{e(t,o,l.signal).then(e=>{if(e.ok){a(c,n,{state:`done`,entities:Vk(e.entities)});return}c===r&&!Hk.has(t.domainId)&&(Hk.add(t.domainId),console.warn(`Command menu: searching ${t.domainId}'s ${t.typeLabel} failed: ${e.error}`)),a(c,n,{state:`failed`,error:e.error})}).catch(e=>{a(c,n,{state:`failed`,error:e instanceof Error?e.message:String(e)})})})},cancel(){i(),t.set({query:``,results:[]})}}}function Wk({secondsRemaining:e,onStay:t}){return(0,V.jsxs)(Ny,{open:e!==null,onClose:t,children:[(0,V.jsx)(Nv,{children:`Still there?`}),(0,V.jsx)(Lv,{children:(0,V.jsx)(Vv,{children:`You will be signed out in ${e??0} seconds.`})}),(0,V.jsx)(Fy,{children:(0,V.jsx)(ky,{variant:`contained`,onClick:t,children:`Stay signed in`})})]})}async function Gk(e){let t=e.current;if(t===null)return null;e.current=null;try{await t.unmount()}catch(e){console.error(`unmount of "${t.id}" failed`,e)}return t.container.remove(),t.id}function Kk({title:e,reason:t,onRetry:n}){return(0,V.jsx)(XS,{title:e,description:t,action:(0,V.jsx)(ky,{variant:`primary`,onClick:n,children:`Retry`})})}function qk(e){return e instanceof Error?e.message:String(e)}function Jk({status:e,label:t,onRetry:n,host:r,mounting:i}){return e===null||e.state===`gated`?(0,V.jsx)(XS,{title:`Not found`,description:`No domain at this address.`}):e.state===`failed`?(0,V.jsx)(Kk,{title:`${t} is unavailable`,reason:e.reason??`Unknown error`,onRetry:()=>n(e.id)}):(0,V.jsxs)(`div`,{style:{height:`100%`,minHeight:0},children:[(e.state!==`active`||i)&&(0,V.jsx)(XS,{loading:!0,title:`Loading ${t}…`}),(0,V.jsx)(`div`,{ref:r,style:{height:`100%`}})]})}async function Yk(e,t,n,r){let i=document.createElement(`div`);i.dataset.domain=t,i.style.height=`100%`,e.append(i),r.current={id:t,container:i,unmount:async()=>n.unmount()};try{return await n.mount(i),null}catch(e){r.current=null;try{await n.unmount()}catch(e){console.error(`unmount of "${t}" after a failed mount failed`,e)}return i.remove(),qk(e)}}function Xk(e){return e?.state!==`active`||e.activation===void 0?{}:{activation:e.activation,activeId:e.id}}async function Zk(e,t,n,r,i){if(!i()||!e.isConnected)return{kind:`superseded`};let a=await Yk(e,t,n,r);return i()?a===null?{kind:`mounted`}:{kind:`failed`,reason:a}:{kind:`superseded`}}function Qk({status:e,label:t,onRetry:n,onDomainLeft:r}){let i=(0,B.useRef)(null),a=(0,B.useRef)(Promise.resolve()),o=(0,B.useRef)(null),s=(0,B.useRef)(0),[c,l]=(0,B.useState)(null),[u,d]=(0,B.useState)(void 0),[f,p]=(0,B.useState)(0),{activation:m,activeId:h}=Xk(e),g=e?.id??null,_=(0,B.useRef)(r);(0,B.useEffect)(()=>{_.current=r});let[v,y]=(0,B.useState)({id:h,activation:m});return(v.id!==h||v.activation!==m)&&(y({id:h,activation:m}),l(null),d(void 0)),(0,B.useEffect)(()=>{s.current+=1;let e=s.current,t=i.current,n=()=>e===s.current;a.current=a.current.then(async()=>{let e=await Gk(o);if(e!==null&&e!==g&&_.current?.(),!m||!h||!t)return;let r=await Zk(t,h,m,o,n);r.kind===`mounted`?d(m):r.kind===`failed`&&l({id:h,reason:r.reason})})},[m,h,g,f]),(0,B.useEffect)(()=>()=>{a.current=a.current.then(async()=>{await Gk(o)})},[]),h!==void 0&&c?.id===h?(0,V.jsx)(Kk,{title:`${t} is unavailable`,reason:c.reason,onRetry:()=>{l(null),p(e=>e+1)}}):(0,V.jsx)(Jk,{status:e,label:t,onRetry:n,host:i,mounting:m!==void 0&&u!==m})}function $k({value:e,options:t,onChange:n}){return t.length===0?null:(0,V.jsx)(dw,{label:`Tenant`,startIcon:(0,V.jsx)(Zy,{}),value:e,options:t.map(e=>({value:e,label:e})),onChange:n,sx:{flex:`0 1 236px`,minWidth:120}})}function eA({preview:e,tenant:t,account:n,commandAssistant:r,onOpenCommands:i,commandShortcut:a}){return(0,V.jsx)(Yw,{command:(0,V.jsx)(ow,{onOpen:i,shortcut:a?.label,keyShortcuts:a?.keys}),commandAside:r,end:(0,V.jsxs)(V.Fragment,{children:[t,n,e&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(VS,{label:`Notifications`,tooltip:`Notifications`,icon:(0,V.jsx)(Ky,{})}),(0,V.jsx)(VS,{label:`Help`,tooltip:`Help`,icon:(0,V.jsx)(qy,{})})]})]})})}var tA=yt,nA=bt;function rA(e){return tA.find(t=>t.id===e)}function iA(e){return tA.filter(t=>t.mode===e)}function aA(e,t){let n=rA(t);if(n?.mode===e)return n;let r=rA(nA[e]);if(r===void 0)throw Error(`The default ${e} theme "${nA[e]}" is not in THEMES`);return r}var oA=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],sA=[{value:`comfortable`,label:`Comfortable`},{value:`compact`,label:`Compact`}],cA=`aria-label`,lA=`aria-haspopup`,uA=`aria-expanded`,dA=`aria-controls`;function fA(e){let{name:t,choice:n,onChoose:r,mode:i,themes:a,onChooseTheme:o,density:s,onChooseDensity:c}=e,[l,u]=(0,B.useState)(null),d=(0,B.useId)(),f=l!==null,p=a[i],m=oA.find(e=>e.value===n)?.label??``,h=()=>u(null);return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(VS,{label:`Account`,tooltip:`Account`,icon:(0,V.jsx)(Gy,{}),onClick:e=>u(e.currentTarget),[lA]:`menu`,[uA]:f,[dA]:f?d:void 0}),(0,V.jsxs)(jg,{anchorEl:l,open:f,onClose:h,anchorOrigin:{vertical:`bottom`,horizontal:`right`},transformOrigin:{vertical:`top`,horizontal:`right`},slotProps:{list:{id:d,[cA]:`Account`,sx:{minWidth:240}}},children:[(0,V.jsx)(rw,{primary:t}),(0,V.jsx)(C_,{component:`li`,role:`presentation`}),(0,V.jsxs)(aw,{label:`Theme`,secondary:`${p.label} · ${m}`,menuLabel:`Theme`,placement:`left`,onDismiss:h,children:[(0,V.jsx)(ew,{label:`Mode`,children:oA.map(e=>(0,V.jsx)(nw,{checked:e.value===n,onSelect:()=>r(e.value),children:e.label},e.value))}),(0,V.jsx)(C_,{component:`li`,role:`presentation`}),[`dark`,`light`].map(e=>(0,V.jsx)(ew,{label:e===`dark`?`Dark theme`:`Light theme`,children:iA(e).map(t=>(0,V.jsx)(nw,{checked:a[e].id===t.id,onSelect:()=>o(t.id),end:(0,V.jsx)(WC,{colors:t.colors,size:`small`}),children:t.label},t.id))},e))]}),s!==void 0&&(0,V.jsx)(aw,{label:`Density`,secondary:sA.find(e=>e.value===s)?.label,menuLabel:`Density`,placement:`left`,onDismiss:h,children:sA.map(e=>(0,V.jsx)(nw,{checked:e.value===s,onSelect:()=>c?.(e.value),children:e.label},e.value))})]})]})}var pA=`settings`;function mA(e,t){return e.trim()===``?t:e}function hA(e,t){let n=[],r=e.filter(e=>t[e.id]?.state!==`gated`&&e.rail!==!1);for(let e of r)for(let r of t[e.id]?.nav??[]){let t=mA(r.label,r.path),i=r.icon,a=hk(typeof i==`string`||IT(i)?i:t);n.push({id:`${e.id}:${r.path}`,label:t,href:`${gk(e.id)}${r.path===`/`?``:r.path}`,...a===null?{}:{icon:a}})}return n}var gA=(e,t)=>e.id.startsWith(`${t}:`);function _A(e,t){return t===e||t.startsWith(`${e}/`)}function vA(e,t){let n=e.filter(e=>_A(e.href??``,t));return n.sort((e,t)=>(t.href?.length??0)-(e.href?.length??0)),n[0]?.id}function yA(e,t){return t[e.id]!==void 0&&t[e.id]?.state!==`gated`}function bA(e,t,n,r){if(Object.keys(e).length!==0){if(typeof n==`string`&&kT(n)){let r=_k(new URL(n,`http://shell.invalid`).pathname,t);if(r!==null&&yA(r,e))return n}return r}}var xA=cO(!1),SA=cO(`comfortable`);function CA(e){let t=lO(e?.choice??SA,e=>e);return e===void 0?void 0:t}function wA(){let[e]=sO(NO,void 0);return WO(e)}var TA=new Map([[`Ctrl`,`Control`],[`Alt`,`Alt`],[`Shift`,`Shift`]]);function EA(e,t){let n=t?`Meta`:`Control`;return e.split(`+`).map(e=>e===`Mod`?n:TA.get(e)??e).join(`+`)}var DA=cO(!1),OA=cO({revision:0,content:{route:{path:`/`,domainId:null},title:``,screen:null,domains:[],pageTools:[],pageCommands:[],suggestions:[]},runner:null});function kA(e,t){let n=e.find(e=>e.id===t)?.nav.label??``;return n.trim()===``?t:n}var AA=e=>{history.pushState(null,``,e)};function jA(e,t,n){let{menu:r,pane:i,context:a}=e,o=lO(r?.open??DA,e=>e),s=lO(a?.state??OA,e=>e),c=rk(),l=n.get(`commands.open`)??`Mod+K`,u={label:JO(l,c),keys:EA(l,c)};if(r===void 0)return{onOpen:void 0,shortcut:u,element:null};let d=Tk({domains:e.domains,statuses:t,page:s.content.pageCommands,...i===void 0?{}:{toggleAssistant:()=>i.toggle()}},(e,t)=>r.invoke(e,t),(e,t)=>r.runGlobal(e,t));return{onOpen:()=>r.show(),shortcut:u,element:(0,V.jsx)(Rk,{open:o,onClose:()=>r.hide(),commands:d,targets:zk(e.domains,t,t=>kA(e.domains,t)),searcher:r.searcher,navigate:AA})}}function MA(e,t){return e?(0,V.jsx)(fk,{mac:rk(),binding:t,onToggle:()=>e.toggle()}):null}function NA(e){let t=lO(e.statuses,e=>e),n=lO(e.location,e=>e),[r]=sO(pO,void 0),i=n.pathname===`/`?bA(t,e.domains,r,e.defaultLanding):void 0;(0,B.useEffect)(()=>{i!==void 0&&e.location.get().pathname===`/`&&history.replaceState(null,``,i)},[i,e.location]);let a=lO(e.tenant.store,e=>e),o=lO(e.idle,e=>e.secondsRemaining),s=_k(n.pathname,e.domains),c=s?t[s.id]??{id:s.id,state:`resolving`}:null,l=hA(e.domains,t),u=lO(e.pane?.open??xA,e=>e),d=wA(),f=d.get(PO),p=jA(e,t,d),m=s?.nav.label??`AiStrike`,h=lO(e.theme.choice,e=>e),g=lO(e.theme.themes,e=>e),_=lO(e.theme.store,e=>e),v=CA(e.density);return(0,V.jsxs)(jy,{rung:`page`,sx:{position:`relative`,display:`flex`,flexDirection:`column`,height:`100vh`,width:`calc(100vw - var(--ds-lab-dock, 0px))`,overflow:`hidden`},children:[(0,V.jsx)(Ww,{}),(0,V.jsx)(eA,{preview:e.preview===!0,commandAssistant:MA(e.pane,f),onOpenCommands:p.onOpen,commandShortcut:p.shortcut,tenant:(0,V.jsx)($k,{value:a,options:e.tenant.options(),onChange:t=>e.tenant.select(t)}),account:(0,V.jsx)(fA,{name:e.userName,choice:h,onChoose:t=>e.theme.choose(t),mode:_,themes:g,onChooseTheme:t=>e.theme.chooseTheme(t),density:v,onChooseDensity:t=>e.density?.choose(t)})}),(0,V.jsxs)(`div`,{style:{position:`relative`,zIndex:bC.docked,display:`flex`,flex:1,minHeight:0},children:[(0,V.jsx)(Nw,{variant:`rail`,items:l.filter(e=>!gA(e,pA)),footerItems:l.filter(e=>gA(e,pA)),selectedId:vA(l,n.pathname)}),(0,V.jsx)(Tw,{dockedEnd:u,children:(0,V.jsx)(`div`,{style:{flex:1,minHeight:0,overflow:`auto`},children:(0,V.jsx)(Qk,{status:s?c:null,label:m,onRetry:e.onRetry,onDomainLeft:()=>e.context?.resetTitle()})})}),e.pane&&(0,V.jsx)(uk,{controller:e.pane,status:t.assistant,onRetry:()=>e.onRetry(`assistant`)})]}),(0,V.jsx)(Wk,{secondsRemaining:o,onStay:e.onStaySignedIn}),p.element]})}function PA({notices:e}){let t=lO(e.store,e=>e);return(0,V.jsx)(gv,{open:t!==null,anchorOrigin:{vertical:`bottom`,horizontal:`center`},children:(0,V.jsx)(yC,{severity:`error`,closeText:`Dismiss`,onClose:()=>e.dismiss(),children:t?.message})},t?.id)}function FA(){return(0,V.jsx)(XS,{title:`You are signed out`,description:`Sign-in arrives with the identity provider integration.`})}var IA=(0,B.lazy)(async()=>FE(()=>import(`./LabHost-D8QvARpM.js`),[])),LA=`lab`;function RA({ready:e}){let t=e.lab===!0||e.domains.some(e=>e.id===LA);t&&rO();let n=lO(e.session.store,e=>e!==null),r=lO(e.session.store,e=>e?.claims.name??e?.claims.sub??``);return(0,V.jsxs)(Sy,{theme:xy,children:[(0,V.jsx)(Zd,{}),n?(0,V.jsx)(uO,{children:(0,V.jsxs)(aO,{client:e.preferences,children:[(0,V.jsx)(NA,{domains:e.domains,defaultLanding:e.landing,statuses:e.activator.store,location:e.location,tenant:e.tenant,idle:e.session.idle.store,theme:e.theme,density:e.density,brand:e.brand.store,userName:r,onStaySignedIn:()=>e.session.idle.touch(),onRetry:t=>{e.activator.retry(t).catch(()=>void 0)},preview:t,pane:e.pane,menu:e.menu,context:e.context}),(0,V.jsx)(PA,{notices:e.notices}),t&&IA&&(0,V.jsx)(B.Suspense,{fallback:null,children:(0,V.jsx)(IA,{})})]})}):(0,V.jsx)(FA,{})]})}function zA(e){return e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey}function BA(e){let t=e.getAttribute(`target`);return t!==null&&t!==`_self`||e.hasAttribute(`download`)}function VA(e){return e.hash!==``&&e.pathname===location.pathname&&e.search===location.search}function HA(e,t=document){let n=t=>{let n=t;if(zA(n)||!(n.target instanceof Element))return;let r=n.target.closest(`a[href]`);if(!(r instanceof HTMLAnchorElement)||BA(r))return;let i=new URL(r.href,location.href);i.origin!==location.origin||VA(i)||(n.preventDefault(),e(`${i.pathname}${i.search}${i.hash}`))};return t.addEventListener(`click`,n),()=>t.removeEventListener(`click`,n)}function UA(e,t){if(e.requires===void 0)return!0;try{return e.requires(t)===!0}catch(t){return console.error(`Gate for domain "${e.id}" threw; treating as not permitted`,t),!1}}var WA=class extends Error{id;constructor(e,t){super(t),this.name=`ResolveError`,this.id=e}};async function GA(e,t,n){let{id:r}=e,i=await n.fetch(`${t}/ui/latest/manifest.json`,{redirect:`follow`,cache:`no-store`,signal:n.signal});if(!i.ok)throw new WA(r,`manifest request failed: ${i.status}`);let a=new URL(i.url).origin;if(a!==t)throw new WA(r,`manifest redirected off-origin to ${a}`);let o;try{o=gT(await i.json(),{id:r},i.url)}catch(e){throw new WA(r,e instanceof cT?e.message:`manifest is not JSON: ${String(e)}`)}let s=new URL(o.entry,i.url);if(s.origin!==t)throw new WA(r,`entry resolves off-origin to ${s.origin}`);return{id:r,version:o.version,origin:t,uiBase:new URL(`./`,i.url).href,apiBase:`${t}/api/`,entryUrl:s.href}}async function KA(e,t,n){return new Promise((r,i)=>{let a=setTimeout(()=>i(Error(`${n} did not complete within ${t} ms`)),t);e.then(e=>{clearTimeout(a),r(e)},e=>{clearTimeout(a),i(e instanceof Error?e:Error(String(e)))})})}function qA(e){let{id:t,state:n,version:r,uiBase:i,apiBase:a,reason:o}=e;return{id:t,state:n,version:r,uiBase:i,apiBase:a,reason:o}}async function JA(e,t,n){if(typeof t.activatePane!=`function`){console.error(`Domain "${e}": its entry does not export activatePane, so the assistant has no pane`);return}try{let e=await t.activatePane(n);if(typeof e?.mount!=`function`||typeof e.unmount!=`function`)throw Error(`activatePane must give { mount, unmount }`);return e}catch(t){console.error(`Domain "${e}": activatePane failed, so the assistant has no pane: ${String(t)}`);return}}async function YA(e,t){let n=await t(e.entryUrl);if(typeof n.activate!=`function`)throw Error(`entry does not export an activate function`);let r={domain:{id:e.id,route:gk(e.id),uiBase:e.uiBase,apiBase:e.apiBase}},i=await n.activate(r),a=wT(i);if(a.length>0)throw Error(`activation is invalid: ${a.join(`; `)}`);let o=TT(i);o.length>0&&console.warn(`Domain "${e.id}": its activation has ${o.join(`, `)}, which the shell no longer reads`);let s=i;if(e.id!==`assistant`)return{activation:s};let c=await JA(e.id,n,r);return c===void 0?{activation:s}:{activation:s,pane:c}}function XA(e){if(typeof e!=`object`||!e)return!1;let{label:t,path:n}=e;return typeof t==`string`&&typeof n==`string`&&kT(n)}function ZA(e,t){let n=t.filter(XA),r=t.length-n.length;return r>0&&console.error(`Domain "${e}": dropped invalid nav items: ${r}`),n}function QA(e,t,n){if(n!==null)try{return structuredClone(n)}catch(n){console.error(`Domain "${e}": dropped its ${t} descriptor, which cannot be cloned: ${String(n)}`);return}}function $A(e){let t=null;return()=>{let n=e.entries(),r=new Map(n.map(e=>[e.id,JSON.stringify(e)])),i=t??new Map,a=[...new Set([...i.keys(),...r.keys()])].filter(e=>i.get(e)!==r.get(e));(t===null||a.length!==0)&&(t=r,e.write(n),a.length>0&&e.announce(a))}}function ej(e,t){let n=OE(t);for(let t of n.problems)console.error(`Domain "${e}": dropped ${t}`);return n.entities}function tj(e,t){let n=UE(t);return n.ok?n.commands:(console.error(`Domain "${e}": dropped ${n.problems.join(`; `)}; the list is refused whole`),[])}function nj(e){let t=e.timeoutMs??1e4,n=cO({}),r=()=>e.domains.flatMap(e=>{let t=n.get()[e.id];return t?.state===`active`?[{domain:e,status:t}]:[]}),i=$A({entries:()=>r().flatMap(({domain:e,status:t})=>t.settings===void 0?[]:[{id:e.id,label:e.nav.label,settings:t.settings}]),write:e.writeSettings,announce:t=>{let n={domainIds:t};e.bus.publish(iE.settingsChanged,n,{scope:`tab`})}});function a(t,r){n.set(e=>({...e,[t]:{...e[t],id:t,...r}}));let a=n.get()[t],o={id:t,state:a.state,version:a.version,reason:a.reason};e.bus.publish(iE.mfeStatus,o,{scope:`tab`}),e.writeDomains(Object.fromEntries(Object.values(n.get()).map(e=>[e.id,qA(e)]))),i()}let o={};async function s(n){let r=(o[n.id]??0)+1;o[n.id]=r;let i=()=>o[n.id]===r;a(n.id,{state:`resolving`,reason:void 0,activation:void 0,nav:void 0,settings:void 0,entities:void 0,commands:void 0,pane:void 0});try{await KA((async()=>{let t=await GA(n,e.originOf(n),{fetch:e.fetch});if(!i())return;a(n.id,{state:`activating`,version:t.version,uiBase:t.uiBase,apiBase:t.apiBase});let{activation:r,pane:o}=await YA(t,e.importModule);if(!i()){await Promise.resolve(r.unmount()).catch(()=>void 0);return}a(n.id,{state:`active`,activation:r,nav:ZA(n.id,r.nav),settings:QA(n.id,`settings`,r.settings),entities:ej(n.id,r.entities),commands:tj(n.id,r.commands),pane:o})})(),t,`activation of "${n.id}"`)}catch(e){if(!i())return;o[n.id]=r+1,a(n.id,{state:`failed`,reason:e instanceof Error?e.message:String(e)})}}return{store:n,async activateAll(){await Promise.all(e.domains.map(async t=>UA(t,e.access)?s(t):(a(t.id,{state:`gated`}),Promise.resolve())))},async retry(t){let n=e.domains.find(e=>e.id===t);n&&await s(n)}}}var rj=[{id:`home`,nav:{label:`Home`},devPort:5102},{id:`settings`,nav:{label:`Settings`},devPort:5101},{id:`assistant`,nav:{label:`Assistant`,icon:`sparkle`},rail:!1,devPort:5104}],ij=`/home`,aj=[{name:`local`,origin:`http://localhost:{devPort}`},{name:`dev`,shellDomain:`dev.example.app`,origin:`https://{id}.dev.example.app`},{name:`prod`,shellDomain:`example.app`,origin:`https://{id}.example.app`}];function oj(e,t,n){return n===void 0?t.find(t=>t.shellDomain===e)??null:t.find(e=>e.name===n)??null}function sj(e,t){return t===void 0||!e.origin.includes(`localhost`)?e:{...e,origin:e.origin.replaceAll(`localhost`,t)}}function cj(e,t,n){return(n[e.id]??t.origin.replaceAll(`{id}`,e.id).replaceAll(`{devPort}`,String(e.devPort))).replace(/\/+$/,``)}function lj(){return{get:async()=>Promise.resolve(null),put:async()=>Promise.resolve()}}var uj=5;function dj(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function fj(e){return JSON.stringify(e)}function pj(e){let{bus:t,api:n}=e,r=e.areas??dj(),i=e.debounceMs??1e3,a=new Map,o=new Set,s=null;function c(e){return TO(r,`user`,e)}let l=new Map,u=new Set,d=new Map;function f(e){return fj(c(e))!==(a.get(e)??l.get(e)??`{}`)}function p(){let e=CO(`user`,``),t=[];for(let n=0;n<r.local.length;n+=1){let i=r.local.key(n);i?.startsWith(e)===!0&&xO(i.slice(e.length))&&t.push(i.slice(e.length))}return t}for(let e of p())l.set(e,fj(c(e)));function m(e){s!==null&&clearTimeout(s),s=setTimeout(()=>{g().catch(()=>void 0)},e)}async function h(e){let t=c(e),r=fj(t);u.add(e);let s=!1;try{await n.put(e,t),a.set(e,r),d.set(e,(d.get(e)??0)+1)}catch(t){console.error(`Saving preferences for "${e}" failed`,t),s=!0}u.delete(e),f(e)&&(o.add(e),m(s?i*uj:i))}async function g(){s!==null&&(clearTimeout(s),s=null);let e=[...new Set([...o,...p()])].filter(e=>!u.has(e)&&f(e));e.forEach(e=>o.delete(e)),await Promise.all(e.map(h))}let _=rE({source:DO,tabId:t.tabId,createChannel:e.createChannel});function v(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function y(e,t,n){try{e()}catch(e){console.error(`Ignoring preference "${t}" in "${n}"`,e)}}function b(e,t){let n=MO({namespace:e,areas:r,bus:_});try{for(let r of Object.keys(c(e)))Object.hasOwn(t,r)||y(()=>n.remove(r,{scope:`user`}),r,e);for(let[r,i]of Object.entries(t))y(()=>n.set(r,i,{scope:`user`}),r,e)}finally{n.close()}a.set(e,fj(c(e)))}function x(e,t){return!f(e)&&!u.has(e)&&(d.get(e)??0)===(t.get(e)??0)}async function S(){let e=new Map(d),t;try{t=await n.get()}catch(e){console.error(`Loading preferences failed`,e);return}if(t!==null)for(let[n,r]of Object.entries(t))!xO(n)||!v(r)?console.error(`Ignoring preferences for "${n}": invalid namespace or value`):x(n,e)&&b(n,r)}let C=t.subscribe(`${DO}.*`,e=>{let t=e.payload;t?.scope===`user`&&typeof t.namespace==`string`&&xO(t.namespace)&&e.topic===OO(t.namespace)&&f(t.namespace)&&(o.add(t.namespace),m(i))});return{isDirty:f,flush:g,refresh:S,close(){s!==null&&clearTimeout(s),C(),_.close()}}}var mj;function hj(){if(mj!==void 0)return mj;let e=history.pushState.bind(history),t=history.replaceState.bind(history),n=()=>{dispatchEvent(new PopStateEvent(`popstate`))};return history.pushState=(t,r,i)=>{e(t,r,i),n()},history.replaceState=(e,r,i)=>{t(e,r,i),n()},globalThis[DT]=!0,mj=()=>{history.pushState=e,history.replaceState=t,Reflect.deleteProperty(globalThis,DT),mj=void 0},mj}function gj(){return{pathname:location.pathname,search:location.search,hash:location.hash}}function _j(){let e=cO(gj());return addEventListener(`popstate`,()=>e.set(gj())),e}var vj=[`pointerdown`,`keydown`,`wheel`,`touchstart`];function yj(e){let t=[...e.warnAtSeconds??[300,120,60]].sort((e,t)=>t-e),n=e.activityThrottleMs??3e4,r=e.now??(()=>Date.now()),i=e.target??document,a=cO({secondsRemaining:null}),o=0,s=-1/0,c=new Set,l,u=[],d=!1;function f(){o=r()+e.timeoutMs,c=new Set,d=!1,a.get().secondsRemaining!==null&&a.set({secondsRemaining:null})}function p(){return l!==void 0}function m(){l!==void 0&&(clearInterval(l),l=void 0);for(let e of u.splice(0))e();a.get().secondsRemaining!==null&&a.set({secondsRemaining:null})}function h(){let n=Math.max(0,Math.ceil((o-r())/1e3));for(let r of t)if(n<=r&&!c.has(r)){c.add(r),a.set({secondsRemaining:n});let t={secondsRemaining:n};e.bus.publish(iE.sessionIdleWarning,t,{scope:`tab`})}a.get().secondsRemaining!==null&&a.get().secondsRemaining!==n&&a.set({secondsRemaining:n}),n===0&&!d&&(d=!0,m(),e.onExpire())}function g(){return r()>=o?(h(),!1):(f(),!0)}function _(){p()&&g()&&r()-s>=n&&(s=r(),e.bus.publish(iE.sessionActivity,void 0,{scope:`browser`}))}function v(){document.visibilityState===`visible`&&_()}function y(){if(e.timeoutMs!==0&&l===void 0){f();for(let e of vj)i.addEventListener(e,_),u.push(()=>i.removeEventListener(e,_));document.addEventListener(`visibilitychange`,v),u.push(()=>document.removeEventListener(`visibilitychange`,v)),u.push(e.bus.subscribe(iE.sessionActivity,()=>{p()&&g()})),l=setInterval(h,1e3)}}return{start:y,stop:m,touch:_,store:a}}var bj=2**31-1;function xj(e){let t=cO(null),n=()=>void 0,r;function i(){r!==void 0&&(clearTimeout(r),r=void 0)}function a(e){i();let t=e.expiresAt-Date.now();t>0&&t<bj&&(r=setTimeout(()=>n(),t))}let o=yj({...e.idle,timeoutMs:e.idleTimeoutMs,bus:e.bus,onExpire:()=>n()});function s(){i(),yD(e.areas),t.set(null),o.stop(),e.bus.publish(iE.sessionEnded,void 0,{scope:`browser`})}return n=s,e.bus.subscribe(iE.sessionEnded,()=>{i(),t.set(null),o.stop()}),{store:t,idle:o,signOut:s,start(){let n=WT(e.areas);return e.devSession!==void 0&&n?.accessToken!==e.devSession.accessToken&&(vD(e.devSession,e.areas),n=WT(e.areas),e.bus.publish(iE.sessionChanged,void 0,{scope:`browser`})),t.set(n),n!==null&&(o.start(),a(n)),n}}}var Sj=`tenant`;function Cj(e){let t=cO(null),n=()=>e.claims.tenants,r=e=>typeof e==`string`&&n().includes(e);function i(){let t=e.location?.search??globalThis.location.search,n=new URLSearchParams(t);n.delete(Sj);let r=n.toString(),i=`${globalThis.location.pathname}${r?`?${r}`:``}${globalThis.location.hash}`;(e.replaceUrl??(e=>history.replaceState(history.state,``,e)))(i)}return{store:t,options:n,init(){let a=e.location?.search??globalThis.location.search,o=new URLSearchParams(a).get(Sj),s=[o,KT(e.areas),e.claims.defaultTenant,n()[0]].find(r)??null;return bD(s,e.areas),t.set(s),o!==null&&i(),s},select(n){if(!r(n)||n===t.get())return;bD(n,e.areas),t.set(n);let i={tenantId:n};e.bus.publish(iE.tenantChanged,i,{scope:`tab`})}}}var wj={run:(...[,e])=>e()},Tj=`data-appearance-switching`,Ej=`
177
+ `)}var $D=()=>typeof window>`u`?void 0:{storage:window.sessionStorage,location:window.location,history:window.history};function eO(e,t){let n=()=>t??$D()??{},r=()=>{e.revision+=1;for(let t of[...e.listeners])t()},i=()=>{if(!e.active)return;let{storage:t,location:r,history:i}=n();try{t?.setItem(UD,JSON.stringify({values:e.values,paused:e.paused}))}catch{}if(r!==void 0&&i!==void 0){let t=YD(r.search,GD(e.values));t!==r.search&&i.replaceState(i.state,``,`${r.pathname}${t}${r.hash}`)}},a=()=>{i(),r()},o=(e,t)=>t!==void 0&&e.options.some(e=>e.id===t)?t:e.baseline,s={shared:e,activate(){if(e.active)return;let{storage:t,location:r}=n(),i={};try{i=JSON.parse(t?.getItem(`aistrike.lab.experiments`)??`null`)??{}}catch{}let o=r===void 0?void 0:JD(r.search),s=typeof i.values==`object`&&i.values!==null?KD(GD(i.values)):{};e.values={...e.values,...o===void 0?s:KD(o)},e.paused=i.paused===!0,e.active=!0,a()},isActive:()=>e.active,isPaused:()=>e.paused,setPaused(t){e.paused!==t&&(e.paused=t,a())},register(t){XD(t);let n=e.definitions.get(t.id);if(n!==void 0&&n.kind!==t.kind)throw Error(`Lab id "${t.id}" is already registered as a ${n.kind}`);e.definitions.set(t.id,t),r()},unregister(t){e.definitions.delete(t)&&r()},definitions:t=>[...e.definitions.values()].filter(e=>t===void 0||e.kind===t),value(t){let n=e.definitions.get(t);if(n!==void 0)return!e.active||n.kind===`experiment`&&e.paused?n.baseline:o(n,e.values[t])},picked(t){let n=e.definitions.get(t);return n===void 0?void 0:o(n,e.values[t])},set(e,t){s.setMany({[e]:t??``})},setMany(t){let n=!1;for(let[r,i]of Object.entries(t)){let t=e.definitions.get(r);if(t===void 0||i!==``&&!t.options.some(e=>e.id===i))continue;let a=i===``||i===t.baseline?void 0:i;e.values[r]!==a&&(n=!0,a===void 0?delete e.values[r]:e.values[r]=a)}n&&a()},reset(t){let n=Object.keys(e.values).filter(n=>e.definitions.get(n)?.kind===t);if(n.length>0){for(let t of n)delete e.values[t];a()}},applies(e,t){let n=e.paths??[];return(n.length===0||n.some(n=>BD(ZD(e,n),t)))&&Object.entries(e.when??{}).every(([e,t])=>s.picked(e)===t)},hrefOf:e=>e.href===void 0?void 0:ZD(e,e.href),subscribe(t){return e.listeners.add(t),()=>{e.listeners.delete(t)}}};return s}var tO;function nO(){return tO??=eO(HD()),tO}function rO(e=nO()){e.activate()}var iO=(0,B.createContext)(null);function aO(e){return(0,V.jsx)(iO.Provider,{value:e.client,children:e.children})}function oO(){let e=(0,B.useContext)(iO);if(e===null)throw Error(`usePreference needs a PreferencesProvider above it`);return e}function sO(e,t,n){let r=oO(),i=typeof e==`string`?e:e.join(`\0`),a=(0,B.useMemo)(()=>i.split(`\0`),[i]),o=n?.scope,s=(0,B.useRef)({raw:``,value:t}),c=(0,B.useCallback)(e=>r.subscribe(()=>{e()}),[r]),l=(0,B.useCallback)(()=>{let e=r.resolve(a);if(e===void 0)return(s.current.raw!==``||s.current.value!==t)&&(s.current={raw:``,value:t}),s.current.value;let n=JSON.stringify(e);return n!==s.current.raw&&(s.current={raw:n,value:e}),s.current.value},[r,a,t]);return[(0,B.useSyncExternalStore)(c,l,l),(0,B.useCallback)(e=>{r.set(a[0],e,o===void 0?void 0:{scope:o})},[r,a,o])]}function cO(e){let t=e,n=new Set;return{get:()=>t,set(e){t=typeof e==`function`?e(t):e;for(let e of[...n])e()},subscribe(e){return n.add(e),()=>{n.delete(e)}}}}function lO(e,t){return(0,B.useSyncExternalStore)(e.subscribe,()=>t(e.get()),()=>t(e.get()))}var uO=class extends B.Component{state={error:null};static getDerivedStateFromError(e){return{error:e instanceof Error?e:Error(String(e))}}componentDidCatch(e,t){console.error(`The shell frame failed to render`,e,t.componentStack)}render(){return this.state.error===null?this.props.children:(0,V.jsx)(XS,{title:`Something went wrong`,description:this.state.error.message})}},dO=[`tab`,`device`,`user`],fO=`shell`,pO=`landingRoute`,mO=`theme`,hO=`themeDark`,gO=`themeLight`,_O=`brand`,vO=`aistrike.prefs`,yO=/^[a-z0-9-]+$/,bO=new Set([`__proto__`,`constructor`,`prototype`]);function xO(e){return yO.test(e)}function SO(e){return e.length>0&&!bO.has(e)}function CO(e,t){return`${vO}.${e}.${t}`}function wO(e,t){return t===`tab`?e.session:e.local}function TO(e,t,n){let r;try{let i=wO(e,t).getItem(CO(t,n));r=i===null?null:JSON.parse(i)}catch{return{}}if(typeof r!=`object`||!r||Array.isArray(r))return{};let i={};for(let[e,t]of Object.entries(r))SO(e)&&(i[e]=t);return i}function EO(e,t,n,r){wO(e,t).setItem(CO(t,n),JSON.stringify(r))}var DO=`preferences`;function OO(e){return`${DO}.${e}.changed`}function kO(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function AO(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.namespace==`string`&&typeof t.name==`string`&&typeof t.scope==`string`&&dO.includes(t.scope)}function jO(e,t){return JSON.stringify(e)===JSON.stringify(t)}function MO(e){let{namespace:t}=e;if(!xO(t))throw Error(`Invalid preferences namespace "${t}": use lowercase letters, digits and hyphens`);let n=e.areas??kO(),r=e.bus===void 0,i=e.bus??rE({source:`preferences`,createChannel:e.createChannel}),a=new Set,o=!1;function s(e){for(let t of[...a])try{t(e)}catch(e){typeof reportError==`function`?reportError(e):console.error(e)}}let c=i.subscribe(OO(t),e=>{AO(e.payload)&&e.payload.namespace===t&&s(e.payload)});function l(e){if(o)throw Error(`Preferences client is closed`);if(!SO(e))throw Error(`Invalid preference name "${e}"`)}function u(e,r,a){let o=a(TO(n,e,t));if(o===null)return;try{EO(n,e,t,o)}catch(e){console.error(e);return}let c={namespace:t,scope:e,name:r};i.publish(OO(t),c,{scope:`browser`}),s(c)}function d(e,t){u(t,e,t=>Object.hasOwn(t,e)?Object.fromEntries(Object.entries(t).filter(([t])=>t!==e)):null)}function f(e){if(SO(e))for(let r of dO){let i=TO(n,r,t);if(Object.hasOwn(i,e))return i[e]}}return{namespace:t,get(e){return f(e)},resolve(e){for(let t of e){let e=f(t);if(e!==void 0)return e}},set(e,t,n){l(e);let r=n?.scope??`user`;if(t===void 0){d(e,r);return}u(r,e,n=>Object.hasOwn(n,e)&&jO(n[e],t)?null:{...n,[e]:t})},remove(e,t){l(e),d(e,t?.scope??`user`)},subscribe(e){if(o)throw Error(`Preferences client is closed`);return a.add(e),()=>{a.delete(e)}},close(){o=!0,a.clear(),c(),r&&i.close()}}}var NO=`keybindings`,PO=`assistant.toggle`,FO=[{id:PO,title:`Assistant: Open or Close`,when:`Anywhere`,defaultBinding:`Mod+I`},{id:`commands.open`,title:`Command menu: Open`,when:`Anywhere`,defaultBinding:`Mod+K`}],IO=[`Mod`,`Ctrl`,`Alt`,`Shift`],LO=new Set([`Meta`,`Control`,`Alt`,`Shift`,`OS`,`AltGraph`]),RO=new Map([[`Period`,`.`],[`Comma`,`,`],[`Slash`,`/`],[`Semicolon`,`;`],[`Quote`,`'`],[`BracketLeft`,`[`],[`BracketRight`,`]`],[`Backslash`,`\\`],[`Minus`,`-`],[`Equal`,`=`],[`Backquote`,"`"],[`Space`,`Space`]]);function zO(e){let t=/^Key([A-Z])$/.exec(e.code),n=/^Digit(\d)$/.exec(e.code);return t?.[1]??n?.[1]??RO.get(e.code)??(e.key.length===1?e.key.toUpperCase():e.key)}function BO(e,t){if(LO.has(e.key)||!t&&e.metaKey)return null;let n=new Set;return(t?e.metaKey:e.ctrlKey)&&n.add(`Mod`),t&&e.ctrlKey&&n.add(`Ctrl`),e.altKey&&n.add(`Alt`),e.shiftKey&&n.add(`Shift`),[...IO.filter(e=>n.has(e)),zO(e)].join(`+`)}function VO(e,t,n){return BO(e,n)===t}var HO=/^(?:(?:Mod|Ctrl|Alt|Shift)\+)*[^+\s]+$/;function UO(e){return typeof e!=`object`||!e||Array.isArray(e)?{}:Object.fromEntries(Object.entries(e).filter(e=>typeof e[1]==`string`&&HO.test(e[1])))}function WO(e,t=FO){let n=UO(e);return new Map(t.map(e=>[e.id,n[e.id]??e.defaultBinding]))}var GO=new Map([[`Mod`,`⌘`],[`Ctrl`,`⌃`],[`Alt`,`⌥`],[`Shift`,`⇧`]]),KO=new Map([[`Mod`,`Ctrl`],[`Ctrl`,`Ctrl`],[`Alt`,`Alt`],[`Shift`,`Shift`]]);function qO(e,t){return e.split(`+`).map(e=>(t?GO:KO).get(e)??e)}function JO(e,t){return qO(e,t).join(t?``:`+`)}var YO=`assistant`,XO=`assistantOpen`,ZO=`assistantWidth`,QO=320,$O=400,ek=Qw;function tk(){return $w(window.innerWidth,QO,ek)}var nk=e=>Math.max(QO,typeof e==`number`&&Number.isFinite(e)?Math.round(e):$O);function rk(){return typeof navigator<`u`&&/mac|iphone|ipad/i.test(navigator.platform||navigator.userAgent)}function ik(e){let t=e.target??window,n=e.mac??rk(),r=cO(e.preferences.get(XO)===!0),i=cO(nk(e.preferences.get(`assistantWidth`)??$O)),a=null,o=null,s=e=>Number.isFinite(e)?(i.set(Math.min(tk(),nk(e))),!0):!1,c=()=>a?.contains(document.activeElement)===!0,l=()=>(a?.querySelector(`textarea, input, [contenteditable="true"]`)??null)!==null,u=()=>{if(!r.get()){let t=document.activeElement;o=t instanceof HTMLElement&&t!==document.body&&!c()?t:null,r.set(!0),e.preferences.set(XO,!0,{scope:`tab`})}e.bus.publish(iE.assistantFocused,void 0,{scope:`tab`})},d=()=>{if(!r.get())return;let t=c()||document.activeElement===document.body?o:null;r.set(!1),e.preferences.remove(XO,{scope:`tab`}),t?.isConnected===!0&&t.focus(),o=null},f=t=>{let i=WO(e.preferences.get(`keybindings`)).get(`assistant.toggle`)??``;if(!document.documentElement.hasAttribute(`data-aistrike-recording-keys`)&&VO(t,i,n)&&e.isBlocked?.()!==!0){if(t.preventDefault(),t.stopPropagation(),r.get()&&l()&&!c()){u();return}r.get()?d():u()}},p=e=>{e.key===`Escape`&&!e.defaultPrevented&&r.get()&&a!==null&&e.target instanceof Node&&a.contains(e.target)&&d()};t.addEventListener(`keydown`,f,{capture:!0}),t.addEventListener(`keydown`,p);let m=e.bus.subscribe(oE.paneDismissed,d);return{open:r,width:i,show:u,hide:d,toggle:()=>r.get()?d():u(),setWidth(e){s(e)},commitWidth(t){s(t)&&e.preferences.set(ZO,i.get(),{scope:`device`})},setPaneElement(e){a=e},dispose(){t.removeEventListener(`keydown`,f,{capture:!0}),t.removeEventListener(`keydown`,p),m()}}}function ak(e){return e instanceof Error?e.message:String(e)}function ok(e,t){let[n,r]=(0,B.useState)(null),[i,a]=(0,B.useState)(!1),[o,s]=(0,B.useState)(0);return(0,B.useEffect)(()=>{if(e===null||t===void 0)return;let n=!0,i=document.createElement(`div`);i.style.cssText=`height:100%;display:flex;flex-direction:column;min-height:0`,e.append(i),r(null),a(!0);let o=Promise.resolve().then(async()=>t.mount(i));return o.then(()=>{n&&a(!1)},e=>{console.error(`The assistant's pane did not mount`,e),n&&(a(!1),r(ak(e)))}),()=>{n=!1,o.catch(()=>void 0).then(async()=>t.unmount()).catch(e=>console.error(`The assistant's pane did not unmount`,e)).finally(()=>i.remove())}},[e,t,o]),{error:n,mounting:i,retry:()=>s(e=>e+1)}}function sk({children:e,onClose:t}){return(0,V.jsxs)(Y,{sx:{position:`relative`,flex:1,display:`flex`,flexDirection:`column`,justifyContent:`center`,p:3},children:[(0,V.jsx)(Y,{sx:{position:`absolute`,top:8,right:8},children:(0,V.jsx)(VS,{label:`Close the assistant`,tooltip:`Close`,icon:(0,V.jsx)(cb,{}),onClick:t})}),e]})}function ck(e,t){return e===void 0||e.state===`gated`?`absent`:e.state===`failed`?`failed`:e.state===`active`?t===void 0?`absent`:`pane`:`loading`}function lk({state:e,reason:t,mounted:n,onRetry:r,onClose:i,slot:a}){let o=e===`pane`&&n.error===null;return(0,V.jsxs)(Y,{sx:{position:`relative`,flex:1,minHeight:0,display:`flex`,flexDirection:`column`,overflow:`hidden`,borderRadius:`inherit`},children:[e===`loading`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{loading:!0,title:`Loading the assistant…`})}),e===`failed`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`The assistant could not load`,description:t??`Unknown error`,action:(0,V.jsx)(ky,{variant:`primary`,onClick:r,children:`Retry`})})}),e===`absent`&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`Assistant`,description:`The assistant is not available here.`})}),e===`pane`&&n.error!==null&&(0,V.jsx)(sk,{onClose:i,children:(0,V.jsx)(XS,{title:`The assistant could not open`,description:n.error,action:(0,V.jsx)(ky,{variant:`primary`,onClick:n.retry,children:`Retry`})})}),(0,V.jsx)(`div`,{ref:a,style:{flex:1,minHeight:0,display:o?`flex`:`none`,flexDirection:`column`}})]})}function uk({controller:e,status:t,onRetry:n}){let r=lO(e.open,e=>e),i=lO(e.width,e=>e),[a,o]=(0,B.useState)(null),s=t?.state===`active`?t.pane:void 0,c=ok(a,s);return(0,V.jsx)(oT,{ref:t=>e.setPaneElement(t),open:r,width:i,onWidthChange:t=>e.setWidth(t),onWidthCommit:t=>e.commitWidth(t),minWidth:QO,maxShare:ek,label:`Assistant`,children:(0,V.jsx)(lk,{state:ck(t,s),reason:t?.reason,mounted:c,onRetry:n,onClose:()=>e.hide(),slot:o})})}var dk=FO.find(e=>e.id===`assistant.toggle`)?.defaultBinding??`Mod+I`;function fk({mac:e,binding:t,onToggle:n}){return(0,V.jsx)(ky,{variant:`agentSoft`,size:`small`,startIcon:(0,V.jsx)(eb,{}),endIcon:(0,V.jsx)(Cy,{children:JO(t??dk,e)}),onClick:n,children:`Ask AI`})}var pk=new Map([[`home`,`home`],[`settings`,`cog-filled`],[`profile`,`user`],[`lab`,`flask`],[`dashboard`,`grid`],[`alerts`,`alert`],[`investigations`,`target`],[`hunt`,`search`],[`agents`,`bot`],[`reports`,`doc`]]);function mk({glyph:e}){return(0,V.jsx)(nf,{viewBox:e.viewBox,children:e.paths.map((e,t)=>typeof e==`string`?(0,V.jsx)(`path`,{d:e},t):(0,V.jsx)(`path`,{d:e.d,fill:`none`,stroke:`currentColor`,strokeWidth:e.stroke},t))})}function hk(e){if(typeof e!=`string`)return IT(e)?(0,V.jsx)(mk,{glyph:e}):null;let t=pk.get(e.toLowerCase()),n=t===void 0?void 0:xb(t);return n===void 0?null:(0,V.jsx)(n,{})}function gk(e){return`/${e}`}function _k(e,t){let n=e.split(`/`)[1];return t.find(e=>e.id===n)??null}var vk=`Go to`,yk=`Shell`,bk=(e,t)=>e.trim()===``?t:e,xk=e=>typeof e==`string`||IT(e)?{icon:e}:{};function Sk(e){let t=[];for(let n of e.domains){let r=e.statuses[n.id];if(r===void 0||r.state===`gated`||n.rail===!1)continue;let i=bk(n.nav.label,n.id);t.push({key:`nav:${n.id}`,title:`Go to ${i}`,group:vk,keywords:[n.id],href:gk(n.id),...n.nav.icon===void 0?{}:{icon:n.nav.icon}});for(let e of(r.nav??[]).filter(e=>e.path!==`/`)){let r=bk(e.label,e.path);t.push({key:`nav:${n.id}:${e.path}`,title:`Go to ${i} › ${r}`,group:vk,keywords:[n.id,r],href:`${gk(n.id)}${e.path}`,...xk(e.icon)})}}return t}function Ck(e,t){return e.domains.flatMap(n=>{let r=e.statuses[n.id];return r?.state===`active`?(r.commands??[]).map(e=>({key:`${n.id}:${e.id}`,title:e.title,group:bk(n.nav.label,n.id),keywords:e.keywords,...e.icon===null?{}:{icon:e.icon},run:()=>t(n.id,e)})):[]})}function wk(e,t){return e.page.map(e=>({key:`page:${e.domainId}:${e.id}`,title:e.title,group:`This page`,keywords:e.keywords,...e.icon===null?{}:{icon:e.icon},run:()=>t(e.domainId,e.id)}))}function Tk(e,t,n){let r=e.toggleAssistant===void 0?[]:[{key:`shell:assistant`,title:`Assistant: Open or Close`,group:yk,keywords:[`ai`,`chat`],run:e.toggleAssistant}];return[...wk(e,t),...r,...Ck(e,n),...Sk(e)].filter(e=>e.href===void 0||kT(e.href))}var Ek=e=>e.toLowerCase().split(/\s+/).filter(e=>e!==``);function Dk(e,t){let n=Ek(t);return n.length===0?[...e]:e.filter(e=>{let t=[e.title,e.group,...e.keywords].join(` `).toLowerCase();return n.every(e=>t.includes(e))})}var Ok=`Search, or type a command…`,kk=`Command menu`,Ak=e=>e.replace(/[^A-Za-z0-9_-]/g,e=>`_${e.codePointAt(0)?.toString(16)??``}_`),jk=e=>{let t=e===void 0?null:hk(e);return t===null?{}:{icon:t}};function Mk(e){return{id:e.key,label:e.title,...jk(e.icon),target:{kind:`command`,command:e}}}function Nk(e,t,n){return{id:`${e}:${t.id}`,label:t.label,...t.summary===void 0?{}:{summary:t.summary},...jk(n),target:{kind:`entity`,ref:t}}}function Pk(e,t){let n=new Map;for(let r of Dk(e,t)){let e=n.get(r.group)??[];e.push(Mk(r)),n.set(r.group,e)}return[...n].map(([e,t])=>({id:Ak(`commands:${e}`),label:e,items:t}))}function Fk({target:e,result:t}){let n=`${e.domainLabel} · ${e.typeLabel}`,r=`search:${e.domainId}:${e.type}`,i=Ak(r);return t.state===`searching`?{id:i,label:n,note:`Searching…`,items:[]}:t.state===`failed`?{id:i,label:n,note:`No answer from ${e.domainLabel}`,items:[]}:t.entities.length===0?null:{id:i,label:n,items:t.entities.map(t=>Nk(r,t,e.icon))}}function Ik(e,t,n){let r=Pk(e,t);if(n.query!==t)return r;for(let e of n.results){let t=Fk(e);t!==null&&r.push(t)}return r}function Lk({target:e},t){e.kind===`entity`?e.ref.href!==void 0&&t(e.ref.href):e.command.href===void 0?e.command.run?.():t(e.command.href)}function Rk(e){let{open:t,onClose:n,commands:r,targets:i,searcher:a,navigate:o}=e,[s,c]=(0,B.useState)(``),l=lO(a.store,e=>e),u=(0,B.useRef)(void 0);(0,B.useEffect)(()=>{t||(clearTimeout(u.current),c(``),a.cancel())},[t,a]),(0,B.useEffect)(()=>()=>clearTimeout(u.current),[]);let d=(0,B.useMemo)(()=>Ik(r,s,l),[r,s,l]);return(0,V.jsx)(Zw,{open:t,onClose:n,query:s,onQueryChange:e=>{c(e),clearTimeout(u.current),u.current=setTimeout(()=>a.search(e,[...i]),150)},groups:d,onActivate:e=>{Lk(e,o),n()},placeholder:Ok,label:kk,listLabel:`Commands and results`})}function zk(e,t,n){return e.flatMap(e=>{let r=t[e.id];if(r?.state!==`active`||r.apiBase===void 0)return[];let i=r.apiBase;return(r.entities??[]).flatMap(t=>t.search===null?[]:[{domainId:e.id,domainLabel:n(e.id),typeLabel:t.label,type:t.type,path:t.search,apiBase:i,...t.icon===null?{}:{icon:t.icon}}])})}var Bk=async(e,t,n)=>AE({apiBase:e.apiBase,path:e.path,query:t,signal:n});function Vk(e){return(Array.isArray(e)?e:[]).filter(fE).filter(e=>e.href!==void 0&&kT(e.href)).slice(0,10)}var Hk=new Set;function Uk(e=Bk){let t=cO({query:``,results:[]}),n=null,r=0,i=()=>{n?.abort(),n=null,r+=1},a=(e,n,i)=>{e===r&&t.set(e=>({...e,results:e.results.map((e,t)=>t===n?{...e,result:i}:e)}))};return{store:t,search(o,s){if(i(),o.trim().length<2||s.length===0){t.set({query:o,results:[]});return}let c=r,l=new AbortController;n=l,t.set({query:o,results:s.map(e=>({target:e,result:{state:`searching`}}))}),s.forEach((t,n)=>{e(t,o,l.signal).then(e=>{if(e.ok){a(c,n,{state:`done`,entities:Vk(e.entities)});return}c===r&&!Hk.has(t.domainId)&&(Hk.add(t.domainId),console.warn(`Command menu: searching ${t.domainId}'s ${t.typeLabel} failed: ${e.error}`)),a(c,n,{state:`failed`,error:e.error})}).catch(e=>{a(c,n,{state:`failed`,error:e instanceof Error?e.message:String(e)})})})},cancel(){i(),t.set({query:``,results:[]})}}}function Wk({secondsRemaining:e,onStay:t}){return(0,V.jsxs)(Ny,{open:e!==null,onClose:t,children:[(0,V.jsx)(Nv,{children:`Still there?`}),(0,V.jsx)(Lv,{children:(0,V.jsx)(Vv,{children:`You will be signed out in ${e??0} seconds.`})}),(0,V.jsx)(Fy,{children:(0,V.jsx)(ky,{variant:`contained`,onClick:t,children:`Stay signed in`})})]})}async function Gk(e){let t=e.current;if(t===null)return null;e.current=null;try{await t.unmount()}catch(e){console.error(`unmount of "${t.id}" failed`,e)}return t.container.remove(),t.id}function Kk({title:e,reason:t,onRetry:n}){return(0,V.jsx)(XS,{title:e,description:t,action:(0,V.jsx)(ky,{variant:`primary`,onClick:n,children:`Retry`})})}function qk(e){return e instanceof Error?e.message:String(e)}function Jk({status:e,label:t,onRetry:n,host:r,mounting:i}){return e===null||e.state===`gated`?(0,V.jsx)(XS,{title:`Not found`,description:`No domain at this address.`}):e.state===`failed`?(0,V.jsx)(Kk,{title:`${t} is unavailable`,reason:e.reason??`Unknown error`,onRetry:()=>n(e.id)}):(0,V.jsxs)(`div`,{style:{height:`100%`,minHeight:0},children:[(e.state!==`active`||i)&&(0,V.jsx)(XS,{loading:!0,title:`Loading ${t}…`}),(0,V.jsx)(`div`,{ref:r,style:{height:`100%`}})]})}async function Yk(e,t,n,r){let i=document.createElement(`div`);i.dataset.domain=t,i.style.height=`100%`,e.append(i),r.current={id:t,container:i,unmount:async()=>n.unmount()};try{return await n.mount(i),null}catch(e){r.current=null;try{await n.unmount()}catch(e){console.error(`unmount of "${t}" after a failed mount failed`,e)}return i.remove(),qk(e)}}function Xk(e){return e?.state!==`active`||e.activation===void 0?{}:{activation:e.activation,activeId:e.id}}async function Zk(e,t,n,r,i){if(!i()||!e.isConnected)return{kind:`superseded`};let a=await Yk(e,t,n,r);return i()?a===null?{kind:`mounted`}:{kind:`failed`,reason:a}:{kind:`superseded`}}function Qk({status:e,label:t,onRetry:n,onDomainLeft:r}){let i=(0,B.useRef)(null),a=(0,B.useRef)(Promise.resolve()),o=(0,B.useRef)(null),s=(0,B.useRef)(0),[c,l]=(0,B.useState)(null),[u,d]=(0,B.useState)(void 0),[f,p]=(0,B.useState)(0),{activation:m,activeId:h}=Xk(e),g=e?.id??null,_=(0,B.useRef)(r);(0,B.useEffect)(()=>{_.current=r});let[v,y]=(0,B.useState)({id:h,activation:m});return(v.id!==h||v.activation!==m)&&(y({id:h,activation:m}),l(null),d(void 0)),(0,B.useEffect)(()=>{s.current+=1;let e=s.current,t=i.current,n=()=>e===s.current;a.current=a.current.then(async()=>{let e=await Gk(o);if(e!==null&&e!==g&&_.current?.(),!m||!h||!t)return;let r=await Zk(t,h,m,o,n);r.kind===`mounted`?d(m):r.kind===`failed`&&l({id:h,reason:r.reason})})},[m,h,g,f]),(0,B.useEffect)(()=>()=>{a.current=a.current.then(async()=>{await Gk(o)})},[]),h!==void 0&&c?.id===h?(0,V.jsx)(Kk,{title:`${t} is unavailable`,reason:c.reason,onRetry:()=>{l(null),p(e=>e+1)}}):(0,V.jsx)(Jk,{status:e,label:t,onRetry:n,host:i,mounting:m!==void 0&&u!==m})}function $k({value:e,options:t,onChange:n}){return t.length===0?null:(0,V.jsx)(dw,{label:`Tenant`,startIcon:(0,V.jsx)(Zy,{}),value:e,options:t.map(e=>({value:e,label:e})),onChange:n,sx:{flex:`0 1 236px`,minWidth:120}})}function eA({preview:e,tenant:t,account:n,commandAssistant:r,onOpenCommands:i,commandShortcut:a}){return(0,V.jsx)(Yw,{command:(0,V.jsx)(ow,{onOpen:i,shortcut:a?.label,keyShortcuts:a?.keys}),commandAside:r,end:(0,V.jsxs)(V.Fragment,{children:[t,n,e&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(VS,{label:`Notifications`,tooltip:`Notifications`,icon:(0,V.jsx)(Ky,{})}),(0,V.jsx)(VS,{label:`Help`,tooltip:`Help`,icon:(0,V.jsx)(qy,{})})]})]})})}var tA=yt,nA=bt;function rA(e){return tA.find(t=>t.id===e)}function iA(e){return tA.filter(t=>t.mode===e)}function aA(e,t){let n=rA(t);if(n?.mode===e)return n;let r=rA(nA[e]);if(r===void 0)throw Error(`The default ${e} theme "${nA[e]}" is not in THEMES`);return r}var oA=[{value:`system`,label:`System`},{value:`light`,label:`Light`},{value:`dark`,label:`Dark`}],sA=[{value:`comfortable`,label:`Comfortable`},{value:`compact`,label:`Compact`}],cA=`aria-label`,lA=`aria-haspopup`,uA=`aria-expanded`,dA=`aria-controls`;function fA(e){let{name:t,choice:n,onChoose:r,mode:i,themes:a,onChooseTheme:o,density:s,onChooseDensity:c}=e,[l,u]=(0,B.useState)(null),d=(0,B.useId)(),f=l!==null,p=a[i],m=oA.find(e=>e.value===n)?.label??``,h=()=>u(null);return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(VS,{label:`Account`,tooltip:`Account`,icon:(0,V.jsx)(Gy,{}),onClick:e=>u(e.currentTarget),[lA]:`menu`,[uA]:f,[dA]:f?d:void 0}),(0,V.jsxs)(jg,{anchorEl:l,open:f,onClose:h,anchorOrigin:{vertical:`bottom`,horizontal:`right`},transformOrigin:{vertical:`top`,horizontal:`right`},slotProps:{list:{id:d,[cA]:`Account`,sx:{minWidth:240}}},children:[(0,V.jsx)(rw,{primary:t}),(0,V.jsx)(C_,{component:`li`,role:`presentation`}),(0,V.jsxs)(aw,{label:`Theme`,secondary:`${p.label} · ${m}`,menuLabel:`Theme`,placement:`left`,onDismiss:h,children:[(0,V.jsx)(ew,{label:`Mode`,children:oA.map(e=>(0,V.jsx)(nw,{checked:e.value===n,onSelect:()=>r(e.value),children:e.label},e.value))}),(0,V.jsx)(C_,{component:`li`,role:`presentation`}),[`dark`,`light`].map(e=>(0,V.jsx)(ew,{label:e===`dark`?`Dark theme`:`Light theme`,children:iA(e).map(t=>(0,V.jsx)(nw,{checked:a[e].id===t.id,onSelect:()=>o(t.id),end:(0,V.jsx)(WC,{colors:t.colors,size:`small`}),children:t.label},t.id))},e))]}),s!==void 0&&(0,V.jsx)(aw,{label:`Density`,secondary:sA.find(e=>e.value===s)?.label,menuLabel:`Density`,placement:`left`,onDismiss:h,children:sA.map(e=>(0,V.jsx)(nw,{checked:e.value===s,onSelect:()=>c?.(e.value),children:e.label},e.value))})]})]})}var pA=`settings`;function mA(e,t){return e.trim()===``?t:e}function hA(e,t){let n=[],r=e.filter(e=>t[e.id]?.state!==`gated`&&e.rail!==!1);for(let e of r)for(let r of t[e.id]?.nav??[]){let t=mA(r.label,r.path),i=r.icon,a=hk(typeof i==`string`||IT(i)?i:t);n.push({id:`${e.id}:${r.path}`,label:t,href:`${gk(e.id)}${r.path===`/`?``:r.path}`,...a===null?{}:{icon:a}})}return n}var gA=(e,t)=>e.id.startsWith(`${t}:`);function _A(e,t){return t===e||t.startsWith(`${e}/`)}function vA(e,t){let n=e.filter(e=>_A(e.href??``,t));return n.sort((e,t)=>(t.href?.length??0)-(e.href?.length??0)),n[0]?.id}function yA(e,t){return t[e.id]!==void 0&&t[e.id]?.state!==`gated`}function bA(e,t,n,r){if(Object.keys(e).length!==0){if(typeof n==`string`&&kT(n)){let r=_k(new URL(n,`http://shell.invalid`).pathname,t);if(r!==null&&yA(r,e))return n}return r}}var xA=cO(!1),SA=cO(`comfortable`);function CA(e){let t=lO(e?.choice??SA,e=>e);return e===void 0?void 0:t}function wA(){let[e]=sO(NO,void 0);return WO(e)}var TA=new Map([[`Ctrl`,`Control`],[`Alt`,`Alt`],[`Shift`,`Shift`]]);function EA(e,t){let n=t?`Meta`:`Control`;return e.split(`+`).map(e=>e===`Mod`?n:TA.get(e)??e).join(`+`)}var DA=cO(!1),OA=cO({revision:0,content:{route:{path:`/`,domainId:null},title:``,screen:null,domains:[],pageTools:[],pageCommands:[],suggestions:[]},runner:null});function kA(e,t){let n=e.find(e=>e.id===t)?.nav.label??``;return n.trim()===``?t:n}var AA=e=>{history.pushState(null,``,e)};function jA(e,t,n){let{menu:r,pane:i,context:a}=e,o=lO(r?.open??DA,e=>e),s=lO(a?.state??OA,e=>e),c=rk(),l=n.get(`commands.open`)??`Mod+K`,u={label:JO(l,c),keys:EA(l,c)};if(r===void 0)return{onOpen:void 0,shortcut:u,element:null};let d=Tk({domains:e.domains,statuses:t,page:s.content.pageCommands,...i===void 0?{}:{toggleAssistant:()=>i.toggle()}},(e,t)=>r.invoke(e,t),(e,t)=>r.runGlobal(e,t));return{onOpen:()=>r.show(),shortcut:u,element:(0,V.jsx)(Rk,{open:o,onClose:()=>r.hide(),commands:d,targets:zk(e.domains,t,t=>kA(e.domains,t)),searcher:r.searcher,navigate:AA})}}function MA(e,t){return e?(0,V.jsx)(fk,{mac:rk(),binding:t,onToggle:()=>e.toggle()}):null}function NA(e){let t=lO(e.statuses,e=>e),n=lO(e.location,e=>e),[r]=sO(pO,void 0),i=n.pathname===`/`?bA(t,e.domains,r,e.defaultLanding):void 0;(0,B.useEffect)(()=>{i!==void 0&&e.location.get().pathname===`/`&&history.replaceState(null,``,i)},[i,e.location]);let a=lO(e.tenant.store,e=>e),o=lO(e.idle,e=>e.secondsRemaining),s=_k(n.pathname,e.domains),c=s?t[s.id]??{id:s.id,state:`resolving`}:null,l=hA(e.domains,t),u=lO(e.pane?.open??xA,e=>e),d=wA(),f=d.get(PO),p=jA(e,t,d),m=s?.nav.label??`AiStrike`,h=lO(e.theme.choice,e=>e),g=lO(e.theme.themes,e=>e),_=lO(e.theme.store,e=>e),v=CA(e.density);return(0,V.jsxs)(jy,{rung:`page`,sx:{position:`relative`,display:`flex`,flexDirection:`column`,height:`100vh`,width:`calc(100vw - var(--ds-lab-dock, 0px))`,overflow:`hidden`},children:[(0,V.jsx)(Ww,{}),(0,V.jsx)(eA,{preview:e.preview===!0,commandAssistant:MA(e.pane,f),onOpenCommands:p.onOpen,commandShortcut:p.shortcut,tenant:(0,V.jsx)($k,{value:a,options:e.tenant.options(),onChange:t=>e.tenant.select(t)}),account:(0,V.jsx)(fA,{name:e.userName,choice:h,onChoose:t=>e.theme.choose(t),mode:_,themes:g,onChooseTheme:t=>e.theme.chooseTheme(t),density:v,onChooseDensity:t=>e.density?.choose(t)})}),(0,V.jsxs)(`div`,{"data-shell-row":``,style:{position:`relative`,zIndex:bC.docked,display:`flex`,flex:1,minHeight:0},children:[(0,V.jsx)(Nw,{variant:`rail`,items:l.filter(e=>!gA(e,pA)),footerItems:l.filter(e=>gA(e,pA)),selectedId:vA(l,n.pathname)}),(0,V.jsx)(Tw,{dockedEnd:u,children:(0,V.jsx)(`div`,{style:{flex:1,minHeight:0,overflow:`auto`},children:(0,V.jsx)(Qk,{status:s?c:null,label:m,onRetry:e.onRetry,onDomainLeft:()=>e.context?.resetTitle()})})}),e.pane&&(0,V.jsx)(uk,{controller:e.pane,status:t.assistant,onRetry:()=>e.onRetry(`assistant`)})]}),(0,V.jsx)(Wk,{secondsRemaining:o,onStay:e.onStaySignedIn}),p.element]})}function PA({notices:e}){let t=lO(e.store,e=>e);return(0,V.jsx)(gv,{open:t!==null,anchorOrigin:{vertical:`bottom`,horizontal:`center`},children:(0,V.jsx)(yC,{severity:`error`,closeText:`Dismiss`,onClose:()=>e.dismiss(),children:t?.message})},t?.id)}function FA(){return(0,V.jsx)(XS,{title:`You are signed out`,description:`Sign-in arrives with the identity provider integration.`})}var IA=(0,B.lazy)(async()=>FE(()=>import(`./LabHost-BiiVtiYJ.js`),[])),LA=`lab`;function RA({ready:e}){let t=e.lab===!0||e.domains.some(e=>e.id===LA);t&&rO();let n=lO(e.session.store,e=>e!==null),r=lO(e.session.store,e=>e?.claims.name??e?.claims.sub??``);return(0,V.jsxs)(Sy,{theme:xy,children:[(0,V.jsx)(Zd,{}),n?(0,V.jsx)(uO,{children:(0,V.jsxs)(aO,{client:e.preferences,children:[(0,V.jsx)(NA,{domains:e.domains,defaultLanding:e.landing,statuses:e.activator.store,location:e.location,tenant:e.tenant,idle:e.session.idle.store,theme:e.theme,density:e.density,brand:e.brand.store,userName:r,onStaySignedIn:()=>e.session.idle.touch(),onRetry:t=>{e.activator.retry(t).catch(()=>void 0)},preview:t,pane:e.pane,menu:e.menu,context:e.context}),(0,V.jsx)(PA,{notices:e.notices}),t&&IA&&(0,V.jsx)(B.Suspense,{fallback:null,children:(0,V.jsx)(IA,{})})]})}):(0,V.jsx)(FA,{})]})}function zA(e){return e.defaultPrevented||e.button!==0||e.metaKey||e.ctrlKey||e.shiftKey||e.altKey}function BA(e){let t=e.getAttribute(`target`);return t!==null&&t!==`_self`||e.hasAttribute(`download`)}function VA(e){return e.hash!==``&&e.pathname===location.pathname&&e.search===location.search}function HA(e,t=document){let n=t=>{let n=t;if(zA(n)||!(n.target instanceof Element))return;let r=n.target.closest(`a[href]`);if(!(r instanceof HTMLAnchorElement)||BA(r))return;let i=new URL(r.href,location.href);i.origin!==location.origin||VA(i)||(n.preventDefault(),e(`${i.pathname}${i.search}${i.hash}`))};return t.addEventListener(`click`,n),()=>t.removeEventListener(`click`,n)}function UA(e,t){if(e.requires===void 0)return!0;try{return e.requires(t)===!0}catch(t){return console.error(`Gate for domain "${e.id}" threw; treating as not permitted`,t),!1}}var WA=class extends Error{id;constructor(e,t){super(t),this.name=`ResolveError`,this.id=e}};async function GA(e,t,n){let{id:r}=e,i=await n.fetch(`${t}/ui/latest/manifest.json`,{redirect:`follow`,cache:`no-store`,signal:n.signal});if(!i.ok)throw new WA(r,`manifest request failed: ${i.status}`);let a=new URL(i.url).origin;if(a!==t)throw new WA(r,`manifest redirected off-origin to ${a}`);let o;try{o=gT(await i.json(),{id:r},i.url)}catch(e){throw new WA(r,e instanceof cT?e.message:`manifest is not JSON: ${String(e)}`)}let s=new URL(o.entry,i.url);if(s.origin!==t)throw new WA(r,`entry resolves off-origin to ${s.origin}`);return{id:r,version:o.version,origin:t,uiBase:new URL(`./`,i.url).href,apiBase:`${t}/api/`,entryUrl:s.href}}async function KA(e,t,n){return new Promise((r,i)=>{let a=setTimeout(()=>i(Error(`${n} did not complete within ${t} ms`)),t);e.then(e=>{clearTimeout(a),r(e)},e=>{clearTimeout(a),i(e instanceof Error?e:Error(String(e)))})})}function qA(e){let{id:t,state:n,version:r,uiBase:i,apiBase:a,reason:o}=e;return{id:t,state:n,version:r,uiBase:i,apiBase:a,reason:o}}async function JA(e,t,n){if(typeof t.activatePane!=`function`){console.error(`Domain "${e}": its entry does not export activatePane, so the assistant has no pane`);return}try{let e=await t.activatePane(n);if(typeof e?.mount!=`function`||typeof e.unmount!=`function`)throw Error(`activatePane must give { mount, unmount }`);return e}catch(t){console.error(`Domain "${e}": activatePane failed, so the assistant has no pane: ${String(t)}`);return}}async function YA(e,t){let n=await t(e.entryUrl);if(typeof n.activate!=`function`)throw Error(`entry does not export an activate function`);let r={domain:{id:e.id,route:gk(e.id),uiBase:e.uiBase,apiBase:e.apiBase}},i=await n.activate(r),a=wT(i);if(a.length>0)throw Error(`activation is invalid: ${a.join(`; `)}`);let o=TT(i);o.length>0&&console.warn(`Domain "${e.id}": its activation has ${o.join(`, `)}, which the shell no longer reads`);let s=i;if(e.id!==`assistant`)return{activation:s};let c=await JA(e.id,n,r);return c===void 0?{activation:s}:{activation:s,pane:c}}function XA(e){if(typeof e!=`object`||!e)return!1;let{label:t,path:n}=e;return typeof t==`string`&&typeof n==`string`&&kT(n)}function ZA(e,t){let n=t.filter(XA),r=t.length-n.length;return r>0&&console.error(`Domain "${e}": dropped invalid nav items: ${r}`),n}function QA(e,t,n){if(n!==null)try{return structuredClone(n)}catch(n){console.error(`Domain "${e}": dropped its ${t} descriptor, which cannot be cloned: ${String(n)}`);return}}function $A(e){let t=null;return()=>{let n=e.entries(),r=new Map(n.map(e=>[e.id,JSON.stringify(e)])),i=t??new Map,a=[...new Set([...i.keys(),...r.keys()])].filter(e=>i.get(e)!==r.get(e));(t===null||a.length!==0)&&(t=r,e.write(n),a.length>0&&e.announce(a))}}function ej(e,t){let n=OE(t);for(let t of n.problems)console.error(`Domain "${e}": dropped ${t}`);return n.entities}function tj(e,t){let n=UE(t);return n.ok?n.commands:(console.error(`Domain "${e}": dropped ${n.problems.join(`; `)}; the list is refused whole`),[])}function nj(e){let t=e.timeoutMs??1e4,n=cO({}),r=()=>e.domains.flatMap(e=>{let t=n.get()[e.id];return t?.state===`active`?[{domain:e,status:t}]:[]}),i=$A({entries:()=>r().flatMap(({domain:e,status:t})=>t.settings===void 0?[]:[{id:e.id,label:e.nav.label,settings:t.settings}]),write:e.writeSettings,announce:t=>{let n={domainIds:t};e.bus.publish(iE.settingsChanged,n,{scope:`tab`})}});function a(t,r){n.set(e=>({...e,[t]:{...e[t],id:t,...r}}));let a=n.get()[t],o={id:t,state:a.state,version:a.version,reason:a.reason};e.bus.publish(iE.mfeStatus,o,{scope:`tab`}),e.writeDomains(Object.fromEntries(Object.values(n.get()).map(e=>[e.id,qA(e)]))),i()}let o={};async function s(n){let r=(o[n.id]??0)+1;o[n.id]=r;let i=()=>o[n.id]===r;a(n.id,{state:`resolving`,reason:void 0,activation:void 0,nav:void 0,settings:void 0,entities:void 0,commands:void 0,pane:void 0});try{await KA((async()=>{let t=await GA(n,e.originOf(n),{fetch:e.fetch});if(!i())return;a(n.id,{state:`activating`,version:t.version,uiBase:t.uiBase,apiBase:t.apiBase});let{activation:r,pane:o}=await YA(t,e.importModule);if(!i()){await Promise.resolve(r.unmount()).catch(()=>void 0);return}a(n.id,{state:`active`,activation:r,nav:ZA(n.id,r.nav),settings:QA(n.id,`settings`,r.settings),entities:ej(n.id,r.entities),commands:tj(n.id,r.commands),pane:o})})(),t,`activation of "${n.id}"`)}catch(e){if(!i())return;o[n.id]=r+1,a(n.id,{state:`failed`,reason:e instanceof Error?e.message:String(e)})}}return{store:n,async activateAll(){await Promise.all(e.domains.map(async t=>UA(t,e.access)?s(t):(a(t.id,{state:`gated`}),Promise.resolve())))},async retry(t){let n=e.domains.find(e=>e.id===t);n&&await s(n)}}}var rj=[{id:`home`,nav:{label:`Home`},devPort:5102},{id:`settings`,nav:{label:`Settings`},devPort:5101},{id:`assistant`,nav:{label:`Assistant`,icon:`sparkle`},rail:!1,devPort:5104}],ij=`/home`,aj=[{name:`local`,origin:`http://localhost:{devPort}`},{name:`dev`,shellDomain:`dev.example.app`,origin:`https://{id}.dev.example.app`},{name:`prod`,shellDomain:`example.app`,origin:`https://{id}.example.app`}];function oj(e,t,n){return n===void 0?t.find(t=>t.shellDomain===e)??null:t.find(e=>e.name===n)??null}function sj(e,t){return t===void 0||!e.origin.includes(`localhost`)?e:{...e,origin:e.origin.replaceAll(`localhost`,t)}}function cj(e,t,n){return(n[e.id]??t.origin.replaceAll(`{id}`,e.id).replaceAll(`{devPort}`,String(e.devPort))).replace(/\/+$/,``)}function lj(){return{get:async()=>Promise.resolve(null),put:async()=>Promise.resolve()}}var uj=5;function dj(){return{local:globalThis.localStorage,session:globalThis.sessionStorage}}function fj(e){return JSON.stringify(e)}function pj(e){let{bus:t,api:n}=e,r=e.areas??dj(),i=e.debounceMs??1e3,a=new Map,o=new Set,s=null;function c(e){return TO(r,`user`,e)}let l=new Map,u=new Set,d=new Map;function f(e){return fj(c(e))!==(a.get(e)??l.get(e)??`{}`)}function p(){let e=CO(`user`,``),t=[];for(let n=0;n<r.local.length;n+=1){let i=r.local.key(n);i?.startsWith(e)===!0&&xO(i.slice(e.length))&&t.push(i.slice(e.length))}return t}for(let e of p())l.set(e,fj(c(e)));function m(e){s!==null&&clearTimeout(s),s=setTimeout(()=>{g().catch(()=>void 0)},e)}async function h(e){let t=c(e),r=fj(t);u.add(e);let s=!1;try{await n.put(e,t),a.set(e,r),d.set(e,(d.get(e)??0)+1)}catch(t){console.error(`Saving preferences for "${e}" failed`,t),s=!0}u.delete(e),f(e)&&(o.add(e),m(s?i*uj:i))}async function g(){s!==null&&(clearTimeout(s),s=null);let e=[...new Set([...o,...p()])].filter(e=>!u.has(e)&&f(e));e.forEach(e=>o.delete(e)),await Promise.all(e.map(h))}let _=rE({source:DO,tabId:t.tabId,createChannel:e.createChannel});function v(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function y(e,t,n){try{e()}catch(e){console.error(`Ignoring preference "${t}" in "${n}"`,e)}}function b(e,t){let n=MO({namespace:e,areas:r,bus:_});try{for(let r of Object.keys(c(e)))Object.hasOwn(t,r)||y(()=>n.remove(r,{scope:`user`}),r,e);for(let[r,i]of Object.entries(t))y(()=>n.set(r,i,{scope:`user`}),r,e)}finally{n.close()}a.set(e,fj(c(e)))}function x(e,t){return!f(e)&&!u.has(e)&&(d.get(e)??0)===(t.get(e)??0)}async function S(){let e=new Map(d),t;try{t=await n.get()}catch(e){console.error(`Loading preferences failed`,e);return}if(t!==null)for(let[n,r]of Object.entries(t))!xO(n)||!v(r)?console.error(`Ignoring preferences for "${n}": invalid namespace or value`):x(n,e)&&b(n,r)}let C=t.subscribe(`${DO}.*`,e=>{let t=e.payload;t?.scope===`user`&&typeof t.namespace==`string`&&xO(t.namespace)&&e.topic===OO(t.namespace)&&f(t.namespace)&&(o.add(t.namespace),m(i))});return{isDirty:f,flush:g,refresh:S,close(){s!==null&&clearTimeout(s),C(),_.close()}}}var mj;function hj(){if(mj!==void 0)return mj;let e=history.pushState.bind(history),t=history.replaceState.bind(history),n=()=>{dispatchEvent(new PopStateEvent(`popstate`))};return history.pushState=(t,r,i)=>{e(t,r,i),n()},history.replaceState=(e,r,i)=>{t(e,r,i),n()},globalThis[DT]=!0,mj=()=>{history.pushState=e,history.replaceState=t,Reflect.deleteProperty(globalThis,DT),mj=void 0},mj}function gj(){return{pathname:location.pathname,search:location.search,hash:location.hash}}function _j(){let e=cO(gj());return addEventListener(`popstate`,()=>e.set(gj())),e}var vj=[`pointerdown`,`keydown`,`wheel`,`touchstart`];function yj(e){let t=[...e.warnAtSeconds??[300,120,60]].sort((e,t)=>t-e),n=e.activityThrottleMs??3e4,r=e.now??(()=>Date.now()),i=e.target??document,a=cO({secondsRemaining:null}),o=0,s=-1/0,c=new Set,l,u=[],d=!1;function f(){o=r()+e.timeoutMs,c=new Set,d=!1,a.get().secondsRemaining!==null&&a.set({secondsRemaining:null})}function p(){return l!==void 0}function m(){l!==void 0&&(clearInterval(l),l=void 0);for(let e of u.splice(0))e();a.get().secondsRemaining!==null&&a.set({secondsRemaining:null})}function h(){let n=Math.max(0,Math.ceil((o-r())/1e3));for(let r of t)if(n<=r&&!c.has(r)){c.add(r),a.set({secondsRemaining:n});let t={secondsRemaining:n};e.bus.publish(iE.sessionIdleWarning,t,{scope:`tab`})}a.get().secondsRemaining!==null&&a.get().secondsRemaining!==n&&a.set({secondsRemaining:n}),n===0&&!d&&(d=!0,m(),e.onExpire())}function g(){return r()>=o?(h(),!1):(f(),!0)}function _(){p()&&g()&&r()-s>=n&&(s=r(),e.bus.publish(iE.sessionActivity,void 0,{scope:`browser`}))}function v(){document.visibilityState===`visible`&&_()}function y(){if(e.timeoutMs!==0&&l===void 0){f();for(let e of vj)i.addEventListener(e,_),u.push(()=>i.removeEventListener(e,_));document.addEventListener(`visibilitychange`,v),u.push(()=>document.removeEventListener(`visibilitychange`,v)),u.push(e.bus.subscribe(iE.sessionActivity,()=>{p()&&g()})),l=setInterval(h,1e3)}}return{start:y,stop:m,touch:_,store:a}}var bj=2**31-1;function xj(e){let t=cO(null),n=()=>void 0,r;function i(){r!==void 0&&(clearTimeout(r),r=void 0)}function a(e){i();let t=e.expiresAt-Date.now();t>0&&t<bj&&(r=setTimeout(()=>n(),t))}let o=yj({...e.idle,timeoutMs:e.idleTimeoutMs,bus:e.bus,onExpire:()=>n()});function s(){i(),yD(e.areas),t.set(null),o.stop(),e.bus.publish(iE.sessionEnded,void 0,{scope:`browser`})}return n=s,e.bus.subscribe(iE.sessionEnded,()=>{i(),t.set(null),o.stop()}),{store:t,idle:o,signOut:s,start(){let n=WT(e.areas);return e.devSession!==void 0&&n?.accessToken!==e.devSession.accessToken&&(vD(e.devSession,e.areas),n=WT(e.areas),e.bus.publish(iE.sessionChanged,void 0,{scope:`browser`})),t.set(n),n!==null&&(o.start(),a(n)),n}}}var Sj=`tenant`;function Cj(e){let t=cO(null),n=()=>e.claims.tenants,r=e=>typeof e==`string`&&n().includes(e);function i(){let t=e.location?.search??globalThis.location.search,n=new URLSearchParams(t);n.delete(Sj);let r=n.toString(),i=`${globalThis.location.pathname}${r?`?${r}`:``}${globalThis.location.hash}`;(e.replaceUrl??(e=>history.replaceState(history.state,``,e)))(i)}return{store:t,options:n,init(){let a=e.location?.search??globalThis.location.search,o=new URLSearchParams(a).get(Sj),s=[o,KT(e.areas),e.claims.defaultTenant,n()[0]].find(r)??null;return bD(s,e.areas),t.set(s),o!==null&&i(),s},select(n){if(!r(n)||n===t.get())return;bD(n,e.areas),t.set(n);let i={tenantId:n};e.bus.publish(iE.tenantChanged,i,{scope:`tab`})}}}var wj={run:(...[,e])=>e()},Tj=`data-appearance-switching`,Ej=`
178
178
  html[${Tj}] *, html[${Tj}] *::before, html[${Tj}] *::after {
179
179
  transition: none !important;
180
180
  }
package/shell/index.html CHANGED
@@ -4,7 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <title>AiStrike</title>
7
- <script type="module" crossorigin src="/assets/index-BoywW9k1.js"></script>
7
+ <script type="module" crossorigin src="/assets/index-CqB5Mswt.js"></script>
8
8
  <link rel="stylesheet" crossorigin href="/assets/index-DMLdVLkb.css">
9
9
  </head>
10
10
  <body>