@malloy-publisher/sdk 0.0.148 → 0.0.149

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs.js CHANGED
@@ -18,7 +18,7 @@ export default theme;`}function zf(e){return typeof e=="number"?`${(e*100).toFix
18
18
  import {${t.sourceName}}" from '${t.modelPath}'"
19
19
  `+t.value+`
20
20
  `).join(`
21
- `)}static newWorkbook(t){return new ua(t,void 0)}static async loadWorkbook(t,n){let r;try{const o=await t.getWorkbook(n);o&&(r=JSON.parse(o))}catch{r={models:[],cells:[],workbookPath:n}}return new ua(t,r)}}const hl=I.styled(I.Card)({display:"flex",flexDirection:"column",height:"100%",boxShadow:"none",border:"none",backgroundColor:"transparent"}),I0=I.styled(I.CardContent)({display:"flex",flexDirection:"column",padding:"0",flexGrow:1}),Vd=I.styled(I.CardMedia)({padding:"0"}),Tv=I.styled("div")({backgroundColor:"#ffffff",padding:"0 32px 32px 32px",borderRadius:"12px",boxShadow:"none",border:"none",maxWidth:"1200px",margin:"0 auto"});I.styled("div")({marginBottom:"40px",paddingBottom:"24px",borderBottom:"1px solid #f0f0f0"});const Sv=I.styled("div")({marginBottom:"48px",padding:"0",backgroundColor:"transparent",border:"none",boxShadow:"none"}),qc=I.styled("div")({marginBottom:"0",padding:"0",backgroundColor:"transparent",border:"none",boxShadow:"none"}),Vi=I.styled("div")({backgroundColor:"#ffffff",paddingTop:"12px",paddingBottom:"2px",borderRadius:"8px",border:"1px solid #f0f0f0",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.04)",marginBottom:"0",transition:"box-shadow 0.2s ease-in-out","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)"}});I.styled("div")({backgroundColor:"#f8f9fa",padding:"16px",borderRadius:"8px",border:"1px solid #e9ecef",fontFamily:"'Monaco', 'Menlo', 'Ubuntu Mono', monospace",fontSize:"13px",lineHeight:"1.5",overflowX:"auto"});I.styled("div")({backgroundColor:"#f8f9fa",padding:"12px 16px",borderRadius:"8px",border:"1px solid #e9ecef",marginBottom:"16px",display:"flex",justifyContent:"space-between",alignItems:"center"});const kv=I.styled("div")({height:"100%"});I.styled("div")({height:"30px",backgroundColor:"rgba(225, 240, 255, 1)",display:"flex",padding:"4px",alignItems:"center"});const A0=I.styled("div")({height:"75vh",width:"100%",overflowY:"auto"});I.styled("div")({position:"relative",height:"100%",flex:"0 0 auto"});const ro=I.styled(I.Card)({backgroundColor:"#ffffff",padding:"24px",borderRadius:"8px",border:"1px solid #f0f0f0",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.04)",height:"100%",transition:"box-shadow 0.2s ease-in-out","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)"}}),oo=I.styled(I.CardContent)({padding:"0","&:last-child":{paddingBottom:"0"}}),Fo=I.styled("div")({fontSize:"12px",fontWeight:"600",color:"#666666",textTransform:"uppercase",letterSpacing:"0.5px",marginBottom:"16px",paddingBottom:"8px",borderBottom:"1px solid #f0f0f0"}),wv=I.styled("div")({padding:"32px",maxWidth:"1400px",margin:"0 auto",minHeight:"100vh"}),Ti=rt(p.jsx("path",{d:"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"})),D0=rt(p.jsx("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6z"})),Wf=rt(p.jsx("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92zM17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29m-3.6 3.19L3 17.25V21h3.75L17.81 9.94z"})),Wd=rt(p.jsx("path",{d:"M17 7h-4v2h4c1.65 0 3 1.35 3 3s-1.35 3-3 3h-4v2h4c2.76 0 5-2.24 5-5s-2.24-5-5-5m-6 8H7c-1.65 0-3-1.35-3-3s1.35-3 3-3h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4zm-3-4h8v2H8z"}));function H(){return H=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},H.apply(null,arguments)}function je(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Yc(e){const t=[],n=String(e||"");let r=n.indexOf(","),o=0,a=!1;for(;!a;){r===-1&&(r=n.length,a=!0);const s=n.slice(o,r).trim();(s||!a)&&t.push(s),o=r+1,r=n.indexOf(",",o)}return t}function ru(e,t){const n=t||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const _v=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Iv=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Av={};function qf(e,t){return(Av.jsx?Iv:_v).test(e)}const Dv=/[ \t\n\f\r]/g;function ni(e){return typeof e=="object"?e.type==="text"?Yf(e.value):!1:Yf(e)}function Yf(e){return e.replace(Dv,"")===""}let ri=class{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}};ri.prototype.normal={};ri.prototype.property={};ri.prototype.space=void 0;function P0(e,t){const n={},r={};for(const o of e)Object.assign(n,o.property),Object.assign(r,o.normal);return new ri(n,r,t)}function $s(e){return e.toLowerCase()}let En=class{constructor(t,n){this.attribute=n,this.property=t}};En.prototype.attribute="";En.prototype.booleanish=!1;En.prototype.boolean=!1;En.prototype.commaOrSpaceSeparated=!1;En.prototype.commaSeparated=!1;En.prototype.defined=!1;En.prototype.mustUseProperty=!1;En.prototype.number=!1;En.prototype.overloadedBoolean=!1;En.prototype.property="";En.prototype.spaceSeparated=!1;En.prototype.space=void 0;let Pv=0;const Ke=$o(),$t=$o(),Gc=$o(),_e=$o(),vt=$o(),ca=$o(),vn=$o();function $o(){return 2**++Pv}const Kc=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ke,booleanish:$t,commaOrSpaceSeparated:vn,commaSeparated:ca,number:_e,overloadedBoolean:Gc,spaceSeparated:vt},Symbol.toStringTag,{value:"Module"})),Yu=Object.keys(Kc);let qd=class extends En{constructor(t,n,r,o){let a=-1;if(super(t,n),Gf(this,"space",o),typeof r=="number")for(;++a<Yu.length;){const s=Yu[a];Gf(this,Yu[a],(r&Kc[s])===Kc[s])}}};qd.prototype.defined=!0;function Gf(e,t,n){n&&(e[t]=n)}function Da(e){const t={},n={};for(const[r,o]of Object.entries(e.properties)){const a=new qd(r,e.transform(e.attributes||{},r),o,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[$s(r)]=r,n[$s(a.attribute)]=r}return new ri(t,n,e.space)}const R0=Da({properties:{ariaActiveDescendant:null,ariaAtomic:$t,ariaAutoComplete:null,ariaBusy:$t,ariaChecked:$t,ariaColCount:_e,ariaColIndex:_e,ariaColSpan:_e,ariaControls:vt,ariaCurrent:null,ariaDescribedBy:vt,ariaDetails:null,ariaDisabled:$t,ariaDropEffect:vt,ariaErrorMessage:null,ariaExpanded:$t,ariaFlowTo:vt,ariaGrabbed:$t,ariaHasPopup:null,ariaHidden:$t,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:vt,ariaLevel:_e,ariaLive:null,ariaModal:$t,ariaMultiLine:$t,ariaMultiSelectable:$t,ariaOrientation:null,ariaOwns:vt,ariaPlaceholder:null,ariaPosInSet:_e,ariaPressed:$t,ariaReadOnly:$t,ariaRelevant:null,ariaRequired:$t,ariaRoleDescription:vt,ariaRowCount:_e,ariaRowIndex:_e,ariaRowSpan:_e,ariaSelected:$t,ariaSetSize:_e,ariaSort:null,ariaValueMax:_e,ariaValueMin:_e,ariaValueNow:_e,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function M0(e,t){return t in e?e[t]:t}function N0(e,t){return M0(e,t.toLowerCase())}const Rv=Da({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:ca,acceptCharset:vt,accessKey:vt,action:null,allow:null,allowFullScreen:Ke,allowPaymentRequest:Ke,allowUserMedia:Ke,alt:null,as:null,async:Ke,autoCapitalize:null,autoComplete:vt,autoFocus:Ke,autoPlay:Ke,blocking:vt,capture:null,charSet:null,checked:Ke,cite:null,className:vt,cols:_e,colSpan:null,content:null,contentEditable:$t,controls:Ke,controlsList:vt,coords:_e|ca,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ke,defer:Ke,dir:null,dirName:null,disabled:Ke,download:Gc,draggable:$t,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ke,formTarget:null,headers:vt,height:_e,hidden:Gc,high:_e,href:null,hrefLang:null,htmlFor:vt,httpEquiv:vt,id:null,imageSizes:null,imageSrcSet:null,inert:Ke,inputMode:null,integrity:null,is:null,isMap:Ke,itemId:null,itemProp:vt,itemRef:vt,itemScope:Ke,itemType:vt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ke,low:_e,manifest:null,max:null,maxLength:_e,media:null,method:null,min:null,minLength:_e,multiple:Ke,muted:Ke,name:null,nonce:null,noModule:Ke,noValidate:Ke,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ke,optimum:_e,pattern:null,ping:vt,placeholder:null,playsInline:Ke,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ke,referrerPolicy:null,rel:vt,required:Ke,reversed:Ke,rows:_e,rowSpan:_e,sandbox:vt,scope:null,scoped:Ke,seamless:Ke,selected:Ke,shadowRootClonable:Ke,shadowRootDelegatesFocus:Ke,shadowRootMode:null,shape:null,size:_e,sizes:null,slot:null,span:_e,spellCheck:$t,src:null,srcDoc:null,srcLang:null,srcSet:null,start:_e,step:null,style:null,tabIndex:_e,target:null,title:null,translate:null,type:null,typeMustMatch:Ke,useMap:null,value:$t,width:_e,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:vt,axis:null,background:null,bgColor:null,border:_e,borderColor:null,bottomMargin:_e,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ke,declare:Ke,event:null,face:null,frame:null,frameBorder:null,hSpace:_e,leftMargin:_e,link:null,longDesc:null,lowSrc:null,marginHeight:_e,marginWidth:_e,noResize:Ke,noHref:Ke,noShade:Ke,noWrap:Ke,object:null,profile:null,prompt:null,rev:null,rightMargin:_e,rules:null,scheme:null,scrolling:$t,standby:null,summary:null,text:null,topMargin:_e,valueType:null,version:null,vAlign:null,vLink:null,vSpace:_e,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ke,disableRemotePlayback:Ke,prefix:null,property:null,results:_e,security:null,unselectable:null},space:"html",transform:N0}),Mv=Da({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:vn,accentHeight:_e,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:_e,amplitude:_e,arabicForm:null,ascent:_e,attributeName:null,attributeType:null,azimuth:_e,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:_e,by:null,calcMode:null,capHeight:_e,className:vt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:_e,diffuseConstant:_e,direction:null,display:null,dur:null,divisor:_e,dominantBaseline:null,download:Ke,dx:null,dy:null,edgeMode:null,editable:null,elevation:_e,enableBackground:null,end:null,event:null,exponent:_e,externalResourcesRequired:null,fill:null,fillOpacity:_e,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:ca,g2:ca,glyphName:ca,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:_e,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:_e,horizOriginX:_e,horizOriginY:_e,id:null,ideographic:_e,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:_e,k:_e,k1:_e,k2:_e,k3:_e,k4:_e,kernelMatrix:vn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:_e,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:_e,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:_e,overlineThickness:_e,paintOrder:null,panose1:null,path:null,pathLength:_e,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:vt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:_e,pointsAtY:_e,pointsAtZ:_e,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:vn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:vn,rev:vn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:vn,requiredFeatures:vn,requiredFonts:vn,requiredFormats:vn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:_e,specularExponent:_e,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:_e,strikethroughThickness:_e,string:null,stroke:null,strokeDashArray:vn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:_e,strokeOpacity:_e,strokeWidth:null,style:null,surfaceScale:_e,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:vn,tabIndex:_e,tableValues:null,target:null,targetX:_e,targetY:_e,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:vn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:_e,underlineThickness:_e,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:_e,values:null,vAlphabetic:_e,vMathematical:_e,vectorEffect:null,vHanging:_e,vIdeographic:_e,version:null,vertAdvY:_e,vertOriginX:_e,vertOriginY:_e,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:_e,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:M0}),O0=Da({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),L0=Da({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:N0}),F0=Da({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Nv={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Ov=/[A-Z]/g,Kf=/-[a-z]/g,Lv=/^data[-\w.:]+$/i;function oi(e,t){const n=$s(t);let r=t,o=En;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Lv.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(Kf,$v);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!Kf.test(a)){let s=a.replace(Ov,Fv);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}o=qd}return new o(r,t)}function Fv(e){return"-"+e.toLowerCase()}function $v(e){return e.charAt(1).toUpperCase()}const Pa=P0([R0,Rv,O0,L0,F0],"html"),Br=P0([R0,Mv,O0,L0,F0],"svg");function Qc(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function ou(e){return e.join(" ").trim()}var Xo={},Gu,Qf;function Bv(){if(Qf)return Gu;Qf=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,i=/^\s+|\s+$/g,l=`
21
+ `)}static newWorkbook(t){return new ua(t,void 0)}static async loadWorkbook(t,n){let r;try{const o=await t.getWorkbook(n);o&&(r=JSON.parse(o))}catch{r={models:[],cells:[],workbookPath:n}}return new ua(t,r)}}const hl=I.styled(I.Card)({display:"flex",flexDirection:"column",height:"100%",boxShadow:"none",border:"none",backgroundColor:"transparent"}),I0=I.styled(I.CardContent)({display:"flex",flexDirection:"column",padding:"0",flexGrow:1}),Vd=I.styled(I.CardMedia)({padding:"0"}),Tv=I.styled("div")({backgroundColor:"#ffffff",padding:"0 8px 0px 8px",borderRadius:"12px",boxShadow:"none",border:"none",maxWidth:"1200px",margin:"0 auto"});I.styled("div")({marginBottom:"40px",paddingBottom:"24px",borderBottom:"1px solid #f0f0f0"});const Sv=I.styled("div")({marginBottom:"48px",padding:"0",backgroundColor:"transparent",border:"none",boxShadow:"none"}),qc=I.styled("div")({marginBottom:"0",padding:"0",backgroundColor:"transparent",border:"none",boxShadow:"none"}),Vi=I.styled("div")({backgroundColor:"#ffffff",paddingTop:"12px",paddingBottom:"2px",borderRadius:"8px",border:"1px solid #f0f0f0",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.04)",marginBottom:"0",transition:"box-shadow 0.2s ease-in-out","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)"}});I.styled("div")({backgroundColor:"#f8f9fa",padding:"16px",borderRadius:"8px",border:"1px solid #e9ecef",fontFamily:"'Monaco', 'Menlo', 'Ubuntu Mono', monospace",fontSize:"13px",lineHeight:"1.5",overflowX:"auto"});I.styled("div")({backgroundColor:"#f8f9fa",padding:"12px 16px",borderRadius:"8px",border:"1px solid #e9ecef",marginBottom:"16px",display:"flex",justifyContent:"space-between",alignItems:"center"});const kv=I.styled("div")({height:"100%"});I.styled("div")({height:"30px",backgroundColor:"rgba(225, 240, 255, 1)",display:"flex",padding:"4px",alignItems:"center"});const A0=I.styled("div")({height:"75vh",width:"100%",overflowY:"auto"});I.styled("div")({position:"relative",height:"100%",flex:"0 0 auto"});const ro=I.styled(I.Card)({backgroundColor:"#ffffff",padding:"24px",borderRadius:"8px",border:"1px solid #f0f0f0",boxShadow:"0 1px 3px rgba(0, 0, 0, 0.04)",height:"100%",transition:"box-shadow 0.2s ease-in-out","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)"}}),oo=I.styled(I.CardContent)({padding:"0","&:last-child":{paddingBottom:"0"}}),Fo=I.styled("div")({fontSize:"12px",fontWeight:"600",color:"#666666",textTransform:"uppercase",letterSpacing:"0.5px",marginBottom:"16px",paddingBottom:"8px",borderBottom:"1px solid #f0f0f0"}),wv=I.styled("div")({padding:"32px",maxWidth:"1400px",margin:"0 auto",minHeight:"100vh"}),Ti=rt(p.jsx("path",{d:"M9 16.17 4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"})),D0=rt(p.jsx("path",{d:"M9.4 16.6 4.8 12l4.6-4.6L8 6l-6 6 6 6zm5.2 0 4.6-4.6-4.6-4.6L16 6l6 6-6 6z"})),Wf=rt(p.jsx("path",{d:"m14.06 9.02.92.92L5.92 19H5v-.92zM17.66 3c-.25 0-.51.1-.7.29l-1.83 1.83 3.75 3.75 1.83-1.83c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.2-.2-.45-.29-.71-.29m-3.6 3.19L3 17.25V21h3.75L17.81 9.94z"})),Wd=rt(p.jsx("path",{d:"M17 7h-4v2h4c1.65 0 3 1.35 3 3s-1.35 3-3 3h-4v2h4c2.76 0 5-2.24 5-5s-2.24-5-5-5m-6 8H7c-1.65 0-3-1.35-3-3s1.35-3 3-3h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4zm-3-4h8v2H8z"}));function H(){return H=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},H.apply(null,arguments)}function je(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function Yc(e){const t=[],n=String(e||"");let r=n.indexOf(","),o=0,a=!1;for(;!a;){r===-1&&(r=n.length,a=!0);const s=n.slice(o,r).trim();(s||!a)&&t.push(s),o=r+1,r=n.indexOf(",",o)}return t}function ru(e,t){const n=t||{};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const _v=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Iv=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Av={};function qf(e,t){return(Av.jsx?Iv:_v).test(e)}const Dv=/[ \t\n\f\r]/g;function ni(e){return typeof e=="object"?e.type==="text"?Yf(e.value):!1:Yf(e)}function Yf(e){return e.replace(Dv,"")===""}let ri=class{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}};ri.prototype.normal={};ri.prototype.property={};ri.prototype.space=void 0;function P0(e,t){const n={},r={};for(const o of e)Object.assign(n,o.property),Object.assign(r,o.normal);return new ri(n,r,t)}function $s(e){return e.toLowerCase()}let En=class{constructor(t,n){this.attribute=n,this.property=t}};En.prototype.attribute="";En.prototype.booleanish=!1;En.prototype.boolean=!1;En.prototype.commaOrSpaceSeparated=!1;En.prototype.commaSeparated=!1;En.prototype.defined=!1;En.prototype.mustUseProperty=!1;En.prototype.number=!1;En.prototype.overloadedBoolean=!1;En.prototype.property="";En.prototype.spaceSeparated=!1;En.prototype.space=void 0;let Pv=0;const Ke=$o(),$t=$o(),Gc=$o(),_e=$o(),vt=$o(),ca=$o(),vn=$o();function $o(){return 2**++Pv}const Kc=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ke,booleanish:$t,commaOrSpaceSeparated:vn,commaSeparated:ca,number:_e,overloadedBoolean:Gc,spaceSeparated:vt},Symbol.toStringTag,{value:"Module"})),Yu=Object.keys(Kc);let qd=class extends En{constructor(t,n,r,o){let a=-1;if(super(t,n),Gf(this,"space",o),typeof r=="number")for(;++a<Yu.length;){const s=Yu[a];Gf(this,Yu[a],(r&Kc[s])===Kc[s])}}};qd.prototype.defined=!0;function Gf(e,t,n){n&&(e[t]=n)}function Da(e){const t={},n={};for(const[r,o]of Object.entries(e.properties)){const a=new qd(r,e.transform(e.attributes||{},r),o,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(a.mustUseProperty=!0),t[r]=a,n[$s(r)]=r,n[$s(a.attribute)]=r}return new ri(t,n,e.space)}const R0=Da({properties:{ariaActiveDescendant:null,ariaAtomic:$t,ariaAutoComplete:null,ariaBusy:$t,ariaChecked:$t,ariaColCount:_e,ariaColIndex:_e,ariaColSpan:_e,ariaControls:vt,ariaCurrent:null,ariaDescribedBy:vt,ariaDetails:null,ariaDisabled:$t,ariaDropEffect:vt,ariaErrorMessage:null,ariaExpanded:$t,ariaFlowTo:vt,ariaGrabbed:$t,ariaHasPopup:null,ariaHidden:$t,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:vt,ariaLevel:_e,ariaLive:null,ariaModal:$t,ariaMultiLine:$t,ariaMultiSelectable:$t,ariaOrientation:null,ariaOwns:vt,ariaPlaceholder:null,ariaPosInSet:_e,ariaPressed:$t,ariaReadOnly:$t,ariaRelevant:null,ariaRequired:$t,ariaRoleDescription:vt,ariaRowCount:_e,ariaRowIndex:_e,ariaRowSpan:_e,ariaSelected:$t,ariaSetSize:_e,ariaSort:null,ariaValueMax:_e,ariaValueMin:_e,ariaValueNow:_e,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function M0(e,t){return t in e?e[t]:t}function N0(e,t){return M0(e,t.toLowerCase())}const Rv=Da({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:ca,acceptCharset:vt,accessKey:vt,action:null,allow:null,allowFullScreen:Ke,allowPaymentRequest:Ke,allowUserMedia:Ke,alt:null,as:null,async:Ke,autoCapitalize:null,autoComplete:vt,autoFocus:Ke,autoPlay:Ke,blocking:vt,capture:null,charSet:null,checked:Ke,cite:null,className:vt,cols:_e,colSpan:null,content:null,contentEditable:$t,controls:Ke,controlsList:vt,coords:_e|ca,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ke,defer:Ke,dir:null,dirName:null,disabled:Ke,download:Gc,draggable:$t,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ke,formTarget:null,headers:vt,height:_e,hidden:Gc,high:_e,href:null,hrefLang:null,htmlFor:vt,httpEquiv:vt,id:null,imageSizes:null,imageSrcSet:null,inert:Ke,inputMode:null,integrity:null,is:null,isMap:Ke,itemId:null,itemProp:vt,itemRef:vt,itemScope:Ke,itemType:vt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ke,low:_e,manifest:null,max:null,maxLength:_e,media:null,method:null,min:null,minLength:_e,multiple:Ke,muted:Ke,name:null,nonce:null,noModule:Ke,noValidate:Ke,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ke,optimum:_e,pattern:null,ping:vt,placeholder:null,playsInline:Ke,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ke,referrerPolicy:null,rel:vt,required:Ke,reversed:Ke,rows:_e,rowSpan:_e,sandbox:vt,scope:null,scoped:Ke,seamless:Ke,selected:Ke,shadowRootClonable:Ke,shadowRootDelegatesFocus:Ke,shadowRootMode:null,shape:null,size:_e,sizes:null,slot:null,span:_e,spellCheck:$t,src:null,srcDoc:null,srcLang:null,srcSet:null,start:_e,step:null,style:null,tabIndex:_e,target:null,title:null,translate:null,type:null,typeMustMatch:Ke,useMap:null,value:$t,width:_e,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:vt,axis:null,background:null,bgColor:null,border:_e,borderColor:null,bottomMargin:_e,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ke,declare:Ke,event:null,face:null,frame:null,frameBorder:null,hSpace:_e,leftMargin:_e,link:null,longDesc:null,lowSrc:null,marginHeight:_e,marginWidth:_e,noResize:Ke,noHref:Ke,noShade:Ke,noWrap:Ke,object:null,profile:null,prompt:null,rev:null,rightMargin:_e,rules:null,scheme:null,scrolling:$t,standby:null,summary:null,text:null,topMargin:_e,valueType:null,version:null,vAlign:null,vLink:null,vSpace:_e,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ke,disableRemotePlayback:Ke,prefix:null,property:null,results:_e,security:null,unselectable:null},space:"html",transform:N0}),Mv=Da({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:vn,accentHeight:_e,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:_e,amplitude:_e,arabicForm:null,ascent:_e,attributeName:null,attributeType:null,azimuth:_e,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:_e,by:null,calcMode:null,capHeight:_e,className:vt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:_e,diffuseConstant:_e,direction:null,display:null,dur:null,divisor:_e,dominantBaseline:null,download:Ke,dx:null,dy:null,edgeMode:null,editable:null,elevation:_e,enableBackground:null,end:null,event:null,exponent:_e,externalResourcesRequired:null,fill:null,fillOpacity:_e,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:ca,g2:ca,glyphName:ca,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:_e,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:_e,horizOriginX:_e,horizOriginY:_e,id:null,ideographic:_e,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:_e,k:_e,k1:_e,k2:_e,k3:_e,k4:_e,kernelMatrix:vn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:_e,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:_e,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:_e,overlineThickness:_e,paintOrder:null,panose1:null,path:null,pathLength:_e,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:vt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:_e,pointsAtY:_e,pointsAtZ:_e,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:vn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:vn,rev:vn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:vn,requiredFeatures:vn,requiredFonts:vn,requiredFormats:vn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:_e,specularExponent:_e,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:_e,strikethroughThickness:_e,string:null,stroke:null,strokeDashArray:vn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:_e,strokeOpacity:_e,strokeWidth:null,style:null,surfaceScale:_e,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:vn,tabIndex:_e,tableValues:null,target:null,targetX:_e,targetY:_e,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:vn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:_e,underlineThickness:_e,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:_e,values:null,vAlphabetic:_e,vMathematical:_e,vectorEffect:null,vHanging:_e,vIdeographic:_e,version:null,vertAdvY:_e,vertOriginX:_e,vertOriginY:_e,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:_e,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:M0}),O0=Da({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),L0=Da({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:N0}),F0=Da({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Nv={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Ov=/[A-Z]/g,Kf=/-[a-z]/g,Lv=/^data[-\w.:]+$/i;function oi(e,t){const n=$s(t);let r=t,o=En;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Lv.test(t)){if(t.charAt(4)==="-"){const a=t.slice(5).replace(Kf,$v);r="data"+a.charAt(0).toUpperCase()+a.slice(1)}else{const a=t.slice(4);if(!Kf.test(a)){let s=a.replace(Ov,Fv);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}o=qd}return new o(r,t)}function Fv(e){return"-"+e.toLowerCase()}function $v(e){return e.charAt(1).toUpperCase()}const Pa=P0([R0,Rv,O0,L0,F0],"html"),Br=P0([R0,Mv,O0,L0,F0],"svg");function Qc(e){const t=String(e||"").trim();return t?t.split(/[ \t\n\r\f]+/g):[]}function ou(e){return e.join(" ").trim()}var Xo={},Gu,Qf;function Bv(){if(Qf)return Gu;Qf=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,o=/^:\s*/,a=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,i=/^\s+|\s+$/g,l=`
22
22
  `,u="/",c="*",d="",m="comment",f="declaration";Gu=function(b,g){if(typeof b!="string")throw new TypeError("First argument must be a string");if(!b)return[];g=g||{};var x=1,E=1;function C(M){var A=M.match(t);A&&(x+=A.length);var D=M.lastIndexOf(l);E=~D?M.length-D:E+M.length}function T(){var M={line:x,column:E};return function(A){return A.position=new w(M),F(),A}}function w(M){this.start=M,this.end={line:x,column:E},this.source=g.source}w.prototype.content=b;function S(M){var A=new Error(g.source+":"+x+":"+E+": "+M);if(A.reason=M,A.filename=g.source,A.line=x,A.column=E,A.source=b,!g.silent)throw A}function O(M){var A=M.exec(b);if(A){var D=A[0];return C(D),b=b.slice(D.length),A}}function F(){O(n)}function B(M){var A;for(M=M||[];A=P();)A!==!1&&M.push(A);return M}function P(){var M=T();if(!(u!=b.charAt(0)||c!=b.charAt(1))){for(var A=2;d!=b.charAt(A)&&(c!=b.charAt(A)||u!=b.charAt(A+1));)++A;if(A+=2,d===b.charAt(A-1))return S("End of comment missing");var D=b.slice(2,A-2);return E+=2,C(D),b=b.slice(A),E+=2,M({type:m,comment:D})}}function N(){var M=T(),A=O(r);if(A){if(P(),!O(o))return S("property missing ':'");var D=O(a),R=M({type:f,property:h(A[0].replace(e,d)),value:D?h(D[0].replace(e,d)):d});return O(s),R}}function v(){var M=[];B(M);for(var A;A=N();)A!==!1&&(M.push(A),B(M));return M}return F(),v()};function h(b){return b?b.replace(i,d):d}return Gu}var Xf;function jv(){if(Xf)return Xo;Xf=1;var e=Xo&&Xo.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(Xo,"__esModule",{value:!0}),Xo.default=n;var t=e(Bv());function n(r,o){var a=null;if(!r||typeof r!="string")return a;var s=(0,t.default)(r),i=typeof o=="function";return s.forEach(function(l){if(l.type==="declaration"){var u=l.property,c=l.value;i?o(u,c,l):c&&(a=a||{},a[u]=c)}}),a}return Xo}var Ga={},Zf;function Hv(){if(Zf)return Ga;Zf=1,Object.defineProperty(Ga,"__esModule",{value:!0}),Ga.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,o=/^-(ms)-/,a=function(u){return!u||n.test(u)||e.test(u)},s=function(u,c){return c.toUpperCase()},i=function(u,c){return"".concat(c,"-")},l=function(u,c){return c===void 0&&(c={}),a(u)?u:(u=u.toLowerCase(),c.reactCompat?u=u.replace(o,i):u=u.replace(r,i),u.replace(t,s))};return Ga.camelCase=l,Ga}var Ka,Jf;function Uv(){if(Jf)return Ka;Jf=1;var e=Ka&&Ka.__importDefault||function(o){return o&&o.__esModule?o:{default:o}},t=e(jv()),n=Hv();function r(o,a){var s={};return!o||typeof o!="string"||(0,t.default)(o,function(i,l){i&&l&&(s[(0,n.camelCase)(i,a)]=l)}),s}return r.default=r,Ka=r,Ka}var zv=Uv();const Vv=tr(zv),au=$0("end"),Cr=$0("start");function $0(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function Wv(e){const t=Cr(e),n=au(e);if(t&&n)return{start:t,end:n}}function xs(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?em(e.position):"start"in e||"end"in e?em(e):"line"in e||"column"in e?Xc(e):""}function Xc(e){return tm(e&&e.line)+":"+tm(e&&e.column)}function em(e){return Xc(e&&e.start)+"-"+Xc(e&&e.end)}function tm(e){return e&&typeof e=="number"?e:1}class an extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let o="",a={},s=!1;if(n&&("line"in n&&"column"in n?a={place:n}:"start"in n&&"end"in n?a={place:n}:"type"in n?a={ancestors:[n],place:n.position}:a={...n}),typeof t=="string"?o=t:!a.cause&&t&&(s=!0,o=t.message,a.cause=t),!a.ruleId&&!a.source&&typeof r=="string"){const l=r.indexOf(":");l===-1?a.ruleId=r:(a.source=r.slice(0,l),a.ruleId=r.slice(l+1))}if(!a.place&&a.ancestors&&a.ancestors){const l=a.ancestors[a.ancestors.length-1];l&&(a.place=l.position)}const i=a.place&&"start"in a.place?a.place.start:a.place;this.ancestors=a.ancestors||void 0,this.cause=a.cause||void 0,this.column=i?i.column:void 0,this.fatal=void 0,this.file="",this.message=o,this.line=i?i.line:void 0,this.name=xs(a.place)||"1:1",this.place=a.place||void 0,this.reason=this.message,this.ruleId=a.ruleId||void 0,this.source=a.source||void 0,this.stack=s&&a.cause&&typeof a.cause.stack=="string"?a.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}an.prototype.file="";an.prototype.name="";an.prototype.reason="";an.prototype.message="";an.prototype.stack="";an.prototype.column=void 0;an.prototype.line=void 0;an.prototype.ancestors=void 0;an.prototype.cause=void 0;an.prototype.fatal=void 0;an.prototype.place=void 0;an.prototype.ruleId=void 0;an.prototype.source=void 0;const Yd={}.hasOwnProperty,qv=new Map,Yv=/[A-Z]/g,Gv=new Set(["table","tbody","thead","tfoot","tr"]),Kv=new Set(["td","th"]),B0="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function Qv(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=oT(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=rT(n,t.jsx,t.jsxs)}const o={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Br:Pa,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},a=j0(o,e,void 0);return a&&typeof a!="string"?a:o.create(e,o.Fragment,{children:a||void 0},void 0)}function j0(e,t,n){if(t.type==="element")return Xv(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return Zv(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return eT(e,t,n);if(t.type==="mdxjsEsm")return Jv(e,t);if(t.type==="root")return tT(e,t,n);if(t.type==="text")return nT(e,t)}function Xv(e,t,n){const r=e.schema;let o=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(o=Br,e.schema=o),e.ancestors.push(t);const a=U0(e,t.tagName,!1),s=aT(e,t);let i=Kd(e,t);return Gv.has(t.tagName)&&(i=i.filter(function(l){return typeof l=="string"?!ni(l):!0})),H0(e,s,a,t),Gd(s,i),e.ancestors.pop(),e.schema=r,e.create(t,a,s,n)}function Zv(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}Bs(e,t.position)}function Jv(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);Bs(e,t.position)}function eT(e,t,n){const r=e.schema;let o=r;t.name==="svg"&&r.space==="html"&&(o=Br,e.schema=o),e.ancestors.push(t);const a=t.name===null?e.Fragment:U0(e,t.name,!0),s=sT(e,t),i=Kd(e,t);return H0(e,s,a,t),Gd(s,i),e.ancestors.pop(),e.schema=r,e.create(t,a,s,n)}function tT(e,t,n){const r={};return Gd(r,Kd(e,t)),e.create(t,e.Fragment,r,n)}function nT(e,t){return t.value}function H0(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Gd(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function rT(e,t,n){return r;function r(o,a,s,i){const u=Array.isArray(s.children)?n:t;return i?u(a,s,i):u(a,s)}}function oT(e,t){return n;function n(r,o,a,s){const i=Array.isArray(a.children),l=Cr(r);return t(o,a,s,i,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function aT(e,t){const n={};let r,o;for(o in t.properties)if(o!=="children"&&Yd.call(t.properties,o)){const a=iT(e,o,t.properties[o]);if(a){const[s,i]=a;e.tableCellAlignToStyle&&s==="align"&&typeof i=="string"&&Kv.has(t.tagName)?r=i:n[s]=i}}if(r){const a=n.style||(n.style={});a[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function sT(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const a=r.data.estree.body[0];a.type;const s=a.expression;s.type;const i=s.properties[0];i.type,Object.assign(n,e.evaluater.evaluateExpression(i.argument))}else Bs(e,t.position);else{const o=r.name;let a;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const i=r.value.data.estree.body[0];i.type,a=e.evaluater.evaluateExpression(i.expression)}else Bs(e,t.position);else a=r.value===null?!0:r.value;n[o]=a}return n}function Kd(e,t){const n=[];let r=-1;const o=e.passKeys?new Map:qv;for(;++r<t.children.length;){const a=t.children[r];let s;if(e.passKeys){const l=a.type==="element"?a.tagName:a.type==="mdxJsxFlowElement"||a.type==="mdxJsxTextElement"?a.name:void 0;if(l){const u=o.get(l)||0;s=l+"-"+u,o.set(l,u+1)}}const i=j0(e,a,s);i!==void 0&&n.push(i)}return n}function iT(e,t,n){const r=oi(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?ru(n):ou(n)),r.property==="style"){let o=typeof n=="object"?n:lT(e,String(n));return e.stylePropertyNameCase==="css"&&(o=uT(o)),["style",o]}return[e.elementAttributeNameCase==="react"&&r.space?Nv[r.property]||r.property:r.attribute,n]}}function lT(e,t){try{return Vv(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,o=new an("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw o.file=e.filePath||void 0,o.url=B0+"#cannot-parse-style-attribute",o}}function U0(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const o=t.split(".");let a=-1,s;for(;++a<o.length;){const i=qf(o[a])?{type:"Identifier",name:o[a]}:{type:"Literal",value:o[a]};s=s?{type:"MemberExpression",object:s,property:i,computed:!!(a&&i.type==="Literal"),optional:!1}:i}r=s}else r=qf(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const o=r.value;return Yd.call(e.components,o)?e.components[o]:o}if(e.evaluater)return e.evaluater.evaluateExpression(r);Bs(e)}function Bs(e,t){const n=new an("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=B0+"#cannot-handle-mdx-estrees-without-createevaluater",n}function uT(e){const t={};let n;for(n in e)Yd.call(e,n)&&(t[cT(n)]=e[n]);return t}function cT(e){let t=e.replace(Yv,dT);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function dT(e){return"-"+e.toLowerCase()}const Ku={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},pT={};function Qd(e,t){const n=pT,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,o=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return z0(e,r,o)}function z0(e,t,n){if(fT(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return nm(e.children,t,n)}return Array.isArray(e)?nm(e,t,n):""}function nm(e,t,n){const r=[];let o=-1;for(;++o<e.length;)r[o]=z0(e[o],t,n);return r.join("")}function fT(e){return!!(e&&typeof e=="object")}const rm=document.createElement("i");function Xd(e){const t="&"+e+";";rm.innerHTML=t;const n=rm.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function In(e,t,n,r){const o=e.length;let a=0,s;if(t<0?t=-t>o?0:o+t:t=t>o?o:t,n=n>0?n:0,r.length<1e4)s=Array.from(r),s.unshift(t,n),e.splice(...s);else for(n&&e.splice(t,n);a<r.length;)s=r.slice(a,a+1e4),s.unshift(t,0),e.splice(...s),a+=1e4,t+=1e4}function $n(e,t){return e.length>0?(In(e,e.length,0,t),e):t}const om={}.hasOwnProperty;function V0(e){const t={};let n=-1;for(;++n<e.length;)mT(t,e[n]);return t}function mT(e,t){let n;for(n in t){const o=(om.call(e,n)?e[n]:void 0)||(e[n]={}),a=t[n];let s;if(a)for(s in a){om.call(o,s)||(o[s]=[]);const i=a[s];hT(o[s],Array.isArray(i)?i:i?[i]:[])}}}function hT(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);In(e,0,0,r)}function W0(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function er(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const cn=ao(/[A-Za-z]/),nn=ao(/[\dA-Za-z]/),gT=ao(/[#-'*+\--9=?A-Z^-~]/);function gl(e){return e!==null&&(e<32||e===127)}const Zc=ao(/\d/),bT=ao(/[\dA-Fa-f]/),yT=ao(/[!-/:-@[-`{-~]/);function Ue(e){return e!==null&&e<-2}function xt(e){return e!==null&&(e<0||e===32)}function at(e){return e===-2||e===-1||e===32}const su=ao(/\p{P}|\p{S}/u),Do=ao(/\s/);function ao(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Ra(e){const t=[];let n=-1,r=0,o=0;for(;++n<e.length;){const a=e.charCodeAt(n);let s="";if(a===37&&nn(e.charCodeAt(n+1))&&nn(e.charCodeAt(n+2)))o=2;else if(a<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(a))||(s=String.fromCharCode(a));else if(a>55295&&a<57344){const i=e.charCodeAt(n+1);a<56320&&i>56319&&i<57344?(s=String.fromCharCode(a,i),o=1):s="�"}else s=String.fromCharCode(a);s&&(t.push(e.slice(r,n),encodeURIComponent(s)),r=n+o+1,s=""),o&&(n+=o,o=0)}return t.join("")+e.slice(r)}function lt(e,t,n,r){const o=r?r-1:Number.POSITIVE_INFINITY;let a=0;return s;function s(l){return at(l)?(e.enter(n),i(l)):t(l)}function i(l){return at(l)&&a++<o?(e.consume(l),i):(e.exit(n),t(l))}}const xT={tokenize:CT};function CT(e){const t=e.attempt(this.parser.constructs.contentInitial,r,o);let n;return t;function r(i){if(i===null){e.consume(i);return}return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),lt(e,t,"linePrefix")}function o(i){return e.enter("paragraph"),a(i)}function a(i){const l=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=l),n=l,s(i)}function s(i){if(i===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(i);return}return Ue(i)?(e.consume(i),e.exit("chunkText"),a):(e.consume(i),s)}}const ET={tokenize:vT},am={tokenize:TT};function vT(e){const t=this,n=[];let r=0,o,a,s;return i;function i(C){if(r<n.length){const T=n[r];return t.containerState=T[1],e.attempt(T[0].continuation,l,u)(C)}return u(C)}function l(C){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,o&&E();const T=t.events.length;let w=T,S;for(;w--;)if(t.events[w][0]==="exit"&&t.events[w][1].type==="chunkFlow"){S=t.events[w][1].end;break}x(r);let O=T;for(;O<t.events.length;)t.events[O][1].end={...S},O++;return In(t.events,w+1,0,t.events.slice(T)),t.events.length=O,u(C)}return i(C)}function u(C){if(r===n.length){if(!o)return m(C);if(o.currentConstruct&&o.currentConstruct.concrete)return h(C);t.interrupt=!!(o.currentConstruct&&!o._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(am,c,d)(C)}function c(C){return o&&E(),x(r),m(C)}function d(C){return t.parser.lazy[t.now().line]=r!==n.length,s=t.now().offset,h(C)}function m(C){return t.containerState={},e.attempt(am,f,h)(C)}function f(C){return r++,n.push([t.currentConstruct,t.containerState]),m(C)}function h(C){if(C===null){o&&E(),x(0),e.consume(C);return}return o=o||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:o,contentType:"flow",previous:a}),b(C)}function b(C){if(C===null){g(e.exit("chunkFlow"),!0),x(0),e.consume(C);return}return Ue(C)?(e.consume(C),g(e.exit("chunkFlow")),r=0,t.interrupt=void 0,i):(e.consume(C),b)}function g(C,T){const w=t.sliceStream(C);if(T&&w.push(null),C.previous=a,a&&(a.next=C),a=C,o.defineSkip(C.start),o.write(w),t.parser.lazy[C.start.line]){let S=o.events.length;for(;S--;)if(o.events[S][1].start.offset<s&&(!o.events[S][1].end||o.events[S][1].end.offset>s))return;const O=t.events.length;let F=O,B,P;for(;F--;)if(t.events[F][0]==="exit"&&t.events[F][1].type==="chunkFlow"){if(B){P=t.events[F][1].end;break}B=!0}for(x(r),S=O;S<t.events.length;)t.events[S][1].end={...P},S++;In(t.events,F+1,0,t.events.slice(O)),t.events.length=S}}function x(C){let T=n.length;for(;T-- >C;){const w=n[T];t.containerState=w[1],w[0].exit.call(t,e)}n.length=C}function E(){o.write([null]),a=void 0,o=void 0,t.containerState._closeFlow=void 0}}function TT(e,t,n){return lt(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function ya(e){if(e===null||xt(e)||Do(e))return 1;if(su(e))return 2}function iu(e,t,n){const r=[];let o=-1;for(;++o<e.length;){const a=e[o].resolveAll;a&&!r.includes(a)&&(t=a(t,n),r.push(a))}return t}const Jc={name:"attention",resolveAll:ST,tokenize:kT};function ST(e,t){let n=-1,r,o,a,s,i,l,u,c;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const d={...e[r][1].end},m={...e[n][1].start};sm(d,-l),sm(m,l),s={type:l>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},i={type:l>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:m},a={type:l>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},o={type:l>1?"strong":"emphasis",start:{...s.start},end:{...i.end}},e[r][1].end={...s.start},e[n][1].start={...i.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=$n(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=$n(u,[["enter",o,t],["enter",s,t],["exit",s,t],["enter",a,t]]),u=$n(u,iu(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),u=$n(u,[["exit",a,t],["enter",i,t],["exit",i,t],["exit",o,t]]),e[n][1].end.offset-e[n][1].start.offset?(c=2,u=$n(u,[["enter",e[n][1],t],["exit",e[n][1],t]])):c=0,In(e,r-1,n-r+3,u),n=r+u.length-c-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function kT(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,o=ya(r);let a;return s;function s(l){return a=l,e.enter("attentionSequence"),i(l)}function i(l){if(l===a)return e.consume(l),i;const u=e.exit("attentionSequence"),c=ya(l),d=!c||c===2&&o||n.includes(l),m=!o||o===2&&c||n.includes(r);return u._open=!!(a===42?d:d&&(o||!m)),u._close=!!(a===42?m:m&&(c||!d)),t(l)}}function sm(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const wT={name:"autolink",tokenize:_T};function _T(e,t,n){let r=0;return o;function o(f){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(f),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),a}function a(f){return cn(f)?(e.consume(f),s):f===64?n(f):u(f)}function s(f){return f===43||f===45||f===46||nn(f)?(r=1,i(f)):u(f)}function i(f){return f===58?(e.consume(f),r=0,l):(f===43||f===45||f===46||nn(f))&&r++<32?(e.consume(f),i):(r=0,u(f))}function l(f){return f===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(f),e.exit("autolinkMarker"),e.exit("autolink"),t):f===null||f===32||f===60||gl(f)?n(f):(e.consume(f),l)}function u(f){return f===64?(e.consume(f),c):gT(f)?(e.consume(f),u):n(f)}function c(f){return nn(f)?d(f):n(f)}function d(f){return f===46?(e.consume(f),r=0,c):f===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(f),e.exit("autolinkMarker"),e.exit("autolink"),t):m(f)}function m(f){if((f===45||nn(f))&&r++<63){const h=f===45?m:d;return e.consume(f),h}return n(f)}}const ai={partial:!0,tokenize:IT};function IT(e,t,n){return r;function r(a){return at(a)?lt(e,o,"linePrefix")(a):o(a)}function o(a){return a===null||Ue(a)?t(a):n(a)}}const q0={continuation:{tokenize:DT},exit:PT,name:"blockQuote",tokenize:AT};function AT(e,t,n){const r=this;return o;function o(s){if(s===62){const i=r.containerState;return i.open||(e.enter("blockQuote",{_container:!0}),i.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(s),e.exit("blockQuoteMarker"),a}return n(s)}function a(s){return at(s)?(e.enter("blockQuotePrefixWhitespace"),e.consume(s),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(s))}}function DT(e,t,n){const r=this;return o;function o(s){return at(s)?lt(e,a,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s):a(s)}function a(s){return e.attempt(q0,t,n)(s)}}function PT(e){e.exit("blockQuote")}const Y0={name:"characterEscape",tokenize:RT};function RT(e,t,n){return r;function r(a){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(a),e.exit("escapeMarker"),o}function o(a){return yT(a)?(e.enter("characterEscapeValue"),e.consume(a),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(a)}}const G0={name:"characterReference",tokenize:MT};function MT(e,t,n){const r=this;let o=0,a,s;return i;function i(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),a=31,s=nn,c(d))}function u(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),a=6,s=bT,c):(e.enter("characterReferenceValue"),a=7,s=Zc,c(d))}function c(d){if(d===59&&o){const m=e.exit("characterReferenceValue");return s===nn&&!Xd(r.sliceSerialize(m))?n(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return s(d)&&o++<a?(e.consume(d),c):n(d)}}const im={partial:!0,tokenize:OT},lm={concrete:!0,name:"codeFenced",tokenize:NT};function NT(e,t,n){const r=this,o={partial:!0,tokenize:w};let a=0,s=0,i;return l;function l(S){return u(S)}function u(S){const O=r.events[r.events.length-1];return a=O&&O[1].type==="linePrefix"?O[2].sliceSerialize(O[1],!0).length:0,i=S,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),c(S)}function c(S){return S===i?(s++,e.consume(S),c):s<3?n(S):(e.exit("codeFencedFenceSequence"),at(S)?lt(e,d,"whitespace")(S):d(S))}function d(S){return S===null||Ue(S)?(e.exit("codeFencedFence"),r.interrupt?t(S):e.check(im,b,T)(S)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),m(S))}function m(S){return S===null||Ue(S)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(S)):at(S)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),lt(e,f,"whitespace")(S)):S===96&&S===i?n(S):(e.consume(S),m)}function f(S){return S===null||Ue(S)?d(S):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),h(S))}function h(S){return S===null||Ue(S)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(S)):S===96&&S===i?n(S):(e.consume(S),h)}function b(S){return e.attempt(o,T,g)(S)}function g(S){return e.enter("lineEnding"),e.consume(S),e.exit("lineEnding"),x}function x(S){return a>0&&at(S)?lt(e,E,"linePrefix",a+1)(S):E(S)}function E(S){return S===null||Ue(S)?e.check(im,b,T)(S):(e.enter("codeFlowValue"),C(S))}function C(S){return S===null||Ue(S)?(e.exit("codeFlowValue"),E(S)):(e.consume(S),C)}function T(S){return e.exit("codeFenced"),t(S)}function w(S,O,F){let B=0;return P;function P(D){return S.enter("lineEnding"),S.consume(D),S.exit("lineEnding"),N}function N(D){return S.enter("codeFencedFence"),at(D)?lt(S,v,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(D):v(D)}function v(D){return D===i?(S.enter("codeFencedFenceSequence"),M(D)):F(D)}function M(D){return D===i?(B++,S.consume(D),M):B>=s?(S.exit("codeFencedFenceSequence"),at(D)?lt(S,A,"whitespace")(D):A(D)):F(D)}function A(D){return D===null||Ue(D)?(S.exit("codeFencedFence"),O(D)):F(D)}}}function OT(e,t,n){const r=this;return o;function o(s){return s===null?n(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),a)}function a(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}const Qu={name:"codeIndented",tokenize:FT},LT={partial:!0,tokenize:$T};function FT(e,t,n){const r=this;return o;function o(u){return e.enter("codeIndented"),lt(e,a,"linePrefix",5)(u)}function a(u){const c=r.events[r.events.length-1];return c&&c[1].type==="linePrefix"&&c[2].sliceSerialize(c[1],!0).length>=4?s(u):n(u)}function s(u){return u===null?l(u):Ue(u)?e.attempt(LT,s,l)(u):(e.enter("codeFlowValue"),i(u))}function i(u){return u===null||Ue(u)?(e.exit("codeFlowValue"),s(u)):(e.consume(u),i)}function l(u){return e.exit("codeIndented"),t(u)}}function $T(e,t,n){const r=this;return o;function o(s){return r.parser.lazy[r.now().line]?n(s):Ue(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),o):lt(e,a,"linePrefix",5)(s)}function a(s){const i=r.events[r.events.length-1];return i&&i[1].type==="linePrefix"&&i[2].sliceSerialize(i[1],!0).length>=4?t(s):Ue(s)?o(s):n(s)}}const BT={name:"codeText",previous:HT,resolve:jT,tokenize:UT};function jT(e){let t=e.length-4,n=3,r,o;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)o===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(o=r):(r===t||e[r][1].type==="lineEnding")&&(e[o][1].type="codeTextData",r!==o+2&&(e[o][1].end=e[r-1][1].end,e.splice(o+2,r-o-2),t-=r-o-2,r=o+2),o=void 0);return e}function HT(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function UT(e,t,n){let r=0,o,a;return s;function s(d){return e.enter("codeText"),e.enter("codeTextSequence"),i(d)}function i(d){return d===96?(e.consume(d),r++,i):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?n(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(a=e.enter("codeTextSequence"),o=0,c(d)):Ue(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),u(d))}function u(d){return d===null||d===32||d===96||Ue(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),u)}function c(d){return d===96?(e.consume(d),o++,c):o===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(a.type="codeTextData",u(d))}}class zT{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const o=n||0;this.setCursor(Math.trunc(t));const a=this.right.splice(this.right.length-o,Number.POSITIVE_INFINITY);return r&&Qa(this.left,r),a.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Qa(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Qa(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);Qa(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Qa(this.left,n.reverse())}}}function Qa(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function K0(e){const t={};let n=-1,r,o,a,s,i,l,u;const c=new zT(e);for(;++n<c.length;){for(;n in t;)n=t[n];if(r=c.get(n),n&&r[1].type==="chunkFlow"&&c.get(n-1)[1].type==="listItemPrefix"&&(l=r[1]._tokenizer.events,a=0,a<l.length&&l[a][1].type==="lineEndingBlank"&&(a+=2),a<l.length&&l[a][1].type==="content"))for(;++a<l.length&&l[a][1].type!=="content";)l[a][1].type==="chunkText"&&(l[a][1]._isInFirstContentOfListItem=!0,a++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,VT(c,n)),n=t[n],u=!0);else if(r[1]._container){for(a=n,o=void 0;a--;)if(s=c.get(a),s[1].type==="lineEnding"||s[1].type==="lineEndingBlank")s[0]==="enter"&&(o&&(c.get(o)[1].type="lineEndingBlank"),s[1].type="lineEnding",o=a);else if(!(s[1].type==="linePrefix"||s[1].type==="listItemIndent"))break;o&&(r[1].end={...c.get(o)[1].start},i=c.slice(o,n),i.unshift(r),c.splice(o,n-o+1,i))}}return In(e,0,Number.POSITIVE_INFINITY,c.slice(0)),!u}function VT(e,t){const n=e.get(t)[1],r=e.get(t)[2];let o=t-1;const a=[];let s=n._tokenizer;s||(s=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(s._contentTypeTextTrailing=!0));const i=s.events,l=[],u={};let c,d,m=-1,f=n,h=0,b=0;const g=[b];for(;f;){for(;e.get(++o)[1]!==f;);a.push(o),f._tokenizer||(c=r.sliceStream(f),f.next||c.push(null),d&&s.defineSkip(f.start),f._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=!0),s.write(c),f._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=void 0)),d=f,f=f.next}for(f=n;++m<i.length;)i[m][0]==="exit"&&i[m-1][0]==="enter"&&i[m][1].type===i[m-1][1].type&&i[m][1].start.line!==i[m][1].end.line&&(b=m+1,g.push(b),f._tokenizer=void 0,f.previous=void 0,f=f.next);for(s.events=[],f?(f._tokenizer=void 0,f.previous=void 0):g.pop(),m=g.length;m--;){const x=i.slice(g[m],g[m+1]),E=a.pop();l.push([E,E+x.length-1]),e.splice(E,2,x)}for(l.reverse(),m=-1;++m<l.length;)u[h+l[m][0]]=h+l[m][1],h+=l[m][1]-l[m][0]-1;return u}const WT={resolve:YT,tokenize:GT},qT={partial:!0,tokenize:KT};function YT(e){return K0(e),e}function GT(e,t){let n;return r;function r(i){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),o(i)}function o(i){return i===null?a(i):Ue(i)?e.check(qT,s,a)(i):(e.consume(i),o)}function a(i){return e.exit("chunkContent"),e.exit("content"),t(i)}function s(i){return e.consume(i),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,o}}function KT(e,t,n){const r=this;return o;function o(s){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),lt(e,a,"linePrefix")}function a(s){if(s===null||Ue(s))return n(s);const i=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&i&&i[1].type==="linePrefix"&&i[2].sliceSerialize(i[1],!0).length>=4?t(s):e.interrupt(r.parser.constructs.flow,n,t)(s)}}function Q0(e,t,n,r,o,a,s,i,l){const u=l||Number.POSITIVE_INFINITY;let c=0;return d;function d(x){return x===60?(e.enter(r),e.enter(o),e.enter(a),e.consume(x),e.exit(a),m):x===null||x===32||x===41||gl(x)?n(x):(e.enter(r),e.enter(s),e.enter(i),e.enter("chunkString",{contentType:"string"}),b(x))}function m(x){return x===62?(e.enter(a),e.consume(x),e.exit(a),e.exit(o),e.exit(r),t):(e.enter(i),e.enter("chunkString",{contentType:"string"}),f(x))}function f(x){return x===62?(e.exit("chunkString"),e.exit(i),m(x)):x===null||x===60||Ue(x)?n(x):(e.consume(x),x===92?h:f)}function h(x){return x===60||x===62||x===92?(e.consume(x),f):f(x)}function b(x){return!c&&(x===null||x===41||xt(x))?(e.exit("chunkString"),e.exit(i),e.exit(s),e.exit(r),t(x)):c<u&&x===40?(e.consume(x),c++,b):x===41?(e.consume(x),c--,b):x===null||x===32||x===40||gl(x)?n(x):(e.consume(x),x===92?g:b)}function g(x){return x===40||x===41||x===92?(e.consume(x),b):b(x)}}function X0(e,t,n,r,o,a){const s=this;let i=0,l;return u;function u(f){return e.enter(r),e.enter(o),e.consume(f),e.exit(o),e.enter(a),c}function c(f){return i>999||f===null||f===91||f===93&&!l||f===94&&!i&&"_hiddenFootnoteSupport"in s.parser.constructs?n(f):f===93?(e.exit(a),e.enter(o),e.consume(f),e.exit(o),e.exit(r),t):Ue(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),c):(e.enter("chunkString",{contentType:"string"}),d(f))}function d(f){return f===null||f===91||f===93||Ue(f)||i++>999?(e.exit("chunkString"),c(f)):(e.consume(f),l||(l=!at(f)),f===92?m:d)}function m(f){return f===91||f===92||f===93?(e.consume(f),i++,d):d(f)}}function Z0(e,t,n,r,o,a){let s;return i;function i(m){return m===34||m===39||m===40?(e.enter(r),e.enter(o),e.consume(m),e.exit(o),s=m===40?41:m,l):n(m)}function l(m){return m===s?(e.enter(o),e.consume(m),e.exit(o),e.exit(r),t):(e.enter(a),u(m))}function u(m){return m===s?(e.exit(a),l(s)):m===null?n(m):Ue(m)?(e.enter("lineEnding"),e.consume(m),e.exit("lineEnding"),lt(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),c(m))}function c(m){return m===s||m===null||Ue(m)?(e.exit("chunkString"),u(m)):(e.consume(m),m===92?d:c)}function d(m){return m===s||m===92?(e.consume(m),c):c(m)}}function Cs(e,t){let n;return r;function r(o){return Ue(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),n=!0,r):at(o)?lt(e,r,n?"linePrefix":"lineSuffix")(o):t(o)}}const QT={name:"definition",tokenize:ZT},XT={partial:!0,tokenize:JT};function ZT(e,t,n){const r=this;let o;return a;function a(f){return e.enter("definition"),s(f)}function s(f){return X0.call(r,e,i,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(f)}function i(f){return o=er(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),f===58?(e.enter("definitionMarker"),e.consume(f),e.exit("definitionMarker"),l):n(f)}function l(f){return xt(f)?Cs(e,u)(f):u(f)}function u(f){return Q0(e,c,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(f)}function c(f){return e.attempt(XT,d,d)(f)}function d(f){return at(f)?lt(e,m,"whitespace")(f):m(f)}function m(f){return f===null||Ue(f)?(e.exit("definition"),r.parser.defined.push(o),t(f)):n(f)}}function JT(e,t,n){return r;function r(i){return xt(i)?Cs(e,o)(i):n(i)}function o(i){return Z0(e,a,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(i)}function a(i){return at(i)?lt(e,s,"whitespace")(i):s(i)}function s(i){return i===null||Ue(i)?t(i):n(i)}}const eS={name:"hardBreakEscape",tokenize:tS};function tS(e,t,n){return r;function r(a){return e.enter("hardBreakEscape"),e.consume(a),o}function o(a){return Ue(a)?(e.exit("hardBreakEscape"),t(a)):n(a)}}const nS={name:"headingAtx",resolve:rS,tokenize:oS};function rS(e,t){let n=e.length-2,r=3,o,a;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(o={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},a={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},In(e,r,n-r+1,[["enter",o,t],["enter",a,t],["exit",a,t],["exit",o,t]])),e}function oS(e,t,n){let r=0;return o;function o(c){return e.enter("atxHeading"),a(c)}function a(c){return e.enter("atxHeadingSequence"),s(c)}function s(c){return c===35&&r++<6?(e.consume(c),s):c===null||xt(c)?(e.exit("atxHeadingSequence"),i(c)):n(c)}function i(c){return c===35?(e.enter("atxHeadingSequence"),l(c)):c===null||Ue(c)?(e.exit("atxHeading"),t(c)):at(c)?lt(e,i,"whitespace")(c):(e.enter("atxHeadingText"),u(c))}function l(c){return c===35?(e.consume(c),l):(e.exit("atxHeadingSequence"),i(c))}function u(c){return c===null||c===35||xt(c)?(e.exit("atxHeadingText"),i(c)):(e.consume(c),u)}}const aS=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],um=["pre","script","style","textarea"],sS={concrete:!0,name:"htmlFlow",resolveTo:uS,tokenize:cS},iS={partial:!0,tokenize:pS},lS={partial:!0,tokenize:dS};function uS(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function cS(e,t,n){const r=this;let o,a,s,i,l;return u;function u(L){return c(L)}function c(L){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(L),d}function d(L){return L===33?(e.consume(L),m):L===47?(e.consume(L),a=!0,b):L===63?(e.consume(L),o=3,r.interrupt?t:_):cn(L)?(e.consume(L),s=String.fromCharCode(L),g):n(L)}function m(L){return L===45?(e.consume(L),o=2,f):L===91?(e.consume(L),o=5,i=0,h):cn(L)?(e.consume(L),o=4,r.interrupt?t:_):n(L)}function f(L){return L===45?(e.consume(L),r.interrupt?t:_):n(L)}function h(L){const fe="CDATA[";return L===fe.charCodeAt(i++)?(e.consume(L),i===fe.length?r.interrupt?t:v:h):n(L)}function b(L){return cn(L)?(e.consume(L),s=String.fromCharCode(L),g):n(L)}function g(L){if(L===null||L===47||L===62||xt(L)){const fe=L===47,X=s.toLowerCase();return!fe&&!a&&um.includes(X)?(o=1,r.interrupt?t(L):v(L)):aS.includes(s.toLowerCase())?(o=6,fe?(e.consume(L),x):r.interrupt?t(L):v(L)):(o=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(L):a?E(L):C(L))}return L===45||nn(L)?(e.consume(L),s+=String.fromCharCode(L),g):n(L)}function x(L){return L===62?(e.consume(L),r.interrupt?t:v):n(L)}function E(L){return at(L)?(e.consume(L),E):P(L)}function C(L){return L===47?(e.consume(L),P):L===58||L===95||cn(L)?(e.consume(L),T):at(L)?(e.consume(L),C):P(L)}function T(L){return L===45||L===46||L===58||L===95||nn(L)?(e.consume(L),T):w(L)}function w(L){return L===61?(e.consume(L),S):at(L)?(e.consume(L),w):C(L)}function S(L){return L===null||L===60||L===61||L===62||L===96?n(L):L===34||L===39?(e.consume(L),l=L,O):at(L)?(e.consume(L),S):F(L)}function O(L){return L===l?(e.consume(L),l=null,B):L===null||Ue(L)?n(L):(e.consume(L),O)}function F(L){return L===null||L===34||L===39||L===47||L===60||L===61||L===62||L===96||xt(L)?w(L):(e.consume(L),F)}function B(L){return L===47||L===62||at(L)?C(L):n(L)}function P(L){return L===62?(e.consume(L),N):n(L)}function N(L){return L===null||Ue(L)?v(L):at(L)?(e.consume(L),N):n(L)}function v(L){return L===45&&o===2?(e.consume(L),R):L===60&&o===1?(e.consume(L),z):L===62&&o===4?(e.consume(L),K):L===63&&o===3?(e.consume(L),_):L===93&&o===5?(e.consume(L),j):Ue(L)&&(o===6||o===7)?(e.exit("htmlFlowData"),e.check(iS,ne,M)(L)):L===null||Ue(L)?(e.exit("htmlFlowData"),M(L)):(e.consume(L),v)}function M(L){return e.check(lS,A,ne)(L)}function A(L){return e.enter("lineEnding"),e.consume(L),e.exit("lineEnding"),D}function D(L){return L===null||Ue(L)?M(L):(e.enter("htmlFlowData"),v(L))}function R(L){return L===45?(e.consume(L),_):v(L)}function z(L){return L===47?(e.consume(L),s="",U):v(L)}function U(L){if(L===62){const fe=s.toLowerCase();return um.includes(fe)?(e.consume(L),K):v(L)}return cn(L)&&s.length<8?(e.consume(L),s+=String.fromCharCode(L),U):v(L)}function j(L){return L===93?(e.consume(L),_):v(L)}function _(L){return L===62?(e.consume(L),K):L===45&&o===2?(e.consume(L),_):v(L)}function K(L){return L===null||Ue(L)?(e.exit("htmlFlowData"),ne(L)):(e.consume(L),K)}function ne(L){return e.exit("htmlFlow"),t(L)}}function dS(e,t,n){const r=this;return o;function o(s){return Ue(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),a):n(s)}function a(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}function pS(e,t,n){return r;function r(o){return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),e.attempt(ai,t,n)}}const fS={name:"htmlText",tokenize:mS};function mS(e,t,n){const r=this;let o,a,s;return i;function i(_){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(_),l}function l(_){return _===33?(e.consume(_),u):_===47?(e.consume(_),w):_===63?(e.consume(_),C):cn(_)?(e.consume(_),F):n(_)}function u(_){return _===45?(e.consume(_),c):_===91?(e.consume(_),a=0,h):cn(_)?(e.consume(_),E):n(_)}function c(_){return _===45?(e.consume(_),f):n(_)}function d(_){return _===null?n(_):_===45?(e.consume(_),m):Ue(_)?(s=d,z(_)):(e.consume(_),d)}function m(_){return _===45?(e.consume(_),f):d(_)}function f(_){return _===62?R(_):_===45?m(_):d(_)}function h(_){const K="CDATA[";return _===K.charCodeAt(a++)?(e.consume(_),a===K.length?b:h):n(_)}function b(_){return _===null?n(_):_===93?(e.consume(_),g):Ue(_)?(s=b,z(_)):(e.consume(_),b)}function g(_){return _===93?(e.consume(_),x):b(_)}function x(_){return _===62?R(_):_===93?(e.consume(_),x):b(_)}function E(_){return _===null||_===62?R(_):Ue(_)?(s=E,z(_)):(e.consume(_),E)}function C(_){return _===null?n(_):_===63?(e.consume(_),T):Ue(_)?(s=C,z(_)):(e.consume(_),C)}function T(_){return _===62?R(_):C(_)}function w(_){return cn(_)?(e.consume(_),S):n(_)}function S(_){return _===45||nn(_)?(e.consume(_),S):O(_)}function O(_){return Ue(_)?(s=O,z(_)):at(_)?(e.consume(_),O):R(_)}function F(_){return _===45||nn(_)?(e.consume(_),F):_===47||_===62||xt(_)?B(_):n(_)}function B(_){return _===47?(e.consume(_),R):_===58||_===95||cn(_)?(e.consume(_),P):Ue(_)?(s=B,z(_)):at(_)?(e.consume(_),B):R(_)}function P(_){return _===45||_===46||_===58||_===95||nn(_)?(e.consume(_),P):N(_)}function N(_){return _===61?(e.consume(_),v):Ue(_)?(s=N,z(_)):at(_)?(e.consume(_),N):B(_)}function v(_){return _===null||_===60||_===61||_===62||_===96?n(_):_===34||_===39?(e.consume(_),o=_,M):Ue(_)?(s=v,z(_)):at(_)?(e.consume(_),v):(e.consume(_),A)}function M(_){return _===o?(e.consume(_),o=void 0,D):_===null?n(_):Ue(_)?(s=M,z(_)):(e.consume(_),M)}function A(_){return _===null||_===34||_===39||_===60||_===61||_===96?n(_):_===47||_===62||xt(_)?B(_):(e.consume(_),A)}function D(_){return _===47||_===62||xt(_)?B(_):n(_)}function R(_){return _===62?(e.consume(_),e.exit("htmlTextData"),e.exit("htmlText"),t):n(_)}function z(_){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(_),e.exit("lineEnding"),U}function U(_){return at(_)?lt(e,j,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(_):j(_)}function j(_){return e.enter("htmlTextData"),s(_)}}const Zd={name:"labelEnd",resolveAll:yS,resolveTo:xS,tokenize:CS},hS={tokenize:ES},gS={tokenize:vS},bS={tokenize:TS};function yS(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const o=r.type==="labelImage"?4:2;r.type="data",t+=o}}return e.length!==n.length&&In(e,0,e.length,n),e}function xS(e,t){let n=e.length,r=0,o,a,s,i;for(;n--;)if(o=e[n][1],a){if(o.type==="link"||o.type==="labelLink"&&o._inactive)break;e[n][0]==="enter"&&o.type==="labelLink"&&(o._inactive=!0)}else if(s){if(e[n][0]==="enter"&&(o.type==="labelImage"||o.type==="labelLink")&&!o._balanced&&(a=n,o.type!=="labelLink")){r=2;break}}else o.type==="labelEnd"&&(s=n);const l={type:e[a][1].type==="labelLink"?"link":"image",start:{...e[a][1].start},end:{...e[e.length-1][1].end}},u={type:"label",start:{...e[a][1].start},end:{...e[s][1].end}},c={type:"labelText",start:{...e[a+r+2][1].end},end:{...e[s-2][1].start}};return i=[["enter",l,t],["enter",u,t]],i=$n(i,e.slice(a+1,a+r+3)),i=$n(i,[["enter",c,t]]),i=$n(i,iu(t.parser.constructs.insideSpan.null,e.slice(a+r+4,s-3),t)),i=$n(i,[["exit",c,t],e[s-2],e[s-1],["exit",u,t]]),i=$n(i,e.slice(s+1)),i=$n(i,[["exit",l,t]]),In(e,a,e.length,i),e}function CS(e,t,n){const r=this;let o=r.events.length,a,s;for(;o--;)if((r.events[o][1].type==="labelImage"||r.events[o][1].type==="labelLink")&&!r.events[o][1]._balanced){a=r.events[o][1];break}return i;function i(m){return a?a._inactive?d(m):(s=r.parser.defined.includes(er(r.sliceSerialize({start:a.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(m),e.exit("labelMarker"),e.exit("labelEnd"),l):n(m)}function l(m){return m===40?e.attempt(hS,c,s?c:d)(m):m===91?e.attempt(gS,c,s?u:d)(m):s?c(m):d(m)}function u(m){return e.attempt(bS,c,d)(m)}function c(m){return t(m)}function d(m){return a._balanced=!0,n(m)}}function ES(e,t,n){return r;function r(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),o}function o(d){return xt(d)?Cs(e,a)(d):a(d)}function a(d){return d===41?c(d):Q0(e,s,i,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function s(d){return xt(d)?Cs(e,l)(d):c(d)}function i(d){return n(d)}function l(d){return d===34||d===39||d===40?Z0(e,u,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):c(d)}function u(d){return xt(d)?Cs(e,c)(d):c(d)}function c(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):n(d)}}function vS(e,t,n){const r=this;return o;function o(i){return X0.call(r,e,a,s,"reference","referenceMarker","referenceString")(i)}function a(i){return r.parser.defined.includes(er(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(i):n(i)}function s(i){return n(i)}}function TS(e,t,n){return r;function r(a){return e.enter("reference"),e.enter("referenceMarker"),e.consume(a),e.exit("referenceMarker"),o}function o(a){return a===93?(e.enter("referenceMarker"),e.consume(a),e.exit("referenceMarker"),e.exit("reference"),t):n(a)}}const SS={name:"labelStartImage",resolveAll:Zd.resolveAll,tokenize:kS};function kS(e,t,n){const r=this;return o;function o(i){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(i),e.exit("labelImageMarker"),a}function a(i){return i===91?(e.enter("labelMarker"),e.consume(i),e.exit("labelMarker"),e.exit("labelImage"),s):n(i)}function s(i){return i===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(i):t(i)}}const wS={name:"labelStartLink",resolveAll:Zd.resolveAll,tokenize:_S};function _S(e,t,n){const r=this;return o;function o(s){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelLink"),a}function a(s){return s===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(s):t(s)}}const Xu={name:"lineEnding",tokenize:IS};function IS(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),lt(e,t,"linePrefix")}}const Wi={name:"thematicBreak",tokenize:AS};function AS(e,t,n){let r=0,o;return a;function a(u){return e.enter("thematicBreak"),s(u)}function s(u){return o=u,i(u)}function i(u){return u===o?(e.enter("thematicBreakSequence"),l(u)):r>=3&&(u===null||Ue(u))?(e.exit("thematicBreak"),t(u)):n(u)}function l(u){return u===o?(e.consume(u),r++,l):(e.exit("thematicBreakSequence"),at(u)?lt(e,i,"whitespace")(u):i(u))}}const hn={continuation:{tokenize:MS},exit:OS,name:"list",tokenize:RS},DS={partial:!0,tokenize:LS},PS={partial:!0,tokenize:NS};function RS(e,t,n){const r=this,o=r.events[r.events.length-1];let a=o&&o[1].type==="linePrefix"?o[2].sliceSerialize(o[1],!0).length:0,s=0;return i;function i(f){const h=r.containerState.type||(f===42||f===43||f===45?"listUnordered":"listOrdered");if(h==="listUnordered"?!r.containerState.marker||f===r.containerState.marker:Zc(f)){if(r.containerState.type||(r.containerState.type=h,e.enter(h,{_container:!0})),h==="listUnordered")return e.enter("listItemPrefix"),f===42||f===45?e.check(Wi,n,u)(f):u(f);if(!r.interrupt||f===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(f)}return n(f)}function l(f){return Zc(f)&&++s<10?(e.consume(f),l):(!r.interrupt||s<2)&&(r.containerState.marker?f===r.containerState.marker:f===41||f===46)?(e.exit("listItemValue"),u(f)):n(f)}function u(f){return e.enter("listItemMarker"),e.consume(f),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||f,e.check(ai,r.interrupt?n:c,e.attempt(DS,m,d))}function c(f){return r.containerState.initialBlankLine=!0,a++,m(f)}function d(f){return at(f)?(e.enter("listItemPrefixWhitespace"),e.consume(f),e.exit("listItemPrefixWhitespace"),m):n(f)}function m(f){return r.containerState.size=a+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(f)}}function MS(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(ai,o,a);function o(i){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,lt(e,t,"listItemIndent",r.containerState.size+1)(i)}function a(i){return r.containerState.furtherBlankLines||!at(i)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,s(i)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(PS,t,s)(i))}function s(i){return r.containerState._closeFlow=!0,r.interrupt=void 0,lt(e,e.attempt(hn,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(i)}}function NS(e,t,n){const r=this;return lt(e,o,"listItemIndent",r.containerState.size+1);function o(a){const s=r.events[r.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===r.containerState.size?t(a):n(a)}}function OS(e){e.exit(this.containerState.type)}function LS(e,t,n){const r=this;return lt(e,o,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function o(a){const s=r.events[r.events.length-1];return!at(a)&&s&&s[1].type==="listItemPrefixWhitespace"?t(a):n(a)}}const cm={name:"setextUnderline",resolveTo:FS,tokenize:$S};function FS(e,t){let n=e.length,r,o,a;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(o=n)}else e[n][1].type==="content"&&e.splice(n,1),!a&&e[n][1].type==="definition"&&(a=n);const s={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[o][1].type="setextHeadingText",a?(e.splice(o,0,["enter",s,t]),e.splice(a+1,0,["exit",e[r][1],t]),e[r][1].end={...e[a][1].end}):e[r][1]=s,e.push(["exit",s,t]),e}function $S(e,t,n){const r=this;let o;return a;function a(u){let c=r.events.length,d;for(;c--;)if(r.events[c][1].type!=="lineEnding"&&r.events[c][1].type!=="linePrefix"&&r.events[c][1].type!=="content"){d=r.events[c][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||d)?(e.enter("setextHeadingLine"),o=u,s(u)):n(u)}function s(u){return e.enter("setextHeadingLineSequence"),i(u)}function i(u){return u===o?(e.consume(u),i):(e.exit("setextHeadingLineSequence"),at(u)?lt(e,l,"lineSuffix")(u):l(u))}function l(u){return u===null||Ue(u)?(e.exit("setextHeadingLine"),t(u)):n(u)}}const BS={tokenize:jS};function jS(e){const t=this,n=e.attempt(ai,r,e.attempt(this.parser.constructs.flowInitial,o,lt(e,e.attempt(this.parser.constructs.flow,o,e.attempt(WT,o)),"linePrefix")));return n;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEndingBlank"),e.consume(a),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function o(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const HS={resolveAll:eb()},US=J0("string"),zS=J0("text");function J0(e){return{resolveAll:eb(e==="text"?VS:void 0),tokenize:t};function t(n){const r=this,o=this.parser.constructs[e],a=n.attempt(o,s,i);return s;function s(c){return u(c)?a(c):i(c)}function i(c){if(c===null){n.consume(c);return}return n.enter("data"),n.consume(c),l}function l(c){return u(c)?(n.exit("data"),a(c)):(n.consume(c),l)}function u(c){if(c===null)return!0;const d=o[c];let m=-1;if(d)for(;++m<d.length;){const f=d[m];if(!f.previous||f.previous.call(r,r.previous))return!0}return!1}}}function eb(e){return t;function t(n,r){let o=-1,a;for(;++o<=n.length;)a===void 0?n[o]&&n[o][1].type==="data"&&(a=o,o++):(!n[o]||n[o][1].type!=="data")&&(o!==a+2&&(n[a][1].end=n[o-1][1].end,n.splice(a+2,o-a-2),o=a+2),a=void 0);return e?e(n,r):n}}function VS(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],o=t.sliceStream(r);let a=o.length,s=-1,i=0,l;for(;a--;){const u=o[a];if(typeof u=="string"){for(s=u.length;u.charCodeAt(s-1)===32;)i++,s--;if(s)break;s=-1}else if(u===-2)l=!0,i++;else if(u!==-1){a++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(i=0),i){const u={type:n===e.length||l||i<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:a?s:r.start._bufferIndex+s,_index:r.start._index+a,line:r.end.line,column:r.end.column-i,offset:r.end.offset-i},end:{...r.end}};r.end={...u.start},r.start.offset===r.end.offset?Object.assign(r,u):(e.splice(n,0,["enter",u,t],["exit",u,t]),n+=2)}n++}return e}const WS={42:hn,43:hn,45:hn,48:hn,49:hn,50:hn,51:hn,52:hn,53:hn,54:hn,55:hn,56:hn,57:hn,62:q0},qS={91:QT},YS={[-2]:Qu,[-1]:Qu,32:Qu},GS={35:nS,42:Wi,45:[cm,Wi],60:sS,61:cm,95:Wi,96:lm,126:lm},KS={38:G0,92:Y0},QS={[-5]:Xu,[-4]:Xu,[-3]:Xu,33:SS,38:G0,42:Jc,60:[wT,fS],91:wS,92:[eS,Y0],93:Zd,95:Jc,96:BT},XS={null:[Jc,HS]},ZS={null:[42,95]},JS={null:[]},ek=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:ZS,contentInitial:qS,disable:JS,document:WS,flow:GS,flowInitial:YS,insideSpan:XS,string:KS,text:QS},Symbol.toStringTag,{value:"Module"}));function tk(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const o={},a=[];let s=[],i=[];const l={attempt:O(w),check:O(S),consume:E,enter:C,exit:T,interrupt:O(S,{interrupt:!0})},u={code:null,containerState:{},defineSkip:b,events:[],now:h,parser:e,previous:null,sliceSerialize:m,sliceStream:f,write:d};let c=t.tokenize.call(u,l);return t.resolveAll&&a.push(t),u;function d(N){return s=$n(s,N),g(),s[s.length-1]!==null?[]:(F(t,0),u.events=iu(a,u.events,u),u.events)}function m(N,v){return rk(f(N),v)}function f(N){return nk(s,N)}function h(){const{_bufferIndex:N,_index:v,line:M,column:A,offset:D}=r;return{_bufferIndex:N,_index:v,line:M,column:A,offset:D}}function b(N){o[N.line]=N.column,P()}function g(){let N;for(;r._index<s.length;){const v=s[r._index];if(typeof v=="string")for(N=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===N&&r._bufferIndex<v.length;)x(v.charCodeAt(r._bufferIndex));else x(v)}}function x(N){c=c(N)}function E(N){Ue(N)?(r.line++,r.column=1,r.offset+=N===-3?2:1,P()):N!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===s[r._index].length&&(r._bufferIndex=-1,r._index++)),u.previous=N}function C(N,v){const M=v||{};return M.type=N,M.start=h(),u.events.push(["enter",M,u]),i.push(M),M}function T(N){const v=i.pop();return v.end=h(),u.events.push(["exit",v,u]),v}function w(N,v){F(N,v.from)}function S(N,v){v.restore()}function O(N,v){return M;function M(A,D,R){let z,U,j,_;return Array.isArray(A)?ne(A):"tokenize"in A?ne([A]):K(A);function K(q){return te;function te(Z){const re=Z!==null&&q[Z],Q=Z!==null&&q.null,G=[...Array.isArray(re)?re:re?[re]:[],...Array.isArray(Q)?Q:Q?[Q]:[]];return ne(G)(Z)}}function ne(q){return z=q,U=0,q.length===0?R:L(q[U])}function L(q){return te;function te(Z){return _=B(),j=q,q.partial||(u.currentConstruct=q),q.name&&u.parser.constructs.disable.null.includes(q.name)?X():q.tokenize.call(v?Object.assign(Object.create(u),v):u,l,fe,X)(Z)}}function fe(q){return N(j,_),D}function X(q){return _.restore(),++U<z.length?L(z[U]):R}}}function F(N,v){N.resolveAll&&!a.includes(N)&&a.push(N),N.resolve&&In(u.events,v,u.events.length-v,N.resolve(u.events.slice(v),u)),N.resolveTo&&(u.events=N.resolveTo(u.events,u))}function B(){const N=h(),v=u.previous,M=u.currentConstruct,A=u.events.length,D=Array.from(i);return{from:A,restore:R};function R(){r=N,u.previous=v,u.currentConstruct=M,u.events.length=A,i=D,P()}}function P(){r.line in o&&r.column<2&&(r.column=o[r.line],r.offset+=o[r.line]-1)}}function nk(e,t){const n=t.start._index,r=t.start._bufferIndex,o=t.end._index,a=t.end._bufferIndex;let s;if(n===o)s=[e[n].slice(r,a)];else{if(s=e.slice(n,o),r>-1){const i=s[0];typeof i=="string"?s[0]=i.slice(r):s.shift()}a>0&&s.push(e[o].slice(0,a))}return s}function rk(e,t){let n=-1;const r=[];let o;for(;++n<e.length;){const a=e[n];let s;if(typeof a=="string")s=a;else switch(a){case-5:{s="\r";break}case-4:{s=`
23
23
  `;break}case-3:{s=`\r
24
24
  `;break}case-2:{s=t?" ":" ";break}case-1:{if(!t&&o)continue;s=" ";break}default:s=String.fromCharCode(a)}o=a===-2,r.push(s)}return r.join("")}function ok(e){const r={constructs:V0([ek,...(e||{}).extensions||[]]),content:o(xT),defined:[],document:o(ET),flow:o(BS),lazy:{},string:o(US),text:o(zS)};return r;function o(a){return s;function s(i){return tk(r,a,i)}}}function ak(e){for(;!K0(e););return e}const dm=/[\0\t\n\r]/g;function sk(){let e=1,t="",n=!0,r;return o;function o(a,s,i){const l=[];let u,c,d,m,f;for(a=t+(typeof a=="string"?a.toString():new TextDecoder(s||void 0).decode(a)),d=0,t="",n&&(a.charCodeAt(0)===65279&&d++,n=void 0);d<a.length;){if(dm.lastIndex=d,u=dm.exec(a),m=u&&u.index!==void 0?u.index:a.length,f=a.charCodeAt(m),!u){t=a.slice(d);break}if(f===10&&d===m&&r)l.push(-3),r=void 0;else switch(r&&(l.push(-5),r=void 0),d<m&&(l.push(a.slice(d,m)),e+=m-d),f){case 0:{l.push(65533),e++;break}case 9:{for(c=Math.ceil(e/4)*4,l.push(-2);e++<c;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:r=!0,e=1}d=m+1}return i&&(r&&l.push(-5),t&&l.push(t),l.push(null)),l}}const ik=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function lk(e){return e.replace(ik,uk)}function uk(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const o=n.charCodeAt(1),a=o===120||o===88;return W0(n.slice(a?2:1),a?16:10)}return Xd(n)||e}const tb={}.hasOwnProperty;function ck(e,t,n){return typeof t!="string"&&(n=t,t=void 0),dk(n)(ak(ok(n).document().write(sk()(e,t,!0))))}function dk(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:a(Pe),autolinkProtocol:B,autolinkEmail:B,atxHeading:a(xe),blockQuote:a(Q),characterEscape:B,characterReference:B,codeFenced:a(G),codeFencedFenceInfo:s,codeFencedFenceMeta:s,codeIndented:a(G,s),codeText:a(se,s),codeTextData:B,data:B,codeFlowValue:B,definition:a(J),definitionDestinationString:s,definitionLabelString:s,definitionTitleString:s,emphasis:a(ee),hardBreakEscape:a(de),hardBreakTrailing:a(de),htmlFlow:a(be,s),htmlFlowData:B,htmlText:a(be,s),htmlTextData:B,image:a(le),label:s,link:a(Pe),listItem:a(ze),listItemValue:m,listOrdered:a(Te,d),listUnordered:a(Te),paragraph:a(we),reference:L,referenceString:s,resourceDestinationString:s,resourceTitleString:s,setextHeading:a(xe),strong:a(Et),thematicBreak:a(qe)},exit:{atxHeading:l(),atxHeadingSequence:w,autolink:l(),autolinkEmail:re,autolinkProtocol:Z,blockQuote:l(),characterEscapeValue:P,characterReferenceMarkerHexadecimal:X,characterReferenceMarkerNumeric:X,characterReferenceValue:q,characterReference:te,codeFenced:l(g),codeFencedFence:b,codeFencedFenceInfo:f,codeFencedFenceMeta:h,codeFlowValue:P,codeIndented:l(x),codeText:l(D),codeTextData:P,data:P,definition:l(),definitionDestinationString:T,definitionLabelString:E,definitionTitleString:C,emphasis:l(),hardBreakEscape:l(v),hardBreakTrailing:l(v),htmlFlow:l(M),htmlFlowData:P,htmlText:l(A),htmlTextData:P,image:l(z),label:j,labelText:U,lineEnding:N,link:l(R),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:fe,resourceDestinationString:_,resourceTitleString:K,resource:ne,setextHeading:l(F),setextHeadingLineSequence:O,setextHeadingText:S,strong:l(),thematicBreak:l()}};nb(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(ue){let Ee={type:"root",children:[]};const Me={stack:[Ee],tokenStack:[],config:t,enter:i,exit:u,buffer:s,resume:c,data:n},He=[];let Be=-1;for(;++Be<ue.length;)if(ue[Be][1].type==="listOrdered"||ue[Be][1].type==="listUnordered")if(ue[Be][0]==="enter")He.push(Be);else{const Ne=He.pop();Be=o(ue,Ne,Be)}for(Be=-1;++Be<ue.length;){const Ne=t[ue[Be][0]];tb.call(Ne,ue[Be][1].type)&&Ne[ue[Be][1].type].call(Object.assign({sliceSerialize:ue[Be][2].sliceSerialize},Me),ue[Be][1])}if(Me.tokenStack.length>0){const Ne=Me.tokenStack[Me.tokenStack.length-1];(Ne[1]||pm).call(Me,void 0,Ne[0])}for(Ee.position={start:qr(ue.length>0?ue[0][1].start:{line:1,column:1,offset:0}),end:qr(ue.length>0?ue[ue.length-2][1].end:{line:1,column:1,offset:0})},Be=-1;++Be<t.transforms.length;)Ee=t.transforms[Be](Ee)||Ee;return Ee}function o(ue,Ee,Me){let He=Ee-1,Be=-1,Ne=!1,Ze,ht,pt,ie;for(;++He<=Me;){const ye=ue[He];switch(ye[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{ye[0]==="enter"?Be++:Be--,ie=void 0;break}case"lineEndingBlank":{ye[0]==="enter"&&(Ze&&!ie&&!Be&&!pt&&(pt=He),ie=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:ie=void 0}if(!Be&&ye[0]==="enter"&&ye[1].type==="listItemPrefix"||Be===-1&&ye[0]==="exit"&&(ye[1].type==="listUnordered"||ye[1].type==="listOrdered")){if(Ze){let ve=He;for(ht=void 0;ve--;){const $e=ue[ve];if($e[1].type==="lineEnding"||$e[1].type==="lineEndingBlank"){if($e[0]==="exit")continue;ht&&(ue[ht][1].type="lineEndingBlank",Ne=!0),$e[1].type="lineEnding",ht=ve}else if(!($e[1].type==="linePrefix"||$e[1].type==="blockQuotePrefix"||$e[1].type==="blockQuotePrefixWhitespace"||$e[1].type==="blockQuoteMarker"||$e[1].type==="listItemIndent"))break}pt&&(!ht||pt<ht)&&(Ze._spread=!0),Ze.end=Object.assign({},ht?ue[ht][1].start:ye[1].end),ue.splice(ht||He,0,["exit",Ze,ye[2]]),He++,Me++}if(ye[1].type==="listItemPrefix"){const ve={type:"listItem",_spread:!1,start:Object.assign({},ye[1].start),end:void 0};Ze=ve,ue.splice(He,0,["enter",ve,ye[2]]),He++,Me++,pt=void 0,ie=!0}}}return ue[Ee][1]._spread=Ne,Me}function a(ue,Ee){return Me;function Me(He){i.call(this,ue(He),He),Ee&&Ee.call(this,He)}}function s(){this.stack.push({type:"fragment",children:[]})}function i(ue,Ee,Me){this.stack[this.stack.length-1].children.push(ue),this.stack.push(ue),this.tokenStack.push([Ee,Me||void 0]),ue.position={start:qr(Ee.start),end:void 0}}function l(ue){return Ee;function Ee(Me){ue&&ue.call(this,Me),u.call(this,Me)}}function u(ue,Ee){const Me=this.stack.pop(),He=this.tokenStack.pop();if(He)He[0].type!==ue.type&&(Ee?Ee.call(this,ue,He[0]):(He[1]||pm).call(this,ue,He[0]));else throw new Error("Cannot close `"+ue.type+"` ("+xs({start:ue.start,end:ue.end})+"): it’s not open");Me.position.end=qr(ue.end)}function c(){return Qd(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function m(ue){if(this.data.expectingFirstListItemValue){const Ee=this.stack[this.stack.length-2];Ee.start=Number.parseInt(this.sliceSerialize(ue),10),this.data.expectingFirstListItemValue=void 0}}function f(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.lang=ue}function h(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.meta=ue}function b(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function g(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.value=ue.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function x(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.value=ue.replace(/(\r?\n|\r)$/g,"")}function E(ue){const Ee=this.resume(),Me=this.stack[this.stack.length-1];Me.label=Ee,Me.identifier=er(this.sliceSerialize(ue)).toLowerCase()}function C(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.title=ue}function T(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.url=ue}function w(ue){const Ee=this.stack[this.stack.length-1];if(!Ee.depth){const Me=this.sliceSerialize(ue).length;Ee.depth=Me}}function S(){this.data.setextHeadingSlurpLineEnding=!0}function O(ue){const Ee=this.stack[this.stack.length-1];Ee.depth=this.sliceSerialize(ue).codePointAt(0)===61?1:2}function F(){this.data.setextHeadingSlurpLineEnding=void 0}function B(ue){const Me=this.stack[this.stack.length-1].children;let He=Me[Me.length-1];(!He||He.type!=="text")&&(He=st(),He.position={start:qr(ue.start),end:void 0},Me.push(He)),this.stack.push(He)}function P(ue){const Ee=this.stack.pop();Ee.value+=this.sliceSerialize(ue),Ee.position.end=qr(ue.end)}function N(ue){const Ee=this.stack[this.stack.length-1];if(this.data.atHardBreak){const Me=Ee.children[Ee.children.length-1];Me.position.end=qr(ue.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(Ee.type)&&(B.call(this,ue),P.call(this,ue))}function v(){this.data.atHardBreak=!0}function M(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.value=ue}function A(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.value=ue}function D(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.value=ue}function R(){const ue=this.stack[this.stack.length-1];if(this.data.inReference){const Ee=this.data.referenceType||"shortcut";ue.type+="Reference",ue.referenceType=Ee,delete ue.url,delete ue.title}else delete ue.identifier,delete ue.label;this.data.referenceType=void 0}function z(){const ue=this.stack[this.stack.length-1];if(this.data.inReference){const Ee=this.data.referenceType||"shortcut";ue.type+="Reference",ue.referenceType=Ee,delete ue.url,delete ue.title}else delete ue.identifier,delete ue.label;this.data.referenceType=void 0}function U(ue){const Ee=this.sliceSerialize(ue),Me=this.stack[this.stack.length-2];Me.label=lk(Ee),Me.identifier=er(Ee).toLowerCase()}function j(){const ue=this.stack[this.stack.length-1],Ee=this.resume(),Me=this.stack[this.stack.length-1];if(this.data.inReference=!0,Me.type==="link"){const He=ue.children;Me.children=He}else Me.alt=Ee}function _(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.url=ue}function K(){const ue=this.resume(),Ee=this.stack[this.stack.length-1];Ee.title=ue}function ne(){this.data.inReference=void 0}function L(){this.data.referenceType="collapsed"}function fe(ue){const Ee=this.resume(),Me=this.stack[this.stack.length-1];Me.label=Ee,Me.identifier=er(this.sliceSerialize(ue)).toLowerCase(),this.data.referenceType="full"}function X(ue){this.data.characterReferenceType=ue.type}function q(ue){const Ee=this.sliceSerialize(ue),Me=this.data.characterReferenceType;let He;Me?(He=W0(Ee,Me==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):He=Xd(Ee);const Be=this.stack[this.stack.length-1];Be.value+=He}function te(ue){const Ee=this.stack.pop();Ee.position.end=qr(ue.end)}function Z(ue){P.call(this,ue);const Ee=this.stack[this.stack.length-1];Ee.url=this.sliceSerialize(ue)}function re(ue){P.call(this,ue);const Ee=this.stack[this.stack.length-1];Ee.url="mailto:"+this.sliceSerialize(ue)}function Q(){return{type:"blockquote",children:[]}}function G(){return{type:"code",lang:null,meta:null,value:""}}function se(){return{type:"inlineCode",value:""}}function J(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function ee(){return{type:"emphasis",children:[]}}function xe(){return{type:"heading",depth:0,children:[]}}function de(){return{type:"break"}}function be(){return{type:"html",value:""}}function le(){return{type:"image",title:null,url:"",alt:null}}function Pe(){return{type:"link",title:null,url:"",children:[]}}function Te(ue){return{type:"list",ordered:ue.type==="listOrdered",start:null,spread:ue._spread,children:[]}}function ze(ue){return{type:"listItem",spread:ue._spread,checked:null,children:[]}}function we(){return{type:"paragraph",children:[]}}function Et(){return{type:"strong",children:[]}}function st(){return{type:"text",value:""}}function qe(){return{type:"thematicBreak"}}}function qr(e){return{line:e.line,column:e.column,offset:e.offset}}function nb(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?nb(e,r):pk(e,r)}}function pk(e,t){let n;for(n in t)if(tb.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function pm(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+xs({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+xs({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+xs({start:t.start,end:t.end})+") is still open")}function fk(e){const t=this;t.parser=n;function n(r){return ck(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function mk(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function hk(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
@@ -100,7 +100,7 @@ import {${t.sourceName}}" from '${t.modelPath}'"
100
100
  \f\r "&'<=>\``.split("")],[`\0
101
101
  \f\r "&'<=>\``.split(""),`\0
102
102
  \f\r "&'<=>\``.split("")]],single:[["&'".split(""),"\"&'`".split("")],["\0&'".split(""),"\0\"&'`".split("")]],double:[['"&'.split(""),"\"&'`".split("")],['\0"&'.split(""),"\0\"&'`".split("")]]};function jR(e,t,n,r){const o=r.schema,a=o.space==="svg"?!1:r.settings.omitOptionalTags;let s=o.space==="svg"?r.settings.closeEmptyElements:r.settings.voids.includes(e.tagName.toLowerCase());const i=[];let l;o.space==="html"&&e.tagName==="svg"&&(r.schema=Br);const u=HR(r,e.properties),c=r.all(o.space==="html"&&e.tagName==="template"?e.content:e);return r.schema=o,c&&(s=!1),(u||!a||!NR(e,t,n))&&(i.push("<",e.tagName,u?" "+u:""),s&&(o.space==="svg"||r.settings.closeSelfClosing)&&(l=u.charAt(u.length-1),(!r.settings.tightSelfClosing||l==="/"||l&&l!=='"'&&l!=="'")&&i.push(" "),i.push("/")),i.push(">")),i.push(c),!s&&(!a||!Tp(e,t,n))&&i.push("</"+e.tagName+">"),i.join("")}function HR(e,t){const n=[];let r=-1,o;if(t){for(o in t)if(t[o]!==null&&t[o]!==void 0){const a=UR(e,o,t[o]);a&&n.push(a)}}for(;++r<n.length;){const a=e.settings.tightAttributes?n[r].charAt(n[r].length-1):void 0;r!==n.length-1&&a!=='"'&&a!=="'"&&(n[r]+=" ")}return n.join("")}function UR(e,t,n){const r=oi(e.schema,t),o=e.settings.allowParseErrors&&e.schema.space==="html"?0:1,a=e.settings.allowDangerousCharacters?0:1;let s=e.quote,i;if(r.overloadedBoolean&&(n===r.attribute||n==="")?n=!0:(r.boolean||r.overloadedBoolean)&&(typeof n!="string"||n===r.attribute||n==="")&&(n=!!n),n==null||n===!1||typeof n=="number"&&Number.isNaN(n))return"";const l=fa(r.attribute,Object.assign({},e.settings.characterReferences,{subset:Oi.name[o][a]}));return n===!0||(n=Array.isArray(n)?(r.commaSeparated?ru:ou)(n,{padLeft:!e.settings.tightCommaSeparatedLists}):String(n),e.settings.collapseEmptyAttributes&&!n)?l:(e.settings.preferUnquoted&&(i=fa(n,Object.assign({},e.settings.characterReferences,{attribute:!0,subset:Oi.unquoted[o][a]}))),i!==n&&(e.settings.quoteSmart&&xl(n,s)>xl(n,e.alternative)&&(s=e.alternative),i=s+fa(n,Object.assign({},e.settings.characterReferences,{subset:(s==="'"?Oi.single:Oi.double)[o][a],attribute:!0}))+s),l+(i&&"="+i))}const zR=["<","&"];function Cy(e,t,n,r){return n&&n.type==="element"&&(n.tagName==="script"||n.tagName==="style")?e.value:fa(e.value,Object.assign({},r.settings.characterReferences,{subset:zR}))}function VR(e,t,n,r){return r.settings.allowDangerousHtml?e.value:Cy(e,t,n,r)}function WR(e,t,n,r){return r.all(e)}const qR=du("type",{invalid:YR,unknown:GR,handlers:{comment:yR,doctype:xR,element:jR,raw:VR,root:WR,text:Cy}});function YR(e){throw new Error("Expected node, not `"+e+"`")}function GR(e){const t=e;throw new Error("Cannot compile unknown node `"+t.type+"`")}const KR={},QR={},XR=[];function ZR(e,t){const n=KR,r=n.quote||'"',o=r==='"'?"'":'"';if(r!=='"'&&r!=="'")throw new Error("Invalid quote `"+r+"`, expected `'` or `\"`");return{one:JR,all:e8,settings:{omitOptionalTags:n.omitOptionalTags||!1,allowParseErrors:n.allowParseErrors||!1,allowDangerousCharacters:n.allowDangerousCharacters||!1,quoteSmart:n.quoteSmart||!1,preferUnquoted:n.preferUnquoted||!1,tightAttributes:n.tightAttributes||!1,upperDoctype:n.upperDoctype||!1,tightDoctype:n.tightDoctype||!1,bogusComments:n.bogusComments||!1,tightCommaSeparatedLists:n.tightCommaSeparatedLists||!1,tightSelfClosing:n.tightSelfClosing||!1,collapseEmptyAttributes:n.collapseEmptyAttributes||!1,allowDangerousHtml:n.allowDangerousHtml||!1,voids:n.voids||Yb,characterReferences:n.characterReferences||QR,closeSelfClosing:n.closeSelfClosing||!1,closeEmptyElements:n.closeEmptyElements||!1},schema:n.space==="svg"?Br:Pa,quote:r,alternative:o}.one(Array.isArray(e)?{type:"root",children:e}:e,void 0,void 0)}function JR(e,t,n){return qR(e,t,n,this)}function e8(e){const t=[],n=e&&e.children||XR;let r=-1;for(;++r<n.length;)t[r]=this.one(n[r],r,e);return t.join("")}function t8(e){return Array.isArray(e)?e:[e]}function yu(e,t=!1){const n=e.split(/(\r?\n)/g);let r=0;const o=[];for(let a=0;a<n.length;a+=2){const s=t?n[a]+(n[a+1]||""):n[a];o.push([s,r]),r+=n[a].length,r+=n[a+1]?.length||0}return o}function Sp(e){return!e||["plaintext","txt","text","plain"].includes(e)}function n8(e){return e==="ansi"||Sp(e)}function kp(e){return e==="none"}function r8(e){return kp(e)}function Ey(e,t){if(!t)return e;e.properties||={},e.properties.class||=[],typeof e.properties.class=="string"&&(e.properties.class=e.properties.class.split(/\s+/g)),Array.isArray(e.properties.class)||(e.properties.class=[]);const n=Array.isArray(t)?t:t.split(/\s+/g);for(const r of n)r&&!e.properties.class.includes(r)&&e.properties.class.push(r);return e}function o8(e,t){let n=0;const r=[];for(const o of t)o>n&&r.push({...e,content:e.content.slice(n,o),offset:e.offset+n}),n=o;return n<e.content.length&&r.push({...e,content:e.content.slice(n),offset:e.offset+n}),r}function a8(e,t){const n=Array.from(t instanceof Set?t:new Set(t)).sort((r,o)=>r-o);return n.length?e.map(r=>r.flatMap(o=>{const a=n.filter(s=>o.offset<s&&s<o.offset+o.content.length).map(s=>s-o.offset).sort((s,i)=>s-i);return a.length?o8(o,a):o})):e}async function vy(e){return Promise.resolve(typeof e=="function"?e():e).then(t=>t.default||t)}function Pl(e,t){const n=typeof e=="string"?{}:{...e.colorReplacements},r=typeof e=="string"?e:e.name;for(const[o,a]of Object.entries(t?.colorReplacements||{}))typeof a=="string"?n[o]=a:o===r&&Object.assign(n,a);return n}function Co(e,t){return e&&(t?.[e?.toLowerCase()]||e)}function Ty(e){const t={};return e.color&&(t.color=e.color),e.bgColor&&(t["background-color"]=e.bgColor),e.fontStyle&&(e.fontStyle&Mr.Italic&&(t["font-style"]="italic"),e.fontStyle&Mr.Bold&&(t["font-weight"]="bold"),e.fontStyle&Mr.Underline&&(t["text-decoration"]="underline")),t}function s8(e){return typeof e=="string"?e:Object.entries(e).map(([t,n])=>`${t}:${n}`).join(";")}function i8(e){const t=yu(e,!0).map(([o])=>o);function n(o){if(o===e.length)return{line:t.length-1,character:t[t.length-1].length};let a=o,s=0;for(const i of t){if(a<i.length)break;a-=i.length,s++}return{line:s,character:a}}function r(o,a){let s=0;for(let i=0;i<o;i++)s+=t[i].length;return s+=a,s}return{lines:t,indexToPos:n,posToIndex:r}}class un extends Error{constructor(t){super(t),this.name="ShikiError"}}const Sy=new WeakMap;function xu(e,t){Sy.set(e,t)}function Ws(e){return Sy.get(e)}class Ba{_stacks={};lang;get themes(){return Object.keys(this._stacks)}get theme(){return this.themes[0]}get _stack(){return this._stacks[this.theme]}static initial(t,n){return new Ba(Object.fromEntries(t8(n).map(r=>[r,Ed])),t)}constructor(...t){if(t.length===2){const[n,r]=t;this.lang=r,this._stacks=n}else{const[n,r,o]=t;this.lang=r,this._stacks={[o]:n}}}getInternalStack(t=this.theme){return this._stacks[t]}get scopes(){return Nh(this._stacks[this.theme])}getScopes(t=this.theme){return Nh(this._stacks[t])}toJSON(){return{lang:this.lang,theme:this.theme,themes:this.themes,scopes:this.scopes}}}function Nh(e){const t=[],n=new Set;function r(o){if(n.has(o))return;n.add(o);const a=o?.nameScopesList?.scopeName;a&&t.push(a),o.parent&&r(o.parent)}return r(e),t}function l8(e,t){if(!(e instanceof Ba))throw new un("Invalid grammar state");return e.getInternalStack(t)}function u8(){const e=new WeakMap;function t(n){if(!e.has(n.meta)){let r=function(s){if(typeof s=="number"){if(s<0||s>n.source.length)throw new un(`Invalid decoration offset: ${s}. Code length: ${n.source.length}`);return{...o.indexToPos(s),offset:s}}else{const i=o.lines[s.line];if(i===void 0)throw new un(`Invalid decoration position ${JSON.stringify(s)}. Lines length: ${o.lines.length}`);if(s.character<0||s.character>i.length)throw new un(`Invalid decoration position ${JSON.stringify(s)}. Line ${s.line} length: ${i.length}`);return{...s,offset:o.posToIndex(s.line,s.character)}}};const o=i8(n.source),a=(n.options.decorations||[]).map(s=>({...s,start:r(s.start),end:r(s.end)}));c8(a),e.set(n.meta,{decorations:a,converter:o,source:n.source})}return e.get(n.meta)}return{name:"shiki:decorations",tokens(n){if(!this.options.decorations?.length)return;const o=t(this).decorations.flatMap(s=>[s.start.offset,s.end.offset]);return a8(n,o)},code(n){if(!this.options.decorations?.length)return;const r=t(this),o=Array.from(n.children).filter(c=>c.type==="element"&&c.tagName==="span");if(o.length!==r.converter.lines.length)throw new un(`Number of lines in code element (${o.length}) does not match the number of lines in the source (${r.converter.lines.length}). Failed to apply decorations.`);function a(c,d,m,f){const h=o[c];let b="",g=-1,x=-1;if(d===0&&(g=0),m===0&&(x=0),m===Number.POSITIVE_INFINITY&&(x=h.children.length),g===-1||x===-1)for(let C=0;C<h.children.length;C++)b+=ky(h.children[C]),g===-1&&b.length===d&&(g=C+1),x===-1&&b.length===m&&(x=C+1);if(g===-1)throw new un(`Failed to find start index for decoration ${JSON.stringify(f.start)}`);if(x===-1)throw new un(`Failed to find end index for decoration ${JSON.stringify(f.end)}`);const E=h.children.slice(g,x);if(!f.alwaysWrap&&E.length===h.children.length)i(h,f,"line");else if(!f.alwaysWrap&&E.length===1&&E[0].type==="element")i(E[0],f,"token");else{const C={type:"element",tagName:"span",properties:{},children:E};i(C,f,"wrapper"),h.children.splice(g,E.length,C)}}function s(c,d){o[c]=i(o[c],d,"line")}function i(c,d,m){const f=d.properties||{},h=d.transform||(b=>b);return c.tagName=d.tagName||"span",c.properties={...c.properties,...f,class:c.properties.class},d.properties?.class&&Ey(c,d.properties.class),c=h(c,m)||c,c}const l=[],u=r.decorations.sort((c,d)=>d.start.offset-c.start.offset);for(const c of u){const{start:d,end:m}=c;if(d.line===m.line)a(d.line,d.character,m.character,c);else if(d.line<m.line){a(d.line,d.character,Number.POSITIVE_INFINITY,c);for(let f=d.line+1;f<m.line;f++)l.unshift(()=>s(f,c));a(m.line,0,m.character,c)}}l.forEach(c=>c())}}}function c8(e){for(let t=0;t<e.length;t++){const n=e[t];if(n.start.offset>n.end.offset)throw new un(`Invalid decoration range: ${JSON.stringify(n.start)} - ${JSON.stringify(n.end)}`);for(let r=t+1;r<e.length;r++){const o=e[r],a=n.start.offset<o.start.offset&&o.start.offset<n.end.offset,s=n.start.offset<o.end.offset&&o.end.offset<n.end.offset,i=o.start.offset<n.start.offset&&n.start.offset<o.end.offset,l=o.start.offset<n.end.offset&&n.end.offset<o.end.offset;if(a||s||i||l){if(s&&s||i&&l)continue;throw new un(`Decorations ${JSON.stringify(n.start)} and ${JSON.stringify(o.start)} intersect.`)}}}}function ky(e){return e.type==="text"?e.value:e.type==="element"?e.children.map(ky).join(""):""}const d8=[u8()];function Rl(e){return[...e.transformers||[],...d8]}var Eo=["black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite"],wc={1:"bold",2:"dim",3:"italic",4:"underline",7:"reverse",9:"strikethrough"};function p8(e,t){const n=e.indexOf("\x1B[",t);if(n!==-1){const r=e.indexOf("m",n);return{sequence:e.substring(n+2,r).split(";"),startPosition:n,position:r+1}}return{position:e.length}}function Oh(e,t){let n=1;const r=e[t+n++];let o;if(r==="2"){const a=[e[t+n++],e[t+n++],e[t+n]].map(s=>Number.parseInt(s));a.length===3&&!a.some(s=>Number.isNaN(s))&&(o={type:"rgb",rgb:a})}else if(r==="5"){const a=Number.parseInt(e[t+n]);Number.isNaN(a)||(o={type:"table",index:Number(a)})}return[n,o]}function f8(e){const t=[];for(let n=0;n<e.length;n++){const r=e[n],o=Number.parseInt(r);if(!Number.isNaN(o))if(o===0)t.push({type:"resetAll"});else if(o<=9)wc[o]&&t.push({type:"setDecoration",value:wc[o]});else if(o<=29){const a=wc[o-20];a&&t.push({type:"resetDecoration",value:a})}else if(o<=37)t.push({type:"setForegroundColor",value:{type:"named",name:Eo[o-30]}});else if(o===38){const[a,s]=Oh(e,n);s&&t.push({type:"setForegroundColor",value:s}),n+=a}else if(o===39)t.push({type:"resetForegroundColor"});else if(o<=47)t.push({type:"setBackgroundColor",value:{type:"named",name:Eo[o-40]}});else if(o===48){const[a,s]=Oh(e,n);s&&t.push({type:"setBackgroundColor",value:s}),n+=a}else o===49?t.push({type:"resetBackgroundColor"}):o>=90&&o<=97?t.push({type:"setForegroundColor",value:{type:"named",name:Eo[o-90+8]}}):o>=100&&o<=107&&t.push({type:"setBackgroundColor",value:{type:"named",name:Eo[o-100+8]}})}return t}function m8(){let e=null,t=null,n=new Set;return{parse(r){const o=[];let a=0;do{const s=p8(r,a),i=s.sequence?r.substring(a,s.startPosition):r.substring(a);if(i.length>0&&o.push({value:i,foreground:e,background:t,decorations:new Set(n)}),s.sequence){const l=f8(s.sequence);for(const u of l)u.type==="resetAll"?(e=null,t=null,n.clear()):u.type==="resetForegroundColor"?e=null:u.type==="resetBackgroundColor"?t=null:u.type==="resetDecoration"&&n.delete(u.value);for(const u of l)u.type==="setForegroundColor"?e=u.value:u.type==="setBackgroundColor"?t=u.value:u.type==="setDecoration"&&n.add(u.value)}a=s.position}while(a<r.length);return o}}}var h8={black:"#000000",red:"#bb0000",green:"#00bb00",yellow:"#bbbb00",blue:"#0000bb",magenta:"#ff00ff",cyan:"#00bbbb",white:"#eeeeee",brightBlack:"#555555",brightRed:"#ff5555",brightGreen:"#00ff00",brightYellow:"#ffff55",brightBlue:"#5555ff",brightMagenta:"#ff55ff",brightCyan:"#55ffff",brightWhite:"#ffffff"};function g8(e=h8){function t(i){return e[i]}function n(i){return`#${i.map(l=>Math.max(0,Math.min(l,255)).toString(16).padStart(2,"0")).join("")}`}let r;function o(){if(r)return r;r=[];for(let u=0;u<Eo.length;u++)r.push(t(Eo[u]));let i=[0,95,135,175,215,255];for(let u=0;u<6;u++)for(let c=0;c<6;c++)for(let d=0;d<6;d++)r.push(n([i[u],i[c],i[d]]));let l=8;for(let u=0;u<24;u++,l+=10)r.push(n([l,l,l]));return r}function a(i){return o()[i]}function s(i){switch(i.type){case"named":return t(i.name);case"rgb":return n(i.rgb);case"table":return a(i.index)}}return{value:s}}function b8(e,t,n){const r=Pl(e,n),o=yu(t),a=g8(Object.fromEntries(Eo.map(i=>[i,e.colors?.[`terminal.ansi${i[0].toUpperCase()}${i.substring(1)}`]]))),s=m8();return o.map(i=>s.parse(i[0]).map(l=>{let u,c;l.decorations.has("reverse")?(u=l.background?a.value(l.background):e.bg,c=l.foreground?a.value(l.foreground):e.fg):(u=l.foreground?a.value(l.foreground):e.fg,c=l.background?a.value(l.background):void 0),u=Co(u,r),c=Co(c,r),l.decorations.has("dim")&&(u=y8(u));let d=Mr.None;return l.decorations.has("bold")&&(d|=Mr.Bold),l.decorations.has("italic")&&(d|=Mr.Italic),l.decorations.has("underline")&&(d|=Mr.Underline),{content:l.value,offset:i[1],color:u,bgColor:c,fontStyle:d}}))}function y8(e){const t=e.match(/#([0-9a-f]{3})([0-9a-f]{3})?([0-9a-f]{2})?/);if(t)if(t[3]){const r=Math.round(Number.parseInt(t[3],16)/2).toString(16).padStart(2,"0");return`#${t[1]}${t[2]}${r}`}else return t[2]?`#${t[1]}${t[2]}80`:`#${Array.from(t[1]).map(r=>`${r}${r}`).join("")}80`;const n=e.match(/var\((--[\w-]+-ansi-[\w-]+)\)/);return n?`var(${n[1]}-dim)`:e}function wp(e,t,n={}){const{lang:r="text",theme:o=e.getLoadedThemes()[0]}=n;if(Sp(r)||kp(o))return yu(t).map(l=>[{content:l[0],offset:l[1]}]);const{theme:a,colorMap:s}=e.setTheme(o);if(r==="ansi")return b8(a,t,n);const i=e.getLanguage(r);if(n.grammarState){if(n.grammarState.lang!==i.name)throw new wo(`Grammar state language "${n.grammarState.lang}" does not match highlight language "${i.name}"`);if(!n.grammarState.themes.includes(a.name))throw new wo(`Grammar state themes "${n.grammarState.themes}" do not contain highlight theme "${a.name}"`)}return C8(t,i,a,s,n)}function x8(...e){if(e.length===2)return Ws(e[1]);const[t,n,r={}]=e,{lang:o="text",theme:a=t.getLoadedThemes()[0]}=r;if(Sp(o)||kp(a))throw new wo("Plain language does not have grammar state");if(o==="ansi")throw new wo("ANSI language does not have grammar state");const{theme:s,colorMap:i}=t.setTheme(a),l=t.getLanguage(o);return new Ba(Ml(n,l,s,i,r).stateStack,l.name,s.name)}function C8(e,t,n,r,o){const a=Ml(e,t,n,r,o),s=new Ba(Ml(e,t,n,r,o).stateStack,t.name,n.name);return xu(a.tokens,s),a.tokens}function Ml(e,t,n,r,o){const a=Pl(n,o),{tokenizeMaxLineLength:s=0,tokenizeTimeLimit:i=500}=o,l=yu(e);let u=o.grammarState?l8(o.grammarState,n.name)??Ed:o.grammarContextCode!=null?Ml(o.grammarContextCode,t,n,r,{...o,grammarState:void 0,grammarContextCode:void 0}).stateStack:Ed,c=[];const d=[];for(let m=0,f=l.length;m<f;m++){const[h,b]=l[m];if(h===""){c=[],d.push([]);continue}if(s>0&&h.length>=s){c=[],d.push([{content:h,offset:b,color:"",fontStyle:0}]);continue}let g,x,E;o.includeExplanation&&(g=t.tokenizeLine(h,u),x=g.tokens,E=0);const C=t.tokenizeLine2(h,u,i),T=C.tokens.length/2;for(let w=0;w<T;w++){const S=C.tokens[2*w],O=w+1<T?C.tokens[2*w+2]:h.length;if(S===O)continue;const F=C.tokens[2*w+1],B=Co(r[Ea.getForeground(F)],a),P=Ea.getFontStyle(F),N={content:h.substring(S,O),offset:b+S,color:B,fontStyle:P};if(o.includeExplanation){const v=[];if(o.includeExplanation!=="scopeName")for(const A of n.settings){let D;switch(typeof A.scope){case"string":D=A.scope.split(/,/).map(R=>R.trim());break;case"object":D=A.scope;break;default:continue}v.push({settings:A,selectors:D.map(R=>R.split(/ /))})}N.explanation=[];let M=0;for(;S+M<O;){const A=x[E],D=h.substring(A.startIndex,A.endIndex);M+=D.length,N.explanation.push({content:D,scopes:o.includeExplanation==="scopeName"?E8(A.scopes):v8(v,A.scopes)}),E+=1}}c.push(N)}d.push(c),c=[],u=C.ruleStack}return{tokens:d,stateStack:u}}function E8(e){return e.map(t=>({scopeName:t}))}function v8(e,t){const n=[];for(let r=0,o=t.length;r<o;r++){const a=t[r];n[r]={scopeName:a,themeMatches:S8(e,a,t.slice(0,r))}}return n}function Lh(e,t){return e===t||t.substring(0,e.length)===e&&t[e.length]==="."}function T8(e,t,n){if(!Lh(e[e.length-1],t))return!1;let r=e.length-2,o=n.length-1;for(;r>=0&&o>=0;)Lh(e[r],n[o])&&(r-=1),o-=1;return r===-1}function S8(e,t,n){const r=[];for(const{selectors:o,settings:a}of e)for(const s of o)if(T8(s,t,n)){r.push(a);break}return r}function wy(e,t,n){const r=Object.entries(n.themes).filter(l=>l[1]).map(l=>({color:l[0],theme:l[1]})),o=r.map(l=>{const u=wp(e,t,{...n,theme:l.theme}),c=Ws(u),d=typeof l.theme=="string"?l.theme:l.theme.name;return{tokens:u,state:c,theme:d}}),a=k8(...o.map(l=>l.tokens)),s=a[0].map((l,u)=>l.map((c,d)=>{const m={content:c.content,variants:{},offset:c.offset};return"includeExplanation"in n&&n.includeExplanation&&(m.explanation=c.explanation),a.forEach((f,h)=>{const{content:b,explanation:g,offset:x,...E}=f[u][d];m.variants[r[h].color]=E}),m})),i=o[0].state?new Ba(Object.fromEntries(o.map(l=>[l.theme,l.state?.getInternalStack(l.theme)])),o[0].state.lang):void 0;return i&&xu(s,i),s}function k8(...e){const t=e.map(()=>[]),n=e.length;for(let r=0;r<e[0].length;r++){const o=e.map(l=>l[r]),a=t.map(()=>[]);t.forEach((l,u)=>l.push(a[u]));const s=o.map(()=>0),i=o.map(l=>l[0]);for(;i.every(l=>l);){const l=Math.min(...i.map(u=>u.content.length));for(let u=0;u<n;u++){const c=i[u];c.content.length===l?(a[u].push(c),s[u]+=1,i[u]=o[u][s[u]]):(a[u].push({...c,content:c.content.slice(0,l)}),i[u]={...c,content:c.content.slice(l),offset:c.offset+l})}}}return t}function Nl(e,t,n){let r,o,a,s,i,l;if("themes"in n){const{defaultColor:u="light",cssVariablePrefix:c="--shiki-"}=n,d=Object.entries(n.themes).filter(g=>g[1]).map(g=>({color:g[0],theme:g[1]})).sort((g,x)=>g.color===u?-1:x.color===u?1:0);if(d.length===0)throw new wo("`themes` option must not be empty");const m=wy(e,t,n);if(l=Ws(m),u&&!d.find(g=>g.color===u))throw new wo(`\`themes\` option must contain the defaultColor key \`${u}\``);const f=d.map(g=>e.getTheme(g.theme)),h=d.map(g=>g.color);a=m.map(g=>g.map(x=>w8(x,h,c,u))),l&&xu(a,l);const b=d.map(g=>Pl(g.theme,n));o=d.map((g,x)=>(x===0&&u?"":`${c+g.color}:`)+(Co(f[x].fg,b[x])||"inherit")).join(";"),r=d.map((g,x)=>(x===0&&u?"":`${c+g.color}-bg:`)+(Co(f[x].bg,b[x])||"inherit")).join(";"),s=`shiki-themes ${f.map(g=>g.name).join(" ")}`,i=u?void 0:[o,r].join(";")}else if("theme"in n){const u=Pl(n.theme,n);a=wp(e,t,n);const c=e.getTheme(n.theme);r=Co(c.bg,u),o=Co(c.fg,u),s=c.name,l=Ws(a)}else throw new wo("Invalid options, either `theme` or `themes` must be provided");return{tokens:a,fg:o,bg:r,themeName:s,rootStyle:i,grammarState:l}}function w8(e,t,n,r){const o={content:e.content,explanation:e.explanation,offset:e.offset},a=t.map(l=>Ty(e.variants[l])),s=new Set(a.flatMap(l=>Object.keys(l))),i={};return a.forEach((l,u)=>{for(const c of s){const d=l[c]||"inherit";if(u===0&&r)i[c]=d;else{const m=c==="color"?"":c==="background-color"?"-bg":`-${c}`,f=n+t[u]+(c==="color"?"":m);i[f]=d}}}),o.htmlStyle=i,o}function Ol(e,t,n,r={meta:{},options:n,codeToHast:(o,a)=>Ol(e,o,a),codeToTokens:(o,a)=>Nl(e,o,a)}){let o=t;for(const f of Rl(n))o=f.preprocess?.call(r,o,n)||o;let{tokens:a,fg:s,bg:i,themeName:l,rootStyle:u,grammarState:c}=Nl(e,o,n);const{mergeWhitespaces:d=!0}=n;d===!0?a=I8(a):d==="never"&&(a=A8(a));const m={...r,get source(){return o}};for(const f of Rl(n))a=f.tokens?.call(m,a)||a;return _8(a,{...n,fg:s,bg:i,themeName:l,rootStyle:u},m,c)}function _8(e,t,n,r=Ws(e)){const o=Rl(t),a=[],s={type:"root",children:[]},{structure:i="classic",tabindex:l="0"}=t;let u={type:"element",tagName:"pre",properties:{class:`shiki ${t.themeName||""}`,style:t.rootStyle||`background-color:${t.bg};color:${t.fg}`,...l!==!1&&l!=null?{tabindex:l.toString()}:{},...Object.fromEntries(Array.from(Object.entries(t.meta||{})).filter(([h])=>!h.startsWith("_")))},children:[]},c={type:"element",tagName:"code",properties:{},children:a};const d=[],m={...n,structure:i,addClassToHast:Ey,get source(){return n.source},get tokens(){return e},get options(){return t},get root(){return s},get pre(){return u},get code(){return c},get lines(){return d}};if(e.forEach((h,b)=>{b&&(i==="inline"?s.children.push({type:"element",tagName:"br",properties:{},children:[]}):i==="classic"&&a.push({type:"text",value:`
103
- `}));let g={type:"element",tagName:"span",properties:{class:"line"},children:[]},x=0;for(const E of h){let C={type:"element",tagName:"span",properties:{...E.htmlAttrs},children:[{type:"text",value:E.content}]};E.htmlStyle;const T=s8(E.htmlStyle||Ty(E));T&&(C.properties.style=T);for(const w of o)C=w?.span?.call(m,C,b+1,x,g,E)||C;i==="inline"?s.children.push(C):i==="classic"&&g.children.push(C),x+=E.content.length}if(i==="classic"){for(const E of o)g=E?.line?.call(m,g,b+1)||g;d.push(g),a.push(g)}}),i==="classic"){for(const h of o)c=h?.code?.call(m,c)||c;u.children.push(c);for(const h of o)u=h?.pre?.call(m,u)||u;s.children.push(u)}let f=s;for(const h of o)f=h?.root?.call(m,f)||f;return r&&xu(f,r),f}function I8(e){return e.map(t=>{const n=[];let r="",o=0;return t.forEach((a,s)=>{const l=!(a.fontStyle&&a.fontStyle&Mr.Underline);l&&a.content.match(/^\s+$/)&&t[s+1]?(o||(o=a.offset),r+=a.content):r?(l?n.push({...a,offset:o,content:r+a.content}):n.push({content:r,offset:o},a),o=0,r=""):n.push(a)}),n})}function A8(e){return e.map(t=>t.flatMap(n=>{if(n.content.match(/^\s+$/))return n;const r=n.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return n;const[,o,a,s]=r;if(!o&&!s)return n;const i=[{...n,offset:n.offset+o.length,content:a}];return o&&i.unshift({content:o,offset:n.offset}),s&&i.push({content:s,offset:n.offset+o.length+a.length}),i}))}function D8(e,t,n){const r={meta:{},options:n,codeToHast:(a,s)=>Ol(e,a,s),codeToTokens:(a,s)=>Nl(e,a,s)};let o=ZR(Ol(e,t,n,r));for(const a of Rl(n))o=a.postprocess?.call(r,o,n)||o;return o}const Fh={light:"#333333",dark:"#bbbbbb"},$h={light:"#fffffe",dark:"#1e1e1e"},Bh="__shiki_resolved";function _p(e){if(e?.[Bh])return e;const t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){const i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(n=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!n&&t?.colors?.["editor.background"]&&(n=t.colors["editor.background"]),r||(r=t.type==="light"?Fh.light:Fh.dark),n||(n=t.type==="light"?$h.light:$h.dark),t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0;const a=new Map;function s(i){if(a.has(i))return a.get(i);o+=1;const l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(a.set(i,l),l)}t.settings=t.settings.map(i=>{const l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;const c={...i,settings:{...i.settings}};if(l){const d=s(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,c.settings.foreground=d}if(u){const d=s(i.settings.background);t.colorReplacements[d]=i.settings.background,c.settings.background=d}return c});for(const i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){const l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Bh,{enumerable:!1,writable:!1,value:!0}),t}async function _y(e){return Array.from(new Set((await Promise.all(e.filter(t=>!n8(t)).map(async t=>await vy(t).then(n=>Array.isArray(n)?n:[n])))).flat()))}async function Iy(e){return(await Promise.all(e.map(async n=>r8(n)?null:_p(await vy(n))))).filter(n=>!!n)}class P8 extends ZP{constructor(t,n,r,o={}){super(t),this._resolver=t,this._themes=n,this._langs=r,this._alias=o,this._themes.map(a=>this.loadTheme(a)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){const n=_p(t);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let n=this._textmateThemeCache.get(t);n||(n=wl.createFromRawTheme(t),this._textmateThemeCache.set(t,n)),this._syncRegistry.setTheme(n)}getGrammar(t){if(this._alias[t]){const n=new Set([t]);for(;this._alias[t];){if(t=this._alias[t],n.has(t))throw new un(`Circular alias \`${Array.from(n).join(" -> ")} -> ${t}\``);n.add(t)}}return this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;const n=new Set([...this._langMap.values()].filter(a=>a.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);const r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);const o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(a=>{this._alias[a]=t.name}),this._loadedLanguagesCache=null,n.size)for(const a of n)this._resolvedGrammars.delete(a.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(a.scopeName),this._syncRegistry?._grammars?.delete(a.scopeName),this.loadLanguage(this._langMap.get(a.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(const o of t)this.resolveEmbeddedLanguages(o);const n=Array.from(this._langGraph.entries()),r=n.filter(([o,a])=>!a);if(r.length){const o=n.filter(([a,s])=>s&&s.embeddedLangs?.some(i=>r.map(([l])=>l).includes(i))).filter(a=>!r.includes(a));throw new un(`Missing languages ${r.map(([a])=>`\`${a}\``).join(", ")}, required by ${o.map(([a])=>`\`${a}\``).join(", ")}`)}for(const[o,a]of n)this._resolver.addLanguage(a);for(const[o,a]of n)this.loadLanguage(a)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){if(this._langMap.set(t.name,t),this._langGraph.set(t.name,t),t.embeddedLangs)for(const n of t.embeddedLangs)this._langGraph.set(n,this._langMap.get(n))}}class R8{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,n){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},n.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(n=>{this._langs.set(n,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(n=>{this._injections.get(n)||this._injections.set(n,[]),this._injections.get(n).push(t.scopeName)})}getInjections(t){const n=t.split(".");let r=[];for(let o=1;o<=n.length;o++){const a=n.slice(0,o).join(".");r=[...r,...this._injections.get(a)||[]]}return r}}let ns=0;function M8(e){ns+=1,e.warnings!==!1&&ns>=10&&ns%10===0&&console.warn(`[Shiki] ${ns} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new un("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(_p),o=new R8(e.engine,n),a=new P8(o,r,n,e.langAlias);let s;function i(E){g();const C=a.getGrammar(typeof E=="string"?E:E.name);if(!C)throw new un(`Language \`${E}\` not found, you may need to load it first`);return C}function l(E){if(E==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};g();const C=a.getTheme(E);if(!C)throw new un(`Theme \`${E}\` not found, you may need to load it first`);return C}function u(E){g();const C=l(E);s!==E&&(a.setTheme(C),s=E);const T=a.getColorMap();return{theme:C,colorMap:T}}function c(){return g(),a.getLoadedThemes()}function d(){return g(),a.getLoadedLanguages()}function m(...E){g(),a.loadLanguages(E.flat(1))}async function f(...E){return m(await _y(E))}function h(...E){g();for(const C of E.flat(1))a.loadTheme(C)}async function b(...E){return g(),h(await Iy(E))}function g(){if(t)throw new un("Shiki instance has been disposed")}function x(){t||(t=!0,a.dispose(),ns-=1)}return{setTheme:u,getTheme:l,getLanguage:i,getLoadedThemes:c,getLoadedLanguages:d,loadLanguage:f,loadLanguageSync:m,loadTheme:b,loadThemeSync:h,dispose:x,[Symbol.dispose]:x}}async function N8(e={}){e.loadWasm;const[t,n,r]=await Promise.all([Iy(e.themes||[]),_y(e.langs||[]),e.engine||ey(e.loadWasm||pP())]);return M8({...e,themes:t,langs:n,engine:r})}async function O8(e={}){const t=await N8(e);return{getLastGrammarState:(...n)=>x8(t,...n),codeToTokensBase:(n,r)=>wp(t,n,r),codeToTokensWithThemes:(n,r)=>wy(t,n,r),codeToTokens:(n,r)=>Nl(t,n,r),codeToHast:(n,r)=>Ol(t,n,r),codeToHtml:(n,r)=>D8(t,n,r),...t,getInternalContext:()=>t}}const L8=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^]\\\\s]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[Ee][-+]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"include":"#value"},{"match":"[^,\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^}\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"/\\\\\\\\bfnrt]|u\\\\h{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),F8=[L8],$8=Object.freeze(JSON.parse('{"displayName":"SQL","name":"sql","patterns":[{"match":"((?<!@)@)\\\\b(\\\\w+)\\\\b","name":"text.variable"},{"match":"(\\\\[)[^]]*(])","name":"text.bracketed"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"},"5":{"name":"entity.name.function.sql"}},"match":"(?i:^\\\\s*(create(?:\\\\s+or\\\\s+replace)?)\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)([\\"\'`]?)(\\\\w+)\\\\4","name":"meta.create.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"}},"match":"(?i:^\\\\s*(drop)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"},"3":{"name":"entity.name.function.sql"},"4":{"name":"keyword.other.cascade.sql"}},"match":"(?i:\\\\s*(drop)\\\\s+(table)\\\\s+(\\\\w+)(\\\\s+cascade)?\\\\b)","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"}},"match":"(?i:^\\\\s*(alter)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)","name":"meta.alter.sql"},{"captures":{"1":{"name":"storage.type.sql"},"2":{"name":"storage.type.sql"},"3":{"name":"constant.numeric.sql"},"4":{"name":"storage.type.sql"},"5":{"name":"constant.numeric.sql"},"6":{"name":"storage.type.sql"},"7":{"name":"constant.numeric.sql"},"8":{"name":"constant.numeric.sql"},"9":{"name":"storage.type.sql"},"10":{"name":"constant.numeric.sql"},"11":{"name":"storage.type.sql"},"12":{"name":"storage.type.sql"},"13":{"name":"storage.type.sql"},"14":{"name":"constant.numeric.sql"},"15":{"name":"storage.type.sql"}},"match":"(?i)\\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\b|\\\\b(bit\\\\svarying|character\\\\s(?:varying)?|tinyint|var\\\\schar|float|interval)\\\\((\\\\d+)\\\\)|\\\\b(char|number|varchar\\\\d?)\\\\b(?:\\\\((\\\\d+)\\\\))?|\\\\b(numeric|decimal)\\\\b(?:\\\\((\\\\d+),(\\\\d+)\\\\))?|\\\\b(times?)\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\swith(?:out)?\\\\stime\\\\szone\\\\b)?|\\\\b(timestamp)(s|tz)?\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\s(with(?:|out))\\\\stime\\\\szone\\\\b)?"},{"match":"(?i:\\\\b((?:primary|foreign)\\\\s+key|references|on\\\\s+(delete|update)(\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\b)","name":"storage.modifier.sql"},{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.sql"},{"match":"(?i:\\\\b(select(\\\\s+(all|distinct))?|insert\\\\s+(ignore\\\\s+)?into|update|delete|from|set|where|group\\\\s+by|or|like|and|union(\\\\s+all)?|having|order\\\\s+by|limit|cross\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\s+outer)?)\\\\s+join|natural(\\\\s+(inner|(left|right|full)(\\\\s+outer)?))?\\\\s+join)\\\\b)","name":"keyword.other.DML.sql"},{"match":"(?i:\\\\b(on|off|((is\\\\s+)?not\\\\s+)?null)\\\\b)","name":"keyword.other.DDL.create.II.sql"},{"match":"(?i:\\\\bvalues\\\\b)","name":"keyword.other.DML.II.sql"},{"match":"(?i:\\\\b(begin(\\\\s+work)?|start\\\\s+transaction|commit(\\\\s+work)?|rollback(\\\\s+work)?)\\\\b)","name":"keyword.other.LUW.sql"},{"match":"(?i:\\\\b(grant(\\\\swith\\\\sgrant\\\\soption)?|revoke)\\\\b)","name":"keyword.other.authorization.sql"},{"match":"(?i:\\\\bin\\\\b)","name":"keyword.other.data-integrity.sql"},{"match":"(?i:^\\\\s*(comment\\\\s+on\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\s+)","name":"keyword.other.object-comments.sql"},{"match":"(?i)\\\\bAS\\\\b","name":"keyword.other.alias.sql"},{"match":"(?i)\\\\b(DESC|ASC)\\\\b","name":"keyword.other.order.sql"},{"match":"\\\\*","name":"keyword.operator.star.sql"},{"match":"[!<>]?=|<>|[<>]","name":"keyword.operator.comparison.sql"},{"match":"[-+/]","name":"keyword.operator.math.sql"},{"match":"\\\\|\\\\|","name":"keyword.operator.concatenator.sql"},{"captures":{"1":{"name":"support.function.aggregate.sql"}},"match":"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdevp??|varp??)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.analytic.sql"}},"match":"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.bitmanipulation.sql"}},"match":"(?i)\\\\b((?:bit_coun|get_bi|left_shif|right_shif|set_bi)t)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.conversion.sql"}},"match":"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.collation.sql"}},"match":"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cryptographic.sql"}},"match":"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cursor.sql"}},"match":"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datetime.sql"}},"match":"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datatype.sql"}},"match":"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.expression.sql"}},"match":"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.globalvar.sql"}},"match":"(?<!@)@@(?i)\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.json.sql"}},"match":"(?i)\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.logical.sql"}},"match":"(?i)\\\\b(choose|iif|greatest|least)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.mathematical.sql"}},"match":"(?i)\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.metadata.sql"}},"match":"(?i)\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.ranking.sql"}},"match":"(?i)\\\\b(rank|dense_rank|ntile|row_number)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.rowset.sql"}},"match":"(?i)\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.security.sql"}},"match":"(?i)\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.string.sql"}},"match":"(?i)\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.system.sql"}},"match":"(?i)\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.textimage.sql"}},"match":"(?i)\\\\b(patindex|textptr|textvalid)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.vector.sql"}},"match":"(?i)\\\\b(vector_(?:distance|norm|normalize))\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"constant.other.database-name.sql"},"2":{"name":"constant.other.table-name.sql"}},"match":"(\\\\w+?)\\\\.(\\\\w+)"},{"include":"#strings"},{"include":"#regexps"},{"match":"\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|connection|containment|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\s+or\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime2??|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_fulltext_language|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filegrowth|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|for|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|incremental|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|match|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|nested_triggers|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|seconds|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|sessions??|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|shortest_path|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablockx??|take|tape|target|target_index|target_partition|target_recovery_time|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|top??|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|transform_noise_words|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|two_digit_year_cutoff|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|values??|varbinary|varchar|vector|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|windows??|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\b","name":"keyword.other.sql"},{"captures":{"1":{"name":"punctuation.section.scope.begin.sql"},"2":{"name":"punctuation.section.scope.end.sql"}},"match":"(\\\\()(\\\\))","name":"meta.block.sql"}],"repository":{"comment-block":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\*/","name":"comment.block","patterns":[{"include":"#comment-block"}]},"comments":{"patterns":[{"begin":"(^[\\\\t ]+)?(?=--)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\n","name":"comment.line.double-dash.sql"}]},{"begin":"(^[\\\\t ]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[]},{"include":"#comment-block"}]},"regexps":{"patterns":[{"begin":"/(?=\\\\S.*/)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"/","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.sql","patterns":[{"include":"#string_interpolation"},{"match":"\\\\\\\\/","name":"constant.character.escape.slash.sql"}]},{"begin":"%r\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.modr.sql","patterns":[{"include":"#string_interpolation"}]}]},"string_escape":{"match":"\\\\\\\\.","name":"constant.character.escape.sql"},"string_interpolation":{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(#\\\\{)([^}]*)(})","name":"string.interpolated.sql"},"strings":{"patterns":[{"captures":{"2":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(N)?(\')[^\']*(\')","name":"string.quoted.single.sql"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.single.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"match":"(`)[^\\\\\\\\`]*(`)","name":"string.quoted.other.backtick.sql"},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.other.backtick.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"match":"(\\")[^\\"#]*(\\")","name":"string.quoted.double.sql"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.double.sql","patterns":[{"include":"#string_interpolation"}]},{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.other.quoted.brackets.sql","patterns":[{"include":"#string_interpolation"}]}]}},"scopeName":"source.sql"}')),B8=[$8],j8=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[!(+,:=>?\\\\[]|^await|[^$._[:alnum:]]await|^return|[^$._[:alnum:]]return|^yield|[^$._[:alnum:]]yield|^throw|[^$._[:alnum:]]throw|^in|[^$._[:alnum:]]in|^of|[^$._[:alnum:]]of|^typeof|[^$._[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async)\\\\s+)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async))?((?<![]!)}])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=[}\\\\S])(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!/[*/])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=:)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"\\\\{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?<!\\\\+\\\\+|--)(?<=^return|[^$._[:alnum:]]return|^throw|[^$._[:alnum:]]throw|^yield|[^$._[:alnum:]]yield|^await|[^$._[:alnum:]]await|^default|[^$._[:alnum:]]default|[\\\\&(*,:=>?^|]|[^$_[:alnum:]](?:\\\\+\\\\+|--)|[^+]\\\\+|[^-]-)\\\\s*(<)(?!<?=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?<=^)\\\\s*(<)(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|/[*/])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=[-\\\\])+,:;}\\\\s]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(extends|implements)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)a(?:ccess|pi))\\\\s+(p(?:rivate|rotected|ublic))\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^*/<>@\\\\s](?:[^*/<>@]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^*@\\\\s](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^*\\\\s]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^]\\\\[]*])?\\\\{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^*/@\\\\s]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*(?:\\\\s*,\\\\s*[$A-Z_a-z][]$.\\\\[\\\\w]*)*)"},{"begin":"((@)template)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*)"},{"begin":"((@)typedef)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^*/@\\\\s]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[$\\\\w]+(?:(?:\\\\[])?\\\\.[$\\\\w]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:\\\\*(?!/)|\\\\\\\\(?!\\")|[^*\\\\\\\\])*?\\"|\'(?:\\\\*(?!/)|\\\\\\\\(?!\')|[^*\\\\\\\\])*?\'|\\\\[(?:\\\\*(?!/)|[^*])*?]|(?:\\\\*(?!/)|\\\\s(?!\\\\s*])|\\\\[.*?(?:]|(?=\\\\*/))|[^]*\\\\[\\\\s])*)*))?\\\\s*(?:(])((?:[^*\\\\s]|\\\\*[^/\\\\s])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^*@{}\\\\s]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\\"\']))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^*\\\\s]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)[$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=[,}]|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+])))","end":"(?=[,}]|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:\\\\s*(=)|\\\\s+(default)(?=\\\\s+))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[*{])|((?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*([,\\\\s]))(?!\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[,:]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[]),:;}]))"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])(!)\\\\s*(?:(/=)|(/)(?![*/]))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[]$)_[:alnum:]])\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)+(?:(/=)|(/)(?![*/])))","end":"(/=)|(/)(?!\\\\*([^*]|(\\\\*[^/]))*\\\\*/)","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[]$)_[:alnum:]])\\\\s*(?:(/=)|(/)(?![*/]))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=}]|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=[,;}]|$|^((?!\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=]|$))))|(?<=})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"match":"#?[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*))await)?\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","end":"(?<=>)(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*[(\\\\[{]\\\\s*)$)","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|(?<=})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|})","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[(:])(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!(?:^|[^$._[:alnum:]])import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=(?:^|[^$._[:alnum:]])import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(type)\\\\s+)?(?:\\\\b(default)|(\\\\*)|\\\\b([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))\\\\s+(as)\\\\s+(?:(default(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:\\\\b(type)\\\\s+)?(?:([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([-+])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(])([-+])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^]]+(])(?=\\\\{@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"(\\\\{)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^*|}\\\\s]|\\\\*/)+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^*@{|}\\\\s]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|([!=]==?)|(([\\\\&^|~]\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s+instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G(\\\\{)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=[(<])","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[\\"$\'_`[:alpha:]])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=})|(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(#?\\\\p{upper}[$_\\\\d[:upper:]]*)|(#?[$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[(<])","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=])(?=\\\\s*[(<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\"\'`])","end":"(?=:)|((?<=[\\"\'`])(?=((\\\\s*[(,<}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(,<}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[]\\"\'`])(?=\\\\s*[(<])","end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![$_[:alpha:]])(\\\\d+)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|^|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*=)","end":"(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[),])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(,=])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(,=]|=>|^return|[^$._[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[!(+,:=?\\\\[]|^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*/)\\\\s*(/)(?![*/])(?=(?:[^()/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)+]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![]$)_[:alnum:]]|\\\\+\\\\+|--|}|\\\\*/)|((?<=^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case))\\\\s*)/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[DSWdfnrstvw]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x\\\\h{2}|u\\\\h{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[Bb]|[$^]","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\(?:[1-9]\\\\d*|k<([$A-Z_a-z][$\\\\w]*)>)"},{"match":"[*+?]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|\\\\?<([$A-Z_a-z][$\\\\w]*)>)?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?=$|^|[,;{}]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[,;{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[\\\\&:|])(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x\\\\h{2}|u\\\\h{4}|u\\\\{\\\\h+}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\(\\\\s*[\\"\'`])","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\()|(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?!\\\\s*[\\\\&|]\\\\s+)((?=^|[]),;}]|//)|(?==[^>])|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[]),;}]|//)|(?==[^>])|(?=^\\\\s*$)|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])(?=[]),:;=>?{}]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])((?=[]),:;=>?{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,;}]|$)|(?<=})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([\\\\&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=})","patterns":[{"include":"#type-object"}]},{"begin":"[\\\\&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"([:?])","name":"keyword.operator.ternary.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s(is)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[]\\\\&),:;=>?{|}]|(extends\\\\s+)|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!^let|[^$._[:alnum:]]let|^var|[^$._[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]])const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]]|^await\\\\s+|[^$._[:alnum:]]await\\\\s+)using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=//))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<![!=])(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![-\\\\&*+/|])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')),H8=[j8],U8=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#fff","activityBar.border":"#e1e4e8","activityBar.foreground":"#2f363d","activityBar.inactiveForeground":"#959da5","activityBarBadge.background":"#2188ff","activityBarBadge.foreground":"#fff","badge.background":"#dbedff","badge.foreground":"#005cc5","breadcrumb.activeSelectionForeground":"#586069","breadcrumb.focusForeground":"#2f363d","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#fafbfc","button.background":"#159739","button.foreground":"#fff","button.hoverBackground":"#138934","button.secondaryBackground":"#e1e4e8","button.secondaryForeground":"#1b1f23","button.secondaryHoverBackground":"#d1d5da","checkbox.background":"#fafbfc","checkbox.border":"#d1d5da","debugToolBar.background":"#fff","descriptionForeground":"#6a737d","diffEditor.insertedTextBackground":"#34d05822","diffEditor.removedTextBackground":"#d73a4922","dropdown.background":"#fafbfc","dropdown.border":"#e1e4e8","dropdown.foreground":"#2f363d","dropdown.listBackground":"#fff","editor.background":"#fff","editor.findMatchBackground":"#ffdf5d","editor.findMatchHighlightBackground":"#ffdf5d66","editor.focusedStackFrameHighlightBackground":"#28a74525","editor.foldBackground":"#d1d5da11","editor.foreground":"#24292e","editor.inactiveSelectionBackground":"#0366d611","editor.lineHighlightBackground":"#f6f8fa","editor.linkedEditingBackground":"#0366d611","editor.selectionBackground":"#0366d625","editor.selectionHighlightBackground":"#34d05840","editor.selectionHighlightBorder":"#34d05800","editor.stackFrameHighlightBackground":"#ffd33d33","editor.wordHighlightBackground":"#34d05800","editor.wordHighlightBorder":"#24943e99","editor.wordHighlightStrongBackground":"#34d05800","editor.wordHighlightStrongBorder":"#24943e50","editorBracketHighlight.foreground1":"#005cc5","editorBracketHighlight.foreground2":"#e36209","editorBracketHighlight.foreground3":"#5a32a3","editorBracketHighlight.foreground4":"#005cc5","editorBracketHighlight.foreground5":"#e36209","editorBracketHighlight.foreground6":"#5a32a3","editorBracketMatch.background":"#34d05840","editorBracketMatch.border":"#34d05800","editorCursor.foreground":"#044289","editorError.foreground":"#cb2431","editorGroup.border":"#e1e4e8","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#e1e4e8","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#d73a49","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#d7dbe0","editorIndentGuide.background":"#eff2f6","editorLineNumber.activeForeground":"#24292e","editorLineNumber.foreground":"#1b1f234d","editorOverviewRuler.border":"#fff","editorWarning.foreground":"#f9c513","editorWhitespace.foreground":"#d1d5da","editorWidget.background":"#f6f8fa","errorForeground":"#cb2431","focusBorder":"#2188ff","foreground":"#444d56","gitDecoration.addedResourceForeground":"#28a745","gitDecoration.conflictingResourceForeground":"#e36209","gitDecoration.deletedResourceForeground":"#d73a49","gitDecoration.ignoredResourceForeground":"#959da5","gitDecoration.modifiedResourceForeground":"#005cc5","gitDecoration.submoduleResourceForeground":"#959da5","gitDecoration.untrackedResourceForeground":"#28a745","input.background":"#fafbfc","input.border":"#e1e4e8","input.foreground":"#2f363d","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#e2e5e9","list.activeSelectionForeground":"#2f363d","list.focusBackground":"#cce5ff","list.hoverBackground":"#ebf0f4","list.hoverForeground":"#2f363d","list.inactiveFocusBackground":"#dbedff","list.inactiveSelectionBackground":"#e8eaed","list.inactiveSelectionForeground":"#2f363d","notificationCenterHeader.background":"#e1e4e8","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#fafbfc","notifications.border":"#e1e4e8","notifications.foreground":"#2f363d","notificationsErrorIcon.foreground":"#d73a49","notificationsInfoIcon.foreground":"#005cc5","notificationsWarningIcon.foreground":"#e36209","panel.background":"#f6f8fa","panel.border":"#e1e4e8","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#2f363d","panelTitle.inactiveForeground":"#6a737d","pickerGroup.border":"#e1e4e8","pickerGroup.foreground":"#2f363d","progressBar.background":"#2188ff","quickInput.background":"#fafbfc","quickInput.foreground":"#2f363d","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#959da588","scrollbarSlider.background":"#959da533","scrollbarSlider.hoverBackground":"#959da544","settings.headerForeground":"#2f363d","settings.modifiedItemIndicator":"#2188ff","sideBar.background":"#f6f8fa","sideBar.border":"#e1e4e8","sideBar.foreground":"#586069","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#e1e4e8","sideBarSectionHeader.foreground":"#2f363d","sideBarTitle.foreground":"#2f363d","statusBar.background":"#fff","statusBar.border":"#e1e4e8","statusBar.debuggingBackground":"#f9826c","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#586069","statusBar.noFolderBackground":"#fff","statusBarItem.prominentBackground":"#e8eaed","statusBarItem.remoteBackground":"#fff","statusBarItem.remoteForeground":"#586069","tab.activeBackground":"#fff","tab.activeBorder":"#fff","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#2f363d","tab.border":"#e1e4e8","tab.hoverBackground":"#fff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#fff","tab.unfocusedActiveBorderTop":"#e1e4e8","tab.unfocusedHoverBackground":"#fff","terminal.ansiBlack":"#24292e","terminal.ansiBlue":"#0366d6","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#005cc5","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#22863a","terminal.ansiBrightMagenta":"#5a32a3","terminal.ansiBrightRed":"#cb2431","terminal.ansiBrightWhite":"#d1d5da","terminal.ansiBrightYellow":"#b08800","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#28a745","terminal.ansiMagenta":"#5a32a3","terminal.ansiRed":"#d73a49","terminal.ansiWhite":"#6a737d","terminal.ansiYellow":"#dbab09","terminal.foreground":"#586069","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#d1d5da","terminalCursor.foreground":"#005cc5","textBlockQuote.background":"#fafbfc","textBlockQuote.border":"#e1e4e8","textCodeBlock.background":"#f6f8fa","textLink.activeForeground":"#005cc5","textLink.foreground":"#0366d6","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#fff","titleBar.activeForeground":"#2f363d","titleBar.border":"#e1e4e8","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"GitHub Light","name":"github-light","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#005cc5"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#6f42c1"}},{"scope":"variable.parameter.function","settings":{"foreground":"#24292e"}},{"scope":"entity.name.tag","settings":{"foreground":"#22863a"}},{"scope":"keyword","settings":{"foreground":"#d73a49"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#d73a49"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#24292e"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#032f62"}},{"scope":"support","settings":{"foreground":"#005cc5"}},{"scope":"meta.property-name","settings":{"foreground":"#005cc5"}},{"scope":"variable","settings":{"foreground":"#e36209"}},{"scope":"variable.other","settings":{"foreground":"#24292e"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#005cc5"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032f62"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032f62"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#22863a"}},{"scope":"support.constant","settings":{"foreground":"#005cc5"}},{"scope":"support.variable","settings":{"foreground":"#005cc5"}},{"scope":"meta.module-reference","settings":{"foreground":"#005cc5"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e36209"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"markup.quote","settings":{"foreground":"#22863a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#24292e"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#24292e"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#005cc5"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#032f62"}}],"type":"light"}')),_c={scopeName:"source.malloy",patterns:[{include:"#malloy-language"}],repository:{"malloy-language":{patterns:[{include:"#sql-string"},{include:"#comments"},{include:"#tags"},{include:"#strings"},{include:"#numbers"},{include:"#keywords"},{include:"#properties"},{include:"#functions"},{include:"#datetimes"},{include:"#identifiers-quoted"},{include:"#types"},{include:"#constants"},{include:"#timeframes"},{include:"#identifiers-unquoted"}]},"malloy-matched":{begin:"{",end:"}",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"malloy-in-sql":{begin:"%{",name:"source.malloy-in-sql",end:"}%?",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"sql-string":{patterns:[{begin:'(\\b[A-Za-z_][A-Za-z_0-9]*)(\\s*\\.\\s*)(sql)(\\s*\\(\\s*)(""")',end:'"""',beginCaptures:{1:{name:"variable.other"},3:{name:"keyword.control.sql"},5:{name:"punctuation.sql-block.open"}},endCaptures:{0:{name:"punctuation.sql-block.close"}},name:"source.sql",patterns:[{include:"#malloy-in-sql"},{include:"source.sql"}]}]},functions:{patterns:[{match:"(?i)\\b(count)(\\s*\\()(distinct)",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.function.modifier"}}},{match:"(?i)\\b(AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE|UNGROUPED)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(!)(timestamp|number|string|boolean|date)?(\\s*\\()",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.type"}}}]},datetimes:{patterns:[{match:"(?i)@[0-9]{4}-[0-9]{2}-[0-9]{2}[ T][0-9]{2}:[0-9]{2}((:[0-9]{2})(([\\.,][0-9]+)(\\[[A-Za-z_/]+\\])?)?)?",name:"constant.numeric.timestamp"},{match:"(?i)@[0-9]{4}(-Q[1-4]|-[0-9]{2}(-[0-9]{2}(-WK)?)?)?",name:"constant.numeric.date"}]},"identifiers-quoted":{patterns:[{match:"`[^`]*`",name:"variable.other.quoted"}]},"identifiers-unquoted":{patterns:[{match:"(?i)\\b[A-Za-z_][A-Za-z_0-9]*\\b",name:"variable.other"}]},timeframes:{patterns:[{match:"(?i)\\b((year|quarter|month|week|day|hour|minute|second)s?)\\b",name:"keyword.other.timeframe"},{match:"(?i)\\b(day_of_year|day_of_month)\\b",name:"keyword.other.timeframe"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]},tags:{patterns:[{match:"##\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:'#"',end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{match:"#\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:"#\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"##\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"#",end:"\\n",beginCaptures:{0:{name:"string.quoted"}},name:"string.quoted"}],repository:{"tag-values":{name:"support.type.property-name.json",match:'(-)?((?:[^\\s=#]+)|(?:"[^#]+"))(?:\\s*(=)\\s*((?:[^\\s=#]+)|(?:"[^#]+")))?',captures:{1:{name:"keyword.control.negate"},2:{name:"support.type.property-name.json"},3:{name:"keyword.operator.comparison.ts"},4:{name:"string.quoted"}}}}},strings:{patterns:[{begin:"'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.single",patterns:[{include:"#escapes"}]},{begin:'"',end:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.double",patterns:[{include:"#escapes"}]},{begin:'"""',end:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.triple"},{begin:"(?i)[r|/]'",end:"'",name:"string.regexp",patterns:[{include:"#regex-escapes"}]}],repository:{escapes:{name:"constant.character.escape",match:"\\\\(u[A-Fa-f0-9]{4}|.)",captures:{0:{name:"constant.character.escape"}}},"regex-escapes":{name:"constant.character.escape",match:"\\\\.",captures:{0:{name:"constant.character.escape"}}}}},numbers:{match:"(?i)(\\b((0|[1-9][0-9]*)(E[+-]?[0-9]+|\\.[0-9]*)?)|\\.[0-9]+)",name:"constant.numeric"},constants:{patterns:[{match:"(?i)\\bnull\\b",name:"constant.language.null"},{match:"(?i)\\btrue\\b",name:"constant.language.true"},{match:"(?i)\\bfalse\\b",name:"constant.language.false"}]},types:{patterns:[{match:"(?i)\\bstring\\b",name:"entity.name.type.string"},{match:"(?i)\\bnumber\\b",name:"entity.name.type.number"},{match:"(?i)\\bdate\\b",name:"entity.name.type.date"},{match:"(?i)\\btimestamp\\b",name:"entity.name.type.timestamp"},{match:"(?i)\\bboolean\\b",name:"entity.name.type.boolean"}]},properties:{patterns:[{match:"(?i)\\baccept\\b",name:"keyword.control.accept"},{match:"(?i)\\bselect\\b",name:"keyword.control.select"},{match:"(?i)\\bconnection\\b",name:"keyword.control.connection"},{match:"(?i)\\brun\\b",name:"keyword.control.run"},{match:"(?i)\\bextend\\b",name:"keyword.control.extend"},{match:"(?i)\\brefine\\b",name:"keyword.control.refine"},{match:"(?i)\\baggregate\\b",name:"keyword.control.aggregate"},{match:"(?i)\\bsample\\b",name:"keyword.control.sample"},{match:"(?i)\\bcalculate\\b",name:"keyword.control.calculate"},{match:"(?i)\\btimezone\\b",name:"keyword.control.timezone"},{match:"(?i)\\bdimension\\b",name:"keyword.control.dimension"},{match:"(?i)\\bexcept\\b",name:"keyword.control.except"},{match:"(?i)\\bsource\\b",name:"keyword.control.source"},{match:"(?i)\\bgroup_by\\b",name:"keyword.control.group_by"},{match:"(?i)\\bhaving\\b",name:"keyword.control.having"},{match:"(?i)\\bindex\\b",name:"keyword.control.index"},{match:"(?i)\\bjoin_one\\b",name:"keyword.control.join_one"},{match:"(?i)\\bwith\\b",name:"keyword.control.with"},{match:"(?i)\\bjoin_many\\b",name:"keyword.control.join_many"},{match:"(?i)\\bjoin_cross\\b",name:"keyword.control.join_cross"},{match:"(?i)\\blimit\\b",name:"keyword.control.limit"},{match:"(?i)\\bmeasure\\b",name:"keyword.control.measure"},{match:"(?i)\\bnest\\b",name:"keyword.control.nest"},{match:"(?i)\\border_by\\b",name:"keyword.control.order_by"},{match:"(?i)\\bpartition_by\\b",name:"keyword.control.partition_by"},{match:"(?i)\\bprimary_key\\b",name:"keyword.control.primary_key"},{match:"(?i)\\bproject\\b",name:"keyword.control.project"},{match:"(?i)\\bquery\\b",name:"keyword.control.query"},{match:"(?i)\\brename\\b",name:"keyword.control.rename"},{match:"(?i)\\btop\\b",name:"keyword.control.top"},{match:"(?i)\\bview\\b",name:"keyword.control.view"},{match:"(?i)\\bwhere\\b",name:"keyword.control.where"},{match:"(?i)\\bdeclare\\b",name:"keyword.control.declare"}]},keywords:{patterns:[{match:"(?i)\\bis\\b",name:"keyword.control.is"},{match:"(?i)\\bon\\b",name:"keyword.control.on"},{match:"(?i)\\bnot\\b",name:"keyword.other.not"},{match:"(?i)\\bor\\b",name:"keyword.other.or"},{match:"(?i)\\bdesc\\b",name:"keyword.control.desc"},{match:"(?i)\\bby\\b",name:"keyword.control.by"},{match:"(?i)\\band\\b",name:"keyword.other.and"},{match:"(?i)\\basc\\b",name:"keyword.control.asc"},{match:"(?i)\\bfor\\b",name:"keyword.other.for"},{match:"(?i)\\belse\\b",name:"keyword.other.else"},{match:"(?i)\\bto\\b",name:"keyword.other.to"},{match:"(?i)\\bwhen\\b",name:"keyword.other.when"},{match:"(?i)\\bpick\\b",name:"keyword.other.pick"},{match:"(?i)\\bimport\\b",name:"keyword.control.import"}]}}},z8={..._c,patterns:[..._c.patterns,{include:"#docvar"}],repository:{..._c.repository,docvar:{patterns:[{match:"\\<\\<[^(\\>\\>)]*\\>\\>",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"markup.italic.markdown"}]}}},V8={name:"Malloy SQL",scopeName:"source.malloy-sql",patterns:[{include:"#malloysql-sql"}],repository:{"malloysql-sql":{beginCaptures:{0:{name:"entity.other.attribute.malloy-sql"},1:{name:"entity.other.attribute.malloy-sql"},3:{name:"comment.line.double-slash"}},name:"meta.embedded.block.malloysql.sql",patterns:[{include:"#comments"},{begin:"%{",end:"}%",beginCaptures:{0:{name:"punctuation.definition.malloy-sql"}},endCaptures:{0:{name:"punctuation.definition.malloy-sql"}},name:"meta.embedded.block.malloy",patterns:[{include:"source.malloy"}]},{include:"source.sql"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]}}},W8="github-light",q8=O8({engine:ey(Promise.resolve().then(()=>require("./wasm-Dw4u1m6u.cjs.js"))),themes:[U8],langs:[B8,F8,H8,{name:"malloy",scopeName:"source.malloy",embeddedLangs:["sql"],...z8},{name:"malloysql",scopeName:"source.malloy-sql",embeddedLangs:["sql"],...V8}]});async function Ll(e,t){return(await q8).codeToHtml(e,{lang:t,theme:W8})}function Jt(e){const{server:t}=it.useServer(),n={...e,queryKey:[...e.queryKey,t],queryFn:async()=>{try{return await e.queryFn()}catch(r){if(r&&typeof r=="object"&&"response"in r){const o=r;if(o.response?.data){const a=new Error(o.response.data.message||o.message);throw a.status=o.response.status,a.data=o.response.data,a}}throw r}},retry:!1,throwOnError:!1};return $r.useQuery(n,it.globalQueryClient)}function hr(e){const t={...e,mutationFn:async n=>{try{return await e.mutationFn(n)}catch(r){if(r&&typeof r=="object"&&"response"in r){const o=r;if(o.response?.data){const a=new Error(o.response.data.message||o.message);throw a.status=o.response.status,a.data=o.response.data,a}}throw r}},retry:!1,throwOnError:!1};return $r.useMutation(t,it.globalQueryClient)}const Ct=e=>{const t=new URL(e),n={};if(t.protocol!=="publisher:")throw new Error(`Failed to parse resource URI: ${e}`);const r=(t.hostname+t.pathname).split("/");for(let o=0;o<r.length;o+=2){const a=r[o];a==="projects"?n.projectName=decodeURI(r[o+1])||void 0:a==="packages"?n.packageName=decodeURI(r[o+1])||void 0:a==="connections"?n.connectionName=decodeURI(r[o+1])||void 0:a==="models"&&(n.modelPath=decodeURI(r.slice(o+1).join("/"))||void 0)}if(n.versionId=t.searchParams.get("versionId")||void 0,!n.projectName)throw new Error(`Failed to parse resource URI: ${e}`);return n},pi=e=>{if(!e.projectName)throw new Error(`Failed to encode resource URI, missing project name: ${e}`);let t=`publisher://projects/${e.projectName}`;return e.packageName&&(t+=`/packages/${e.packageName}`),e.connectionName&&(t+=`/connections/${e.connectionName}`),e.modelPath&&(t+=`/models/${e.modelPath}`),e.packageName&&e.versionId&&(t+=`?versionId=${e.versionId}`),t};function Zt({error:e,context:t}){const n=e.data?.message||"Unknown Error";return p.jsxs(p.Fragment,{children:[t&&p.jsx(I.Typography,{variant:"body2",sx:{p:"10px",m:"auto"},children:t}),p.jsx("pre",{style:{whiteSpace:"pre-wrap",color:"red",padding:"10px",margin:"auto"},children:n})]})}function Ip({sourceAndPaths:e,selectedSourceIndex:t,existingQuery:n,onQueryChange:r,onSourceChange:o,resourceUri:a}){return W.useEffect(()=>{o&&o(t)},[t,o]),p.jsx(Vd,{children:p.jsxs(ut.Stack,{spacing:2,component:"section",children:[p.jsx(Ay,{sourceAndPath:e[t],existingQuery:n,onChange:s=>{r&&r(s)},resourceUri:a}),p.jsx(ut.Box,{height:"5px"})]})})}function el(){return{query:void 0,malloyQuery:void 0,malloyResult:void 0}}function Y8({sourceAndPath:e,onChange:t,existingQuery:n,explorerComponents:r,QueryBuilder:o,resourceUri:a}){const[s,i]=W.useState(n||el()),[l,u]=W.useState(void 0);W.useEffect(()=>{n&&i(n)},[n]);const[c,d]=W.useState([]),{MalloyExplorerProvider:m,QueryPanel:f,ResizableCollapsiblePanel:h,ResultPanel:b,SourcePanel:g}=r;W.useEffect(()=>{t&&t(s)},[t,s]);const{projectName:x,packageName:E,versionId:C}=Ct(a),{apiClients:T}=it.useServer(),w=hr({mutationFn:()=>{const B=typeof s?.malloyQuery=="string"?s.malloyQuery:new o.ASTQuery({source:e.sourceInfo,query:s?.malloyQuery}).toMalloy();return u({executionState:"running",query:s?.malloyQuery,queryResolutionStartMillis:Date.now(),onCancel:()=>{w.reset(),u(void 0)},response:{result:{}}}),i({...s,query:B}),T.models.executeQueryModel(x,E,e.modelPath,{query:B,sourceName:void 0,queryName:void 0,versionId:C})},onSuccess:B=>{if(B){const P=JSON.parse(B.data.result);i({...s,malloyResult:P}),u(N=>N?{...N,executionState:"finished",response:{result:P}}:void 0)}},onError:B=>{u(void 0),console.error("Query execution error:",B)}}),[S,O]=W.useState(e.sourceInfo.name);W.useEffect(()=>{S!==e.sourceInfo.name&&(O(e.sourceInfo.name),i(el()),u(void 0))},[e,S]);const F=W.useCallback(B=>{i({...s,malloyQuery:B,malloyResult:void 0})},[s]);return S!==e.sourceInfo.name?p.jsx("div",{children:"Loading..."}):p.jsx(A0,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",overflow:"hidden"},children:p.jsx(m,{source:e.sourceInfo,query:s?.malloyQuery,topValues:[],onFocusedNestViewPathChange:d,focusedNestViewPath:c,onQueryChange:F,children:p.jsxs("div",{style:{display:"flex",height:"100%",overflowY:"auto"},children:[p.jsx(h,{isInitiallyExpanded:!0,initialWidth:180,minWidth:180,icon:"database",title:e.sourceInfo.name,children:p.jsx(g,{onRefresh:()=>i(el())})}),p.jsx(h,{isInitiallyExpanded:!0,initialWidth:280,minWidth:280,icon:"filterSliders",title:"Query",children:p.jsx(f,{runQuery:()=>{console.log(`running query with: ${s?.malloyQuery}`);try{w.mutate()}catch(B){console.error("Error running query:",B)}}})}),w.isError&&w.error?p.jsx(ut.Box,{sx:{p:2},children:p.jsx(Zt,{error:w.error,context:"Query execution error"})}):p.jsx(b,{source:e.sourceInfo,draftQuery:s?.malloyQuery,setDraftQuery:B=>i({...s,malloyQuery:B}),submittedQuery:l,options:{showRawQuery:!0}})]})})},e.sourceInfo.name)}function Ay(e){const[t,n]=W.useState(null),[r,o]=W.useState(null),[a,s]=W.useState(!0);return W.useEffect(()=>{let i=!0;return Promise.all([import("@malloydata/malloy-explorer"),import("@malloydata/malloy-query-builder")]).then(([l,u])=>{i&&(n(l),o(u),s(!1))}).catch(l=>{console.error("Failed to load Malloy components:",l),i&&s(!1)}),()=>{i=!1}},[]),a||!t||!r?p.jsx(kv,{children:p.jsx(A0,{children:p.jsx("div",{style:{alignItems:"center",justifyContent:"center",height:"200px",color:"#666"},children:"Loading explorer..."})})}):p.jsx(Y8,{...e,explorerComponents:t,QueryBuilder:r,resourceUri:e.resourceUri})}function on({text:e,size:t=20,color:n="primary",thickness:r=3.6,centered:o=!0,spacing:a=2,textVariant:s="body2"}){const i=p.jsxs(I.Box,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:a},children:[p.jsx(I.CircularProgress,{size:t,color:n,thickness:r}),e&&p.jsx(I.Typography,{variant:s,color:"text.secondary",children:e})]});return o?p.jsx(I.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",width:"100%"},children:i}):i}const G8=W.lazy(()=>Promise.resolve().then(()=>F2));function fi({result:e,minHeight:t,maxHeight:n,hideToggle:r=!1,maxResultSize:o=0}){const a=W.useRef(null),[s,i]=W.useState(n),[l,u]=W.useState(!1);if(!e)return null;if(o>0&&e.length>o&&!l)return p.jsxs(I.Box,{sx:{minHeight:`${t}px`,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,p:4,backgroundColor:"#fafafa",border:"1px solid",borderColor:"#e0e0e0",borderRadius:1},children:[p.jsx(An.Warning,{sx:{fontSize:48,color:"#757575"}}),p.jsx(I.Typography,{variant:"h6",color:"text.secondary",align:"center",children:"Processing large results may cause browser performance issues. Proceed?"}),p.jsx(I.Button,{variant:"contained",color:"primary",onClick:()=>u(!0),children:"Proceed"})]});const d=p.jsx(on,{text:"Loading...",centered:!0,size:32}),m=Math.min(n,s);return p.jsx(I.Box,{ref:a,sx:{position:"relative",height:`${m}px`,border:"0px",borderRadius:0,overflow:"hidden"},children:e&&p.jsx(W.Suspense,{fallback:d,children:p.jsx(G8,{result:e,height:m,onSizeChange:i})})})}function K8({cell:e,sourceAndPaths:t,resourceUri:n,onQueryChange:r,onSourceChange:o}){const a={query:e.value,malloyResult:e.result?JSON.parse(e.result):void 0,malloyQuery:e.queryInfo?JSON.parse(e.queryInfo):void 0},s=t.findIndex(i=>i.sourceInfo.name===e.sourceName);return p.jsx(Ip,{resourceUri:n,sourceAndPaths:t,selectedSourceIndex:s>=0?s:0,existingQuery:a,onQueryChange:r,onSourceChange:o})}function Q8({cell:e,editingMalloy:t,editingMarkdown:n,sourceAndPaths:r,resourceUri:o,onCellChange:a,onClose:s,onEdit:i,onDelete:l,addButtonCallback:u}){const[c,d]=W.useState(e.value),[m,f]=W.useState(!1),[h,b]=W.useState(!1),[g,x]=W.useState(),[E]=W.useState(),[C,T]=W.useState(el()),[w,S]=W.useState(!1),[O,F]=W.useState(e.sourceName?r.findIndex(K=>K.sourceInfo.name===e.sourceName):0);W.useEffect(()=>{e.isMarkdown||Ll(e.value,"malloy").then(K=>{x(K)})},[e]),W.useEffect(()=>{document.documentElement.setAttribute("data-color-mode","light")});const[B,P]=W.useState(!1),N=()=>{l(),P(!1)},v=r.length===0,M=W.useCallback(()=>{const K=r[O],ne=K?.modelPath||e.modelPath||"",L=K?.sourceInfo.name||e.sourceName||"";a({...e,value:e.isMarkdown?c:C.query,result:C.malloyResult?JSON.stringify(C.malloyResult):void 0,queryInfo:C.malloyQuery?JSON.stringify(C.malloyQuery):void 0,sourceName:L,modelPath:ne})},[e,c,C,a,O,r]),A=p.jsx(I.Tooltip,{title:"Delete Cell",children:p.jsx(I.IconButton,{size:"small",onClick:()=>P(!0),children:p.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:p.jsx("path",{d:"M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m2 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14zM10 11v6M14 11v6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}),D=p.jsxs(I.Dialog,{open:B,onClose:()=>P(!1),children:[p.jsx(I.DialogTitle,{children:"Confirm Delete"}),p.jsx(I.DialogContent,{children:p.jsx(I.Typography,{children:"Are you sure you want to delete this cell?"})}),p.jsxs(I.DialogActions,{children:[p.jsx(I.Button,{onClick:()=>P(!1),children:"Cancel"}),p.jsx(I.Button,{onClick:N,color:"error",children:"Delete"})]})]}),R=()=>{M(),s()},z=e.isMarkdown?p.jsxs(p.Fragment,{children:[n?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):p.jsx(I.Tooltip,{title:"Edit",children:p.jsx(I.IconButton,{size:"small",onClick:i,children:p.jsx(Wf,{})})}),!n&&A]}):p.jsxs(p.Fragment,{children:[!t&&p.jsx(I.Tooltip,{title:m?"Hide Code":"View Code",children:p.jsx(I.IconButton,{size:"small",onClick:()=>{f(!m)},children:p.jsx(D0,{})})}),!t&&e.result&&p.jsx(I.Tooltip,{title:h?"Hide Embedding":"View Embedding",children:p.jsx(I.IconButton,{size:"small",onClick:()=>{b(!h)},children:p.jsx(Wd,{})})}),t&&p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}),!t&&p.jsx(I.Tooltip,{title:"Edit",children:p.jsx(I.IconButton,{size:"small",onClick:i,children:p.jsx(Wf,{})})}),!t&&A]}),U=t||n,j=n?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):t?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):null,_=w&&p.jsx(I.Box,{sx:{position:"absolute",top:"4px",right:"4px",display:"flex",gap:"8px",backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",borderRadius:"8px",padding:"2px 4px",boxShadow:1,zIndex:10},children:!U&&p.jsxs(p.Fragment,{children:[u(!0),u(!1),z]})||j});return p.jsxs(hl,{sx:{position:"relative",marginTop:"5px",marginBottom:"5px",borderWidth:"1.5px",backgroundColor:"#fff",minHeight:"50px"},onMouseEnter:()=>S(!0),onMouseLeave:()=>{S(!1)},children:[_,e.isMarkdown?p.jsx(p.Fragment,{children:n?p.jsx(J1,{value:c,preview:"edit",autoFocus:!0,onChange:K=>{d(K),a({...e,value:K})},onBlur:()=>{M(),w||R()}}):p.jsx(I.Box,{sx:{px:.5,pt:0,mt:0,"& h1, & h2, & h3, & h4, & h5, & h6":{mt:.5,mb:.5},"& p":{mt:.5,mb:.5},"& ul, & ol":{mt:.5,mb:.5},"& li":{mt:0,mb:0},"& pre, & code":{mt:.5,mb:.5},"& blockquote":{mt:.5,mb:.5}},children:e.value?p.jsx(I.Box,{onClick:i,sx:{cursor:"pointer"},children:p.jsx(dl,{children:e.value})}):p.jsxs(I.Box,{onClick:i,sx:{cursor:"pointer"},children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Markdown is empty"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})})}):p.jsxs(p.Fragment,{children:[p.jsx(I.Collapse,{in:h,timeout:"auto",unmountOnExit:!0,children:p.jsx(I.Stack,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:p.jsx(I.Typography,{component:"div",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:E}})})}),p.jsx(I.Collapse,{in:m,timeout:"auto",unmountOnExit:!0,children:p.jsx(I.Stack,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:p.jsx(I.Typography,{component:"div",className:"content",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:g}})})}),t&&(v?p.jsxs(p.Fragment,{children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"No Model Imports"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Please add a model import above."})]}):p.jsx(K8,{sourceAndPaths:r,resourceUri:o,onQueryChange:K=>{T(K)},onSourceChange:K=>{F(K)},cell:e})),!t&&e.result&&p.jsx(hl,{variant:"outlined",sx:{borderRadius:0},children:p.jsx(fi,{result:e.result,minHeight:300,maxHeight:800})}),!t&&!e.result&&p.jsxs(I.Box,{onClick:i,sx:{cursor:"pointer"},children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Explore is empty"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})]}),B&&D]})}const Dy=W.createContext(void 0);function X8({children:e,workbookStorage:t}){const n=W.useMemo(()=>({workbookStorage:t}),[t]);return p.jsx(Dy.Provider,{value:n,children:e})}function Ap(){const e=W.useContext(Dy);if(!e)throw new Error("useWorkbookStorage must be used within a WorkbookStorageProvider");return e}const to=rt(p.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),Z8=rt(p.jsx("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zM7 9l1.41 1.41L11 7.83V16h2V7.83l2.59 2.58L17 9l-5-5z"}));function J8({initialSelectedModels:e,onModelChange:t,resourceUri:n}){const{projectName:r,packageName:o,versionId:a}=Ct(n),{apiClients:s}=it.useServer(),{data:i,isLoading:l,isSuccess:u,isError:c,error:d}=Jt({queryKey:["models",r,o,a],queryFn:()=>s.models.listModels(r,o,a)}),[m,f]=W.useState(e||[]),[h,b]=W.useState(null);W.useEffect(()=>{f(e||[])},[e]);const g=C=>{const T=m.filter(w=>w!==C);f(T),t(T)},x=C=>{const T=[...m,C];f(T),t(T),b(null)};let E=[];return u&&i?.data&&(E=i.data.filter(C=>!m.includes(C.path)).map(C=>C.path)),c?p.jsx(Zt,{error:d,context:`${r} > ${o} > Model Picker`}):p.jsxs(p.Fragment,{children:[p.jsxs(I.FormControl,{fullWidth:!0,children:[l&&p.jsx(I.Typography,{children:"Loading..."}),p.jsxs(I.Stack,{direction:"row",spacing:1,children:[m.map(C=>p.jsx(I.Chip,{label:C,onDelete:()=>g(C),deleteIcon:p.jsx(to,{}),sx:{marginBottom:"5px"}},C)),p.jsx(I.Button,{size:"small",startIcon:p.jsx(Z8,{}),onClick:C=>b(C.currentTarget),disabled:l||c||E.length===0,children:"Add Model"})]})]}),p.jsxs(I.Menu,{anchorEl:h,open:!!h,onClose:()=>b(null),children:[p.jsx(I.Typography,{variant:"subtitle2",sx:{ml:1},children:"Models"}),p.jsx(I.Divider,{}),E.length===0?p.jsx(I.MenuItem,{disabled:!0,children:"No models available"}):E.map(C=>p.jsx(I.MenuItem,{onClick:()=>x(C),children:p.jsx(I.Typography,{variant:"body2",children:C})},C))]})]})}function Py(){const e=K2.useNavigate();return(t,n)=>{if(!n||!n.metaKey&&!n.ctrlKey&&!n.shiftKey&&n.button!==1){e(t);return}const r=new URL(t,window.location.href).href;(n.metaKey||n.ctrlKey||n.button===1||n.shiftKey)&&window.open(r,"_blank")}}function eM({workbookPath:e,resourceUri:t}){const n=Py(),{server:r,getAccessToken:o}=it.useServer(),{apiClients:a}=it.useServer(),{workbookStorage:s}=Ap(),{projectName:i,packageName:l}=Ct(t),[u,c]=W.useState(void 0),[d,m]=W.useState(void 0);if(!s)throw new Error("Workbook storage be provided via WorkbookStorageProvider");const[f,h]=W.useState(),[b,g]=W.useState(),[x,E]=W.useState(),[C,T]=W.useState([]),[w,S]=W.useState(null),[O,F]=W.useState(null),B=!!w,P=()=>{S(null),F(null)},N=(K,ne)=>{f&&(h(f.insertCell(ne,{isMarkdown:K,value:""})),K?E(ne):g(ne),P(),console.log("handleAddCell",K,ne))},[v,M]=W.useState(!1),A=()=>{M(!0)},D=async()=>{e&&s&&await s.deleteWorkbook(e).then(()=>{m(void 0),c(void 0)}).catch(K=>{m(`Error deleting workbook: ${K.message}`),c(void 0)}),M(!1),n(`/${i}/${l}`)},R=()=>{M(!1)},z=W.useCallback(async()=>{if(!f){console.log("No workbook data ref");return}try{h(await f.saveWorkbook()),m(void 0),c("Workbook saved")}catch(K){m(`Error saving workbook: ${K.message}`),c(void 0)}},[f]);if(W.useEffect(()=>{if(!f)return;(async()=>{const ne=new Map(C.map(({modelPath:X,sourceInfos:q})=>[X,q])),L=[],fe=[];for(const X of f.getModels())ne.has(X)?L.push({modelPath:X,sourceInfos:ne.get(X)}):(console.log("Fetching model from Publisher",X),fe.push(a.models.getModel(i,l,X,void 0).then(q=>({modelPath:X,sourceInfos:q.data.sourceInfos.map(te=>JSON.parse(te))}))));if(fe.length>0){const X=await Promise.all(fe);T([...L,...X])}else T(L)})()},[o,f,l,i,r]),W.useEffect(()=>{e&&ua.loadWorkbook(s,e).then(K=>{h(K)})},[e,s]),!f)return p.jsx("div",{children:"Loading..."});const U=K=>{const ne=[];for(const L of K)for(const fe of L.sourceInfos)ne.push({modelPath:L.modelPath,sourceInfo:fe});return ne},j=(K,ne)=>p.jsx(I.Button,{size:"small",startIcon:p.jsx(vv,{}),onClick:()=>N(K,ne),variant:"contained",sx:{backgroundColor:"#fff",color:L=>L.palette.mode==="dark"?L.palette.grey[100]:L.palette.grey[700],boxShadow:"none","&:hover":{backgroundColor:L=>L.palette.mode==="dark"?L.palette.grey[500]:L.palette.grey[300],boxShadow:"none"}},children:K?"Markdown":"Explore"}),_=p.jsxs(I.Box,{sx:{display:"flex",gap:1,justifyContent:"center",flex:2},children:[j(!1,f.getCells().length),j(!0,f.getCells().length)]});return p.jsxs(hl,{variant:"outlined",children:[p.jsxs(I0,{children:[p.jsx(I.Box,{sx:{mb:2},children:p.jsx(I.Box,{sx:{minHeight:"24px"},children:d?p.jsx(I.Typography,{color:"error",variant:"body2",children:d}):u?p.jsx(I.Typography,{color:"success",variant:"body2",children:u}):p.jsx("span",{children:" "})})}),p.jsxs(Qo,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},children:[p.jsxs(Qo,{direction:"row",spacing:1,alignItems:"center",children:[p.jsx(I.Typography,{variant:"overline",sx:{fontSize:"13px",fontWeight:"bold",verticalAlign:"middle"},children:"Workbook"}),p.jsx(I.Typography,{variant:"subtitle2",sx:{fontSize:"13px",fontWeight:"normal",verticalAlign:"middle",ml:1},children:`${e.workspace} > ${e.path}`})]}),p.jsxs(Qo,{sx:{display:"flex",flexDirection:"row",gap:1},children:[p.jsx(I.Box,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:p.jsx(tM,{workbookData:f})}),p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:[p.jsx(I.Button,{color:"error",onClick:A,size:"small",children:"Delete"}),p.jsxs(I.Dialog,{open:v,onClose:R,children:[p.jsx(I.DialogTitle,{children:"Delete Workbook"}),p.jsx(I.DialogContent,{children:p.jsxs(I.DialogContentText,{children:['Are you sure you want to delete the workbook "',e.path,'"? This action cannot be undone.']})}),p.jsxs(I.DialogActions,{children:[p.jsx(I.Button,{onClick:R,color:"primary",size:"small",children:"Cancel"}),p.jsx(I.Button,{onClick:D,color:"error",autoFocus:!0,size:"small",children:"Delete"})]})]})]})]})]}),p.jsx(I.Divider,{}),p.jsxs(Qo,{sx:{display:"flex",flexDirection:"row",width:"100%",mt:2},children:[p.jsx(I.Box,{sx:{flex:1},children:p.jsx(J8,{initialSelectedModels:f.getModels(),onModelChange:K=>{h(f.setModels(K)),z()},resourceUri:t})}),p.jsx(I.Box,{sx:{flex:1}})]})]}),p.jsx(Vd,{children:p.jsxs(Qo,{children:[f.getCells().length===0&&p.jsxs(p.Fragment,{children:[p.jsx(I.Typography,{sx:{textAlign:"center",p:2,variant:"subtitle2",fontWeight:"medium"},children:"Workbook is empty"}),p.jsx(I.Typography,{variant:"body2",sx:{textAlign:"center",mb:2,variant:"body2"},children:"Click the + buttons to add a markdown or code cell."})]}),f.getCells().map((K,ne)=>p.jsx(W.Fragment,{children:p.jsx(Q8,{cell:K,resourceUri:t,addButtonCallback:L=>j(L,ne),sourceAndPaths:U(C),editingMarkdown:x===ne,editingMalloy:b===ne,onDelete:()=>{h(f.deleteCell(ne)),z()},onCellChange:L=>{h(f.setCell(ne,L))},onEdit:()=>{K.isMarkdown?E(ne):g(ne)},onClose:()=>{K.isMarkdown?E(void 0):g(void 0),z()}},`${ne}-${K.isMarkdown}-${e.workspace}-${e.path}`)},`${ne}-${f.getCells().length}`)),_,p.jsxs(I.Menu,{anchorEl:w,open:B,onClose:P,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[p.jsx(I.MenuItem,{onClick:()=>N(!0,O??0),children:"Add Markdown"}),p.jsx(I.MenuItem,{onClick:()=>N(!1,O??0),children:"Add Malloy"})]}),p.jsx(Qo,{sx:{flexDirection:"row",justifyContent:"flex-end",p:1}})]})})]})}function tM({workbookData:e}){const[t,n]=W.useState(!1),r=async()=>{if(!e)return;const o=e.toMalloyWorkbook();try{await navigator.clipboard.writeText(o),n(!0),setTimeout(()=>n(!1),1500)}catch{n(!1),alert("Failed to copy to clipboard")}};return p.jsx(I.Button,{color:"primary",onClick:r,size:"small",children:t?"Copied!":"Export"})}function Ry({onWorkbookClick:e}){const{workbookStorage:t}=Ap(),[n,r]=W.useState([]),[o,a]=W.useState(void 0);return W.useEffect(()=>{t&&t.listWorkspaces(!1).then(s=>{const i=[];Promise.all(s.map(async l=>{await t.listWorkbooks(l).then(u=>{i.push(...u)}).catch(u=>{a(`Error listing workbooks: ${u.message}`)})})).then(()=>{r(i),a(void 0)})})},[t]),p.jsxs(p.Fragment,{children:[o&&p.jsx(I.Box,{sx:{mb:2},children:p.jsx(I.Typography,{color:"error",variant:"body2",children:o})}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{maxHeight:"300px",overflow:"auto","&::-webkit-scrollbar":{width:"8px"},"&::-webkit-scrollbar-track":{background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"rgba(0,0,0,0.2)",borderRadius:"4px"}},children:p.jsxs(I.List,{dense:!0,children:[n.length===0&&p.jsx(I.ListItem,{children:p.jsx(I.ListItemText,{primary:"No workbooks found.",sx:{textAlign:"center"}})}),n.map(s=>p.jsx(I.ListItem,{onClick:i=>e(s,i),sx:{cursor:"pointer","&:hover":{backgroundColor:"action.hover"}},children:p.jsx(I.ListItemText,{primary:s.path})},s.path))]})})]})}const jh="Local";class nM{async listWorkspaces(t){return Promise.resolve([{name:jh,description:"Stored locally- only accessible to this browser",writeable:!0}])}async listWorkbooks(t){const n=[];for(let r=0;r<localStorage.length;r++){const o=localStorage.key(r);n.push({path:o,workspace:jh})}return n}async getWorkbook(t){const n=localStorage.getItem(t.path);if(n===null)throw new Error(`Notebook not found at path: ${t}`);return n}async deleteWorkbook(t){if(localStorage.getItem(t.path)===null)throw new Error(`Notebook not found at path: ${t}`);localStorage.removeItem(t.path)}async saveWorkbook(t,n){localStorage.setItem(t.path,n)}async moveWorkbook(t,n){const r=localStorage.getItem(t.path);if(r===null)throw new Error(`Notebook not found at path: ${t.path}`);localStorage.setItem(n.path,r),localStorage.removeItem(t.path)}}function rM({onWorkbookSelect:e}){const{workbookStorage:t}=Ap(),[n,r]=W.useState(""),[o,a]=W.useState(""),[s,i]=W.useState([]),[l,u]=W.useState(null),[c,d]=W.useState(!1),[m,f]=W.useState(!1),h=!!l,b=S=>{u(S.currentTarget)},g=()=>{u(null)},x=()=>{f(!1)},E=()=>{d(!1),r(""),a("")};W.useEffect(()=>{t&&(console.log("fetching workspaces"),t.listWorkspaces(!0).then(S=>{i(S),S.length===1&&a(S[0].name)}).catch(S=>{console.error("Error fetching workspaces:",S),i([])}))},[t]);const C=(S,O)=>{f(!1),e(S,O)},T=S=>{d(!1),e({path:n,workspace:o},S),r(""),a("")},w=s.length===0;return p.jsxs(p.Fragment,{children:[p.jsx(I.Button,{"aria-controls":h?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":h?"true":void 0,onClick:b,variant:"contained",sx:{height:"40px",px:2,backgroundColor:"#fbbb04","&:hover":{backgroundColor:"#eab308"}},children:"Analyze Package"}),p.jsxs(I.Menu,{id:"basic-menu",anchorEl:l,open:h,onClose:g,MenuListProps:{"aria-labelledby":"basic-button",sx:{py:.5}},children:[p.jsxs(I.MenuItem,{onClick:()=>{d(!0),g()},sx:{py:1,px:2},disabled:w,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Add,{fontSize:"small"})}),p.jsxs(I.ListItemText,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:"New Workbook"}),w?p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"No workspaces available"}):p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"Create a new analysis workbook"})]})]}),p.jsxs(I.MenuItem,{onClick:()=>{f(!0),g()},sx:{py:1,px:2},children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Launch,{fontSize:"small"})}),p.jsxs(I.ListItemText,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:"Open Workbook"}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"Open an existing workbook"})]})]})]}),p.jsxs(I.Dialog,{open:c,onClose:E,maxWidth:"sm",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{pb:1,pt:2,px:2},children:[p.jsx(I.Typography,{fontWeight:600,sx:{fontSize:"1.5rem",mb:.5},children:"Create New Workbook"}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Start a new analysis workbook to explore your data"})]}),p.jsx(I.DialogContent,{sx:{px:2,pb:2},children:p.jsxs(I.Stack,{spacing:2,sx:{mt:1},children:[s.length>1?p.jsxs(I.FormControl,{fullWidth:!0,size:"small",children:[p.jsx(I.InputLabel,{children:"Workspace"}),p.jsx(I.Select,{value:o,label:"Workspace",onChange:S=>a(S.target.value),children:s.map(S=>p.jsx(I.MenuItem,{value:S.name,children:p.jsxs(I.Box,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:S.name}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:S.description})]})},S.name))})]}):s.length===1?p.jsxs(I.Box,{sx:{p:2,border:1,borderColor:"divider",borderRadius:1,backgroundColor:"grey.50"},children:[p.jsxs(I.Typography,{variant:"body2",fontWeight:500,gutterBottom:!0,children:["Workspace: ",s[0].name]}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:s[0].description})]}):null,p.jsx(I.FormControl,{fullWidth:!0,children:p.jsx(I.TextField,{label:"Workbook Name",value:n,onChange:S=>r(S.target.value),placeholder:"Enter workbook name...",fullWidth:!0,autoFocus:!0,size:"small"})}),p.jsxs(I.Stack,{direction:"row",spacing:1,justifyContent:"flex-end",children:[p.jsx(I.Button,{onClick:E,variant:"outlined",size:"small",children:"Cancel"}),p.jsx(I.Button,{onClick:S=>T(S),variant:"contained",disabled:!n.trim()||s.length>1&&!o,size:"small",children:"Create Workbook"})]})]})})]}),p.jsxs(I.Dialog,{open:m,onClose:x,maxWidth:"md",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{pb:1,pt:2,px:2},children:[p.jsx(I.Typography,{fontWeight:600,sx:{mb:.5,fontSize:"1.5rem"},children:"Open Workbook"}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Select an existing workbook to continue your analysis"})]}),p.jsx(I.DialogContent,{sx:{px:2,pb:2},children:p.jsx(Ry,{onWorkbookClick:C})})]})]})}const oM=e=>{const t=k.useRef({});return k.useEffect(()=>{t.current=e}),t.current};function Hh({array1:e,array2:t,parser:n=r=>r}){return e&&t&&e.length===t.length&&e.every((r,o)=>n(r)===n(t[o]))}function Uh(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function aM(e={}){const{ignoreAccents:t=!0,ignoreCase:n=!0,limit:r,matchFrom:o="any",stringify:a,trim:s=!1}=e;return(i,{inputValue:l,getOptionLabel:u})=>{let c=s?l.trim():l;n&&(c=c.toLowerCase()),t&&(c=Uh(c));const d=c?i.filter(m=>{let f=(a||u)(m);return n&&(f=f.toLowerCase()),t&&(f=Uh(f)),o==="start"?f.startsWith(c):f.includes(c)}):i;return typeof r=="number"?d.slice(0,r):d}}const sM=aM(),zh=5,iM=e=>e.current!==null&&e.current.parentElement?.contains(document.activeElement),lM=[];function Vh(e,t,n,r){if(t||e==null||r)return"";const o=n(e);return typeof o=="string"?o:""}function uM(e){const{unstable_isActiveElementInListbox:t=iM,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:o=!1,autoSelect:a=!1,blurOnSelect:s=!1,clearOnBlur:i=!e.freeSolo,clearOnEscape:l=!1,componentName:u="useAutocomplete",defaultValue:c=e.multiple?lM:null,disableClearable:d=!1,disableCloseOnSelect:m=!1,disabled:f,disabledItemsFocusable:h=!1,disableListWrap:b=!1,filterOptions:g=sM,filterSelectedOptions:x=!1,freeSolo:E=!1,getOptionDisabled:C,getOptionKey:T,getOptionLabel:w=ge=>ge.label??ge,groupBy:S,handleHomeEndKeys:O=!e.freeSolo,id:F,includeInputInList:B=!1,inputValue:P,isOptionEqualToValue:N=(ge,he)=>ge===he,multiple:v=!1,onChange:M,onClose:A,onHighlightChange:D,onInputChange:R,onOpen:z,open:U,openOnFocus:j=!1,options:_,readOnly:K=!1,renderValue:ne,selectOnFocus:L=!e.freeSolo,value:fe}=e,X=nr(F);let q=w;q=ge=>{const he=w(ge);return typeof he!="string"?String(he):he};const te=k.useRef(!1),Z=k.useRef(!0),re=k.useRef(null),Q=k.useRef(null),[G,se]=k.useState(null),[J,ee]=k.useState(-1),xe=o?0:-1,de=k.useRef(xe),be=k.useRef(Vh(c??fe,v,q)).current,[le,Pe]=_n({controlled:fe,default:c,name:u}),[Te,ze]=_n({controlled:P,default:be,name:u,state:"inputValue"}),[we,Et]=k.useState(!1),st=k.useCallback((ge,he,Oe)=>{if(!(v?le.length<he.length:he!==null)&&!i)return;const Ye=Vh(he,v,q,ne);Te!==Ye&&(ze(Ye),R&&R(ge,Ye,Oe))},[q,Te,v,R,ze,i,le,ne]),[qe,ue]=_n({controlled:U,default:!1,name:u,state:"open"}),[Ee,Me]=k.useState(!0),He=!v&&le!=null&&Te===q(le),Be=qe&&!K,Ne=Be?g(_.filter(ge=>!(x&&(v?le:[le]).some(he=>he!==null&&N(ge,he)))),{inputValue:He&&Ee?"":Te,getOptionLabel:q}):[],Ze=oM({filteredOptions:Ne,value:le,inputValue:Te});k.useEffect(()=>{const ge=le!==Ze.value;we&&!ge||E&&!ge||st(null,le,"reset")},[le,st,we,Ze.value,E]);const ht=qe&&Ne.length>0&&!K,pt=Ae(ge=>{if(ge===-1)re.current.focus();else{const he=ne?"data-item-index":"data-tag-index";G.querySelector(`[${he}="${ge}"]`).focus()}});k.useEffect(()=>{v&&J>le.length-1&&(ee(-1),pt(-1))},[le,v,J,pt]);function ie(ge,he){if(!Q.current||ge<0||ge>=Ne.length)return-1;let Oe=ge;for(;;){const Ve=Q.current.querySelector(`[data-option-index="${Oe}"]`),Ye=h?!1:!Ve||Ve.disabled||Ve.getAttribute("aria-disabled")==="true";if(Ve&&Ve.hasAttribute("tabindex")&&!Ye)return Oe;if(he==="next"?Oe=(Oe+1)%Ne.length:Oe=(Oe-1+Ne.length)%Ne.length,Oe===ge)return-1}}const ye=Ae(({event:ge,index:he,reason:Oe})=>{if(de.current=he,he===-1?re.current.removeAttribute("aria-activedescendant"):re.current.setAttribute("aria-activedescendant",`${X}-option-${he}`),D&&["mouse","keyboard","touch"].includes(Oe)&&D(ge,he===-1?null:Ne[he],Oe),!Q.current)return;const Ve=Q.current.querySelector(`[role="option"].${n}-focused`);Ve&&(Ve.classList.remove(`${n}-focused`),Ve.classList.remove(`${n}-focusVisible`));let Ye=Q.current;if(Q.current.getAttribute("role")!=="listbox"&&(Ye=Q.current.parentElement.querySelector('[role="listbox"]')),!Ye)return;if(he===-1){Ye.scrollTop=0;return}const Yt=Q.current.querySelector(`[data-option-index="${he}"]`);if(Yt&&(Yt.classList.add(`${n}-focused`),Oe==="keyboard"&&Yt.classList.add(`${n}-focusVisible`),Ye.scrollHeight>Ye.clientHeight&&Oe!=="mouse"&&Oe!=="touch")){const Ot=Yt,Zn=Ye.clientHeight+Ye.scrollTop,Ei=Ot.offsetTop+Ot.offsetHeight;Ei>Zn?Ye.scrollTop=Ei-Ye.clientHeight:Ot.offsetTop-Ot.offsetHeight*(S?1.3:0)<Ye.scrollTop&&(Ye.scrollTop=Ot.offsetTop-Ot.offsetHeight*(S?1.3:0))}}),ve=Ae(({event:ge,diff:he,direction:Oe="next",reason:Ve})=>{if(!Be)return;const Yt=ie((()=>{const Ot=Ne.length-1;if(he==="reset")return xe;if(he==="start")return 0;if(he==="end")return Ot;const Zn=de.current+he;return Zn<0?Zn===-1&&B?-1:b&&de.current!==-1||Math.abs(he)>1?0:Ot:Zn>Ot?Zn===Ot+1&&B?-1:b||Math.abs(he)>1?Ot:0:Zn})(),Oe);if(ye({index:Yt,reason:Ve,event:ge}),r&&he!=="reset")if(Yt===-1)re.current.value=Te;else{const Ot=q(Ne[Yt]);re.current.value=Ot,Ot.toLowerCase().indexOf(Te.toLowerCase())===0&&Te.length>0&&re.current.setSelectionRange(Te.length,Ot.length)}}),$e=!Hh({array1:Ze.filteredOptions,array2:Ne,parser:q}),We=()=>{const ge=(he,Oe)=>{const Ve=he?q(he):"",Ye=Oe?q(Oe):"";return Ve===Ye};if(de.current!==-1&&!Hh({array1:Ze.filteredOptions,array2:Ne,parser:q})&&Ze.inputValue===Te&&(v?le.length===Ze.value.length&&Ze.value.every((he,Oe)=>q(le[Oe])===q(he)):ge(Ze.value,le))){const he=Ze.filteredOptions[de.current];if(he)return Ne.findIndex(Oe=>q(Oe)===q(he))}return-1},kt=k.useCallback(()=>{if(!Be)return;const ge=We();if(ge!==-1){de.current=ge;return}const he=v?le[0]:le;if(Ne.length===0||he==null){ve({diff:"reset"});return}if(Q.current){if(he!=null){const Oe=Ne[de.current];if(v&&Oe&&le.findIndex(Ye=>N(Oe,Ye))!==-1)return;const Ve=Ne.findIndex(Ye=>N(Ye,he));Ve===-1?ve({diff:"reset"}):ye({index:Ve});return}if(de.current>=Ne.length-1){ye({index:Ne.length-1});return}ye({index:de.current})}},[Ne.length,v?!1:le,x,ve,ye,Be,Te,v]),Pt=Ae(ge=>{Wc(Q,ge),ge&&kt()});k.useEffect(()=>{$e&&kt()},[kt,$e]);const bt=ge=>{qe||(ue(!0),Me(!0),z&&z(ge))},Ht=(ge,he)=>{qe&&(ue(!1),A&&A(ge,he))},Pn=(ge,he,Oe,Ve)=>{if(v){if(le.length===he.length&&le.every((Ye,Yt)=>Ye===he[Yt]))return}else if(le===he)return;M&&M(ge,he,Oe,Ve),Pe(he)},wt=k.useRef(!1),en=(ge,he,Oe="selectOption",Ve="options")=>{let Ye=Oe,Yt=he;if(v){Yt=Array.isArray(le)?le.slice():[];const Ot=Yt.findIndex(Zn=>N(he,Zn));Ot===-1?Yt.push(he):Ve!=="freeSolo"&&(Yt.splice(Ot,1),Ye="removeOption")}st(ge,Yt,Ye),Pn(ge,Yt,Ye,{option:he}),!m&&(!ge||!ge.ctrlKey&&!ge.metaKey)&&Ht(ge,Ye),(s===!0||s==="touch"&&wt.current||s==="mouse"&&!wt.current)&&re.current.blur()};function wr(ge,he){if(ge===-1)return-1;let Oe=ge;for(;;){if(he==="next"&&Oe===le.length||he==="previous"&&Oe===-1)return-1;const Ve=ne?"data-item-index":"data-tag-index",Ye=G.querySelector(`[${Ve}="${Oe}"]`);if(!Ye||!Ye.hasAttribute("tabindex")||Ye.disabled||Ye.getAttribute("aria-disabled")==="true")Oe+=he==="next"?1:-1;else return Oe}}const Rn=(ge,he)=>{if(!v)return;Te===""&&Ht(ge,"toggleInput");let Oe=J;J===-1?Te===""&&he==="previous"&&(Oe=le.length-1):(Oe+=he==="next"?1:-1,Oe<0&&(Oe=0),Oe===le.length&&(Oe=-1)),Oe=wr(Oe,he),ee(Oe),pt(Oe)},io=ge=>{te.current=!0,ze(""),R&&R(ge,"","clear"),Pn(ge,v?[]:null,"clear")},Xn=ge=>he=>{if(ge.onKeyDown&&ge.onKeyDown(he),!he.defaultMuiPrevented&&(J!==-1&&!["ArrowLeft","ArrowRight"].includes(he.key)&&(ee(-1),pt(-1)),he.which!==229))switch(he.key){case"Home":Be&&O&&(he.preventDefault(),ve({diff:"start",direction:"next",reason:"keyboard",event:he}));break;case"End":Be&&O&&(he.preventDefault(),ve({diff:"end",direction:"previous",reason:"keyboard",event:he}));break;case"PageUp":he.preventDefault(),ve({diff:-zh,direction:"previous",reason:"keyboard",event:he}),bt(he);break;case"PageDown":he.preventDefault(),ve({diff:zh,direction:"next",reason:"keyboard",event:he}),bt(he);break;case"ArrowDown":he.preventDefault(),ve({diff:1,direction:"next",reason:"keyboard",event:he}),bt(he);break;case"ArrowUp":he.preventDefault(),ve({diff:-1,direction:"previous",reason:"keyboard",event:he}),bt(he);break;case"ArrowLeft":!v&&ne?pt(0):Rn(he,"previous");break;case"ArrowRight":!v&&ne?pt(-1):Rn(he,"next");break;case"Enter":if(de.current!==-1&&Be){const Oe=Ne[de.current],Ve=C?C(Oe):!1;if(he.preventDefault(),Ve)return;en(he,Oe,"selectOption"),r&&re.current.setSelectionRange(re.current.value.length,re.current.value.length)}else E&&Te!==""&&He===!1&&(v&&he.preventDefault(),en(he,Te,"createOption","freeSolo"));break;case"Escape":Be?(he.preventDefault(),he.stopPropagation(),Ht(he,"escape")):l&&(Te!==""||v&&le.length>0||ne)&&(he.preventDefault(),he.stopPropagation(),io(he));break;case"Backspace":if(v&&!K&&Te===""&&le.length>0){const Oe=J===-1?le.length-1:J,Ve=le.slice();Ve.splice(Oe,1),Pn(he,Ve,"removeOption",{option:le[Oe]})}!v&&ne&&!K&&(Pe(null),pt(-1));break;case"Delete":if(v&&!K&&Te===""&&le.length>0&&J!==-1){const Oe=J,Ve=le.slice();Ve.splice(Oe,1),Pn(he,Ve,"removeOption",{option:le[Oe]})}!v&&ne&&!K&&(Pe(null),pt(-1));break}},_r=ge=>{Et(!0),j&&!te.current&&bt(ge)},Vo=ge=>{if(t(Q)){re.current.focus();return}Et(!1),Z.current=!0,te.current=!1,a&&de.current!==-1&&Be?en(ge,Ne[de.current],"blur"):a&&E&&Te!==""?en(ge,Te,"blur","freeSolo"):i&&st(ge,le,"blur"),Ht(ge,"blur")},za=ge=>{const he=ge.target.value;Te!==he&&(ze(he),Me(!1),R&&R(ge,he,"input")),he===""?!d&&!v&&Pn(ge,null,"clear"):bt(ge)},Nu=ge=>{const he=Number(ge.currentTarget.getAttribute("data-option-index"));de.current!==he&&ye({event:ge,index:he,reason:"mouse"})},Ou=ge=>{ye({event:ge,index:Number(ge.currentTarget.getAttribute("data-option-index")),reason:"touch"}),wt.current=!0},Lu=ge=>{const he=Number(ge.currentTarget.getAttribute("data-option-index"));en(ge,Ne[he],"selectOption"),wt.current=!1},Fu=ge=>he=>{const Oe=le.slice();Oe.splice(ge,1),Pn(he,Oe,"removeOption",{option:le[ge]})},Va=ge=>{Pn(ge,null,"removeOption",{option:le})},Ut=ge=>{qe?Ht(ge,"toggleInput"):bt(ge)},qt=ge=>{ge.currentTarget.contains(ge.target)&&ge.target.getAttribute("id")!==X&&ge.preventDefault()},zr=ge=>{ge.currentTarget.contains(ge.target)&&(re.current.focus(),L&&Z.current&&re.current.selectionEnd-re.current.selectionStart===0&&re.current.select(),Z.current=!1)},$u=ge=>{!f&&(Te===""||!qe)&&Ut(ge)};let Wa=E&&Te.length>0;Wa=Wa||(v?le.length>0:le!==null);let Ci=Ne;return S&&(Ci=Ne.reduce((ge,he,Oe)=>{const Ve=S(he);return ge.length>0&&ge[ge.length-1].group===Ve?ge[ge.length-1].options.push(he):ge.push({key:Oe,index:Oe,group:Ve,options:[he]}),ge},[])),f&&we&&Vo(),{getRootProps:(ge={})=>({...ge,onKeyDown:Xn(ge),onMouseDown:qt,onClick:zr}),getInputLabelProps:()=>({id:`${X}-label`,htmlFor:X}),getInputProps:()=>({id:X,value:Te,onBlur:Vo,onFocus:_r,onChange:za,onMouseDown:$u,"aria-activedescendant":Be?"":null,"aria-autocomplete":r?"both":"list","aria-controls":ht?`${X}-listbox`:void 0,"aria-expanded":ht,autoComplete:"off",ref:re,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:f}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:io}),getItemProps:({index:ge=0}={})=>({...v&&{key:ge},...ne?{"data-item-index":ge}:{"data-tag-index":ge},tabIndex:-1,...!K&&{onDelete:v?Fu(ge):Va}}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:Ut}),getTagProps:({index:ge})=>({key:ge,"data-tag-index":ge,tabIndex:-1,...!K&&{onDelete:Fu(ge)}}),getListboxProps:()=>({role:"listbox",id:`${X}-listbox`,"aria-labelledby":`${X}-label`,ref:Pt,onMouseDown:ge=>{ge.preventDefault()}}),getOptionProps:({index:ge,option:he})=>{const Oe=(v?le:[le]).some(Ye=>Ye!=null&&N(he,Ye)),Ve=C?C(he):!1;return{key:T?.(he)??q(he),tabIndex:-1,role:"option",id:`${X}-option-${ge}`,onMouseMove:Nu,onClick:Lu,onTouchStart:Ou,"data-option-index":ge,"aria-disabled":Ve,"aria-selected":Oe}},id:X,inputValue:Te,value:le,dirty:Wa,expanded:Be&&G,popupOpen:Be,focused:we||J!==-1,anchorEl:G,setAnchorEl:se,focusedItem:J,focusedTag:J,groupedOptions:Ci}}const My=ce.oneOfType([ce.func,ce.object]);var bn="top",zn="bottom",Vn="right",yn="left",Dp="auto",mi=[bn,zn,Vn,yn],va="start",qs="end",cM="clippingParents",Ny="viewport",rs="popper",dM="reference",Wh=mi.reduce(function(e,t){return e.concat([t+"-"+va,t+"-"+qs])},[]),Oy=[].concat(mi,[Dp]).reduce(function(e,t){return e.concat([t,t+"-"+va,t+"-"+qs])},[]),pM="beforeRead",fM="read",mM="afterRead",hM="beforeMain",gM="main",bM="afterMain",yM="beforeWrite",xM="write",CM="afterWrite",EM=[pM,fM,mM,hM,gM,bM,yM,xM,CM];function br(e){return e?(e.nodeName||"").toLowerCase():null}function Dn(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Mo(e){var t=Dn(e).Element;return e instanceof t||e instanceof Element}function Hn(e){var t=Dn(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Pp(e){if(typeof ShadowRoot>"u")return!1;var t=Dn(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function vM(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},o=t.attributes[n]||{},a=t.elements[n];!Hn(a)||!br(a)||(Object.assign(a.style,r),Object.keys(o).forEach(function(s){var i=o[s];i===!1?a.removeAttribute(s):a.setAttribute(s,i===!0?"":i)}))})}function TM(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var o=t.elements[r],a=t.attributes[r]||{},s=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=s.reduce(function(l,u){return l[u]="",l},{});!Hn(o)||!br(o)||(Object.assign(o.style,i),Object.keys(a).forEach(function(l){o.removeAttribute(l)}))})}}const SM={name:"applyStyles",enabled:!0,phase:"write",fn:vM,effect:TM,requires:["computeStyles"]};function gr(e){return e.split("-")[0]}var _o=Math.max,Fl=Math.min,Ta=Math.round;function Td(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function Ly(){return!/^((?!chrome|android).)*safari/i.test(Td())}function Sa(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),o=1,a=1;t&&Hn(e)&&(o=e.offsetWidth>0&&Ta(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&Ta(r.height)/e.offsetHeight||1);var s=Mo(e)?Dn(e):window,i=s.visualViewport,l=!Ly()&&n,u=(r.left+(l&&i?i.offsetLeft:0))/o,c=(r.top+(l&&i?i.offsetTop:0))/a,d=r.width/o,m=r.height/a;return{width:d,height:m,top:c,right:u+d,bottom:c+m,left:u,x:u,y:c}}function Rp(e){var t=Sa(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function Fy(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Pp(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Fr(e){return Dn(e).getComputedStyle(e)}function kM(e){return["table","td","th"].indexOf(br(e))>=0}function so(e){return((Mo(e)?e.ownerDocument:e.document)||window.document).documentElement}function Cu(e){return br(e)==="html"?e:e.assignedSlot||e.parentNode||(Pp(e)?e.host:null)||so(e)}function qh(e){return!Hn(e)||Fr(e).position==="fixed"?null:e.offsetParent}function wM(e){var t=/firefox/i.test(Td()),n=/Trident/i.test(Td());if(n&&Hn(e)){var r=Fr(e);if(r.position==="fixed")return null}var o=Cu(e);for(Pp(o)&&(o=o.host);Hn(o)&&["html","body"].indexOf(br(o))<0;){var a=Fr(o);if(a.transform!=="none"||a.perspective!=="none"||a.contain==="paint"||["transform","perspective"].indexOf(a.willChange)!==-1||t&&a.willChange==="filter"||t&&a.filter&&a.filter!=="none")return o;o=o.parentNode}return null}function hi(e){for(var t=Dn(e),n=qh(e);n&&kM(n)&&Fr(n).position==="static";)n=qh(n);return n&&(br(n)==="html"||br(n)==="body"&&Fr(n).position==="static")?t:n||wM(e)||t}function Mp(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Ds(e,t,n){return _o(e,Fl(t,n))}function _M(e,t,n){var r=Ds(e,t,n);return r>n?n:r}function $y(){return{top:0,right:0,bottom:0,left:0}}function By(e){return Object.assign({},$y(),e)}function jy(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var IM=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,By(typeof t!="number"?t:jy(t,mi))};function AM(e){var t,n=e.state,r=e.name,o=e.options,a=n.elements.arrow,s=n.modifiersData.popperOffsets,i=gr(n.placement),l=Mp(i),u=[yn,Vn].indexOf(i)>=0,c=u?"height":"width";if(!(!a||!s)){var d=IM(o.padding,n),m=Rp(a),f=l==="y"?bn:yn,h=l==="y"?zn:Vn,b=n.rects.reference[c]+n.rects.reference[l]-s[l]-n.rects.popper[c],g=s[l]-n.rects.reference[l],x=hi(a),E=x?l==="y"?x.clientHeight||0:x.clientWidth||0:0,C=b/2-g/2,T=d[f],w=E-m[c]-d[h],S=E/2-m[c]/2+C,O=Ds(T,S,w),F=l;n.modifiersData[r]=(t={},t[F]=O,t.centerOffset=O-S,t)}}function DM(e){var t=e.state,n=e.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=t.elements.popper.querySelector(o),!o)||Fy(t.elements.popper,o)&&(t.elements.arrow=o))}const PM={name:"arrow",enabled:!0,phase:"main",fn:AM,effect:DM,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ka(e){return e.split("-")[1]}var RM={top:"auto",right:"auto",bottom:"auto",left:"auto"};function MM(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:Ta(n*o)/o||0,y:Ta(r*o)/o||0}}function Yh(e){var t,n=e.popper,r=e.popperRect,o=e.placement,a=e.variation,s=e.offsets,i=e.position,l=e.gpuAcceleration,u=e.adaptive,c=e.roundOffsets,d=e.isFixed,m=s.x,f=m===void 0?0:m,h=s.y,b=h===void 0?0:h,g=typeof c=="function"?c({x:f,y:b}):{x:f,y:b};f=g.x,b=g.y;var x=s.hasOwnProperty("x"),E=s.hasOwnProperty("y"),C=yn,T=bn,w=window;if(u){var S=hi(n),O="clientHeight",F="clientWidth";if(S===Dn(n)&&(S=so(n),Fr(S).position!=="static"&&i==="absolute"&&(O="scrollHeight",F="scrollWidth")),S=S,o===bn||(o===yn||o===Vn)&&a===qs){T=zn;var B=d&&S===w&&w.visualViewport?w.visualViewport.height:S[O];b-=B-r.height,b*=l?1:-1}if(o===yn||(o===bn||o===zn)&&a===qs){C=Vn;var P=d&&S===w&&w.visualViewport?w.visualViewport.width:S[F];f-=P-r.width,f*=l?1:-1}}var N=Object.assign({position:i},u&&RM),v=c===!0?MM({x:f,y:b},Dn(n)):{x:f,y:b};if(f=v.x,b=v.y,l){var M;return Object.assign({},N,(M={},M[T]=E?"0":"",M[C]=x?"0":"",M.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+b+"px)":"translate3d("+f+"px, "+b+"px, 0)",M))}return Object.assign({},N,(t={},t[T]=E?b+"px":"",t[C]=x?f+"px":"",t.transform="",t))}function NM(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=r===void 0?!0:r,a=n.adaptive,s=a===void 0?!0:a,i=n.roundOffsets,l=i===void 0?!0:i,u={placement:gr(t.placement),variation:ka(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Yh(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Yh(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const OM={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:NM,data:{}};var Li={passive:!0};function LM(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,a=o===void 0?!0:o,s=r.resize,i=s===void 0?!0:s,l=Dn(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&u.forEach(function(c){c.addEventListener("scroll",n.update,Li)}),i&&l.addEventListener("resize",n.update,Li),function(){a&&u.forEach(function(c){c.removeEventListener("scroll",n.update,Li)}),i&&l.removeEventListener("resize",n.update,Li)}}const FM={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:LM,data:{}};var $M={left:"right",right:"left",bottom:"top",top:"bottom"};function tl(e){return e.replace(/left|right|bottom|top/g,function(t){return $M[t]})}var BM={start:"end",end:"start"};function Gh(e){return e.replace(/start|end/g,function(t){return BM[t]})}function Np(e){var t=Dn(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Op(e){return Sa(so(e)).left+Np(e).scrollLeft}function jM(e,t){var n=Dn(e),r=so(e),o=n.visualViewport,a=r.clientWidth,s=r.clientHeight,i=0,l=0;if(o){a=o.width,s=o.height;var u=Ly();(u||!u&&t==="fixed")&&(i=o.offsetLeft,l=o.offsetTop)}return{width:a,height:s,x:i+Op(e),y:l}}function HM(e){var t,n=so(e),r=Np(e),o=(t=e.ownerDocument)==null?void 0:t.body,a=_o(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=_o(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),i=-r.scrollLeft+Op(e),l=-r.scrollTop;return Fr(o||n).direction==="rtl"&&(i+=_o(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:i,y:l}}function Lp(e){var t=Fr(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function Hy(e){return["html","body","#document"].indexOf(br(e))>=0?e.ownerDocument.body:Hn(e)&&Lp(e)?e:Hy(Cu(e))}function Ps(e,t){var n;t===void 0&&(t=[]);var r=Hy(e),o=r===((n=e.ownerDocument)==null?void 0:n.body),a=Dn(r),s=o?[a].concat(a.visualViewport||[],Lp(r)?r:[]):r,i=t.concat(s);return o?i:i.concat(Ps(Cu(s)))}function Sd(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function UM(e,t){var n=Sa(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function Kh(e,t,n){return t===Ny?Sd(jM(e,n)):Mo(t)?UM(t,n):Sd(HM(so(e)))}function zM(e){var t=Ps(Cu(e)),n=["absolute","fixed"].indexOf(Fr(e).position)>=0,r=n&&Hn(e)?hi(e):e;return Mo(r)?t.filter(function(o){return Mo(o)&&Fy(o,r)&&br(o)!=="body"}):[]}function VM(e,t,n,r){var o=t==="clippingParents"?zM(e):[].concat(t),a=[].concat(o,[n]),s=a[0],i=a.reduce(function(l,u){var c=Kh(e,u,r);return l.top=_o(c.top,l.top),l.right=Fl(c.right,l.right),l.bottom=Fl(c.bottom,l.bottom),l.left=_o(c.left,l.left),l},Kh(e,s,r));return i.width=i.right-i.left,i.height=i.bottom-i.top,i.x=i.left,i.y=i.top,i}function Uy(e){var t=e.reference,n=e.element,r=e.placement,o=r?gr(r):null,a=r?ka(r):null,s=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,l;switch(o){case bn:l={x:s,y:t.y-n.height};break;case zn:l={x:s,y:t.y+t.height};break;case Vn:l={x:t.x+t.width,y:i};break;case yn:l={x:t.x-n.width,y:i};break;default:l={x:t.x,y:t.y}}var u=o?Mp(o):null;if(u!=null){var c=u==="y"?"height":"width";switch(a){case va:l[u]=l[u]-(t[c]/2-n[c]/2);break;case qs:l[u]=l[u]+(t[c]/2-n[c]/2);break}}return l}function Ys(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=r===void 0?e.placement:r,a=n.strategy,s=a===void 0?e.strategy:a,i=n.boundary,l=i===void 0?cM:i,u=n.rootBoundary,c=u===void 0?Ny:u,d=n.elementContext,m=d===void 0?rs:d,f=n.altBoundary,h=f===void 0?!1:f,b=n.padding,g=b===void 0?0:b,x=By(typeof g!="number"?g:jy(g,mi)),E=m===rs?dM:rs,C=e.rects.popper,T=e.elements[h?E:m],w=VM(Mo(T)?T:T.contextElement||so(e.elements.popper),l,c,s),S=Sa(e.elements.reference),O=Uy({reference:S,element:C,placement:o}),F=Sd(Object.assign({},C,O)),B=m===rs?F:S,P={top:w.top-B.top+x.top,bottom:B.bottom-w.bottom+x.bottom,left:w.left-B.left+x.left,right:B.right-w.right+x.right},N=e.modifiersData.offset;if(m===rs&&N){var v=N[o];Object.keys(P).forEach(function(M){var A=[Vn,zn].indexOf(M)>=0?1:-1,D=[bn,zn].indexOf(M)>=0?"y":"x";P[M]+=v[D]*A})}return P}function WM(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=n.boundary,a=n.rootBoundary,s=n.padding,i=n.flipVariations,l=n.allowedAutoPlacements,u=l===void 0?Oy:l,c=ka(r),d=c?i?Wh:Wh.filter(function(h){return ka(h)===c}):mi,m=d.filter(function(h){return u.indexOf(h)>=0});m.length===0&&(m=d);var f=m.reduce(function(h,b){return h[b]=Ys(e,{placement:b,boundary:o,rootBoundary:a,padding:s})[gr(b)],h},{});return Object.keys(f).sort(function(h,b){return f[h]-f[b]})}function qM(e){if(gr(e)===Dp)return[];var t=tl(e);return[Gh(e),t,Gh(t)]}function YM(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,i=s===void 0?!0:s,l=n.fallbackPlacements,u=n.padding,c=n.boundary,d=n.rootBoundary,m=n.altBoundary,f=n.flipVariations,h=f===void 0?!0:f,b=n.allowedAutoPlacements,g=t.options.placement,x=gr(g),E=x===g,C=l||(E||!h?[tl(g)]:qM(g)),T=[g].concat(C).reduce(function(fe,X){return fe.concat(gr(X)===Dp?WM(t,{placement:X,boundary:c,rootBoundary:d,padding:u,flipVariations:h,allowedAutoPlacements:b}):X)},[]),w=t.rects.reference,S=t.rects.popper,O=new Map,F=!0,B=T[0],P=0;P<T.length;P++){var N=T[P],v=gr(N),M=ka(N)===va,A=[bn,zn].indexOf(v)>=0,D=A?"width":"height",R=Ys(t,{placement:N,boundary:c,rootBoundary:d,altBoundary:m,padding:u}),z=A?M?Vn:yn:M?zn:bn;w[D]>S[D]&&(z=tl(z));var U=tl(z),j=[];if(a&&j.push(R[v]<=0),i&&j.push(R[z]<=0,R[U]<=0),j.every(function(fe){return fe})){B=N,F=!1;break}O.set(N,j)}if(F)for(var _=h?3:1,K=function(X){var q=T.find(function(te){var Z=O.get(te);if(Z)return Z.slice(0,X).every(function(re){return re})});if(q)return B=q,"break"},ne=_;ne>0;ne--){var L=K(ne);if(L==="break")break}t.placement!==B&&(t.modifiersData[r]._skip=!0,t.placement=B,t.reset=!0)}}const GM={name:"flip",enabled:!0,phase:"main",fn:YM,requiresIfExists:["offset"],data:{_skip:!1}};function Qh(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Xh(e){return[bn,Vn,zn,yn].some(function(t){return e[t]>=0})}function KM(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,a=t.modifiersData.preventOverflow,s=Ys(t,{elementContext:"reference"}),i=Ys(t,{altBoundary:!0}),l=Qh(s,r),u=Qh(i,o,a),c=Xh(l),d=Xh(u);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:c,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":d})}const QM={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:KM};function XM(e,t,n){var r=gr(e),o=[yn,bn].indexOf(r)>=0?-1:1,a=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,s=a[0],i=a[1];return s=s||0,i=(i||0)*o,[yn,Vn].indexOf(r)>=0?{x:i,y:s}:{x:s,y:i}}function ZM(e){var t=e.state,n=e.options,r=e.name,o=n.offset,a=o===void 0?[0,0]:o,s=Oy.reduce(function(c,d){return c[d]=XM(d,t.rects,a),c},{}),i=s[t.placement],l=i.x,u=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=s}const JM={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:ZM};function eN(e){var t=e.state,n=e.name;t.modifiersData[n]=Uy({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}const tN={name:"popperOffsets",enabled:!0,phase:"read",fn:eN,data:{}};function nN(e){return e==="x"?"y":"x"}function rN(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,i=s===void 0?!1:s,l=n.boundary,u=n.rootBoundary,c=n.altBoundary,d=n.padding,m=n.tether,f=m===void 0?!0:m,h=n.tetherOffset,b=h===void 0?0:h,g=Ys(t,{boundary:l,rootBoundary:u,padding:d,altBoundary:c}),x=gr(t.placement),E=ka(t.placement),C=!E,T=Mp(x),w=nN(T),S=t.modifiersData.popperOffsets,O=t.rects.reference,F=t.rects.popper,B=typeof b=="function"?b(Object.assign({},t.rects,{placement:t.placement})):b,P=typeof B=="number"?{mainAxis:B,altAxis:B}:Object.assign({mainAxis:0,altAxis:0},B),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,v={x:0,y:0};if(S){if(a){var M,A=T==="y"?bn:yn,D=T==="y"?zn:Vn,R=T==="y"?"height":"width",z=S[T],U=z+g[A],j=z-g[D],_=f?-F[R]/2:0,K=E===va?O[R]:F[R],ne=E===va?-F[R]:-O[R],L=t.elements.arrow,fe=f&&L?Rp(L):{width:0,height:0},X=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:$y(),q=X[A],te=X[D],Z=Ds(0,O[R],fe[R]),re=C?O[R]/2-_-Z-q-P.mainAxis:K-Z-q-P.mainAxis,Q=C?-O[R]/2+_+Z+te+P.mainAxis:ne+Z+te+P.mainAxis,G=t.elements.arrow&&hi(t.elements.arrow),se=G?T==="y"?G.clientTop||0:G.clientLeft||0:0,J=(M=N?.[T])!=null?M:0,ee=z+re-J-se,xe=z+Q-J,de=Ds(f?Fl(U,ee):U,z,f?_o(j,xe):j);S[T]=de,v[T]=de-z}if(i){var be,le=T==="x"?bn:yn,Pe=T==="x"?zn:Vn,Te=S[w],ze=w==="y"?"height":"width",we=Te+g[le],Et=Te-g[Pe],st=[bn,yn].indexOf(x)!==-1,qe=(be=N?.[w])!=null?be:0,ue=st?we:Te-O[ze]-F[ze]-qe+P.altAxis,Ee=st?Te+O[ze]+F[ze]-qe-P.altAxis:Et,Me=f&&st?_M(ue,Te,Ee):Ds(f?ue:we,Te,f?Ee:Et);S[w]=Me,v[w]=Me-Te}t.modifiersData[r]=v}}const oN={name:"preventOverflow",enabled:!0,phase:"main",fn:rN,requiresIfExists:["offset"]};function aN(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function sN(e){return e===Dn(e)||!Hn(e)?Np(e):aN(e)}function iN(e){var t=e.getBoundingClientRect(),n=Ta(t.width)/e.offsetWidth||1,r=Ta(t.height)/e.offsetHeight||1;return n!==1||r!==1}function lN(e,t,n){n===void 0&&(n=!1);var r=Hn(t),o=Hn(t)&&iN(t),a=so(t),s=Sa(e,o,n),i={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&((br(t)!=="body"||Lp(a))&&(i=sN(t)),Hn(t)?(l=Sa(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):a&&(l.x=Op(a))),{x:s.left+i.scrollLeft-l.x,y:s.top+i.scrollTop-l.y,width:s.width,height:s.height}}function uN(e){var t=new Map,n=new Set,r=[];e.forEach(function(a){t.set(a.name,a)});function o(a){n.add(a.name);var s=[].concat(a.requires||[],a.requiresIfExists||[]);s.forEach(function(i){if(!n.has(i)){var l=t.get(i);l&&o(l)}}),r.push(a)}return e.forEach(function(a){n.has(a.name)||o(a)}),r}function cN(e){var t=uN(e);return EM.reduce(function(n,r){return n.concat(t.filter(function(o){return o.phase===r}))},[])}function dN(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function pN(e){var t=e.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var Zh={placement:"bottom",modifiers:[],strategy:"absolute"};function Jh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function fN(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,o=t.defaultOptions,a=o===void 0?Zh:o;return function(i,l,u){u===void 0&&(u=a);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},Zh,a),modifiersData:{},elements:{reference:i,popper:l},attributes:{},styles:{}},d=[],m=!1,f={state:c,setOptions:function(x){var E=typeof x=="function"?x(c.options):x;b(),c.options=Object.assign({},a,c.options,E),c.scrollParents={reference:Mo(i)?Ps(i):i.contextElement?Ps(i.contextElement):[],popper:Ps(l)};var C=cN(pN([].concat(r,c.options.modifiers)));return c.orderedModifiers=C.filter(function(T){return T.enabled}),h(),f.update()},forceUpdate:function(){if(!m){var x=c.elements,E=x.reference,C=x.popper;if(Jh(E,C)){c.rects={reference:lN(E,hi(C),c.options.strategy==="fixed"),popper:Rp(C)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(P){return c.modifiersData[P.name]=Object.assign({},P.data)});for(var T=0;T<c.orderedModifiers.length;T++){if(c.reset===!0){c.reset=!1,T=-1;continue}var w=c.orderedModifiers[T],S=w.fn,O=w.options,F=O===void 0?{}:O,B=w.name;typeof S=="function"&&(c=S({state:c,options:F,name:B,instance:f})||c)}}}},update:dN(function(){return new Promise(function(g){f.forceUpdate(),g(c)})}),destroy:function(){b(),m=!0}};if(!Jh(i,l))return f;f.setOptions(u).then(function(g){!m&&u.onFirstUpdate&&u.onFirstUpdate(g)});function h(){c.orderedModifiers.forEach(function(g){var x=g.name,E=g.options,C=E===void 0?{}:E,T=g.effect;if(typeof T=="function"){var w=T({state:c,name:x,instance:f,options:C}),S=function(){};d.push(w||S)}})}function b(){d.forEach(function(g){return g()}),d=[]}return f}}var mN=[FM,tN,OM,SM,JM,GM,oN,PM,QM],hN=fN({defaultModifiers:mN});function wa(e){return typeof e=="string"}function zy(e,t,n){return e===void 0||wa(e)?t:{...t,ownerState:{...t.ownerState,...n}}}function ln(e,t=[]){if(e===void 0)return{};const n={};return Object.keys(e).filter(r=>r.match(/^on[A-Z]/)&&typeof e[r]=="function"&&!t.includes(r)).forEach(r=>{n[r]=e[r]}),n}function eg(e){if(e===void 0)return{};const t={};return Object.keys(e).filter(n=>!(n.match(/^on[A-Z]/)&&typeof e[n]=="function")).forEach(n=>{t[n]=e[n]}),t}function Vy(e){const{getSlotProps:t,additionalProps:n,externalSlotProps:r,externalForwardedProps:o,className:a}=e;if(!t){const f=De(n?.className,a,o?.className,r?.className),h={...n?.style,...o?.style,...r?.style},b={...n,...o,...r};return f.length>0&&(b.className=f),Object.keys(h).length>0&&(b.style=h),{props:b,internalRef:void 0}}const s=ln({...o,...r}),i=eg(r),l=eg(o),u=t(s),c=De(u?.className,n?.className,a,o?.className,r?.className),d={...u?.style,...n?.style,...o?.style,...r?.style},m={...u,...n,...l,...i};return c.length>0&&(m.className=c),Object.keys(d).length>0&&(m.style=d),{props:m,internalRef:u.ref}}function jn(e,t,n){return typeof e=="function"?e(t,n):e}function tt(e){const{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:o=!1,...a}=e,s=o?{}:jn(n,r),{props:i,internalRef:l}=Vy({...a,externalSlotProps:s}),u=nt(l,s?.ref,e.additionalProps?.ref);return zy(t,{...i,ref:u},r)}function ja(e){return parseInt(k.version,10)>=19?e?.props?.ref||null:e?.ref||null}function gN(e){return typeof e=="function"?e():e}const Wy=k.forwardRef(function(t,n){const{children:r,container:o,disablePortal:a=!1}=t,[s,i]=k.useState(null),l=nt(k.isValidElement(r)?ja(r):null,n);if(Vt(()=>{a||i(gN(o)||document.body)},[o,a]),Vt(()=>{if(s&&!a)return Wc(n,s),()=>{Wc(n,null)}},[n,s,a]),a){if(k.isValidElement(r)){const u={ref:l};return k.cloneElement(r,u)}return r}return s&&Q2.createPortal(r,s)});function bN(e){return Fe("MuiPopper",e)}Re("MuiPopper",["root"]);function yN(e,t){if(t==="ltr")return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}function kd(e){return typeof e=="function"?e():e}function xN(e){return e.nodeType!==void 0}const CN=e=>{const{classes:t}=e;return Le({root:["root"]},bN,t)},EN={},vN=k.forwardRef(function(t,n){const{anchorEl:r,children:o,direction:a,disablePortal:s,modifiers:i,open:l,placement:u,popperOptions:c,popperRef:d,slotProps:m={},slots:f={},TransitionProps:h,ownerState:b,...g}=t,x=k.useRef(null),E=nt(x,n),C=k.useRef(null),T=nt(C,d),w=k.useRef(T);Vt(()=>{w.current=T},[T]),k.useImperativeHandle(d,()=>C.current,[]);const S=yN(u,a),[O,F]=k.useState(S),[B,P]=k.useState(kd(r));k.useEffect(()=>{C.current&&C.current.forceUpdate()}),k.useEffect(()=>{r&&P(kd(r))},[r]),Vt(()=>{if(!B||!l)return;const D=U=>{F(U.placement)};let R=[{name:"preventOverflow",options:{altBoundary:s}},{name:"flip",options:{altBoundary:s}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:({state:U})=>{D(U)}}];i!=null&&(R=R.concat(i)),c&&c.modifiers!=null&&(R=R.concat(c.modifiers));const z=hN(B,x.current,{placement:S,...c,modifiers:R});return w.current(z),()=>{z.destroy(),w.current(null)}},[B,s,i,l,c,S]);const N={placement:O};h!==null&&(N.TransitionProps=h);const v=CN(t),M=f.root??"div",A=tt({elementType:M,externalSlotProps:m.root,externalForwardedProps:g,additionalProps:{role:"tooltip",ref:E},ownerState:t,className:v.root});return p.jsx(M,{...A,children:typeof o=="function"?o(N):o})}),TN=k.forwardRef(function(t,n){const{anchorEl:r,children:o,container:a,direction:s="ltr",disablePortal:i=!1,keepMounted:l=!1,modifiers:u,open:c,placement:d="bottom",popperOptions:m=EN,popperRef:f,style:h,transition:b=!1,slotProps:g={},slots:x={},...E}=t,[C,T]=k.useState(!0),w=()=>{T(!1)},S=()=>{T(!0)};if(!l&&!c&&(!b||C))return null;let O;if(a)O=a;else if(r){const P=kd(r);O=P&&xN(P)?jt(P).body:jt(null).body}const F=!c&&l&&(!b||C)?"none":void 0,B=b?{in:c,onEnter:w,onExited:S}:void 0;return p.jsx(Wy,{disablePortal:i,container:O,children:p.jsx(vN,{anchorEl:r,direction:s,disablePortal:i,modifiers:u,ref:n,open:b?!C:c,placement:d,popperOptions:m,popperRef:f,slotProps:g,slots:x,...E,style:{position:"fixed",top:0,left:0,display:F,...h},TransitionProps:B,children:o})})}),SN=ae(TN,{name:"MuiPopper",slot:"Root"})({}),Fp=k.forwardRef(function(t,n){const r=Yn(),o=Qe({props:t,name:"MuiPopper"}),{anchorEl:a,component:s,components:i,componentsProps:l,container:u,disablePortal:c,keepMounted:d,modifiers:m,open:f,placement:h,popperOptions:b,popperRef:g,transition:x,slots:E,slotProps:C,...T}=o,w=E?.root??i?.Root,S={anchorEl:a,container:u,disablePortal:c,keepMounted:d,modifiers:m,open:f,placement:h,popperOptions:b,popperRef:g,transition:x,...T};return p.jsx(SN,{as:s,direction:r?"rtl":"ltr",slots:{root:w},slotProps:C??l,...S,ref:n})});function kN(e){return Fe("MuiListSubheader",e)}Re("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const wN=e=>{const{classes:t,color:n,disableGutters:r,inset:o,disableSticky:a}=e,s={root:["root",n!=="default"&&`color${ke(n)}`,!r&&"gutters",o&&"inset",!a&&"sticky"]};return Le(s,kN,t)},_N=ae("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="default"&&t[`color${ke(n.color)}`],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})(Je(({theme:e})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(e.vars||e).palette.text.secondary,fontFamily:e.typography.fontFamily,fontWeight:e.typography.fontWeightMedium,fontSize:e.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(e.vars||e).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:t})=>!t.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:t})=>t.inset,style:{paddingLeft:72}},{props:({ownerState:t})=>!t.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(e.vars||e).palette.background.paper}}]}))),wd=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiListSubheader"}),{className:o,color:a="default",component:s="li",disableGutters:i=!1,disableSticky:l=!1,inset:u=!1,...c}=r,d={...r,color:a,component:s,disableGutters:i,disableSticky:l,inset:u},m=wN(d);return p.jsx(_N,{as:s,className:De(m.root,o),ref:n,ownerState:d,...c})});wd&&(wd.muiSkipListHighlight=!0);function IN(e){return Fe("MuiPaper",e)}Re("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);const AN=e=>{const{square:t,elevation:n,variant:r,classes:o}=e,a={root:["root",r,!t&&"rounded",r==="elevation"&&`elevation${n}`]};return Le(a,IN,o)},DN=ae("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.variant],!n.square&&t.rounded,n.variant==="elevation"&&t[`elevation${n.elevation}`]]}})(Je(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,color:(e.vars||e).palette.text.primary,transition:e.transitions.create("box-shadow"),variants:[{props:({ownerState:t})=>!t.square,style:{borderRadius:e.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(e.vars||e).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),Ho=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiPaper"}),o=no(),{className:a,component:s="div",elevation:i=1,square:l=!1,variant:u="elevation",...c}=r,d={...r,component:s,elevation:i,square:l,variant:u},m=AN(d);return p.jsx(DN,{as:s,ownerState:d,className:De(m.root,a),ref:n,...c,style:{...u==="elevation"&&{"--Paper-shadow":(o.vars||o).shadows[i],...o.vars&&{"--Paper-overlay":o.vars.overlays?.[i]},...!o.vars&&o.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${fl("#fff",zc(i))}, ${fl("#fff",zc(i))})`}},...c.style}})});function PN(e){return typeof e.main=="string"}function RN(e,t=[]){if(!PN(e))return!1;for(const n of t)if(!e.hasOwnProperty(n)||typeof e[n]!="string")return!1;return!0}function dn(e=[]){return([,t])=>t&&RN(t,e)}function tg(e){try{return e.matches(":focus-visible")}catch{}return!1}const ng={};function qy(e,t){const n=k.useRef(ng);return n.current===ng&&(n.current=e(t)),n}class $l{static create(){return new $l}static use(){const t=qy($l.create).current,[n,r]=k.useState(!1);return t.shouldMount=n,t.setShouldMount=r,k.useEffect(t.mountEffect,[n]),t}constructor(){this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}mount(){return this.mounted||(this.mounted=NN(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())};start(...t){this.mount().then(()=>this.ref.current?.start(...t))}stop(...t){this.mount().then(()=>this.ref.current?.stop(...t))}pulsate(...t){this.mount().then(()=>this.ref.current?.pulsate(...t))}}function MN(){return $l.use()}function NN(){let e,t;const n=new Promise((r,o)=>{e=r,t=o});return n.resolve=e,n.reject=t,n}function _d(e,t){return _d=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,r){return n.__proto__=r,n},_d(e,t)}function $p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,_d(e,t)}function ON(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function LN(e,t){e.classList?e.classList.add(t):ON(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function rg(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function FN(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=rg(e.className,t):e.setAttribute("class",rg(e.className&&e.className.baseVal||"",t))}const og={disabled:!1},Bl=W.createContext(null);var Yy=function(t){return t.scrollTop},bs="unmounted",go="exited",bo="entering",ra="entered",Id="exiting",Kn=(function(e){$p(t,e);function t(r,o){var a;a=e.call(this,r,o)||this;var s=o,i=s&&!s.isMounting?r.enter:r.appear,l;return a.appearStatus=null,r.in?i?(l=go,a.appearStatus=bo):l=ra:r.unmountOnExit||r.mountOnEnter?l=bs:l=go,a.state={status:l},a.nextCallback=null,a}t.getDerivedStateFromProps=function(o,a){var s=o.in;return s&&a.status===bs?{status:go}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(o){var a=null;if(o!==this.props){var s=this.state.status;this.props.in?s!==bo&&s!==ra&&(a=bo):(s===bo||s===ra)&&(a=Id)}this.updateStatus(!1,a)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var o=this.props.timeout,a,s,i;return a=s=i=o,o!=null&&typeof o!="number"&&(a=o.exit,s=o.enter,i=o.appear!==void 0?o.appear:s),{exit:a,enter:s,appear:i}},n.updateStatus=function(o,a){if(o===void 0&&(o=!1),a!==null)if(this.cancelNextCallback(),a===bo){if(this.props.unmountOnExit||this.props.mountOnEnter){var s=this.props.nodeRef?this.props.nodeRef.current:ps.findDOMNode(this);s&&Yy(s)}this.performEnter(o)}else this.performExit();else this.props.unmountOnExit&&this.state.status===go&&this.setState({status:bs})},n.performEnter=function(o){var a=this,s=this.props.enter,i=this.context?this.context.isMounting:o,l=this.props.nodeRef?[i]:[ps.findDOMNode(this),i],u=l[0],c=l[1],d=this.getTimeouts(),m=i?d.appear:d.enter;if(!o&&!s||og.disabled){this.safeSetState({status:ra},function(){a.props.onEntered(u)});return}this.props.onEnter(u,c),this.safeSetState({status:bo},function(){a.props.onEntering(u,c),a.onTransitionEnd(m,function(){a.safeSetState({status:ra},function(){a.props.onEntered(u,c)})})})},n.performExit=function(){var o=this,a=this.props.exit,s=this.getTimeouts(),i=this.props.nodeRef?void 0:ps.findDOMNode(this);if(!a||og.disabled){this.safeSetState({status:go},function(){o.props.onExited(i)});return}this.props.onExit(i),this.safeSetState({status:Id},function(){o.props.onExiting(i),o.onTransitionEnd(s.exit,function(){o.safeSetState({status:go},function(){o.props.onExited(i)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(o,a){a=this.setNextCallback(a),this.setState(o,a)},n.setNextCallback=function(o){var a=this,s=!0;return this.nextCallback=function(i){s&&(s=!1,a.nextCallback=null,o(i))},this.nextCallback.cancel=function(){s=!1},this.nextCallback},n.onTransitionEnd=function(o,a){this.setNextCallback(a);var s=this.props.nodeRef?this.props.nodeRef.current:ps.findDOMNode(this),i=o==null&&!this.props.addEndListener;if(!s||i){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var l=this.props.nodeRef?[this.nextCallback]:[s,this.nextCallback],u=l[0],c=l[1];this.props.addEndListener(u,c)}o!=null&&setTimeout(this.nextCallback,o)},n.render=function(){var o=this.state.status;if(o===bs)return null;var a=this.props,s=a.children;a.in,a.mountOnEnter,a.unmountOnExit,a.appear,a.enter,a.exit,a.timeout,a.addEndListener,a.onEnter,a.onEntering,a.onEntered,a.onExit,a.onExiting,a.onExited,a.nodeRef;var i=je(a,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return W.createElement(Bl.Provider,{value:null},typeof s=="function"?s(o,i):W.cloneElement(W.Children.only(s),i))},t})(W.Component);Kn.contextType=Bl;Kn.propTypes={};function ea(){}Kn.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:ea,onEntering:ea,onEntered:ea,onExit:ea,onExiting:ea,onExited:ea};Kn.UNMOUNTED=bs;Kn.EXITED=go;Kn.ENTERING=bo;Kn.ENTERED=ra;Kn.EXITING=Id;var $N=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return LN(t,r)})},Ic=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return FN(t,r)})},Bp=(function(e){$p(t,e);function t(){for(var r,o=arguments.length,a=new Array(o),s=0;s<o;s++)a[s]=arguments[s];return r=e.call.apply(e,[this].concat(a))||this,r.appliedClasses={appear:{},enter:{},exit:{}},r.onEnter=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1];r.removeClasses(c,"exit"),r.addClass(c,d?"appear":"enter","base"),r.props.onEnter&&r.props.onEnter(i,l)},r.onEntering=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1],m=d?"appear":"enter";r.addClass(c,m,"active"),r.props.onEntering&&r.props.onEntering(i,l)},r.onEntered=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1],m=d?"appear":"enter";r.removeClasses(c,m),r.addClass(c,m,"done"),r.props.onEntered&&r.props.onEntered(i,l)},r.onExit=function(i){var l=r.resolveArguments(i),u=l[0];r.removeClasses(u,"appear"),r.removeClasses(u,"enter"),r.addClass(u,"exit","base"),r.props.onExit&&r.props.onExit(i)},r.onExiting=function(i){var l=r.resolveArguments(i),u=l[0];r.addClass(u,"exit","active"),r.props.onExiting&&r.props.onExiting(i)},r.onExited=function(i){var l=r.resolveArguments(i),u=l[0];r.removeClasses(u,"exit"),r.addClass(u,"exit","done"),r.props.onExited&&r.props.onExited(i)},r.resolveArguments=function(i,l){return r.props.nodeRef?[r.props.nodeRef.current,i]:[i,l]},r.getClassNames=function(i){var l=r.props.classNames,u=typeof l=="string",c=u&&l?l+"-":"",d=u?""+c+i:l[i],m=u?d+"-active":l[i+"Active"],f=u?d+"-done":l[i+"Done"];return{baseClassName:d,activeClassName:m,doneClassName:f}},r}var n=t.prototype;return n.addClass=function(o,a,s){var i=this.getClassNames(a)[s+"ClassName"],l=this.getClassNames("enter"),u=l.doneClassName;a==="appear"&&s==="done"&&u&&(i+=" "+u),s==="active"&&o&&Yy(o),i&&(this.appliedClasses[a][s]=i,$N(o,i))},n.removeClasses=function(o,a){var s=this.appliedClasses[a],i=s.base,l=s.active,u=s.done;this.appliedClasses[a]={},i&&Ic(o,i),l&&Ic(o,l),u&&Ic(o,u)},n.render=function(){var o=this.props;o.classNames;var a=je(o,["classNames"]);return W.createElement(Kn,H({},a,{onEnter:this.onEnter,onEntered:this.onEntered,onEntering:this.onEntering,onExit:this.onExit,onExiting:this.onExiting,onExited:this.onExited}))},t})(W.Component);Bp.defaultProps={classNames:""};Bp.propTypes={};function BN(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function jp(e,t){var n=function(a){return t&&W.isValidElement(a)?t(a):a},r=Object.create(null);return e&&W.Children.map(e,function(o){return o}).forEach(function(o){r[o.key]=n(o)}),r}function jN(e,t){e=e||{},t=t||{};function n(c){return c in t?t[c]:e[c]}var r=Object.create(null),o=[];for(var a in e)a in t?o.length&&(r[a]=o,o=[]):o.push(a);var s,i={};for(var l in t){if(r[l])for(s=0;s<r[l].length;s++){var u=r[l][s];i[r[l][s]]=n(u)}i[l]=n(l)}for(s=0;s<o.length;s++)i[o[s]]=n(o[s]);return i}function vo(e,t,n){return n[t]!=null?n[t]:e.props[t]}function HN(e,t){return jp(e.children,function(n){return W.cloneElement(n,{onExited:t.bind(null,n),in:!0,appear:vo(n,"appear",e),enter:vo(n,"enter",e),exit:vo(n,"exit",e)})})}function UN(e,t,n){var r=jp(e.children),o=jN(t,r);return Object.keys(o).forEach(function(a){var s=o[a];if(W.isValidElement(s)){var i=a in t,l=a in r,u=t[a],c=W.isValidElement(u)&&!u.props.in;l&&(!i||c)?o[a]=W.cloneElement(s,{onExited:n.bind(null,s),in:!0,exit:vo(s,"exit",e),enter:vo(s,"enter",e)}):!l&&i&&!c?o[a]=W.cloneElement(s,{in:!1}):l&&i&&W.isValidElement(u)&&(o[a]=W.cloneElement(s,{onExited:n.bind(null,s),in:u.props.in,exit:vo(s,"exit",e),enter:vo(s,"enter",e)}))}}),o}var zN=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},VN={component:"div",childFactory:function(t){return t}},gi=(function(e){$p(t,e);function t(r,o){var a;a=e.call(this,r,o)||this;var s=a.handleExited.bind(BN(a));return a.state={contextValue:{isMounting:!0},handleExited:s,firstRender:!0},a}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(o,a){var s=a.children,i=a.handleExited,l=a.firstRender;return{children:l?HN(o,i):UN(o,s,i),firstRender:!1}},n.handleExited=function(o,a){var s=jp(this.props.children);o.key in s||(o.props.onExited&&o.props.onExited(a),this.mounted&&this.setState(function(i){var l=H({},i.children);return delete l[o.key],{children:l}}))},n.render=function(){var o=this.props,a=o.component,s=o.childFactory,i=je(o,["component","childFactory"]),l=this.state.contextValue,u=zN(this.state.children).map(s);return delete i.appear,delete i.enter,delete i.exit,a===null?W.createElement(Bl.Provider,{value:l},u):W.createElement(Bl.Provider,{value:l},W.createElement(a,i,u))},t})(W.Component);gi.propTypes={};gi.defaultProps=VN;const WN=[];function qN(e){k.useEffect(e,WN)}class Hp{static create(){return new Hp}currentId=null;start(t,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,n()},t)}clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear}function Eu(){const e=qy(Hp.create).current;return qN(e.disposeEffect),e}function YN(e){const{className:t,classes:n,pulsate:r=!1,rippleX:o,rippleY:a,rippleSize:s,in:i,onExited:l,timeout:u}=e,[c,d]=k.useState(!1),m=De(t,n.ripple,n.rippleVisible,r&&n.ripplePulsate),f={width:s,height:s,top:-(s/2)+a,left:-(s/2)+o},h=De(n.child,c&&n.childLeaving,r&&n.childPulsate);return!i&&!c&&d(!0),k.useEffect(()=>{if(!i&&l!=null){const b=setTimeout(l,u);return()=>{clearTimeout(b)}}},[l,i,u]),p.jsx("span",{className:m,style:f,children:p.jsx("span",{className:h})})}const Ln=Re("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Ad=550,GN=80,KN=ut.keyframes`
103
+ `}));let g={type:"element",tagName:"span",properties:{class:"line"},children:[]},x=0;for(const E of h){let C={type:"element",tagName:"span",properties:{...E.htmlAttrs},children:[{type:"text",value:E.content}]};E.htmlStyle;const T=s8(E.htmlStyle||Ty(E));T&&(C.properties.style=T);for(const w of o)C=w?.span?.call(m,C,b+1,x,g,E)||C;i==="inline"?s.children.push(C):i==="classic"&&g.children.push(C),x+=E.content.length}if(i==="classic"){for(const E of o)g=E?.line?.call(m,g,b+1)||g;d.push(g),a.push(g)}}),i==="classic"){for(const h of o)c=h?.code?.call(m,c)||c;u.children.push(c);for(const h of o)u=h?.pre?.call(m,u)||u;s.children.push(u)}let f=s;for(const h of o)f=h?.root?.call(m,f)||f;return r&&xu(f,r),f}function I8(e){return e.map(t=>{const n=[];let r="",o=0;return t.forEach((a,s)=>{const l=!(a.fontStyle&&a.fontStyle&Mr.Underline);l&&a.content.match(/^\s+$/)&&t[s+1]?(o||(o=a.offset),r+=a.content):r?(l?n.push({...a,offset:o,content:r+a.content}):n.push({content:r,offset:o},a),o=0,r=""):n.push(a)}),n})}function A8(e){return e.map(t=>t.flatMap(n=>{if(n.content.match(/^\s+$/))return n;const r=n.content.match(/^(\s*)(.*?)(\s*)$/);if(!r)return n;const[,o,a,s]=r;if(!o&&!s)return n;const i=[{...n,offset:n.offset+o.length,content:a}];return o&&i.unshift({content:o,offset:n.offset}),s&&i.push({content:s,offset:n.offset+o.length+a.length}),i}))}function D8(e,t,n){const r={meta:{},options:n,codeToHast:(a,s)=>Ol(e,a,s),codeToTokens:(a,s)=>Nl(e,a,s)};let o=ZR(Ol(e,t,n,r));for(const a of Rl(n))o=a.postprocess?.call(r,o,n)||o;return o}const Fh={light:"#333333",dark:"#bbbbbb"},$h={light:"#fffffe",dark:"#1e1e1e"},Bh="__shiki_resolved";function _p(e){if(e?.[Bh])return e;const t={...e};t.tokenColors&&!t.settings&&(t.settings=t.tokenColors,delete t.tokenColors),t.type||="dark",t.colorReplacements={...t.colorReplacements},t.settings||=[];let{bg:n,fg:r}=t;if(!n||!r){const i=t.settings?t.settings.find(l=>!l.name&&!l.scope):void 0;i?.settings?.foreground&&(r=i.settings.foreground),i?.settings?.background&&(n=i.settings.background),!r&&t?.colors?.["editor.foreground"]&&(r=t.colors["editor.foreground"]),!n&&t?.colors?.["editor.background"]&&(n=t.colors["editor.background"]),r||(r=t.type==="light"?Fh.light:Fh.dark),n||(n=t.type==="light"?$h.light:$h.dark),t.fg=r,t.bg=n}t.settings[0]&&t.settings[0].settings&&!t.settings[0].scope||t.settings.unshift({settings:{foreground:t.fg,background:t.bg}});let o=0;const a=new Map;function s(i){if(a.has(i))return a.get(i);o+=1;const l=`#${o.toString(16).padStart(8,"0").toLowerCase()}`;return t.colorReplacements?.[`#${l}`]?s(i):(a.set(i,l),l)}t.settings=t.settings.map(i=>{const l=i.settings?.foreground&&!i.settings.foreground.startsWith("#"),u=i.settings?.background&&!i.settings.background.startsWith("#");if(!l&&!u)return i;const c={...i,settings:{...i.settings}};if(l){const d=s(i.settings.foreground);t.colorReplacements[d]=i.settings.foreground,c.settings.foreground=d}if(u){const d=s(i.settings.background);t.colorReplacements[d]=i.settings.background,c.settings.background=d}return c});for(const i of Object.keys(t.colors||{}))if((i==="editor.foreground"||i==="editor.background"||i.startsWith("terminal.ansi"))&&!t.colors[i]?.startsWith("#")){const l=s(t.colors[i]);t.colorReplacements[l]=t.colors[i],t.colors[i]=l}return Object.defineProperty(t,Bh,{enumerable:!1,writable:!1,value:!0}),t}async function _y(e){return Array.from(new Set((await Promise.all(e.filter(t=>!n8(t)).map(async t=>await vy(t).then(n=>Array.isArray(n)?n:[n])))).flat()))}async function Iy(e){return(await Promise.all(e.map(async n=>r8(n)?null:_p(await vy(n))))).filter(n=>!!n)}class P8 extends ZP{constructor(t,n,r,o={}){super(t),this._resolver=t,this._themes=n,this._langs=r,this._alias=o,this._themes.map(a=>this.loadTheme(a)),this.loadLanguages(this._langs)}_resolvedThemes=new Map;_resolvedGrammars=new Map;_langMap=new Map;_langGraph=new Map;_textmateThemeCache=new WeakMap;_loadedThemesCache=null;_loadedLanguagesCache=null;getTheme(t){return typeof t=="string"?this._resolvedThemes.get(t):this.loadTheme(t)}loadTheme(t){const n=_p(t);return n.name&&(this._resolvedThemes.set(n.name,n),this._loadedThemesCache=null),n}getLoadedThemes(){return this._loadedThemesCache||(this._loadedThemesCache=[...this._resolvedThemes.keys()]),this._loadedThemesCache}setTheme(t){let n=this._textmateThemeCache.get(t);n||(n=wl.createFromRawTheme(t),this._textmateThemeCache.set(t,n)),this._syncRegistry.setTheme(n)}getGrammar(t){if(this._alias[t]){const n=new Set([t]);for(;this._alias[t];){if(t=this._alias[t],n.has(t))throw new un(`Circular alias \`${Array.from(n).join(" -> ")} -> ${t}\``);n.add(t)}}return this._resolvedGrammars.get(t)}loadLanguage(t){if(this.getGrammar(t.name))return;const n=new Set([...this._langMap.values()].filter(a=>a.embeddedLangsLazy?.includes(t.name)));this._resolver.addLanguage(t);const r={balancedBracketSelectors:t.balancedBracketSelectors||["*"],unbalancedBracketSelectors:t.unbalancedBracketSelectors||[]};this._syncRegistry._rawGrammars.set(t.scopeName,t);const o=this.loadGrammarWithConfiguration(t.scopeName,1,r);if(o.name=t.name,this._resolvedGrammars.set(t.name,o),t.aliases&&t.aliases.forEach(a=>{this._alias[a]=t.name}),this._loadedLanguagesCache=null,n.size)for(const a of n)this._resolvedGrammars.delete(a.name),this._loadedLanguagesCache=null,this._syncRegistry?._injectionGrammars?.delete(a.scopeName),this._syncRegistry?._grammars?.delete(a.scopeName),this.loadLanguage(this._langMap.get(a.name))}dispose(){super.dispose(),this._resolvedThemes.clear(),this._resolvedGrammars.clear(),this._langMap.clear(),this._langGraph.clear(),this._loadedThemesCache=null}loadLanguages(t){for(const o of t)this.resolveEmbeddedLanguages(o);const n=Array.from(this._langGraph.entries()),r=n.filter(([o,a])=>!a);if(r.length){const o=n.filter(([a,s])=>s&&s.embeddedLangs?.some(i=>r.map(([l])=>l).includes(i))).filter(a=>!r.includes(a));throw new un(`Missing languages ${r.map(([a])=>`\`${a}\``).join(", ")}, required by ${o.map(([a])=>`\`${a}\``).join(", ")}`)}for(const[o,a]of n)this._resolver.addLanguage(a);for(const[o,a]of n)this.loadLanguage(a)}getLoadedLanguages(){return this._loadedLanguagesCache||(this._loadedLanguagesCache=[...new Set([...this._resolvedGrammars.keys(),...Object.keys(this._alias)])]),this._loadedLanguagesCache}resolveEmbeddedLanguages(t){if(this._langMap.set(t.name,t),this._langGraph.set(t.name,t),t.embeddedLangs)for(const n of t.embeddedLangs)this._langGraph.set(n,this._langMap.get(n))}}class R8{_langs=new Map;_scopeToLang=new Map;_injections=new Map;_onigLib;constructor(t,n){this._onigLib={createOnigScanner:r=>t.createScanner(r),createOnigString:r=>t.createString(r)},n.forEach(r=>this.addLanguage(r))}get onigLib(){return this._onigLib}getLangRegistration(t){return this._langs.get(t)}loadGrammar(t){return this._scopeToLang.get(t)}addLanguage(t){this._langs.set(t.name,t),t.aliases&&t.aliases.forEach(n=>{this._langs.set(n,t)}),this._scopeToLang.set(t.scopeName,t),t.injectTo&&t.injectTo.forEach(n=>{this._injections.get(n)||this._injections.set(n,[]),this._injections.get(n).push(t.scopeName)})}getInjections(t){const n=t.split(".");let r=[];for(let o=1;o<=n.length;o++){const a=n.slice(0,o).join(".");r=[...r,...this._injections.get(a)||[]]}return r}}let ns=0;function M8(e){ns+=1,e.warnings!==!1&&ns>=10&&ns%10===0&&console.warn(`[Shiki] ${ns} instances have been created. Shiki is supposed to be used as a singleton, consider refactoring your code to cache your highlighter instance; Or call \`highlighter.dispose()\` to release unused instances.`);let t=!1;if(!e.engine)throw new un("`engine` option is required for synchronous mode");const n=(e.langs||[]).flat(1),r=(e.themes||[]).flat(1).map(_p),o=new R8(e.engine,n),a=new P8(o,r,n,e.langAlias);let s;function i(E){g();const C=a.getGrammar(typeof E=="string"?E:E.name);if(!C)throw new un(`Language \`${E}\` not found, you may need to load it first`);return C}function l(E){if(E==="none")return{bg:"",fg:"",name:"none",settings:[],type:"dark"};g();const C=a.getTheme(E);if(!C)throw new un(`Theme \`${E}\` not found, you may need to load it first`);return C}function u(E){g();const C=l(E);s!==E&&(a.setTheme(C),s=E);const T=a.getColorMap();return{theme:C,colorMap:T}}function c(){return g(),a.getLoadedThemes()}function d(){return g(),a.getLoadedLanguages()}function m(...E){g(),a.loadLanguages(E.flat(1))}async function f(...E){return m(await _y(E))}function h(...E){g();for(const C of E.flat(1))a.loadTheme(C)}async function b(...E){return g(),h(await Iy(E))}function g(){if(t)throw new un("Shiki instance has been disposed")}function x(){t||(t=!0,a.dispose(),ns-=1)}return{setTheme:u,getTheme:l,getLanguage:i,getLoadedThemes:c,getLoadedLanguages:d,loadLanguage:f,loadLanguageSync:m,loadTheme:b,loadThemeSync:h,dispose:x,[Symbol.dispose]:x}}async function N8(e={}){e.loadWasm;const[t,n,r]=await Promise.all([Iy(e.themes||[]),_y(e.langs||[]),e.engine||ey(e.loadWasm||pP())]);return M8({...e,themes:t,langs:n,engine:r})}async function O8(e={}){const t=await N8(e);return{getLastGrammarState:(...n)=>x8(t,...n),codeToTokensBase:(n,r)=>wp(t,n,r),codeToTokensWithThemes:(n,r)=>wy(t,n,r),codeToTokens:(n,r)=>Nl(t,n,r),codeToHast:(n,r)=>Ol(t,n,r),codeToHtml:(n,r)=>D8(t,n,r),...t,getInternalContext:()=>t}}const L8=Object.freeze(JSON.parse('{"displayName":"JSON","name":"json","patterns":[{"include":"#value"}],"repository":{"array":{"begin":"\\\\[","beginCaptures":{"0":{"name":"punctuation.definition.array.begin.json"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.array.end.json"}},"name":"meta.structure.array.json","patterns":[{"include":"#value"},{"match":",","name":"punctuation.separator.array.json"},{"match":"[^]\\\\s]","name":"invalid.illegal.expected-array-separator.json"}]},"comments":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.documentation.json"},{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.json"}},"end":"\\\\*/","name":"comment.block.json"},{"captures":{"1":{"name":"punctuation.definition.comment.json"}},"match":"(//).*$\\\\n?","name":"comment.line.double-slash.js"}]},"constant":{"match":"\\\\b(?:true|false|null)\\\\b","name":"constant.language.json"},"number":{"match":"-?(?:0|[1-9]\\\\d*)(?:(?:\\\\.\\\\d+)?(?:[Ee][-+]?\\\\d+)?)?","name":"constant.numeric.json"},"object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.dictionary.begin.json"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.dictionary.end.json"}},"name":"meta.structure.dictionary.json","patterns":[{"include":"#objectkey"},{"include":"#comments"},{"begin":":","beginCaptures":{"0":{"name":"punctuation.separator.dictionary.key-value.json"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.dictionary.pair.json"}},"name":"meta.structure.dictionary.value.json","patterns":[{"include":"#value"},{"match":"[^,\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json"}]},{"match":"[^}\\\\s]","name":"invalid.illegal.expected-dictionary-separator.json"}]},"objectkey":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.support.type.property-name.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.support.type.property-name.end.json"}},"name":"string.json support.type.property-name.json","patterns":[{"include":"#stringcontent"}]},"string":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.json"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.json"}},"name":"string.quoted.double.json","patterns":[{"include":"#stringcontent"}]},"stringcontent":{"patterns":[{"match":"\\\\\\\\(?:[\\"/\\\\\\\\bfnrt]|u\\\\h{4})","name":"constant.character.escape.json"},{"match":"\\\\\\\\.","name":"invalid.illegal.unrecognized-string-escape.json"}]},"value":{"patterns":[{"include":"#constant"},{"include":"#number"},{"include":"#string"},{"include":"#array"},{"include":"#object"},{"include":"#comments"}]}},"scopeName":"source.json"}')),F8=[L8],$8=Object.freeze(JSON.parse('{"displayName":"SQL","name":"sql","patterns":[{"match":"((?<!@)@)\\\\b(\\\\w+)\\\\b","name":"text.variable"},{"match":"(\\\\[)[^]]*(])","name":"text.bracketed"},{"include":"#comments"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"},"5":{"name":"entity.name.function.sql"}},"match":"(?i:^\\\\s*(create(?:\\\\s+or\\\\s+replace)?)\\\\s+(aggregate|conversion|database|domain|function|group|(unique\\\\s+)?index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)([\\"\'`]?)(\\\\w+)\\\\4","name":"meta.create.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.sql"}},"match":"(?i:^\\\\s*(drop)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|rule|schema|sequence|table|tablespace|trigger|type|user|view))","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"},"3":{"name":"entity.name.function.sql"},"4":{"name":"keyword.other.cascade.sql"}},"match":"(?i:\\\\s*(drop)\\\\s+(table)\\\\s+(\\\\w+)(\\\\s+cascade)?\\\\b)","name":"meta.drop.sql"},{"captures":{"1":{"name":"keyword.other.create.sql"},"2":{"name":"keyword.other.table.sql"}},"match":"(?i:^\\\\s*(alter)\\\\s+(aggregate|conversion|database|domain|function|group|index|language|operator class|operator|proc(edure)?|rule|schema|sequence|table|tablespace|trigger|type|user|view)\\\\s+)","name":"meta.alter.sql"},{"captures":{"1":{"name":"storage.type.sql"},"2":{"name":"storage.type.sql"},"3":{"name":"constant.numeric.sql"},"4":{"name":"storage.type.sql"},"5":{"name":"constant.numeric.sql"},"6":{"name":"storage.type.sql"},"7":{"name":"constant.numeric.sql"},"8":{"name":"constant.numeric.sql"},"9":{"name":"storage.type.sql"},"10":{"name":"constant.numeric.sql"},"11":{"name":"storage.type.sql"},"12":{"name":"storage.type.sql"},"13":{"name":"storage.type.sql"},"14":{"name":"constant.numeric.sql"},"15":{"name":"storage.type.sql"}},"match":"(?i)\\\\b(bigint|bigserial|bit|boolean|box|bytea|cidr|circle|date|double\\\\sprecision|inet|int|integer|line|lseg|macaddr|money|oid|path|point|polygon|real|serial|smallint|sysdate|text)\\\\b|\\\\b(bit\\\\svarying|character\\\\s(?:varying)?|tinyint|var\\\\schar|float|interval)\\\\((\\\\d+)\\\\)|\\\\b(char|number|varchar\\\\d?)\\\\b(?:\\\\((\\\\d+)\\\\))?|\\\\b(numeric|decimal)\\\\b(?:\\\\((\\\\d+),(\\\\d+)\\\\))?|\\\\b(times?)\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\swith(?:out)?\\\\stime\\\\szone\\\\b)?|\\\\b(timestamp)(s|tz)?\\\\b(?:\\\\((\\\\d+)\\\\))?(\\\\s(with(?:|out))\\\\stime\\\\szone\\\\b)?"},{"match":"(?i:\\\\b((?:primary|foreign)\\\\s+key|references|on\\\\s+(delete|update)(\\\\s+cascade)?|nocheck|check|constraint|collate|default)\\\\b)","name":"storage.modifier.sql"},{"match":"\\\\b\\\\d+\\\\b","name":"constant.numeric.sql"},{"match":"(?i:\\\\b(select(\\\\s+(all|distinct))?|insert\\\\s+(ignore\\\\s+)?into|update|delete|from|set|where|group\\\\s+by|or|like|and|union(\\\\s+all)?|having|order\\\\s+by|limit|cross\\\\s+join|join|straight_join|(inner|(left|right|full)(\\\\s+outer)?)\\\\s+join|natural(\\\\s+(inner|(left|right|full)(\\\\s+outer)?))?\\\\s+join)\\\\b)","name":"keyword.other.DML.sql"},{"match":"(?i:\\\\b(on|off|((is\\\\s+)?not\\\\s+)?null)\\\\b)","name":"keyword.other.DDL.create.II.sql"},{"match":"(?i:\\\\bvalues\\\\b)","name":"keyword.other.DML.II.sql"},{"match":"(?i:\\\\b(begin(\\\\s+work)?|start\\\\s+transaction|commit(\\\\s+work)?|rollback(\\\\s+work)?)\\\\b)","name":"keyword.other.LUW.sql"},{"match":"(?i:\\\\b(grant(\\\\swith\\\\sgrant\\\\soption)?|revoke)\\\\b)","name":"keyword.other.authorization.sql"},{"match":"(?i:\\\\bin\\\\b)","name":"keyword.other.data-integrity.sql"},{"match":"(?i:^\\\\s*(comment\\\\s+on\\\\s+(table|column|aggregate|constraint|database|domain|function|index|operator|rule|schema|sequence|trigger|type|view))\\\\s+)","name":"keyword.other.object-comments.sql"},{"match":"(?i)\\\\bAS\\\\b","name":"keyword.other.alias.sql"},{"match":"(?i)\\\\b(DESC|ASC)\\\\b","name":"keyword.other.order.sql"},{"match":"\\\\*","name":"keyword.operator.star.sql"},{"match":"[!<>]?=|<>|[<>]","name":"keyword.operator.comparison.sql"},{"match":"[-+/]","name":"keyword.operator.math.sql"},{"match":"\\\\|\\\\|","name":"keyword.operator.concatenator.sql"},{"captures":{"1":{"name":"support.function.aggregate.sql"}},"match":"(?i)\\\\b(approx_count_distinct|approx_percentile_cont|approx_percentile_disc|avg|checksum_agg|count|count_big|group|grouping|grouping_id|max|min|sum|stdevp??|varp??)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.analytic.sql"}},"match":"(?i)\\\\b(cume_dist|first_value|lag|last_value|lead|percent_rank|percentile_cont|percentile_disc)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.bitmanipulation.sql"}},"match":"(?i)\\\\b((?:bit_coun|get_bi|left_shif|right_shif|set_bi)t)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.conversion.sql"}},"match":"(?i)\\\\b(cast|convert|parse|try_cast|try_convert|try_parse)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.collation.sql"}},"match":"(?i)\\\\b(collationproperty|tertiary_weights)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cryptographic.sql"}},"match":"(?i)\\\\b(asymkey_id|asymkeyproperty|certproperty|cert_id|crypt_gen_random|decryptbyasymkey|decryptbycert|decryptbykey|decryptbykeyautoasymkey|decryptbykeyautocert|decryptbypassphrase|encryptbyasymkey|encryptbycert|encryptbykey|encryptbypassphrase|hashbytes|is_objectsigned|key_guid|key_id|key_name|signbyasymkey|signbycert|symkeyproperty|verifysignedbycert|verifysignedbyasymkey)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.cursor.sql"}},"match":"(?i)\\\\b(cursor_status)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datetime.sql"}},"match":"(?i)\\\\b(sysdatetime|sysdatetimeoffset|sysutcdatetime|current_time(stamp)?|getdate|getutcdate|datename|datepart|day|month|year|datefromparts|datetime2fromparts|datetimefromparts|datetimeoffsetfromparts|smalldatetimefromparts|timefromparts|datediff|dateadd|datetrunc|eomonth|switchoffset|todatetimeoffset|isdate|date_bucket)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.datatype.sql"}},"match":"(?i)\\\\b(datalength|ident_current|ident_incr|ident_seed|identity|sql_variant_property)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.expression.sql"}},"match":"(?i)\\\\b(coalesce|nullif)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.globalvar.sql"}},"match":"(?<!@)@@(?i)\\\\b(cursor_rows|connections|cpu_busy|datefirst|dbts|error|fetch_status|identity|idle|io_busy|langid|language|lock_timeout|max_connections|max_precision|nestlevel|options|packet_errors|pack_received|pack_sent|procid|remserver|rowcount|servername|servicename|spid|textsize|timeticks|total_errors|total_read|total_write|trancount|version)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.json.sql"}},"match":"(?i)\\\\b(json|isjson|json_object|json_array|json_value|json_query|json_modify|json_path_exists)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.logical.sql"}},"match":"(?i)\\\\b(choose|iif|greatest|least)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.mathematical.sql"}},"match":"(?i)\\\\b(abs|acos|asin|atan|atn2|ceiling|cos|cot|degrees|exp|floor|log|log10|pi|power|radians|rand|round|sign|sin|sqrt|square|tan)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.metadata.sql"}},"match":"(?i)\\\\b(app_name|applock_mode|applock_test|assemblyproperty|col_length|col_name|columnproperty|database_principal_id|databasepropertyex|db_id|db_name|file_id|file_idex|file_name|filegroup_id|filegroup_name|filegroupproperty|fileproperty|fulltextcatalogproperty|fulltextserviceproperty|index_col|indexkey_property|indexproperty|object_definition|object_id|object_name|object_schema_name|objectproperty|objectpropertyex|original_db_name|parsename|schema_id|schema_name|scope_identity|serverproperty|stats_date|type_id|type_name|typeproperty)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.ranking.sql"}},"match":"(?i)\\\\b(rank|dense_rank|ntile|row_number)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.rowset.sql"}},"match":"(?i)\\\\b(generate_series|opendatasource|openjson|openrowset|openquery|openxml|predict|string_split)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.security.sql"}},"match":"(?i)\\\\b(certencoded|certprivatekey|current_user|database_principal_id|has_perms_by_name|is_member|is_rolemember|is_srvrolemember|original_login|permissions|pwdcompare|pwdencrypt|schema_id|schema_name|session_user|suser_id|suser_sid|suser_sname|system_user|suser_name|user_id|user_name)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.string.sql"}},"match":"(?i)\\\\b(ascii|char|charindex|concat|difference|format|left|len|lower|ltrim|nchar|nodes|patindex|quotename|replace|replicate|reverse|right|rtrim|soundex|space|str|string_agg|string_escape|string_split|stuff|substring|translate|trim|unicode|upper)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.system.sql"}},"match":"(?i)\\\\b(binary_checksum|checksum|compress|connectionproperty|context_info|current_request_id|current_transaction_id|decompress|error_line|error_message|error_number|error_procedure|error_severity|error_state|formatmessage|get_filestream_transaction_context|getansinull|host_id|host_name|isnull|isnumeric|min_active_rowversion|newid|newsequentialid|rowcount_big|session_context|session_id|xact_state)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.textimage.sql"}},"match":"(?i)\\\\b(patindex|textptr|textvalid)\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"support.function.vector.sql"}},"match":"(?i)\\\\b(vector_(?:distance|norm|normalize))\\\\b\\\\s*\\\\("},{"captures":{"1":{"name":"constant.other.database-name.sql"},"2":{"name":"constant.other.table-name.sql"}},"match":"(\\\\w+?)\\\\.(\\\\w+)"},{"include":"#strings"},{"include":"#regexps"},{"match":"\\\\b(?i)(abort|abort_after_wait|absent|absolute|accent_sensitivity|acceptable_cursopt|acp|action|activation|add|address|admin|aes_128|aes_192|aes_256|affinity|after|aggregate|algorithm|all_constraints|all_errormsgs|all_indexes|all_levels|all_results|allow_connections|allow_dup_row|allow_encrypted_value_modifications|allow_page_locks|allow_row_locks|allow_snapshot_isolation|alter|altercolumn|always|anonymous|ansi_defaults|ansi_null_default|ansi_null_dflt_off|ansi_null_dflt_on|ansi_nulls|ansi_padding|ansi_warnings|appdomain|append|application|apply|arithabort|arithignore|array|assembly|asymmetric|asynchronous_commit|at|atan2|atomic|attach|attach_force_rebuild_log|attach_rebuild_log|audit|auth_realm|authentication|auto|auto_cleanup|auto_close|auto_create_statistics|auto_drop|auto_shrink|auto_update_statistics|auto_update_statistics_async|automated_backup_preference|automatic|autopilot|availability|availability_mode|backup|backup_priority|base64|basic|batches|batchsize|before|between|bigint|binary|binding|bit|block|blockers|blocksize|bmk|both|break|broker|broker_instance|bucket_count|buffer|buffercount|bulk_logged|by|call|caller|card|case|catalog|catch|cert|certificate|change_retention|change_tracking|change_tracking_context|changes|char|character|character_set|check_expiration|check_policy|checkconstraints|checkindex|checkpoint|checksum|cleanup_policy|clear|clear_port|close|clustered|codepage|collection|column_encryption_key|column_master_key|columnstore|columnstore_archive|colv_80_to_100|colv_100_to_80|commit_differential_base|committed|compatibility_level|compress_all_row_groups|compression|compression_delay|concat_null_yields_null|concatenate|configuration|connect|connection|containment|continue|continue_after_error|contract|contract_name|control|conversation|conversation_group_id|conversation_handle|copy|copy_only|count_rows|counter|create(\\\\\\\\s+or\\\\\\\\s+alter)?|credential|cross|cryptographic|cryptographic_provider|cube|cursor|cursor_close_on_commit|cursor_default|data|data_compression|data_flush_interval_seconds|data_mirroring|data_purity|data_source|database|database_name|database_snapshot|datafiletype|date_correlation_optimization|date|datefirst|dateformat|date_format|datetime2??|datetimeoffset|day(s)?|db_chaining|dbid|dbidexec|dbo_only|deadlock_priority|deallocate|dec|decimal|declare|decrypt|decrypt_a|decryption|default_database|default_fulltext_language|default_language|default_logon_domain|default_schema|definition|delay|delayed_durability|delimitedtext|density_vector|dependent|des|description|desired_state|desx|differential|digest|disable|disable_broker|disable_def_cnst_chk|disabled|disk|distinct|distributed|distribution|drop|drop_existing|dts_buffers|dump|durability|dynamic|edition|elements|else|emergency|empty|enable|enable_broker|enabled|encoding|encrypted|encrypted_value|encryption|encryption_type|end|endpoint|endpoint_url|enhancedintegrity|entry|error_broker_conversations|errorfile|estimateonly|event|except|exec|executable|execute|exists|expand|expiredate|expiry_date|explicit|external|external_access|failover|failover_mode|failure_condition_level|fast|fast_forward|fastfirstrow|federated_service_account|fetch|field_terminator|fieldterminator|file|filelistonly|filegroup|filegrowth|filename|filestream|filestream_log|filestream_on|filetable|file_format|filter|first_row|fips_flagger|fire_triggers|first|firstrow|float|flush_interval_seconds|fmtonly|following|for|force|force_failover_allow_data_loss|force_service_allow_data_loss|forced|forceplan|formatfile|format_options|format_type|formsof|forward_only|free_cursors|free_exec_context|fullscan|fulltext|fulltextall|fulltextkey|function|generated|get|geography|geometry|global|go|goto|governor|guid|hadoop|hardening|hash|hashed|header_limit|headeronly|health_check_timeout|hidden|hierarchyid|histogram|histogram_steps|hits_cursors|hits_exec_context|hour(s)?|http|identity|identity_value|if|ifnull|ignore|ignore_constraints|ignore_dup_key|ignore_dup_row|ignore_triggers|image|immediate|implicit_transactions|include|include_null_values|incremental|index|inflectional|init|initiator|insensitive|insert|instead|int|integer|integrated|intersect|intermediate|interval_length_minutes|into|inuse_cursors|inuse_exec_context|io|is|isabout|iso_week|isolation|job_tracker_location|json|keep|keep_nulls|keep_replication|keepdefaults|keepfixed|keepidentity|keepnulls|kerberos|key|key_path|key_source|key_store_provider_name|keyset|kill|kilobytes_per_batch|labelonly|langid|language|last|lastrow|leading|legacy_cardinality_estimation|length|level|lifetime|lineage_80_to_100|lineage_100_to_80|listener_ip|listener_port|load|loadhistory|lob_compaction|local|local_service_name|locate|location|lock_escalation|lock_timeout|lockres|log|login|login_type|loop|manual|mark_in_use_for_removal|masked|master|match|matched|max_queue_readers|max_duration|max_outstanding_io_per_volume|maxdop|maxerrors|maxlength|maxtransfersize|max_plans_per_query|max_storage_size_mb|mediadescription|medianame|mediapassword|memogroup|memory_optimized|merge|message|message_forward_size|message_forwarding|microsecond|millisecond|minute(s)?|mirror_address|misses_cursors|misses_exec_context|mixed|modify|money|month|move|multi_user|must_change|name|namespace|nanosecond|native|native_compilation|nchar|ncharacter|nested_triggers|never|new_account|new_broker|newname|next|no|no_browsetable|no_checksum|no_compression|no_infomsgs|no_triggers|no_truncate|nocount|noexec|noexpand|noformat|noinit|nolock|nonatomic|nonclustered|nondurable|none|norecompute|norecovery|noreset|norewind|noskip|not|notification|nounload|now|nowait|ntext|ntlm|nulls|numeric|numeric_roundabort|nvarchar|object|objid|oem|offline|old_account|online|operation_mode|open|openjson|optimistic|option|orc|out|outer|output|over|override|owner|ownership|pad_index|page|page_checksum|page_verify|pagecount|paglock|param|parameter_sniffing|parameter_type_expansion|parameterization|parquet|parseonly|partial|partition|partner|password|path|pause|percentage|permission_set|persisted|period|physical_only|plan_forcing_mode|policy|pool|population|ports|preceding|precision|predicate|presume_abort|primary|primary_role|print|prior|priority |priority_level|private|proc(edure)?|procedure_name|profile|provider|quarter|query_capture_mode|query_governor_cost_limit|query_optimizer_hotfixes|query_store|queue|quoted_identifier|raiserror|range|raw|rcfile|rc2|rc4|rc4_128|rdbms|read_committed_snapshot|read|read_only|read_write|readcommitted|readcommittedlock|readonly|readpast|readuncommitted|readwrite|real|rebuild|receive|recmodel_70backcomp|recompile|reconfigure|recovery|recursive|recursive_triggers|redo_queue|reject_sample_value|reject_type|reject_value|relative|remote|remote_data_archive|remote_proc_transactions|remote_service_name|remove|removed_cursors|removed_exec_context|reorganize|repeat|repeatable|repeatableread|replace|replica|replicated|replnick_100_to_80|replnickarray_80_to_100|replnickarray_100_to_80|required|required_cursopt|resample|reset|resource|resource_manager_location|respect|restart|restore|restricted_user|resume|retaindays|retention|return|revert|rewind|rewindonly|returns|robust|role|rollup|root|round_robin|route|row|rowdump|rowguidcol|rowlock|row_terminator|rows|rows_per_batch|rowsets_only|rowterminator|rowversion|rsa_1024|rsa_2048|rsa_3072|rsa_4096|rsa_512|safe|safety|sample|save|scalar|schema|schemabinding|scoped|scroll|scroll_locks|sddl|second|secexpr|seconds|secondary|secondary_only|secondary_role|secret|security|securityaudit|selective|self|send|sent|sequence|serde_method|serializable|server|service|service_broker|service_name|service_objective|session_timeout|sessions??|seterror|setopts|sets|shard_map_manager|shard_map_name|sharded|shared_memory|shortest_path|show_statistics|showplan_all|showplan_text|showplan_xml|showplan_xml_with_recompile|shrinkdb|shutdown|sid|signature|simple|single_blob|single_clob|single_nclob|single_user|singleton|site|size|size_based_cleanup_mode|skip|smalldatetime|smallint|smallmoney|snapshot|snapshot_import|snapshotrestorephase|soap|softnuma|sort_in_tempdb|sorted_data|sorted_data_reorg|spatial|sql|sql_bigint|sql_binary|sql_bit|sql_char|sql_date|sql_decimal|sql_double|sql_float|sql_guid|sql_handle|sql_longvarbinary|sql_longvarchar|sql_numeric|sql_real|sql_smallint|sql_time|sql_timestamp|sql_tinyint|sql_tsi_day|sql_tsi_frac_second|sql_tsi_hour|sql_tsi_minute|sql_tsi_month|sql_tsi_quarter|sql_tsi_second|sql_tsi_week|sql_tsi_year|sql_type_date|sql_type_time|sql_type_timestamp|sql_varbinary|sql_varchar|sql_variant|sql_wchar|sql_wlongvarchar|ssl|ssl_port|standard|standby|start|start_date|started|stat_header|state|statement|static|statistics|statistics_incremental|statistics_norecompute|statistics_only|statman|stats|stats_stream|status|stop|stop_on_error|stopat|stopatmark|stopbeforemark|stoplist|stopped|string_delimiter|subject|supplemental_logging|supported|suspend|symmetric|synchronous_commit|synonym|sysname|system|system_time|system_versioning|table|tableresults|tablockx??|take|tape|target|target_index|target_partition|target_recovery_time|tcp|temporal_history_retention|text|textimage_on|then|thesaurus|throw|time|timeout|timestamp|tinyint|top??|torn_page_detection|track_columns_updated|trailing|tran|transaction|transfer|transform_noise_words|triple_des|triple_des_3key|truncate|trustworthy|try|tsql|two_digit_year_cutoff|type|type_desc|type_warning|tzoffset|uid|unbounded|uncommitted|unique|uniqueidentifier|unlimited|unload|unlock|unsafe|updlock|url|use|useplan|useroptions|use_type_default|using|utcdatetime|valid_xml|validation|values??|varbinary|varchar|vector|verbose|verifyonly|version|view_metadata|virtual_device|visiblity|wait_at_low_priority|waitfor|webmethod|week|weekday|weight|well_formed_xml|when|while|widechar|widechar_ansi|widenative|windows??|with|within|within group|witness|without|without_array_wrapper|workload|wsdl|xact_abort|xlock|xml|xmlschema|xquery|xsinil|year|zone)\\\\b","name":"keyword.other.sql"},{"captures":{"1":{"name":"punctuation.section.scope.begin.sql"},"2":{"name":"punctuation.section.scope.end.sql"}},"match":"(\\\\()(\\\\))","name":"meta.block.sql"}],"repository":{"comment-block":{"begin":"/\\\\*","captures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\*/","name":"comment.block","patterns":[{"include":"#comment-block"}]},"comments":{"patterns":[{"begin":"(^[\\\\t ]+)?(?=--)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[{"begin":"--","beginCaptures":{"0":{"name":"punctuation.definition.comment.sql"}},"end":"\\\\n","name":"comment.line.double-dash.sql"}]},{"begin":"(^[\\\\t ]+)?(?=#)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.sql"}},"end":"(?!\\\\G)","patterns":[]},{"include":"#comment-block"}]},"regexps":{"patterns":[{"begin":"/(?=\\\\S.*/)","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"/","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.sql","patterns":[{"include":"#string_interpolation"},{"match":"\\\\\\\\/","name":"constant.character.escape.slash.sql"}]},{"begin":"%r\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.regexp.modr.sql","patterns":[{"include":"#string_interpolation"}]}]},"string_escape":{"match":"\\\\\\\\.","name":"constant.character.escape.sql"},"string_interpolation":{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(#\\\\{)([^}]*)(})","name":"string.interpolated.sql"},"strings":{"patterns":[{"captures":{"2":{"name":"punctuation.definition.string.begin.sql"},"3":{"name":"punctuation.definition.string.end.sql"}},"match":"(N)?(\')[^\']*(\')","name":"string.quoted.single.sql"},{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\'","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.single.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"match":"(`)[^\\\\\\\\`]*(`)","name":"string.quoted.other.backtick.sql"},{"begin":"`","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"`","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.other.backtick.sql","patterns":[{"include":"#string_escape"}]},{"captures":{"1":{"name":"punctuation.definition.string.begin.sql"},"2":{"name":"punctuation.definition.string.end.sql"}},"match":"(\\")[^\\"#]*(\\")","name":"string.quoted.double.sql"},{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"\\"","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.quoted.double.sql","patterns":[{"include":"#string_interpolation"}]},{"begin":"%\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.sql"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.string.end.sql"}},"name":"string.other.quoted.brackets.sql","patterns":[{"include":"#string_interpolation"}]}]}},"scopeName":"source.sql"}')),B8=[$8],j8=Object.freeze(JSON.parse('{"displayName":"TypeScript","name":"typescript","patterns":[{"include":"#directives"},{"include":"#statements"},{"include":"#shebang"}],"repository":{"access-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(abstract|declare|override|public|protected|private|readonly|static)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},"after-operator-block-as-object-literal":{"begin":"(?<!\\\\+\\\\+|--)(?<=[!(+,:=>?\\\\[]|^await|[^$._[:alnum:]]await|^return|[^$._[:alnum:]]return|^yield|[^$._[:alnum:]]yield|^throw|[^$._[:alnum:]]throw|^in|[^$._[:alnum:]]in|^of|[^$._[:alnum:]]of|^typeof|[^$._[:alnum:]]typeof|&&|\\\\|\\\\||\\\\*)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element"},{"include":"#punctuation-comma"}]},"array-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#binding-element-const"},{"include":"#punctuation-comma"}]},"array-literal":{"begin":"\\\\s*(\\\\[)","beginCaptures":{"1":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.array.literal.ts","patterns":[{"include":"#expression"},{"include":"#punctuation-comma"}]},"arrow-function":{"patterns":[{"captures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async)\\\\s+)?([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?==>)","name":"meta.arrow.ts"},{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(async))?((?<![]!)}])\\\\s*(?=((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.arrow.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#arrow-return-type"},{"include":"#possibly-arrow-return-type"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"((?<=[}\\\\S])(?<!=>)|((?!\\\\{)(?=\\\\S)))(?!/[*/])","name":"meta.arrow.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#decl-block"},{"include":"#expression"}]}]},"arrow-return-type":{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","name":"meta.return.type.arrow.ts","patterns":[{"include":"#arrow-return-type-body"}]},"arrow-return-type-body":{"patterns":[{"begin":"(?<=:)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"async-modifier":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(async)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.async.ts"},"binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern"},{"include":"#array-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"}]},"binding-element-const":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#object-binding-pattern-const"},{"include":"#array-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"}]},"boolean-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))true(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.true.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))false(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.boolean.false.ts"}]},"brackets":{"patterns":[{"begin":"\\\\{","end":"}|(?=\\\\*/)","patterns":[{"include":"#brackets"}]},{"begin":"\\\\[","end":"]|(?=\\\\*/)","patterns":[{"include":"#brackets"}]}]},"cast":{"patterns":[{"captures":{"1":{"name":"meta.brace.angle.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.angle.ts"}},"match":"\\\\s*(<)\\\\s*(const)\\\\s*(>)","name":"cast.expr.ts"},{"begin":"(?<!\\\\+\\\\+|--)(?<=^return|[^$._[:alnum:]]return|^throw|[^$._[:alnum:]]throw|^yield|[^$._[:alnum:]]yield|^await|[^$._[:alnum:]]await|^default|[^$._[:alnum:]]default|[\\\\&(*,:=>?^|]|[^$_[:alnum:]](?:\\\\+\\\\+|--)|[^+]\\\\+|[^-]-)\\\\s*(<)(?!<?=)(?!\\\\s*$)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]},{"begin":"(?<=^)\\\\s*(<)(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*>)","beginCaptures":{"1":{"name":"meta.brace.angle.ts"}},"end":"(>)","endCaptures":{"1":{"name":"meta.brace.angle.ts"}},"name":"cast.expr.ts","patterns":[{"include":"#type"}]}]},"class-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(class)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-declaration-or-expression-patterns":{"patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.class.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"class-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(class)\\\\b(?=\\\\s+|[<{]|/[*/])","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.type.class.ts"}},"end":"(?<=})","name":"meta.class.ts","patterns":[{"include":"#class-declaration-or-expression-patterns"}]},"class-or-interface-body":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#decorator"},{"begin":"(?<=:)\\\\s*","end":"(?=[-\\\\])+,:;}\\\\s]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#field-declaration"},{"include":"#string"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"include":"#access-modifier"},{"include":"#property-accessor"},{"include":"#async-modifier"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#expression"},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"}]},"class-or-interface-heritage":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))\\\\b(extends|implements)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=\\\\{)","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"include":"#type-parameters"},{"include":"#expressionWithoutIdentifiers"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*(\\\\s*\\\\??\\\\.\\\\s*[$_[:alpha:]][$_[:alnum:]]*)*\\\\s*)"},{"captures":{"1":{"name":"entity.other.inherited-class.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)"},{"include":"#expressionPunctuations"}]},"comment":{"patterns":[{"begin":"/\\\\*\\\\*(?!/)","beginCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.documentation.ts","patterns":[{"include":"#docblock"}]},{"begin":"(/\\\\*)(?:\\\\s*((@)internal)(?=\\\\s|(\\\\*/)))?","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"},"2":{"name":"storage.type.internaldeclaration.ts"},"3":{"name":"punctuation.decorator.internaldeclaration.ts"}},"end":"\\\\*/","endCaptures":{"0":{"name":"punctuation.definition.comment.ts"}},"name":"comment.block.ts"},{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=$)"}]},"control-statement":{"patterns":[{"include":"#switch-statement"},{"include":"#for-loop"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(catch|finally|throw|try)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.trycatch.ts"},{"captures":{"1":{"name":"keyword.control.loop.ts"},"2":{"name":"entity.name.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|goto)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(break|continue|do|goto|while)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.loop.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(return)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.control.flow.ts"}},"end":"(?=[;}]|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#expression"}]},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default|switch)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.switch.ts"},{"include":"#if-statement"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(else|if)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.conditional.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(with)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.with.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(package)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(debugger)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.other.debugger.ts"}]},"decl-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#statements"}]},"declaration":{"patterns":[{"include":"#decorator"},{"include":"#var-expr"},{"include":"#function-declaration"},{"include":"#class-declaration"},{"include":"#interface-declaration"},{"include":"#enum-declaration"},{"include":"#namespace-declaration"},{"include":"#type-alias-declaration"},{"include":"#import-equals-declaration"},{"include":"#import-declaration"},{"include":"#export-declaration"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(declare|export)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"}]},"decorator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))@","beginCaptures":{"0":{"name":"punctuation.decorator.ts"}},"end":"(?=\\\\s)","name":"meta.decorator.ts","patterns":[{"include":"#expression"}]},"destructuring-const":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern-const"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-parameter":{"patterns":[{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"name":"meta.parameter.object-binding-pattern.ts","patterns":[{"include":"#parameter-object-binding-element"}]},{"begin":"(?<![:=])\\\\s*(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"name":"meta.paramter.array-binding-pattern.ts","patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]}]},"destructuring-parameter-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"variable.parameter.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable":{"patterns":[{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\{)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.object-binding-pattern-variable.ts","patterns":[{"include":"#object-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]},{"begin":"(?<![:=]|^of|[^$._[:alnum:]]of|^in|[^$._[:alnum:]]in)\\\\s*(?=\\\\[)","end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","name":"meta.array-binding-pattern-variable.ts","patterns":[{"include":"#array-binding-pattern"},{"include":"#type-annotation"},{"include":"#comment"}]}]},"destructuring-variable-rest":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"destructuring-variable-rest-const":{"captures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"match":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)"},"directives":{"begin":"^(///)\\\\s*(?=<(reference|amd-dependency|amd-module)(\\\\s+(path|types|no-default-lib|lib|name|resolution-mode)\\\\s*=\\\\s*((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))+\\\\s*/>\\\\s*$)","beginCaptures":{"1":{"name":"punctuation.definition.comment.ts"}},"end":"(?=$)","name":"comment.line.triple-slash.directive.ts","patterns":[{"begin":"(<)(reference|amd-dependency|amd-module)","beginCaptures":{"1":{"name":"punctuation.definition.tag.directive.ts"},"2":{"name":"entity.name.tag.directive.ts"}},"end":"/>","endCaptures":{"0":{"name":"punctuation.definition.tag.directive.ts"}},"name":"meta.tag.ts","patterns":[{"match":"path|types|no-default-lib|lib|name|resolution-mode","name":"entity.other.attribute-name.directive.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"include":"#string"}]}]},"docblock":{"patterns":[{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.access-type.jsdoc"}},"match":"((@)a(?:ccess|pi))\\\\s+(p(?:rivate|rotected|ublic))\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"5":{"name":"constant.other.email.link.underline.jsdoc"},"6":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"match":"((@)author)\\\\s+([^*/<>@\\\\s](?:[^*/<>@]|\\\\*[^/])*)(?:\\\\s*(<)([^>\\\\s]+)(>))?"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"},"4":{"name":"keyword.operator.control.jsdoc"},"5":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)borrows)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)\\\\s+(as)\\\\s+((?:[^*/@\\\\s]|\\\\*[^/])+)"},{"begin":"((@)example)\\\\s+","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=@|\\\\*/)","name":"meta.example.jsdoc","patterns":[{"match":"^\\\\s\\\\*\\\\s+"},{"begin":"\\\\G(<)caption(>)","beginCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}},"contentName":"constant.other.description.jsdoc","end":"(</)caption(>)|(?=\\\\*/)","endCaptures":{"0":{"name":"entity.name.tag.inline.jsdoc"},"1":{"name":"punctuation.definition.bracket.angle.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.angle.end.jsdoc"}}},{"captures":{"0":{"name":"source.embedded.ts"}},"match":"[^*@\\\\s](?:[^*]|\\\\*[^/])*"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"constant.language.symbol-type.jsdoc"}},"match":"((@)kind)\\\\s+(class|constant|event|external|file|function|member|mixin|module|namespace|typedef)\\\\b"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.link.underline.jsdoc"},"4":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)see)\\\\s+(?:((?=https?://)(?:[^*\\\\s]|\\\\*[^/])+)|((?!https?://|(?:\\\\[[^]\\\\[]*])?\\\\{@(?:link|linkcode|linkplain|tutorial)\\\\b)(?:[^*/@\\\\s]|\\\\*[^/])+))"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)template)\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*(?:\\\\s*,\\\\s*[$A-Z_a-z][]$.\\\\[\\\\w]*)*)"},{"begin":"((@)template)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:arg|argument|const|constant|member|namespace|param|var))\\\\s+([$A-Z_a-z][]$.\\\\[\\\\w]*)"},{"begin":"((@)typedef)\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"(?:[^*/@\\\\s]|\\\\*[^/])+","name":"entity.name.type.instance.jsdoc"}]},{"begin":"((@)(?:arg|argument|const|constant|member|namespace|param|prop|property|var))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"},{"match":"([$A-Z_a-z][]$.\\\\[\\\\w]*)","name":"variable.other.jsdoc"},{"captures":{"1":{"name":"punctuation.definition.optional-value.begin.bracket.square.jsdoc"},"2":{"name":"keyword.operator.assignment.jsdoc"},"3":{"name":"source.embedded.ts"},"4":{"name":"punctuation.definition.optional-value.end.bracket.square.jsdoc"},"5":{"name":"invalid.illegal.syntax.jsdoc"}},"match":"(\\\\[)\\\\s*[$\\\\w]+(?:(?:\\\\[])?\\\\.[$\\\\w]+)*(?:\\\\s*(=)\\\\s*((?>\\"(?:\\\\*(?!/)|\\\\\\\\(?!\\")|[^*\\\\\\\\])*?\\"|\'(?:\\\\*(?!/)|\\\\\\\\(?!\')|[^*\\\\\\\\])*?\'|\\\\[(?:\\\\*(?!/)|[^*])*?]|(?:\\\\*(?!/)|\\\\s(?!\\\\s*])|\\\\[.*?(?:]|(?=\\\\*/))|[^]*\\\\[\\\\s])*)*))?\\\\s*(?:(])((?:[^*\\\\s]|\\\\*[^/\\\\s])+)?|(?=\\\\*/))","name":"variable.other.jsdoc"}]},{"begin":"((@)(?:define|enum|exception|export|extends|lends|implements|modifies|namespace|private|protected|returns?|satisfies|suppress|this|throws|type|yields?))\\\\s+(?=\\\\{)","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"end":"(?=\\\\s|\\\\*/|[^]$A-\\\\[_a-{}])","patterns":[{"include":"#jsdoctype"}]},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"entity.name.type.instance.jsdoc"}},"match":"((@)(?:alias|augments|callback|constructs|emits|event|fires|exports?|extends|external|function|func|host|lends|listens|interface|memberof!?|method|module|mixes|mixin|name|requires|see|this|typedef|uses))\\\\s+((?:[^*@{}\\\\s]|\\\\*[^/])+)"},{"begin":"((@)(?:default(?:value)?|license|version))\\\\s+(([\\"\']))","beginCaptures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"},"4":{"name":"punctuation.definition.string.begin.jsdoc"}},"contentName":"variable.other.jsdoc","end":"(\\\\3)|(?=$|\\\\*/)","endCaptures":{"0":{"name":"variable.other.jsdoc"},"1":{"name":"punctuation.definition.string.end.jsdoc"}}},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"},"3":{"name":"variable.other.jsdoc"}},"match":"((@)(?:default(?:value)?|license|tutorial|variation|version))\\\\s+([^*\\\\s]+)"},{"captures":{"1":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"(@)(?:abstract|access|alias|api|arg|argument|async|attribute|augments|author|beta|borrows|bubbles|callback|chainable|class|classdesc|code|config|const|constant|constructor|constructs|copyright|default|defaultvalue|define|deprecated|desc|description|dict|emits|enum|event|example|exception|exports?|extends|extension(?:_?for)?|external|externs|file|fileoverview|final|fires|for|func|function|generator|global|hideconstructor|host|ignore|implements|implicitCast|inherit[Dd]oc|inner|instance|interface|internal|kind|lends|license|listens|main|member|memberof!?|method|mixes|mixins?|modifies|module|name|namespace|noalias|nocollapse|nocompile|nosideeffects|override|overview|package|param|polymer(?:Behavior)?|preserve|private|prop|property|protected|public|read[Oo]nly|record|require[ds]|returns?|see|since|static|struct|submodule|summary|suppress|template|this|throws|todo|tutorial|type|typedef|unrestricted|uses|var|variation|version|virtual|writeOnce|yields?)\\\\b","name":"storage.type.class.jsdoc"},{"include":"#inline-tags"},{"captures":{"1":{"name":"storage.type.class.jsdoc"},"2":{"name":"punctuation.definition.block.tag.jsdoc"}},"match":"((@)[$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s+)"}]},"enum-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:\\\\b(const)\\\\s+)?\\\\b(enum)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.enum.ts"},"5":{"name":"entity.name.type.enum.ts"}},"end":"(?<=})","name":"meta.enum.declaration.ts","patterns":[{"include":"#comment"},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"0":{"name":"variable.other.enummember.ts"}},"end":"(?=[,}]|$)","patterns":[{"include":"#comment"},{"include":"#variable-initializer"}]},{"begin":"(?=((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+])))","end":"(?=[,}]|$)","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#comment"},{"include":"#variable-initializer"}]},{"include":"#punctuation-comma"}]}]},"export-declaration":{"patterns":[{"captures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.as.ts"},"3":{"name":"storage.type.namespace.ts"},"4":{"name":"entity.name.type.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)\\\\s+(as)\\\\s+(namespace)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?(?:\\\\s*(=)|\\\\s+(default)(?=\\\\s+))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"},"3":{"name":"keyword.operator.assignment.ts"},"4":{"name":"keyword.control.default.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.default.ts","patterns":[{"include":"#interface-declaration"},{"include":"#expression"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(export)(?:\\\\s+(type))?\\\\b(?!(\\\\$)|(\\\\s*:))((?=\\\\s*[*{])|((?=\\\\s*[$_[:alpha:]][$_[:alnum:]]*([,\\\\s]))(?!\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"keyword.control.type.ts"}},"end":"(?=$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.export.ts","patterns":[{"include":"#import-export-declaration"}]}]},"expression":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-inside-possibly-arrow-parens":{"patterns":[{"include":"#expressionWithoutIdentifiers"},{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*[,:]|$)"},{"include":"#type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#identifiers"},{"include":"#expressionPunctuations"}]},"expression-operators":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(await)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.control.flow.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?=\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*\\\\*)","beginCaptures":{"1":{"name":"keyword.control.flow.ts"}},"end":"\\\\*","endCaptures":{"0":{"name":"keyword.generator.asterisk.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.control.flow.ts"},"2":{"name":"keyword.generator.asterisk.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(yield)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s*(\\\\*))?"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))delete(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.delete.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))in(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.in.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))of(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?!\\\\()","name":"keyword.operator.expression.of.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.instanceof.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.new.ts"},{"include":"#typeof-operator"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))void(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.void.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*($|[]),:;}]))"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=^|[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisfies)\\\\s+)|(\\\\s+<))","patterns":[{"include":"#type"}]},{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.spread.ts"},{"match":"(?:\\\\*|(?<!\\\\()/|[-%+])=","name":"keyword.operator.assignment.compound.ts"},{"match":"(?:[\\\\&^]|<<|>>>??|\\\\|)=","name":"keyword.operator.assignment.compound.bitwise.ts"},{"match":"<<|>>>?","name":"keyword.operator.bitwise.shift.ts"},{"match":"[!=]==?","name":"keyword.operator.comparison.ts"},{"match":"<=|>=|<>|[<>]","name":"keyword.operator.relational.ts"},{"captures":{"1":{"name":"keyword.operator.logical.ts"},"2":{"name":"keyword.operator.assignment.compound.ts"},"3":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[$_[:alnum:]])(!)\\\\s*(?:(/=)|(/)(?![*/]))"},{"match":"!|&&|\\\\|\\\\||\\\\?\\\\?","name":"keyword.operator.logical.ts"},{"match":"[\\\\&^|~]","name":"keyword.operator.bitwise.ts"},{"match":"=","name":"keyword.operator.assignment.ts"},{"match":"--","name":"keyword.operator.decrement.ts"},{"match":"\\\\+\\\\+","name":"keyword.operator.increment.ts"},{"match":"[-%*+/]","name":"keyword.operator.arithmetic.ts"},{"begin":"(?<=[]$)_[:alnum:]])\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)+(?:(/=)|(/)(?![*/])))","end":"(/=)|(/)(?!\\\\*([^*]|(\\\\*[^/]))*\\\\*/)","endCaptures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"patterns":[{"include":"#comment"}]},{"captures":{"1":{"name":"keyword.operator.assignment.compound.ts"},"2":{"name":"keyword.operator.arithmetic.ts"}},"match":"(?<=[]$)_[:alnum:]])\\\\s*(?:(/=)|(/)(?![*/]))"}]},"expressionPunctuations":{"patterns":[{"include":"#punctuation-comma"},{"include":"#punctuation-accessor"}]},"expressionWithoutIdentifiers":{"patterns":[{"include":"#string"},{"include":"#regex"},{"include":"#comment"},{"include":"#function-expression"},{"include":"#class-expression"},{"include":"#arrow-function"},{"include":"#paren-expression-possibly-arrow"},{"include":"#cast"},{"include":"#ternary-expression"},{"include":"#new-expr"},{"include":"#instanceof-expr"},{"include":"#object-literal"},{"include":"#expression-operators"},{"include":"#function-call"},{"include":"#literal"},{"include":"#support-objects"},{"include":"#paren-expression"}]},"field-declaration":{"begin":"(?<!\\\\()(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s+)?(?=\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=}]|$))","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?=[,;}]|$|^((?!\\\\s*(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|(#?[$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(?:(?:(\\\\?)|(!))\\\\s*)?([,:;=]|$))))|(?<=})","name":"meta.field.declaration.ts","patterns":[{"include":"#variable-initializer"},{"include":"#type-annotation"},{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"include":"#comment"},{"captures":{"1":{"name":"meta.definition.property.ts entity.name.function.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"keyword.operator.definiteassignment.ts"}},"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)(?:(\\\\?)|(!))?(?=\\\\s*\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"match":"#?[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.property.ts variable.object.property.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"},{"match":"!","name":"keyword.operator.definiteassignment.ts"}]},"for-loop":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))for(?=((\\\\s+|(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*))await)?\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)?(\\\\())","beginCaptures":{"0":{"name":"keyword.control.loop.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#comment"},{"match":"await","name":"keyword.control.loop.ts"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#var-expr"},{"include":"#expression"},{"include":"#punctuation-semicolon"}]}]},"function-body":{"patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"include":"#function-parameters"},{"include":"#return-type"},{"include":"#type-function-return-type"},{"include":"#decl-block"},{"match":"\\\\*","name":"keyword.generator.asterisk.ts"}]},"function-call":{"patterns":[{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","end":"(?<=\\\\))(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=\\\\s*(?:(\\\\?\\\\.\\\\s*)|(!))?((<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?\\\\())","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"},{"include":"#paren-expression"}]},{"begin":"(?=(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","end":"(?<=>)(?!(((([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))|(?<=\\\\)))(<\\\\s*[(\\\\[{]\\\\s*)$)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*)(\\\\s*\\\\??\\\\.\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*))*)|(\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*[(\\\\[{]\\\\s*)$)","name":"meta.function-call.ts","patterns":[{"include":"#function-call-target"}]},{"include":"#comment"},{"include":"#function-call-optionals"},{"include":"#type-arguments"}]}]},"function-call-optionals":{"patterns":[{"match":"\\\\?\\\\.","name":"meta.function-call.ts punctuation.accessor.optional.ts"},{"match":"!","name":"meta.function-call.ts keyword.operator.definiteassignment.ts"}]},"function-call-target":{"patterns":[{"include":"#support-function-call-identifiers"},{"match":"(#?[$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.ts"}]},"function-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.async.ts"},"4":{"name":"storage.type.function.ts"},"5":{"name":"keyword.generator.asterisk.ts"},"6":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|(?<=})","name":"meta.function.ts","patterns":[{"include":"#function-name"},{"include":"#function-body"}]},"function-expression":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(async)\\\\s+)?(function)\\\\b(?:\\\\s*(\\\\*))?(?:(?:\\\\s+|(?<=\\\\*))([$_[:alpha:]][$_[:alnum:]]*))?\\\\s*","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.function.ts"},"3":{"name":"keyword.generator.asterisk.ts"},"4":{"name":"meta.definition.function.ts entity.name.function.ts"}},"end":"(?=;)|(?<=})","name":"meta.function.expression.ts","patterns":[{"include":"#function-name"},{"include":"#single-line-comment-consuming-line-ending"},{"include":"#function-body"}]},"function-name":{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.function.ts entity.name.function.ts"},"function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"punctuation.definition.parameters.begin.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.parameters.end.ts"}},"name":"meta.parameters.ts","patterns":[{"include":"#function-parameters-body"}]},"function-parameters-body":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#decorator"},{"include":"#destructuring-parameter"},{"include":"#parameter-name"},{"include":"#parameter-type-annotation"},{"include":"#variable-initializer"},{"match":",","name":"punctuation.separator.parameter.ts"}]},"identifiers":{"patterns":[{"include":"#object-identifiers"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"entity.name.function.ts"}},"match":"(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*)?([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(#?[$_[:alpha:]][$_[:alnum:]]*)"},{"match":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])","name":"variable.other.constant.ts"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"variable.other.readwrite.ts"}]},"if-statement":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bif\\\\s*(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))\\\\s*(?!\\\\{))","end":"(?=;|$|})","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(if)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.conditional.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},{"begin":"(?<=\\\\))\\\\s*/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"include":"#statements"}]}]},"import-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type)(?!\\\\s+from))?(?!\\\\s*[(:])(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"}},"end":"(?<!(?:^|[^$._[:alnum:]])import)(?=;|$|^)","name":"meta.import.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#string"},{"begin":"(?<=(?:^|[^$._[:alnum:]])import)(?!\\\\s*[\\"\'])","end":"\\\\bfrom\\\\b","endCaptures":{"0":{"name":"keyword.control.from.ts"}},"patterns":[{"include":"#import-export-declaration"}]},{"include":"#import-export-declaration"}]},"import-equals-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(require)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"},"7":{"name":"keyword.control.require.ts"},"8":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.import-equals.external.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(import)(?:\\\\s+(type))?\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(=)\\\\s*(?!require\\\\b)","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"keyword.control.import.ts"},"4":{"name":"keyword.control.type.ts"},"5":{"name":"variable.other.readwrite.alias.ts"},"6":{"name":"keyword.operator.assignment.ts"}},"end":"(?=;|$|^)","name":"meta.import-equals.internal.ts","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.other.readwrite.ts"}]}]},"import-export-assert-clause":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(with)|(assert))\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"keyword.control.with.ts"},"2":{"name":"keyword.control.assert.ts"},"3":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"patterns":[{"include":"#comment"},{"include":"#string"},{"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object-literal.key.ts"},{"match":":","name":"punctuation.separator.key-value.ts"}]},"import-export-block":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.block.ts","patterns":[{"include":"#import-export-clause"}]},"import-export-clause":{"patterns":[{"include":"#comment"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"keyword.control.default.ts"},"3":{"name":"constant.language.import-export-all.ts"},"4":{"name":"variable.other.readwrite.ts"},"5":{"name":"string.quoted.alias.ts"},"12":{"name":"keyword.control.as.ts"},"13":{"name":"keyword.control.default.ts"},"14":{"name":"variable.other.readwrite.alias.ts"},"15":{"name":"string.quoted.alias.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(type)\\\\s+)?(?:\\\\b(default)|(\\\\*)|\\\\b([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))\\\\s+(as)\\\\s+(?:(default(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"},{"include":"#punctuation-comma"},{"match":"\\\\*","name":"constant.language.import-export-all.ts"},{"match":"\\\\b(default)\\\\b","name":"keyword.control.default.ts"},{"captures":{"1":{"name":"keyword.control.type.ts"},"2":{"name":"variable.other.readwrite.alias.ts"},"3":{"name":"string.quoted.alias.ts"}},"match":"(?:\\\\b(type)\\\\s+)?(?:([$_[:alpha:]][$_[:alnum:]]*)|((\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)))"}]},"import-export-declaration":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#import-export-block"},{"match":"\\\\bfrom\\\\b","name":"keyword.control.from.ts"},{"include":"#import-export-assert-clause"},{"include":"#import-export-clause"}]},"indexer-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=:)","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"meta.brace.square.ts"},"3":{"name":"variable.parameter.ts"}},"end":"(])\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.declaration.ts","patterns":[{"include":"#type-annotation"}]},"indexer-mapped-type-declaration":{"begin":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([-+])?(readonly)\\\\s*)?\\\\s*(\\\\[)\\\\s*([$_[:alpha:]][$_[:alnum:]]*)\\\\s+(in)\\\\s+","beginCaptures":{"1":{"name":"keyword.operator.type.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"meta.brace.square.ts"},"4":{"name":"entity.name.type.ts"},"5":{"name":"keyword.operator.expression.in.ts"}},"end":"(])([-+])?\\\\s*(\\\\?\\\\s*)?|$","endCaptures":{"1":{"name":"meta.brace.square.ts"},"2":{"name":"keyword.operator.type.modifier.ts"},"3":{"name":"keyword.operator.optional.ts"}},"name":"meta.indexer.mappedtype.declaration.ts","patterns":[{"captures":{"1":{"name":"keyword.control.as.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+"},{"include":"#type"}]},"inline-tags":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.bracket.square.begin.jsdoc"},"2":{"name":"punctuation.definition.bracket.square.end.jsdoc"}},"match":"(\\\\[)[^]]+(])(?=\\\\{@(?:link|linkcode|linkplain|tutorial))","name":"constant.other.description.jsdoc"},{"begin":"(\\\\{)((@)(?:link(?:code|plain)?|tutorial))\\\\s*","beginCaptures":{"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"},"2":{"name":"storage.type.class.jsdoc"},"3":{"name":"punctuation.definition.inline.tag.jsdoc"}},"end":"}|(?=\\\\*/)","endCaptures":{"0":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"name":"entity.name.type.instance.jsdoc","patterns":[{"captures":{"1":{"name":"variable.other.link.underline.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?=https?://)(?:[^*|}\\\\s]|\\\\*/)+)(\\\\|)?"},{"captures":{"1":{"name":"variable.other.description.jsdoc"},"2":{"name":"punctuation.separator.pipe.jsdoc"}},"match":"\\\\G((?:[^*@{|}\\\\s]|\\\\*[^/])+)(\\\\|)?"}]}]},"instanceof-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(instanceof)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.expression.instanceof.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|([!=]==?)|(([\\\\&^|~]\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s+instanceof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","patterns":[{"include":"#type"}]},"interface-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(?:(abstract)\\\\s+)?\\\\b(interface)\\\\b(?=\\\\s+|/[*/])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.type.interface.ts"}},"end":"(?<=})","name":"meta.interface.ts","patterns":[{"include":"#comment"},{"include":"#class-or-interface-heritage"},{"captures":{"0":{"name":"entity.name.type.interface.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*"},{"include":"#type-parameters"},{"include":"#class-or-interface-body"}]},"jsdoctype":{"patterns":[{"begin":"\\\\G(\\\\{)","beginCaptures":{"0":{"name":"entity.name.type.instance.jsdoc"},"1":{"name":"punctuation.definition.bracket.curly.begin.jsdoc"}},"contentName":"entity.name.type.instance.jsdoc","end":"((}))\\\\s*|(?=\\\\*/)","endCaptures":{"1":{"name":"entity.name.type.instance.jsdoc"},"2":{"name":"punctuation.definition.bracket.curly.end.jsdoc"}},"patterns":[{"include":"#brackets"}]}]},"label":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)(?=\\\\s*\\\\{)","beginCaptures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"end":"(?<=})","patterns":[{"include":"#decl-block"}]},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"punctuation.separator.label.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(:)"}]},"literal":{"patterns":[{"include":"#numeric-literal"},{"include":"#boolean-literal"},{"include":"#null-literal"},{"include":"#undefined-literal"},{"include":"#numericConstant-literal"},{"include":"#array-literal"},{"include":"#this-literal"},{"include":"#super-literal"}]},"method-declaration":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?\\\\s*\\\\b(constructor)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\s*\\\\b(new)\\\\b(?!:)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))|(?:(\\\\*)\\\\s*)?)(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"keyword.operator.new.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(override)\\\\s+)?(?:\\\\b(p(?:ublic|rivate|rotected))\\\\s+)?(?:\\\\b(abstract)\\\\s+)?(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.modifier.ts"},"4":{"name":"storage.modifier.async.ts"},"5":{"name":"storage.type.property.ts"},"6":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}]|$)|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"}]}]},"method-declaration-name":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??)\\\\s*[(<])","end":"(?=[(<])","patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"meta.definition.method.ts entity.name.function.ts"},{"match":"\\\\?","name":"keyword.operator.optional.ts"}]},"namespace-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(namespace|module)\\\\s+(?=[\\"$\'_`[:alpha:]])","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.namespace.ts"}},"end":"(?<=})|(?=;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.namespace.declaration.ts","patterns":[{"include":"#comment"},{"include":"#string"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.type.module.ts"},{"include":"#punctuation-accessor"},{"include":"#decl-block"}]},"new-expr":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.new.ts"}},"end":"(?<=\\\\))|(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))new(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))function((\\\\s+[$_[:alpha:]][$_[:alnum:]]*)|(\\\\s*\\\\())))","name":"new.expr.ts","patterns":[{"include":"#expression"}]},"null-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))null(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.null.ts"},"numeric-literal":{"patterns":[{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.hex.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.binary.ts"},{"captures":{"1":{"name":"storage.type.numeric.bigint.ts"}},"match":"\\\\b(?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$)","name":"constant.numeric.octal.ts"},{"captures":{"0":{"name":"constant.numeric.decimal.ts"},"1":{"name":"meta.delimiter.decimal.period.ts"},"2":{"name":"storage.type.numeric.bigint.ts"},"3":{"name":"meta.delimiter.decimal.period.ts"},"4":{"name":"storage.type.numeric.bigint.ts"},"5":{"name":"meta.delimiter.decimal.period.ts"},"6":{"name":"storage.type.numeric.bigint.ts"},"7":{"name":"storage.type.numeric.bigint.ts"},"8":{"name":"meta.delimiter.decimal.period.ts"},"9":{"name":"storage.type.numeric.bigint.ts"},"10":{"name":"meta.delimiter.decimal.period.ts"},"11":{"name":"storage.type.numeric.bigint.ts"},"12":{"name":"meta.delimiter.decimal.period.ts"},"13":{"name":"storage.type.numeric.bigint.ts"},"14":{"name":"storage.type.numeric.bigint.ts"}},"match":"(?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)"}]},"numericConstant-literal":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))NaN(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.nan.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Infinity(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.infinity.ts"}]},"object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element"}]},{"include":"#object-binding-pattern"},{"include":"#destructuring-variable-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-const":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#binding-element-const"}]},{"include":"#object-binding-pattern-const"},{"include":"#destructuring-variable-rest-const"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"object-binding-element-propertyName":{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(:)","endCaptures":{"0":{"name":"punctuation.destructuring.ts"}},"patterns":[{"include":"#string"},{"include":"#array-literal"},{"include":"#numeric-literal"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"variable.object.property.ts"}]},"object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element"}]},"object-binding-pattern-const":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#object-binding-element-const"}]},"object-identifiers":{"patterns":[{"match":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*\\\\??\\\\.\\\\s*prototype\\\\b(?!\\\\$))","name":"support.class.ts"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"variable.other.constant.object.property.ts"},"4":{"name":"variable.other.object.property.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(#?\\\\p{upper}[$_\\\\d[:upper:]]*)|(#?[$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"},{"captures":{"1":{"name":"variable.other.constant.object.ts"},"2":{"name":"variable.other.object.ts"}},"match":"(?:(\\\\p{upper}[$_\\\\d[:upper:]]*)|([$_[:alpha:]][$_[:alnum:]]*))(?=\\\\s*\\\\??\\\\.\\\\s*#?[$_[:alpha:]][$_[:alnum:]]*)"}]},"object-literal":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.objectliteral.ts","patterns":[{"include":"#object-member"}]},"object-literal-method-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#method-declaration-name"},{"include":"#function-body"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(async)\\\\s+)?(?:\\\\b([gs]et)\\\\s+)?(?:(\\\\*)\\\\s*)?(?=\\\\s*((\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(\\\\??))\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"storage.type.property.ts"},"3":{"name":"keyword.generator.asterisk.ts"}},"end":"(?=[(<])","patterns":[{"include":"#method-declaration-name"}]}]},"object-member":{"patterns":[{"include":"#comment"},{"include":"#object-literal-method-declaration"},{"begin":"(?=\\\\[)","end":"(?=:)|((?<=])(?=\\\\s*[(<]))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#array-literal"}]},{"begin":"(?=[\\"\'`])","end":"(?=:)|((?<=[\\"\'`])(?=((\\\\s*[(,<}])|(\\\\s+(as|satisifies)\\\\s+))))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#string"}]},{"begin":"(?=\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$)))","end":"(?=:)|(?=\\\\s*([(,<}])|(\\\\s+as|satisifies\\\\s+))","name":"meta.object.member.ts meta.object-literal.key.ts","patterns":[{"include":"#comment"},{"include":"#numeric-literal"}]},{"begin":"(?<=[]\\"\'`])(?=\\\\s*[(<])","end":"(?=[,;}])|(?<=})","name":"meta.method.declaration.ts","patterns":[{"include":"#function-body"}]},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"constant.numeric.decimal.ts"}},"match":"(?![$_[:alpha:]])(\\\\d+)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"},"1":{"name":"entity.name.function.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:(\\\\s*/\\\\*([^*]|(\\\\*[^/]))*\\\\*/)*\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))","name":"meta.object.member.ts"},{"captures":{"0":{"name":"meta.object-literal.key.ts"}},"match":"[$_[:alpha:]][$_[:alnum:]]*\\\\s*(?=(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*:)","name":"meta.object.member.ts"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"captures":{"1":{"name":"variable.other.readwrite.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts"},{"captures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as)\\\\s+(const)(?=\\\\s*([,}]|$))","name":"meta.object.member.ts"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(as)|(satisfies))\\\\s+","beginCaptures":{"1":{"name":"keyword.control.as.ts"},"2":{"name":"keyword.control.satisfies.ts"}},"end":"(?=[-\\\\])+,:;>?}]|\\\\|\\\\||&&|!==|$|^|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(as|satisifies)\\\\s+))","name":"meta.object.member.ts","patterns":[{"include":"#type"}]},{"begin":"(?=[$_[:alpha:]][$_[:alnum:]]*\\\\s*=)","end":"(?=[,}]|$|//|/\\\\*)","name":"meta.object.member.ts","patterns":[{"include":"#expression"}]},{"begin":":","beginCaptures":{"0":{"name":"meta.object-literal.key.ts punctuation.separator.key-value.ts"}},"end":"(?=[,}])","name":"meta.object.member.ts","patterns":[{"begin":"(?<=:)\\\\s*(async)?(?=\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"begin":"(?<=:)\\\\s*(async)?\\\\s*(?=<\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=>)","patterns":[{"include":"#type-parameters"}]},{"begin":"(?<=>)\\\\s*(\\\\()(?=\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]},{"include":"#possibly-arrow-return-type"},{"include":"#expression"}]},{"include":"#punctuation-comma"},{"include":"#decl-block"}]},"parameter-array-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\[)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.array.ts"}},"end":"]","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.array.ts"}},"patterns":[{"include":"#parameter-binding-element"},{"include":"#punctuation-comma"}]},"parameter-binding-element":{"patterns":[{"include":"#comment"},{"include":"#string"},{"include":"#numeric-literal"},{"include":"#regex"},{"include":"#parameter-object-binding-pattern"},{"include":"#parameter-array-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"}]},"parameter-name":{"patterns":[{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|protected|private|readonly)\\\\s+(?=(override|public|protected|private|readonly)\\\\s+)"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(override|public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*(\\\\??)"}]},"parameter-object-binding-element":{"patterns":[{"include":"#comment"},{"begin":"(?=(\\\\b((?<!\\\\$)0[Xx]\\\\h[_\\\\h]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Bb][01][01_]*(n)?\\\\b(?!\\\\$))|\\\\b((?<!\\\\$)0[Oo]?[0-7][0-7_]*(n)?\\\\b(?!\\\\$))|((?<!\\\\$)(?:\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\B(\\\\.)[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*[Ee][-+]?[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(\\\\.)(n)?\\\\B|\\\\B(\\\\.)[0-9][0-9_]*(n)?\\\\b|\\\\b[0-9][0-9_]*(n)?\\\\b(?!\\\\.))(?!\\\\$))|([$_[:alpha:]][$_[:alnum:]]*)|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`)|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])+]))\\\\s*(:))","end":"(?=[,}])","patterns":[{"include":"#object-binding-element-propertyName"},{"include":"#parameter-binding-element"},{"include":"#paren-expression"}]},{"include":"#parameter-object-binding-pattern"},{"include":"#destructuring-parameter-rest"},{"include":"#variable-initializer"},{"include":"#punctuation-comma"}]},"parameter-object-binding-pattern":{"begin":"(?:(\\\\.\\\\.\\\\.)\\\\s*)?(\\\\{)","beginCaptures":{"1":{"name":"keyword.operator.rest.ts"},"2":{"name":"punctuation.definition.binding-pattern.object.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.binding-pattern.object.ts"}},"patterns":[{"include":"#parameter-object-binding-element"}]},"parameter-type-annotation":{"patterns":[{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?=[),])|(?==[^>])","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"paren-expression":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression"}]},"paren-expression-possibly-arrow":{"patterns":[{"begin":"(?<=[(,=])\\\\s*(async)?(?=\\\\s*((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"begin":"(?<=[(,=]|=>|^return|[^$._[:alnum:]]return)\\\\s*(async)?(?=\\\\s*((((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*))?\\\\()|(<)|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)))\\\\s*$)","beginCaptures":{"1":{"name":"storage.modifier.async.ts"}},"end":"(?<=\\\\))","patterns":[{"include":"#paren-expression-possibly-arrow-with-typeparameters"}]},{"include":"#possibly-arrow-return-type"}]},"paren-expression-possibly-arrow-with-typeparameters":{"patterns":[{"include":"#type-parameters"},{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"patterns":[{"include":"#expression-inside-possibly-arrow-parens"}]}]},"possibly-arrow-return-type":{"begin":"(?<=\\\\)|^)\\\\s*(:)(?=\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*=>)","beginCaptures":{"1":{"name":"meta.arrow.ts meta.return.type.arrow.ts keyword.operator.type.annotation.ts"}},"contentName":"meta.arrow.ts meta.return.type.arrow.ts","end":"(?==>|\\\\{|^(\\\\s*(export|function|class|interface|let|var|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|const|import|enum|namespace|module|type|abstract|declare)\\\\s+))","patterns":[{"include":"#arrow-return-type-body"}]},"property-accessor":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(accessor|get|set)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.type.property.ts"},"punctuation-accessor":{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"}},"match":"(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d))"},"punctuation-comma":{"match":",","name":"punctuation.separator.comma.ts"},"punctuation-semicolon":{"match":";","name":"punctuation.terminator.statement.ts"},"qstring-double":{"begin":"\\"","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\\")|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.double.ts","patterns":[{"include":"#string-character-escape"}]},"qstring-single":{"begin":"\'","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(\')|([^\\\\n\\\\\\\\])$","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"invalid.illegal.newline.ts"}},"name":"string.quoted.single.ts","patterns":[{"include":"#string-character-escape"}]},"regex":{"patterns":[{"begin":"(?<!\\\\+\\\\+|--|})(?<=[!(+,:=?\\\\[]|^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case|=>|&&|\\\\|\\\\||\\\\*/)\\\\s*(/)(?![*/])(?=(?:[^()/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)+]|\\\\(([^)\\\\\\\\]|\\\\\\\\.)+\\\\))+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]},{"begin":"((?<![]$)_[:alnum:]]|\\\\+\\\\+|--|}|\\\\*/)|((?<=^return|[^$._[:alnum:]]return|^case|[^$._[:alnum:]]case))\\\\s*)/(?![*/])(?=(?:[^/\\\\[\\\\\\\\]|\\\\\\\\.|\\\\[([^]\\\\\\\\]|\\\\\\\\.)*])+/([dgimsuvy]+|(?![*/])|(?=/\\\\*))(?!\\\\s*[$0-9A-Z_a-z]))","beginCaptures":{"0":{"name":"punctuation.definition.string.begin.ts"}},"end":"(/)([dgimsuvy]*)","endCaptures":{"1":{"name":"punctuation.definition.string.end.ts"},"2":{"name":"keyword.other.ts"}},"name":"string.regexp.ts","patterns":[{"include":"#regexp"}]}]},"regex-character-class":{"patterns":[{"match":"\\\\\\\\[DSWdfnrstvw]|\\\\.","name":"constant.other.character-class.regexp"},{"match":"\\\\\\\\([0-7]{3}|x\\\\h{2}|u\\\\h{4})","name":"constant.character.numeric.regexp"},{"match":"\\\\\\\\c[A-Z]","name":"constant.character.control.regexp"},{"match":"\\\\\\\\.","name":"constant.character.escape.backslash.regexp"}]},"regexp":{"patterns":[{"match":"\\\\\\\\[Bb]|[$^]","name":"keyword.control.anchor.regexp"},{"captures":{"0":{"name":"keyword.other.back-reference.regexp"},"1":{"name":"variable.other.regexp"}},"match":"\\\\\\\\(?:[1-9]\\\\d*|k<([$A-Z_a-z][$\\\\w]*)>)"},{"match":"[*+?]|\\\\{(\\\\d+,\\\\d+|\\\\d+,|,\\\\d+|\\\\d+)}\\\\??","name":"keyword.operator.quantifier.regexp"},{"match":"\\\\|","name":"keyword.operator.or.regexp"},{"begin":"(\\\\()((\\\\?=)|(\\\\?!)|(\\\\?<=)|(\\\\?<!))","beginCaptures":{"1":{"name":"punctuation.definition.group.regexp"},"2":{"name":"punctuation.definition.group.assertion.regexp"},"3":{"name":"meta.assertion.look-ahead.regexp"},"4":{"name":"meta.assertion.negative-look-ahead.regexp"},"5":{"name":"meta.assertion.look-behind.regexp"},"6":{"name":"meta.assertion.negative-look-behind.regexp"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.assertion.regexp","patterns":[{"include":"#regexp"}]},{"begin":"\\\\((?:(\\\\?:)|\\\\?<([$A-Z_a-z][$\\\\w]*)>)?","beginCaptures":{"0":{"name":"punctuation.definition.group.regexp"},"1":{"name":"punctuation.definition.group.no-capture.regexp"},"2":{"name":"variable.other.regexp"}},"end":"\\\\)","endCaptures":{"0":{"name":"punctuation.definition.group.regexp"}},"name":"meta.group.regexp","patterns":[{"include":"#regexp"}]},{"begin":"(\\\\[)(\\\\^)?","beginCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"},"2":{"name":"keyword.operator.negation.regexp"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.character-class.regexp"}},"name":"constant.other.character-class.set.regexp","patterns":[{"captures":{"1":{"name":"constant.character.numeric.regexp"},"2":{"name":"constant.character.control.regexp"},"3":{"name":"constant.character.escape.backslash.regexp"},"4":{"name":"constant.character.numeric.regexp"},"5":{"name":"constant.character.control.regexp"},"6":{"name":"constant.character.escape.backslash.regexp"}},"match":"(?:.|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))-(?:[^]\\\\\\\\]|(\\\\\\\\(?:[0-7]{3}|x\\\\h{2}|u\\\\h{4}))|(\\\\\\\\c[A-Z])|(\\\\\\\\.))","name":"constant.other.character-class.range.regexp"},{"include":"#regex-character-class"}]},{"include":"#regex-character-class"}]},"return-type":{"patterns":[{"begin":"(?<=\\\\))\\\\s*(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?=$|^|[,;{}]|//)","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]},{"begin":"(?<=\\\\))\\\\s*(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[,;{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.return.type.ts","patterns":[{"include":"#return-type-core"}]}]},"return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<=[\\\\&:|])(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"shebang":{"captures":{"1":{"name":"punctuation.definition.comment.ts"}},"match":"\\\\A(#!).*(?=$)","name":"comment.line.shebang.ts"},"single-line-comment-consuming-line-ending":{"begin":"(^[\\\\t ]+)?((//)(?:\\\\s*((@)internal)(?=\\\\s|$))?)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.ts"},"2":{"name":"comment.line.double-slash.ts"},"3":{"name":"punctuation.definition.comment.ts"},"4":{"name":"storage.type.internaldeclaration.ts"},"5":{"name":"punctuation.decorator.internaldeclaration.ts"}},"contentName":"comment.line.double-slash.ts","end":"(?=^)"},"statements":{"patterns":[{"include":"#declaration"},{"include":"#control-statement"},{"include":"#after-operator-block-as-object-literal"},{"include":"#decl-block"},{"include":"#label"},{"include":"#expression"},{"include":"#punctuation-semicolon"},{"include":"#string"},{"include":"#comment"}]},"string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template"}]},"string-character-escape":{"match":"\\\\\\\\(x\\\\h{2}|u\\\\h{4}|u\\\\{\\\\h+}|[012][0-7]{0,2}|3[0-6][0-7]?|37[0-7]?|[4-7][0-7]?|.|$)","name":"constant.character.escape.ts"},"super-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))super\\\\b(?!\\\\$)","name":"variable.language.super.ts"},"support-function-call-identifiers":{"patterns":[{"include":"#literal"},{"include":"#support-objects"},{"include":"#object-identifiers"},{"include":"#punctuation-accessor"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\(\\\\s*[\\"\'`])","name":"keyword.operator.expression.import.ts"}]},"support-objects":{"patterns":[{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(arguments)\\\\b(?!\\\\$)","name":"variable.language.arguments.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(Promise)\\\\b(?!\\\\$)","name":"support.class.promise.ts"},{"captures":{"1":{"name":"keyword.control.import.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.importmeta.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(import)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(meta)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"keyword.operator.new.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"support.variable.property.target.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(new)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(target)\\\\b(?!\\\\$)"},{"captures":{"1":{"name":"punctuation.accessor.ts"},"2":{"name":"punctuation.accessor.optional.ts"},"3":{"name":"support.variable.property.ts"},"4":{"name":"support.constant.ts"}},"match":"(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(?:(constructor|length|prototype|__proto__)\\\\b(?!\\\\$|\\\\s*(<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\()|(EPSILON|MAX_SAFE_INTEGER|MAX_VALUE|MIN_SAFE_INTEGER|MIN_VALUE|NEGATIVE_INFINITY|POSITIVE_INFINITY)\\\\b(?!\\\\$))"},{"captures":{"1":{"name":"support.type.object.module.ts"},"2":{"name":"support.type.object.module.ts"},"3":{"name":"punctuation.accessor.ts"},"4":{"name":"punctuation.accessor.optional.ts"},"5":{"name":"support.type.object.module.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(exports)|(module)(?:(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))(exports|id|filename|loaded|parent|children))?)\\\\b(?!\\\\$)"}]},"switch-statement":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?=\\\\bswitch\\\\s*\\\\()","end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"switch-statement.expr.ts","patterns":[{"include":"#comment"},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(switch)\\\\s*(\\\\()","beginCaptures":{"1":{"name":"keyword.control.switch.ts"},"2":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"switch-expression.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"(?=})","name":"switch-block.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(case|default(?=:))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.control.switch.ts"}},"end":"(?=:)","name":"case-clause.expr.ts","patterns":[{"include":"#expression"}]},{"begin":"(:)\\\\s*(\\\\{)","beginCaptures":{"1":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"},"2":{"name":"meta.block.ts punctuation.definition.block.ts"}},"contentName":"meta.block.ts","end":"}","endCaptures":{"0":{"name":"meta.block.ts punctuation.definition.block.ts"}},"patterns":[{"include":"#statements"}]},{"captures":{"0":{"name":"case-clause.expr.ts punctuation.definition.section.case-statement.ts"}},"match":"(:)"},{"include":"#statements"}]}]},"template":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-substitution-element"},{"include":"#string-character-escape"}]}]},"template-call":{"patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*)(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","end":"(?=`)","patterns":[{"begin":"(?=(([$_[:alpha:]][$_[:alnum:]]*\\\\s*\\\\??\\\\.\\\\s*)*|(\\\\??\\\\.\\\\s*)?)([$_[:alpha:]][$_[:alnum:]]*))","end":"(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)?`)","patterns":[{"include":"#support-function-call-identifiers"},{"match":"([$_[:alpha:]][$_[:alnum:]]*)","name":"entity.name.function.tagged-template.ts"}]},{"include":"#type-arguments"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?\\\\s*(?=(<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))(([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>|<\\\\s*(((keyof|infer|typeof|readonly)\\\\s+)|(([$_[:alpha:]][$_[:alnum:]]*|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))(?=\\\\s*([,.<>\\\\[]|=>|&(?!&)|\\\\|(?!\\\\|)))))([^(<>]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(?<==)>)*(?<!=)>))*(?<!=)>)*(?<!=)>\\\\s*)`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"}},"end":"(?=`)","patterns":[{"include":"#type-arguments"}]}]},"template-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#expression"}]},"template-type":{"patterns":[{"include":"#template-call"},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)?(`)","beginCaptures":{"1":{"name":"entity.name.function.tagged-template.ts"},"2":{"name":"string.template.ts punctuation.definition.string.template.begin.ts"}},"contentName":"string.template.ts","end":"`","endCaptures":{"0":{"name":"string.template.ts punctuation.definition.string.template.end.ts"}},"patterns":[{"include":"#template-type-substitution-element"},{"include":"#string-character-escape"}]}]},"template-type-substitution-element":{"begin":"\\\\$\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.template-expression.begin.ts"}},"contentName":"meta.embedded.line.ts","end":"}","endCaptures":{"0":{"name":"punctuation.definition.template-expression.end.ts"}},"name":"meta.template.expression.ts","patterns":[{"include":"#type"}]},"ternary-expression":{"begin":"(?!\\\\?\\\\.\\\\s*\\\\D)(\\\\?)(?!\\\\?)","beginCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"end":"\\\\s*(:)","endCaptures":{"1":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#expression"}]},"this-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))this\\\\b(?!\\\\$)","name":"variable.language.this.ts"},"type":{"patterns":[{"include":"#comment"},{"include":"#type-string"},{"include":"#numeric-literal"},{"include":"#type-primitive"},{"include":"#type-builtin-literals"},{"include":"#type-parameters"},{"include":"#type-tuple"},{"include":"#type-object"},{"include":"#type-operators"},{"include":"#type-conditional"},{"include":"#type-fn-type-parameters"},{"include":"#type-paren-or-function-parameters"},{"include":"#type-function-return-type"},{"captures":{"1":{"name":"storage.modifier.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(readonly)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*"},{"include":"#type-name"}]},"type-alias-declaration":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(type)\\\\b\\\\s+([$_[:alpha:]][$_[:alnum:]]*)\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.type.ts"},"4":{"name":"entity.name.type.alias.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","name":"meta.type.declaration.ts","patterns":[{"include":"#comment"},{"include":"#type-parameters"},{"begin":"(=)\\\\s*(intrinsic)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"},"2":{"name":"keyword.control.intrinsic.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]},{"begin":"(=)\\\\s*","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[;}]|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type"}]}]},"type-annotation":{"patterns":[{"begin":"(:)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])(?!\\\\s*[\\\\&|]\\\\s+)((?=^|[]),;}]|//)|(?==[^>])|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]},{"begin":"(:)","beginCaptures":{"1":{"name":"keyword.operator.type.annotation.ts"}},"end":"(?<![\\\\&:|])((?=[]),;}]|//)|(?==[^>])|(?=^\\\\s*$)|((?<=[]$)>_}[:alpha:]])\\\\s*(?=\\\\{)))","name":"meta.type.annotation.ts","patterns":[{"include":"#type"}]}]},"type-arguments":{"begin":"<","beginCaptures":{"0":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":">","endCaptures":{"0":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#type-arguments-body"}]},"type-arguments-body":{"patterns":[{"captures":{"0":{"name":"keyword.operator.type.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(_)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"include":"#type"},{"include":"#punctuation-comma"}]},"type-builtin-literals":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(this|true|false|undefined|null|object)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.builtin.ts"},"type-conditional":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends)\\\\s+","beginCaptures":{"1":{"name":"storage.modifier.ts"}},"end":"(?<=:)","patterns":[{"begin":"\\\\?","beginCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"end":":","endCaptures":{"0":{"name":"keyword.operator.ternary.ts"}},"patterns":[{"include":"#type"}]},{"include":"#type"}]}]},"type-fn-type-parameters":{"patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b(?=\\\\s*<)","beginCaptures":{"1":{"name":"meta.type.constructor.ts storage.modifier.ts"},"2":{"name":"meta.type.constructor.ts keyword.control.new.ts"}},"end":"(?<=>)","patterns":[{"include":"#comment"},{"include":"#type-parameters"}]},{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(abstract)\\\\s+)?(new)\\\\b\\\\s*(?=\\\\()","beginCaptures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.control.new.ts"}},"end":"(?<=\\\\))","name":"meta.type.constructor.ts","patterns":[{"include":"#function-parameters"}]},{"begin":"((?=\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>))))))","end":"(?<=\\\\))","name":"meta.type.function.ts","patterns":[{"include":"#function-parameters"}]}]},"type-function-return-type":{"patterns":[{"begin":"(=>)(?=\\\\s*\\\\S)","beginCaptures":{"1":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])(?=[]),:;=>?{}]|//|$)","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]},{"begin":"=>","beginCaptures":{"0":{"name":"storage.type.function.arrow.ts"}},"end":"(?<!=>)(?<![\\\\&|])((?=[]),:;=>?{}]|//|^\\\\s*$)|((?<=\\\\S)(?=\\\\s*$)))","name":"meta.type.function.return.ts","patterns":[{"include":"#type-function-return-type-core"}]}]},"type-function-return-type-core":{"patterns":[{"include":"#comment"},{"begin":"(?<==>)(?=\\\\s*\\\\{)","end":"(?<=})","patterns":[{"include":"#type-object"}]},{"include":"#type-predicate-operator"},{"include":"#type"}]},"type-infer":{"patterns":[{"captures":{"1":{"name":"keyword.operator.expression.infer.ts"},"2":{"name":"entity.name.type.ts"},"3":{"name":"keyword.operator.expression.extends.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(infer)\\\\s+([$_[:alpha:]][$_[:alnum:]]*)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))(?:\\\\s+(extends)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))?","name":"meta.type.infer.ts"}]},"type-name":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))\\\\s*(<)","captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"},"4":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(<)","beginCaptures":{"1":{"name":"entity.name.type.ts"},"2":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.begin.ts"}},"contentName":"meta.type.parameters.ts","end":"(>)","endCaptures":{"1":{"name":"meta.type.parameters.ts punctuation.definition.typeparameters.end.ts"}},"patterns":[{"include":"#type-arguments-body"}]},{"captures":{"1":{"name":"entity.name.type.module.ts"},"2":{"name":"punctuation.accessor.ts"},"3":{"name":"punctuation.accessor.optional.ts"}},"match":"([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(?:(\\\\.)|(\\\\?\\\\.(?!\\\\s*\\\\d)))"},{"match":"[$_[:alpha:]][$_[:alnum:]]*","name":"entity.name.type.ts"}]},"type-object":{"begin":"\\\\{","beginCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"end":"}","endCaptures":{"0":{"name":"punctuation.definition.block.ts"}},"name":"meta.object.type.ts","patterns":[{"include":"#comment"},{"include":"#method-declaration"},{"include":"#indexer-declaration"},{"include":"#indexer-mapped-type-declaration"},{"include":"#field-declaration"},{"include":"#type-annotation"},{"begin":"\\\\.\\\\.\\\\.","beginCaptures":{"0":{"name":"keyword.operator.spread.ts"}},"end":"(?=[,;}]|$)|(?<=})","patterns":[{"include":"#type"}]},{"include":"#punctuation-comma"},{"include":"#punctuation-semicolon"},{"include":"#type"}]},"type-operators":{"patterns":[{"include":"#typeof-operator"},{"include":"#type-infer"},{"begin":"([\\\\&|])(?=\\\\s*\\\\{)","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?<=})","patterns":[{"include":"#type-object"}]},{"begin":"[\\\\&|]","beginCaptures":{"0":{"name":"keyword.operator.type.ts"}},"end":"(?=\\\\S)"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))keyof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.keyof.ts"},{"match":"([:?])","name":"keyword.operator.ternary.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))import(?=\\\\s*\\\\()","name":"keyword.operator.expression.import.ts"}]},"type-parameters":{"begin":"(<)","beginCaptures":{"1":{"name":"punctuation.definition.typeparameters.begin.ts"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.typeparameters.end.ts"}},"name":"meta.type.parameters.ts","patterns":[{"include":"#comment"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(extends|in|out|const)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"storage.modifier.ts"},{"include":"#type"},{"include":"#punctuation-comma"},{"match":"(=)(?!>)","name":"keyword.operator.assignment.ts"}]},"type-paren-or-function-parameters":{"begin":"\\\\(","beginCaptures":{"0":{"name":"meta.brace.round.ts"}},"end":"\\\\)","endCaptures":{"0":{"name":"meta.brace.round.ts"}},"name":"meta.type.paren.cover.ts","patterns":[{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"entity.name.function.ts variable.language.this.ts"},"4":{"name":"entity.name.function.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=\\\\s*(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))))"},{"captures":{"1":{"name":"storage.modifier.ts"},"2":{"name":"keyword.operator.rest.ts"},"3":{"name":"variable.parameter.ts variable.language.this.ts"},"4":{"name":"variable.parameter.ts"},"5":{"name":"keyword.operator.optional.ts"}},"match":"(?:(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(public|private|protected|readonly)\\\\s+)?(?:(\\\\.\\\\.\\\\.)\\\\s*)?(?<![:=])(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s*(\\\\??)(?=:)"},{"include":"#type-annotation"},{"match":",","name":"punctuation.separator.parameter.ts"},{"include":"#type"}]},"type-predicate-operator":{"patterns":[{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"},"4":{"name":"keyword.operator.expression.is.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:(asserts)\\\\s+)?(?!asserts)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))\\\\s(is)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"captures":{"1":{"name":"keyword.operator.type.asserts.ts"},"2":{"name":"variable.parameter.ts variable.language.this.ts"},"3":{"name":"variable.parameter.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(asserts)\\\\s+(?!is)(?:(this)|([$_[:alpha:]][$_[:alnum:]]*))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))asserts(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.type.asserts.ts"},{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))is(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"keyword.operator.expression.is.ts"}]},"type-primitive":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(string|number|bigint|boolean|symbol|any|void|never|unknown)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"support.type.primitive.ts"},"type-string":{"patterns":[{"include":"#qstring-single"},{"include":"#qstring-double"},{"include":"#template-type"}]},"type-tuple":{"begin":"\\\\[","beginCaptures":{"0":{"name":"meta.brace.square.ts"}},"end":"]","endCaptures":{"0":{"name":"meta.brace.square.ts"}},"name":"meta.type.tuple.ts","patterns":[{"match":"\\\\.\\\\.\\\\.","name":"keyword.operator.rest.ts"},{"captures":{"1":{"name":"entity.name.label.ts"},"2":{"name":"keyword.operator.optional.ts"},"3":{"name":"punctuation.separator.label.ts"}},"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))([$_[:alpha:]][$_[:alnum:]]*)\\\\s*(\\\\?)?\\\\s*(:)"},{"include":"#type"},{"include":"#punctuation-comma"}]},"typeof-operator":{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))typeof(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","beginCaptures":{"0":{"name":"keyword.operator.expression.typeof.ts"}},"end":"(?=[]\\\\&),:;=>?{|}]|(extends\\\\s+)|$|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)","patterns":[{"include":"#type-arguments"},{"include":"#expression"}]},"undefined-literal":{"match":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))undefined(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))","name":"constant.language.undefined.ts"},"var-expr":{"patterns":[{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!^let|[^$._[:alnum:]]let|^var|[^$._[:alnum:]]var)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(var|let)(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-variable"},{"include":"#var-single-variable"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=^|[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]])const)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b(const(?!\\\\s+enum\\\\b))(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*(?=$|//)","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#destructuring-const"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]},{"begin":"(?=(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?!(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))((?=[;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b)|((?<!(?:^|[^$._[:alnum:]]|^await\\\\s+|[^$._[:alnum:]]await\\\\s+)using)(?=\\\\s*$)))","name":"meta.var.expr.ts","patterns":[{"begin":"(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(?:\\\\b(export)\\\\s+)?(?:\\\\b(declare)\\\\s+)?\\\\b\\\\b(using(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])|await\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b)\\\\b(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.))\\\\s*","beginCaptures":{"1":{"name":"keyword.control.export.ts"},"2":{"name":"storage.modifier.ts"},"3":{"name":"storage.type.ts"}},"end":"(?=\\\\S)"},{"include":"#var-single-const"},{"include":"#variable-initializer"},{"include":"#comment"},{"begin":"(,)\\\\s*((?!\\\\S)|(?=//))","beginCaptures":{"1":{"name":"punctuation.separator.comma.ts"}},"end":"(?<!,)(((?=[;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|^\\\\s*$))|((?<=\\\\S)(?=\\\\s*$)))","patterns":[{"include":"#single-line-comment-consuming-line-ending"},{"include":"#comment"},{"include":"#var-single-const"},{"include":"#punctuation-comma"}]},{"include":"#punctuation-comma"}]}]},"var-single-const":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts entity.name.function.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable":{"patterns":[{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?(?=\\\\s*(=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>)))))|(:\\\\s*((<)|(\\\\(\\\\s*((\\\\))|(\\\\.\\\\.\\\\.)|([$_[:alnum:]]+\\\\s*(([,:=?])|(\\\\)\\\\s*=>)))))))|(:\\\\s*(?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))Function(?![$_[:alnum:]])(?:(?=\\\\.\\\\.\\\\.)|(?!\\\\.)))|(:\\\\s*((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))))))|(:\\\\s*(=>|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(<[^<>]*>)|[^(),<=>])+=\\\\s*(((async\\\\s+)?((function\\\\s*[(*<])|(function\\\\s+)|([$_[:alpha:]][$_[:alnum:]]*\\\\s*=>)))|((async\\\\s*)?(((<\\\\s*)$|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*((([\\\\[{]\\\\s*)?)$|((\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})\\\\s*((:\\\\s*\\\\{?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*)))|((\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])\\\\s*((:\\\\s*\\\\[?)$|((\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+\\\\s*)?=\\\\s*))))))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*((\\\\)\\\\s*:)|((\\\\.\\\\.\\\\.\\\\s*)?[$_[:alpha:]][$_[:alnum:]]*\\\\s*:)))|((<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<]|<\\\\s*(((const\\\\s+)?[$_[:alpha:]])|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*]))([^<=>]|=[^<])*>)*>)*>\\\\s*)?\\\\(\\\\s*(/\\\\*([^*]|(\\\\*[^/]))*\\\\*/\\\\s*)*(([$_[:alpha:]]|(\\\\{([^{}]|(\\\\{([^{}]|\\\\{[^{}]*})*}))*})|(\\\\[([^]\\\\[]|(\\\\[([^]\\\\[]|\\\\[[^]\\\\[]*])*]))*])|(\\\\.\\\\.\\\\.\\\\s*[$_[:alpha:]]))([^\\"\'()`]|(\\\\(([^()]|(\\\\(([^()]|\\\\([^()]*\\\\))*\\\\)))*\\\\))|(\'([^\'\\\\\\\\]|\\\\\\\\.)*\')|(\\"([^\\"\\\\\\\\]|\\\\\\\\.)*\\")|(`([^\\\\\\\\`]|\\\\\\\\.)*`))*)?\\\\)(\\\\s*:\\\\s*([^()<>{}]|<([^<>]|<([^<>]|<[^<>]+>)+>)+>|\\\\([^()]+\\\\)|\\\\{[^{}]+})+)?\\\\s*=>))))))","beginCaptures":{"1":{"name":"meta.definition.variable.ts entity.name.function.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"(\\\\p{upper}[$_\\\\d[:upper:]]*)(?![$_[:alnum:]])(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.constant.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]},{"begin":"([$_[:alpha:]][$_[:alnum:]]*)(!)?","beginCaptures":{"1":{"name":"meta.definition.variable.ts variable.other.readwrite.ts"},"2":{"name":"keyword.operator.definiteassignment.ts"}},"end":"(?=$|^|[,;=}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+)|(;|^\\\\s*$|^\\\\s*(?:abstract|async|\\\\bawait\\\\s+\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b\\\\b|break|case|catch|class|const|continue|declare|do|else|enum|export|finally|function|for|goto|if|import|interface|let|module|namespace|switch|return|throw|try|type|\\\\busing(?=\\\\s+(?!in\\\\b|of\\\\b(?!\\\\s*(?:of\\\\b|=)))[$_[:alpha:]])\\\\b|var|while)\\\\b))","name":"meta.var-single-variable.expr.ts","patterns":[{"include":"#var-single-variable-type-annotation"}]}]},"var-single-variable-type-annotation":{"patterns":[{"include":"#type-annotation"},{"include":"#string"},{"include":"#comment"}]},"variable-initializer":{"patterns":[{"begin":"(?<![!=])(=)(?!=)(?=\\\\s*\\\\S)(?!\\\\s*.*=>\\\\s*$)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=$|^|[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))","patterns":[{"include":"#expression"}]},{"begin":"(?<![!=])(=)(?!=)","beginCaptures":{"1":{"name":"keyword.operator.assignment.ts"}},"end":"(?=[]),;}]|((?<![$_[:alnum:]])(?:(?<=\\\\.\\\\.\\\\.)|(?<!\\\\.))(of|in)\\\\s+))|(?=^\\\\s*$)|(?<![-\\\\&*+/|])(?<=\\\\S)(?<!=)(?=\\\\s*$)","patterns":[{"include":"#expression"}]}]}},"scopeName":"source.ts","aliases":["ts"]}')),H8=[j8],U8=Object.freeze(JSON.parse('{"colors":{"activityBar.activeBorder":"#f9826c","activityBar.background":"#fff","activityBar.border":"#e1e4e8","activityBar.foreground":"#2f363d","activityBar.inactiveForeground":"#959da5","activityBarBadge.background":"#2188ff","activityBarBadge.foreground":"#fff","badge.background":"#dbedff","badge.foreground":"#005cc5","breadcrumb.activeSelectionForeground":"#586069","breadcrumb.focusForeground":"#2f363d","breadcrumb.foreground":"#6a737d","breadcrumbPicker.background":"#fafbfc","button.background":"#159739","button.foreground":"#fff","button.hoverBackground":"#138934","button.secondaryBackground":"#e1e4e8","button.secondaryForeground":"#1b1f23","button.secondaryHoverBackground":"#d1d5da","checkbox.background":"#fafbfc","checkbox.border":"#d1d5da","debugToolBar.background":"#fff","descriptionForeground":"#6a737d","diffEditor.insertedTextBackground":"#34d05822","diffEditor.removedTextBackground":"#d73a4922","dropdown.background":"#fafbfc","dropdown.border":"#e1e4e8","dropdown.foreground":"#2f363d","dropdown.listBackground":"#fff","editor.background":"#fff","editor.findMatchBackground":"#ffdf5d","editor.findMatchHighlightBackground":"#ffdf5d66","editor.focusedStackFrameHighlightBackground":"#28a74525","editor.foldBackground":"#d1d5da11","editor.foreground":"#24292e","editor.inactiveSelectionBackground":"#0366d611","editor.lineHighlightBackground":"#f6f8fa","editor.linkedEditingBackground":"#0366d611","editor.selectionBackground":"#0366d625","editor.selectionHighlightBackground":"#34d05840","editor.selectionHighlightBorder":"#34d05800","editor.stackFrameHighlightBackground":"#ffd33d33","editor.wordHighlightBackground":"#34d05800","editor.wordHighlightBorder":"#24943e99","editor.wordHighlightStrongBackground":"#34d05800","editor.wordHighlightStrongBorder":"#24943e50","editorBracketHighlight.foreground1":"#005cc5","editorBracketHighlight.foreground2":"#e36209","editorBracketHighlight.foreground3":"#5a32a3","editorBracketHighlight.foreground4":"#005cc5","editorBracketHighlight.foreground5":"#e36209","editorBracketHighlight.foreground6":"#5a32a3","editorBracketMatch.background":"#34d05840","editorBracketMatch.border":"#34d05800","editorCursor.foreground":"#044289","editorError.foreground":"#cb2431","editorGroup.border":"#e1e4e8","editorGroupHeader.tabsBackground":"#f6f8fa","editorGroupHeader.tabsBorder":"#e1e4e8","editorGutter.addedBackground":"#28a745","editorGutter.deletedBackground":"#d73a49","editorGutter.modifiedBackground":"#2188ff","editorIndentGuide.activeBackground":"#d7dbe0","editorIndentGuide.background":"#eff2f6","editorLineNumber.activeForeground":"#24292e","editorLineNumber.foreground":"#1b1f234d","editorOverviewRuler.border":"#fff","editorWarning.foreground":"#f9c513","editorWhitespace.foreground":"#d1d5da","editorWidget.background":"#f6f8fa","errorForeground":"#cb2431","focusBorder":"#2188ff","foreground":"#444d56","gitDecoration.addedResourceForeground":"#28a745","gitDecoration.conflictingResourceForeground":"#e36209","gitDecoration.deletedResourceForeground":"#d73a49","gitDecoration.ignoredResourceForeground":"#959da5","gitDecoration.modifiedResourceForeground":"#005cc5","gitDecoration.submoduleResourceForeground":"#959da5","gitDecoration.untrackedResourceForeground":"#28a745","input.background":"#fafbfc","input.border":"#e1e4e8","input.foreground":"#2f363d","input.placeholderForeground":"#959da5","list.activeSelectionBackground":"#e2e5e9","list.activeSelectionForeground":"#2f363d","list.focusBackground":"#cce5ff","list.hoverBackground":"#ebf0f4","list.hoverForeground":"#2f363d","list.inactiveFocusBackground":"#dbedff","list.inactiveSelectionBackground":"#e8eaed","list.inactiveSelectionForeground":"#2f363d","notificationCenterHeader.background":"#e1e4e8","notificationCenterHeader.foreground":"#6a737d","notifications.background":"#fafbfc","notifications.border":"#e1e4e8","notifications.foreground":"#2f363d","notificationsErrorIcon.foreground":"#d73a49","notificationsInfoIcon.foreground":"#005cc5","notificationsWarningIcon.foreground":"#e36209","panel.background":"#f6f8fa","panel.border":"#e1e4e8","panelInput.border":"#e1e4e8","panelTitle.activeBorder":"#f9826c","panelTitle.activeForeground":"#2f363d","panelTitle.inactiveForeground":"#6a737d","pickerGroup.border":"#e1e4e8","pickerGroup.foreground":"#2f363d","progressBar.background":"#2188ff","quickInput.background":"#fafbfc","quickInput.foreground":"#2f363d","scrollbar.shadow":"#6a737d33","scrollbarSlider.activeBackground":"#959da588","scrollbarSlider.background":"#959da533","scrollbarSlider.hoverBackground":"#959da544","settings.headerForeground":"#2f363d","settings.modifiedItemIndicator":"#2188ff","sideBar.background":"#f6f8fa","sideBar.border":"#e1e4e8","sideBar.foreground":"#586069","sideBarSectionHeader.background":"#f6f8fa","sideBarSectionHeader.border":"#e1e4e8","sideBarSectionHeader.foreground":"#2f363d","sideBarTitle.foreground":"#2f363d","statusBar.background":"#fff","statusBar.border":"#e1e4e8","statusBar.debuggingBackground":"#f9826c","statusBar.debuggingForeground":"#fff","statusBar.foreground":"#586069","statusBar.noFolderBackground":"#fff","statusBarItem.prominentBackground":"#e8eaed","statusBarItem.remoteBackground":"#fff","statusBarItem.remoteForeground":"#586069","tab.activeBackground":"#fff","tab.activeBorder":"#fff","tab.activeBorderTop":"#f9826c","tab.activeForeground":"#2f363d","tab.border":"#e1e4e8","tab.hoverBackground":"#fff","tab.inactiveBackground":"#f6f8fa","tab.inactiveForeground":"#6a737d","tab.unfocusedActiveBorder":"#fff","tab.unfocusedActiveBorderTop":"#e1e4e8","tab.unfocusedHoverBackground":"#fff","terminal.ansiBlack":"#24292e","terminal.ansiBlue":"#0366d6","terminal.ansiBrightBlack":"#959da5","terminal.ansiBrightBlue":"#005cc5","terminal.ansiBrightCyan":"#3192aa","terminal.ansiBrightGreen":"#22863a","terminal.ansiBrightMagenta":"#5a32a3","terminal.ansiBrightRed":"#cb2431","terminal.ansiBrightWhite":"#d1d5da","terminal.ansiBrightYellow":"#b08800","terminal.ansiCyan":"#1b7c83","terminal.ansiGreen":"#28a745","terminal.ansiMagenta":"#5a32a3","terminal.ansiRed":"#d73a49","terminal.ansiWhite":"#6a737d","terminal.ansiYellow":"#dbab09","terminal.foreground":"#586069","terminal.tab.activeBorder":"#f9826c","terminalCursor.background":"#d1d5da","terminalCursor.foreground":"#005cc5","textBlockQuote.background":"#fafbfc","textBlockQuote.border":"#e1e4e8","textCodeBlock.background":"#f6f8fa","textLink.activeForeground":"#005cc5","textLink.foreground":"#0366d6","textPreformat.foreground":"#586069","textSeparator.foreground":"#d1d5da","titleBar.activeBackground":"#fff","titleBar.activeForeground":"#2f363d","titleBar.border":"#e1e4e8","titleBar.inactiveBackground":"#f6f8fa","titleBar.inactiveForeground":"#6a737d","tree.indentGuidesStroke":"#e1e4e8","welcomePage.buttonBackground":"#f6f8fa","welcomePage.buttonHoverBackground":"#e1e4e8"},"displayName":"GitHub Light","name":"github-light","semanticHighlighting":true,"tokenColors":[{"scope":["comment","punctuation.definition.comment","string.comment"],"settings":{"foreground":"#6a737d"}},{"scope":["constant","entity.name.constant","variable.other.constant","variable.other.enummember","variable.language"],"settings":{"foreground":"#005cc5"}},{"scope":["entity","entity.name"],"settings":{"foreground":"#6f42c1"}},{"scope":"variable.parameter.function","settings":{"foreground":"#24292e"}},{"scope":"entity.name.tag","settings":{"foreground":"#22863a"}},{"scope":"keyword","settings":{"foreground":"#d73a49"}},{"scope":["storage","storage.type"],"settings":{"foreground":"#d73a49"}},{"scope":["storage.modifier.package","storage.modifier.import","storage.type.java"],"settings":{"foreground":"#24292e"}},{"scope":["string","punctuation.definition.string","string punctuation.section.embedded source"],"settings":{"foreground":"#032f62"}},{"scope":"support","settings":{"foreground":"#005cc5"}},{"scope":"meta.property-name","settings":{"foreground":"#005cc5"}},{"scope":"variable","settings":{"foreground":"#e36209"}},{"scope":"variable.other","settings":{"foreground":"#24292e"}},{"scope":"invalid.broken","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.deprecated","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.illegal","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"invalid.unimplemented","settings":{"fontStyle":"italic","foreground":"#b31d28"}},{"scope":"carriage-return","settings":{"background":"#d73a49","content":"^M","fontStyle":"italic underline","foreground":"#fafbfc"}},{"scope":"message.error","settings":{"foreground":"#b31d28"}},{"scope":"string variable","settings":{"foreground":"#005cc5"}},{"scope":["source.regexp","string.regexp"],"settings":{"foreground":"#032f62"}},{"scope":["string.regexp.character-class","string.regexp constant.character.escape","string.regexp source.ruby.embedded","string.regexp string.regexp.arbitrary-repitition"],"settings":{"foreground":"#032f62"}},{"scope":"string.regexp constant.character.escape","settings":{"fontStyle":"bold","foreground":"#22863a"}},{"scope":"support.constant","settings":{"foreground":"#005cc5"}},{"scope":"support.variable","settings":{"foreground":"#005cc5"}},{"scope":"meta.module-reference","settings":{"foreground":"#005cc5"}},{"scope":"punctuation.definition.list.begin.markdown","settings":{"foreground":"#e36209"}},{"scope":["markup.heading","markup.heading entity.name"],"settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"markup.quote","settings":{"foreground":"#22863a"}},{"scope":"markup.italic","settings":{"fontStyle":"italic","foreground":"#24292e"}},{"scope":"markup.bold","settings":{"fontStyle":"bold","foreground":"#24292e"}},{"scope":["markup.underline"],"settings":{"fontStyle":"underline"}},{"scope":["markup.strikethrough"],"settings":{"fontStyle":"strikethrough"}},{"scope":"markup.inline.raw","settings":{"foreground":"#005cc5"}},{"scope":["markup.deleted","meta.diff.header.from-file","punctuation.definition.deleted"],"settings":{"background":"#ffeef0","foreground":"#b31d28"}},{"scope":["markup.inserted","meta.diff.header.to-file","punctuation.definition.inserted"],"settings":{"background":"#f0fff4","foreground":"#22863a"}},{"scope":["markup.changed","punctuation.definition.changed"],"settings":{"background":"#ffebda","foreground":"#e36209"}},{"scope":["markup.ignored","markup.untracked"],"settings":{"background":"#005cc5","foreground":"#f6f8fa"}},{"scope":"meta.diff.range","settings":{"fontStyle":"bold","foreground":"#6f42c1"}},{"scope":"meta.diff.header","settings":{"foreground":"#005cc5"}},{"scope":"meta.separator","settings":{"fontStyle":"bold","foreground":"#005cc5"}},{"scope":"meta.output","settings":{"foreground":"#005cc5"}},{"scope":["brackethighlighter.tag","brackethighlighter.curly","brackethighlighter.round","brackethighlighter.square","brackethighlighter.angle","brackethighlighter.quote"],"settings":{"foreground":"#586069"}},{"scope":"brackethighlighter.unmatched","settings":{"foreground":"#b31d28"}},{"scope":["constant.other.reference.link","string.other.link"],"settings":{"fontStyle":"underline","foreground":"#032f62"}}],"type":"light"}')),_c={scopeName:"source.malloy",patterns:[{include:"#malloy-language"}],repository:{"malloy-language":{patterns:[{include:"#sql-string"},{include:"#comments"},{include:"#tags"},{include:"#strings"},{include:"#numbers"},{include:"#keywords"},{include:"#properties"},{include:"#functions"},{include:"#datetimes"},{include:"#identifiers-quoted"},{include:"#types"},{include:"#constants"},{include:"#timeframes"},{include:"#identifiers-unquoted"}]},"malloy-matched":{begin:"{",end:"}",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"malloy-in-sql":{begin:"%{",name:"source.malloy-in-sql",end:"}%?",patterns:[{include:"#malloy-matched"},{include:"#malloy-language"}]},"sql-string":{patterns:[{begin:'(\\b[A-Za-z_][A-Za-z_0-9]*)(\\s*\\.\\s*)(sql)(\\s*\\(\\s*)(""")',end:'"""',beginCaptures:{1:{name:"variable.other"},3:{name:"keyword.control.sql"},5:{name:"punctuation.sql-block.open"}},endCaptures:{0:{name:"punctuation.sql-block.close"}},name:"source.sql",patterns:[{include:"#malloy-in-sql"},{include:"source.sql"}]}]},functions:{patterns:[{match:"(?i)\\b(count)(\\s*\\()(distinct)",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.function.modifier"}}},{match:"(?i)\\b(AVG|COUNT|FIRST|FORMAT|LAST|LCASE|LEN|MAX|MID|MIN|MOD|NOW|ROUND|SUM|UCASE|UNGROUPED)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(\\s*\\()",captures:{1:{name:"entity.name.function"}}},{match:"(?i)\\b([a-zA-Z_][a-zA-Z_0-9]*)(!)(timestamp|number|string|boolean|date)?(\\s*\\()",captures:{1:{name:"entity.name.function"},3:{name:"entity.name.type"}}}]},datetimes:{patterns:[{match:"(?i)@[0-9]{4}-[0-9]{2}-[0-9]{2}[ T][0-9]{2}:[0-9]{2}((:[0-9]{2})(([\\.,][0-9]+)(\\[[A-Za-z_/]+\\])?)?)?",name:"constant.numeric.timestamp"},{match:"(?i)@[0-9]{4}(-Q[1-4]|-[0-9]{2}(-[0-9]{2}(-WK)?)?)?",name:"constant.numeric.date"}]},"identifiers-quoted":{patterns:[{match:"`[^`]*`",name:"variable.other.quoted"}]},"identifiers-unquoted":{patterns:[{match:"(?i)\\b[A-Za-z_][A-Za-z_0-9]*\\b",name:"variable.other"}]},timeframes:{patterns:[{match:"(?i)\\b((year|quarter|month|week|day|hour|minute|second)s?)\\b",name:"keyword.other.timeframe"},{match:"(?i)\\b(day_of_year|day_of_month)\\b",name:"keyword.other.timeframe"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]},tags:{patterns:[{match:"##\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:'#"',end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{match:"#\\n",name:"string.quoted",captures:{0:{name:"string.quoted"}}},{begin:"#\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"##\\s",end:"\\n",beginCaptures:{0:{name:"support.type.property-name.json"}},name:"comment.line.double-slash",patterns:[{include:"#tag-values"}]},{begin:"#",end:"\\n",beginCaptures:{0:{name:"string.quoted"}},name:"string.quoted"}],repository:{"tag-values":{name:"support.type.property-name.json",match:'(-)?((?:[^\\s=#]+)|(?:"[^#]+"))(?:\\s*(=)\\s*((?:[^\\s=#]+)|(?:"[^#]+")))?',captures:{1:{name:"keyword.control.negate"},2:{name:"support.type.property-name.json"},3:{name:"keyword.operator.comparison.ts"},4:{name:"string.quoted"}}}}},strings:{patterns:[{begin:"'",end:"'",beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.single",patterns:[{include:"#escapes"}]},{begin:'"',end:'"',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.double",patterns:[{include:"#escapes"}]},{begin:'"""',end:'"""',beginCaptures:{0:{name:"punctuation.definition.string.begin"}},endCaptures:{0:{name:"punctuation.definition.string.end"}},name:"string.quoted.triple"},{begin:"(?i)[r|/]'",end:"'",name:"string.regexp",patterns:[{include:"#regex-escapes"}]}],repository:{escapes:{name:"constant.character.escape",match:"\\\\(u[A-Fa-f0-9]{4}|.)",captures:{0:{name:"constant.character.escape"}}},"regex-escapes":{name:"constant.character.escape",match:"\\\\.",captures:{0:{name:"constant.character.escape"}}}}},numbers:{match:"(?i)(\\b((0|[1-9][0-9]*)(E[+-]?[0-9]+|\\.[0-9]*)?)|\\.[0-9]+)",name:"constant.numeric"},constants:{patterns:[{match:"(?i)\\bnull\\b",name:"constant.language.null"},{match:"(?i)\\btrue\\b",name:"constant.language.true"},{match:"(?i)\\bfalse\\b",name:"constant.language.false"}]},types:{patterns:[{match:"(?i)\\bstring\\b",name:"entity.name.type.string"},{match:"(?i)\\bnumber\\b",name:"entity.name.type.number"},{match:"(?i)\\bdate\\b",name:"entity.name.type.date"},{match:"(?i)\\btimestamp\\b",name:"entity.name.type.timestamp"},{match:"(?i)\\bboolean\\b",name:"entity.name.type.boolean"}]},properties:{patterns:[{match:"(?i)\\baccept\\b",name:"keyword.control.accept"},{match:"(?i)\\bselect\\b",name:"keyword.control.select"},{match:"(?i)\\bconnection\\b",name:"keyword.control.connection"},{match:"(?i)\\brun\\b",name:"keyword.control.run"},{match:"(?i)\\bextend\\b",name:"keyword.control.extend"},{match:"(?i)\\brefine\\b",name:"keyword.control.refine"},{match:"(?i)\\baggregate\\b",name:"keyword.control.aggregate"},{match:"(?i)\\bsample\\b",name:"keyword.control.sample"},{match:"(?i)\\bcalculate\\b",name:"keyword.control.calculate"},{match:"(?i)\\btimezone\\b",name:"keyword.control.timezone"},{match:"(?i)\\bdimension\\b",name:"keyword.control.dimension"},{match:"(?i)\\bexcept\\b",name:"keyword.control.except"},{match:"(?i)\\bsource\\b",name:"keyword.control.source"},{match:"(?i)\\bgroup_by\\b",name:"keyword.control.group_by"},{match:"(?i)\\bhaving\\b",name:"keyword.control.having"},{match:"(?i)\\bindex\\b",name:"keyword.control.index"},{match:"(?i)\\bjoin_one\\b",name:"keyword.control.join_one"},{match:"(?i)\\bwith\\b",name:"keyword.control.with"},{match:"(?i)\\bjoin_many\\b",name:"keyword.control.join_many"},{match:"(?i)\\bjoin_cross\\b",name:"keyword.control.join_cross"},{match:"(?i)\\blimit\\b",name:"keyword.control.limit"},{match:"(?i)\\bmeasure\\b",name:"keyword.control.measure"},{match:"(?i)\\bnest\\b",name:"keyword.control.nest"},{match:"(?i)\\border_by\\b",name:"keyword.control.order_by"},{match:"(?i)\\bpartition_by\\b",name:"keyword.control.partition_by"},{match:"(?i)\\bprimary_key\\b",name:"keyword.control.primary_key"},{match:"(?i)\\bproject\\b",name:"keyword.control.project"},{match:"(?i)\\bquery\\b",name:"keyword.control.query"},{match:"(?i)\\brename\\b",name:"keyword.control.rename"},{match:"(?i)\\btop\\b",name:"keyword.control.top"},{match:"(?i)\\bview\\b",name:"keyword.control.view"},{match:"(?i)\\bwhere\\b",name:"keyword.control.where"},{match:"(?i)\\bdeclare\\b",name:"keyword.control.declare"}]},keywords:{patterns:[{match:"(?i)\\bis\\b",name:"keyword.control.is"},{match:"(?i)\\bon\\b",name:"keyword.control.on"},{match:"(?i)\\bnot\\b",name:"keyword.other.not"},{match:"(?i)\\bor\\b",name:"keyword.other.or"},{match:"(?i)\\bdesc\\b",name:"keyword.control.desc"},{match:"(?i)\\bby\\b",name:"keyword.control.by"},{match:"(?i)\\band\\b",name:"keyword.other.and"},{match:"(?i)\\basc\\b",name:"keyword.control.asc"},{match:"(?i)\\bfor\\b",name:"keyword.other.for"},{match:"(?i)\\belse\\b",name:"keyword.other.else"},{match:"(?i)\\bto\\b",name:"keyword.other.to"},{match:"(?i)\\bwhen\\b",name:"keyword.other.when"},{match:"(?i)\\bpick\\b",name:"keyword.other.pick"},{match:"(?i)\\bimport\\b",name:"keyword.control.import"}]}}},z8={..._c,patterns:[..._c.patterns,{include:"#docvar"}],repository:{..._c.repository,docvar:{patterns:[{match:"\\<\\<[^(\\>\\>)]*\\>\\>",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"markup.italic.markdown"}]}}},V8={name:"Malloy SQL",scopeName:"source.malloy-sql",patterns:[{include:"#malloysql-sql"}],repository:{"malloysql-sql":{beginCaptures:{0:{name:"entity.other.attribute.malloy-sql"},1:{name:"entity.other.attribute.malloy-sql"},3:{name:"comment.line.double-slash"}},name:"meta.embedded.block.malloysql.sql",patterns:[{include:"#comments"},{begin:"%{",end:"}%",beginCaptures:{0:{name:"punctuation.definition.malloy-sql"}},endCaptures:{0:{name:"punctuation.definition.malloy-sql"}},name:"meta.embedded.block.malloy",patterns:[{include:"source.malloy"}]},{include:"source.sql"}]},comments:{patterns:[{begin:"/\\*",end:"\\*/",beginCaptures:{0:{name:"punctuation.definition.comment.begin"}},endCaptures:{0:{name:"punctuation.definition.comment.end"}},name:"comment.block"},{begin:"//",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-slash"},{begin:"--",end:"\\n",beginCaptures:{0:{name:"punctuation.definition.comment"}},name:"comment.line.double-hyphen"}]}}},W8="github-light",q8=O8({engine:ey(Promise.resolve().then(()=>require("./wasm-Dw4u1m6u.cjs.js"))),themes:[U8],langs:[B8,F8,H8,{name:"malloy",scopeName:"source.malloy",embeddedLangs:["sql"],...z8},{name:"malloysql",scopeName:"source.malloy-sql",embeddedLangs:["sql"],...V8}]});async function Ll(e,t){return(await q8).codeToHtml(e,{lang:t,theme:W8})}function Jt(e){const{server:t}=it.useServer(),n={...e,queryKey:[...e.queryKey,t],queryFn:async()=>{try{return await e.queryFn()}catch(r){if(r&&typeof r=="object"&&"response"in r){const o=r;if(o.response?.data){const a=new Error(o.response.data.message||o.message);throw a.status=o.response.status,a.data=o.response.data,a}}throw r}},retry:!1,throwOnError:!1};return $r.useQuery(n,it.globalQueryClient)}function hr(e){const t={...e,mutationFn:async n=>{try{return await e.mutationFn(n)}catch(r){if(r&&typeof r=="object"&&"response"in r){const o=r;if(o.response?.data){const a=new Error(o.response.data.message||o.message);throw a.status=o.response.status,a.data=o.response.data,a}}throw r}},retry:!1,throwOnError:!1};return $r.useMutation(t,it.globalQueryClient)}const Ct=e=>{const t=new URL(e),n={};if(t.protocol!=="publisher:")throw new Error(`Failed to parse resource URI: ${e}`);const r=(t.hostname+t.pathname).split("/");for(let o=0;o<r.length;o+=2){const a=r[o];a==="projects"?n.projectName=decodeURI(r[o+1])||void 0:a==="packages"?n.packageName=decodeURI(r[o+1])||void 0:a==="connections"?n.connectionName=decodeURI(r[o+1])||void 0:a==="models"&&(n.modelPath=decodeURI(r.slice(o+1).join("/"))||void 0)}if(n.versionId=t.searchParams.get("versionId")||void 0,!n.projectName)throw new Error(`Failed to parse resource URI: ${e}`);return n},pi=e=>{if(!e.projectName)throw new Error(`Failed to encode resource URI, missing project name: ${e}`);let t=`publisher://projects/${e.projectName}`;return e.packageName&&(t+=`/packages/${e.packageName}`),e.connectionName&&(t+=`/connections/${e.connectionName}`),e.modelPath&&(t+=`/models/${e.modelPath}`),e.packageName&&e.versionId&&(t+=`?versionId=${e.versionId}`),t};function Zt({error:e,context:t}){const n=e.data?.message||"Unknown Error";return p.jsxs(p.Fragment,{children:[t&&p.jsx(I.Typography,{variant:"body2",sx:{p:"10px",m:"auto"},children:t}),p.jsx("pre",{style:{whiteSpace:"pre-wrap",color:"red",padding:"10px",margin:"auto"},children:n})]})}function Ip({sourceAndPaths:e,selectedSourceIndex:t,existingQuery:n,onQueryChange:r,onSourceChange:o,resourceUri:a}){return W.useEffect(()=>{o&&o(t)},[t,o]),p.jsx(Vd,{children:p.jsxs(ut.Stack,{spacing:2,component:"section",children:[p.jsx(Ay,{sourceAndPath:e[t],existingQuery:n,onChange:s=>{r&&r(s)},resourceUri:a}),p.jsx(ut.Box,{height:"5px"})]})})}function el(){return{query:void 0,malloyQuery:void 0,malloyResult:void 0}}function Y8({sourceAndPath:e,onChange:t,existingQuery:n,explorerComponents:r,QueryBuilder:o,resourceUri:a}){const[s,i]=W.useState(n||el()),[l,u]=W.useState(void 0);W.useEffect(()=>{n&&i(n)},[n]);const[c,d]=W.useState([]),{MalloyExplorerProvider:m,QueryPanel:f,ResizableCollapsiblePanel:h,ResultPanel:b,SourcePanel:g}=r;W.useEffect(()=>{t&&t(s)},[t,s]);const{projectName:x,packageName:E,versionId:C}=Ct(a),{apiClients:T}=it.useServer(),w=hr({mutationFn:()=>{const B=typeof s?.malloyQuery=="string"?s.malloyQuery:new o.ASTQuery({source:e.sourceInfo,query:s?.malloyQuery}).toMalloy();return u({executionState:"running",query:s?.malloyQuery,queryResolutionStartMillis:Date.now(),onCancel:()=>{w.reset(),u(void 0)},response:{result:{}}}),i({...s,query:B}),T.models.executeQueryModel(x,E,e.modelPath,{query:B,sourceName:void 0,queryName:void 0,versionId:C})},onSuccess:B=>{if(B){const P=JSON.parse(B.data.result);i({...s,malloyResult:P}),u(N=>N?{...N,executionState:"finished",response:{result:P}}:void 0)}},onError:B=>{u(void 0),console.error("Query execution error:",B)}}),[S,O]=W.useState(e.sourceInfo.name);W.useEffect(()=>{S!==e.sourceInfo.name&&(O(e.sourceInfo.name),i(el()),u(void 0))},[e,S]);const F=W.useCallback(B=>{i({...s,malloyQuery:B,malloyResult:void 0})},[s]);return S!==e.sourceInfo.name?p.jsx("div",{children:"Loading..."}):p.jsx(A0,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",overflow:"hidden"},children:p.jsx(m,{source:e.sourceInfo,query:s?.malloyQuery,topValues:[],onFocusedNestViewPathChange:d,focusedNestViewPath:c,onQueryChange:F,children:p.jsxs("div",{style:{display:"flex",height:"100%",overflowY:"auto"},children:[p.jsx(h,{isInitiallyExpanded:!0,initialWidth:180,minWidth:180,icon:"database",title:e.sourceInfo.name,children:p.jsx(g,{onRefresh:()=>i(el())})}),p.jsx(h,{isInitiallyExpanded:!0,initialWidth:280,minWidth:280,icon:"filterSliders",title:"Query",children:p.jsx(f,{runQuery:()=>{console.log(`running query with: ${s?.malloyQuery}`);try{w.mutate()}catch(B){console.error("Error running query:",B)}}})}),w.isError&&w.error?p.jsx(ut.Box,{sx:{p:2},children:p.jsx(Zt,{error:w.error,context:"Query execution error"})}):p.jsx(b,{source:e.sourceInfo,draftQuery:s?.malloyQuery,setDraftQuery:B=>i({...s,malloyQuery:B}),submittedQuery:l,options:{showRawQuery:!0}})]})})},e.sourceInfo.name)}function Ay(e){const[t,n]=W.useState(null),[r,o]=W.useState(null),[a,s]=W.useState(!0);return W.useEffect(()=>{let i=!0;return Promise.all([import("@malloydata/malloy-explorer"),import("@malloydata/malloy-query-builder")]).then(([l,u])=>{i&&(n(l),o(u),s(!1))}).catch(l=>{console.error("Failed to load Malloy components:",l),i&&s(!1)}),()=>{i=!1}},[]),a||!t||!r?p.jsx(kv,{children:p.jsx(A0,{children:p.jsx("div",{style:{alignItems:"center",justifyContent:"center",height:"200px",color:"#666"},children:"Loading explorer..."})})}):p.jsx(Y8,{...e,explorerComponents:t,QueryBuilder:r,resourceUri:e.resourceUri})}function on({text:e,size:t=20,color:n="primary",thickness:r=3.6,centered:o=!0,spacing:a=2,textVariant:s="body2"}){const i=p.jsxs(I.Box,{sx:{display:"flex",flexDirection:"column",alignItems:"center",gap:a},children:[p.jsx(I.CircularProgress,{size:t,color:n,thickness:r}),e&&p.jsx(I.Typography,{variant:s,color:"text.secondary",children:e})]});return o?p.jsx(I.Box,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:"200px",width:"100%"},children:i}):i}const G8=W.lazy(()=>Promise.resolve().then(()=>F2));function fi({result:e,maxHeight:t,maxResultSize:n=0}){const r=W.useRef(null),[o,a]=W.useState(t),[s,i]=W.useState(!1);if(!e)return null;if(n>0&&e.length>n&&!s)return p.jsxs(I.Box,{sx:{display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",gap:2,p:4,backgroundColor:"#fafafa",border:"1px solid",borderColor:"#e0e0e0",borderRadius:1},children:[p.jsx(An.Warning,{sx:{fontSize:48,color:"#757575"}}),p.jsx(I.Typography,{variant:"h6",color:"text.secondary",align:"center",children:"Processing large results may cause browser performance issues. Proceed?"}),p.jsx(I.Button,{variant:"contained",color:"primary",onClick:()=>i(!0),children:"Proceed"})]});const u=p.jsx(on,{text:"Loading...",centered:!0,size:32}),c=Math.min(t,o);return p.jsx(I.Box,{ref:r,sx:{position:"relative",height:"auto",border:"0px",borderRadius:0,overflow:"hidden"},children:e&&p.jsx(W.Suspense,{fallback:u,children:p.jsx(G8,{result:e,height:c,onSizeChange:a})})})}function K8({cell:e,sourceAndPaths:t,resourceUri:n,onQueryChange:r,onSourceChange:o}){const a={query:e.value,malloyResult:e.result?JSON.parse(e.result):void 0,malloyQuery:e.queryInfo?JSON.parse(e.queryInfo):void 0},s=t.findIndex(i=>i.sourceInfo.name===e.sourceName);return p.jsx(Ip,{resourceUri:n,sourceAndPaths:t,selectedSourceIndex:s>=0?s:0,existingQuery:a,onQueryChange:r,onSourceChange:o})}function Q8({cell:e,editingMalloy:t,editingMarkdown:n,sourceAndPaths:r,resourceUri:o,onCellChange:a,onClose:s,onEdit:i,onDelete:l,addButtonCallback:u}){const[c,d]=W.useState(e.value),[m,f]=W.useState(!1),[h,b]=W.useState(!1),[g,x]=W.useState(),[E]=W.useState(),[C,T]=W.useState(el()),[w,S]=W.useState(!1),[O,F]=W.useState(e.sourceName?r.findIndex(K=>K.sourceInfo.name===e.sourceName):0);W.useEffect(()=>{e.isMarkdown||Ll(e.value,"malloy").then(K=>{x(K)})},[e]),W.useEffect(()=>{document.documentElement.setAttribute("data-color-mode","light")});const[B,P]=W.useState(!1),N=()=>{l(),P(!1)},v=r.length===0,M=W.useCallback(()=>{const K=r[O],ne=K?.modelPath||e.modelPath||"",L=K?.sourceInfo.name||e.sourceName||"";a({...e,value:e.isMarkdown?c:C.query,result:C.malloyResult?JSON.stringify(C.malloyResult):void 0,queryInfo:C.malloyQuery?JSON.stringify(C.malloyQuery):void 0,sourceName:L,modelPath:ne})},[e,c,C,a,O,r]),A=p.jsx(I.Tooltip,{title:"Delete Cell",children:p.jsx(I.IconButton,{size:"small",onClick:()=>P(!0),children:p.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:p.jsx("path",{d:"M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m2 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6h14zM10 11v6M14 11v6",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"})})})}),D=p.jsxs(I.Dialog,{open:B,onClose:()=>P(!1),children:[p.jsx(I.DialogTitle,{children:"Confirm Delete"}),p.jsx(I.DialogContent,{children:p.jsx(I.Typography,{children:"Are you sure you want to delete this cell?"})}),p.jsxs(I.DialogActions,{children:[p.jsx(I.Button,{onClick:()=>P(!1),children:"Cancel"}),p.jsx(I.Button,{onClick:N,color:"error",children:"Delete"})]})]}),R=()=>{M(),s()},z=e.isMarkdown?p.jsxs(p.Fragment,{children:[n?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):p.jsx(I.Tooltip,{title:"Edit",children:p.jsx(I.IconButton,{size:"small",onClick:i,children:p.jsx(Wf,{})})}),!n&&A]}):p.jsxs(p.Fragment,{children:[!t&&p.jsx(I.Tooltip,{title:m?"Hide Code":"View Code",children:p.jsx(I.IconButton,{size:"small",onClick:()=>{f(!m)},children:p.jsx(D0,{})})}),!t&&e.result&&p.jsx(I.Tooltip,{title:h?"Hide Embedding":"View Embedding",children:p.jsx(I.IconButton,{size:"small",onClick:()=>{b(!h)},children:p.jsx(Wd,{})})}),t&&p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}),!t&&p.jsx(I.Tooltip,{title:"Edit",children:p.jsx(I.IconButton,{size:"small",onClick:i,children:p.jsx(Wf,{})})}),!t&&A]}),U=t||n,j=n?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):t?p.jsx(I.Tooltip,{title:"Save",children:p.jsx(I.IconButton,{size:"small",onClick:R,children:p.jsx(Ti,{})})}):null,_=w&&p.jsx(I.Box,{sx:{position:"absolute",top:"4px",right:"4px",display:"flex",gap:"8px",backgroundColor:"background.paper",border:"1px solid",borderColor:"divider",borderRadius:"8px",padding:"2px 4px",boxShadow:1,zIndex:10},children:!U&&p.jsxs(p.Fragment,{children:[u(!0),u(!1),z]})||j});return p.jsxs(hl,{sx:{position:"relative",marginTop:"5px",marginBottom:"5px",borderWidth:"1.5px",backgroundColor:"#fff",minHeight:"50px"},onMouseEnter:()=>S(!0),onMouseLeave:()=>{S(!1)},children:[_,e.isMarkdown?p.jsx(p.Fragment,{children:n?p.jsx(J1,{value:c,preview:"edit",autoFocus:!0,onChange:K=>{d(K),a({...e,value:K})},onBlur:()=>{M(),w||R()}}):p.jsx(I.Box,{sx:{px:.5,pt:0,mt:0,"& h1, & h2, & h3, & h4, & h5, & h6":{mt:.5,mb:.5},"& p":{mt:.5,mb:.5},"& ul, & ol":{mt:.5,mb:.5},"& li":{mt:0,mb:0},"& pre, & code":{mt:.5,mb:.5},"& blockquote":{mt:.5,mb:.5}},children:e.value?p.jsx(I.Box,{onClick:i,sx:{cursor:"pointer"},children:p.jsx(dl,{children:e.value})}):p.jsxs(I.Box,{onClick:i,sx:{cursor:"pointer"},children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Markdown is empty"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})})}):p.jsxs(p.Fragment,{children:[p.jsx(I.Collapse,{in:h,timeout:"auto",unmountOnExit:!0,children:p.jsx(I.Stack,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:p.jsx(I.Typography,{component:"div",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:E}})})}),p.jsx(I.Collapse,{in:m,timeout:"auto",unmountOnExit:!0,children:p.jsx(I.Stack,{sx:{p:"10px",borderRadius:0,flexDirection:"row",justifyContent:"space-between"},children:p.jsx(I.Typography,{component:"div",className:"content",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},dangerouslySetInnerHTML:{__html:g}})})}),t&&(v?p.jsxs(p.Fragment,{children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"No Model Imports"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Please add a model import above."})]}):p.jsx(K8,{sourceAndPaths:r,resourceUri:o,onQueryChange:K=>{T(K)},onSourceChange:K=>{F(K)},cell:e})),!t&&e.result&&p.jsx(hl,{variant:"outlined",sx:{borderRadius:0},children:p.jsx(fi,{result:e.result,maxHeight:800})}),!t&&!e.result&&p.jsxs(I.Box,{onClick:i,sx:{cursor:"pointer"},children:[p.jsx(I.Typography,{sx:{p:2,textAlign:"center",variant:"subtitle2",fontWeight:"medium"},children:"Explore is empty"}),p.jsx(I.Typography,{sx:{mb:2,textAlign:"center",variant:"body2"},children:"Click to edit."})]})]}),B&&D]})}const Dy=W.createContext(void 0);function X8({children:e,workbookStorage:t}){const n=W.useMemo(()=>({workbookStorage:t}),[t]);return p.jsx(Dy.Provider,{value:n,children:e})}function Ap(){const e=W.useContext(Dy);if(!e)throw new Error("useWorkbookStorage must be used within a WorkbookStorageProvider");return e}const to=rt(p.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),Z8=rt(p.jsx("path",{d:"M18 15v3H6v-3H4v3c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2v-3zM7 9l1.41 1.41L11 7.83V16h2V7.83l2.59 2.58L17 9l-5-5z"}));function J8({initialSelectedModels:e,onModelChange:t,resourceUri:n}){const{projectName:r,packageName:o,versionId:a}=Ct(n),{apiClients:s}=it.useServer(),{data:i,isLoading:l,isSuccess:u,isError:c,error:d}=Jt({queryKey:["models",r,o,a],queryFn:()=>s.models.listModels(r,o,a)}),[m,f]=W.useState(e||[]),[h,b]=W.useState(null);W.useEffect(()=>{f(e||[])},[e]);const g=C=>{const T=m.filter(w=>w!==C);f(T),t(T)},x=C=>{const T=[...m,C];f(T),t(T),b(null)};let E=[];return u&&i?.data&&(E=i.data.filter(C=>!m.includes(C.path)).map(C=>C.path)),c?p.jsx(Zt,{error:d,context:`${r} > ${o} > Model Picker`}):p.jsxs(p.Fragment,{children:[p.jsxs(I.FormControl,{fullWidth:!0,children:[l&&p.jsx(I.Typography,{children:"Loading..."}),p.jsxs(I.Stack,{direction:"row",spacing:1,children:[m.map(C=>p.jsx(I.Chip,{label:C,onDelete:()=>g(C),deleteIcon:p.jsx(to,{}),sx:{marginBottom:"5px"}},C)),p.jsx(I.Button,{size:"small",startIcon:p.jsx(Z8,{}),onClick:C=>b(C.currentTarget),disabled:l||c||E.length===0,children:"Add Model"})]})]}),p.jsxs(I.Menu,{anchorEl:h,open:!!h,onClose:()=>b(null),children:[p.jsx(I.Typography,{variant:"subtitle2",sx:{ml:1},children:"Models"}),p.jsx(I.Divider,{}),E.length===0?p.jsx(I.MenuItem,{disabled:!0,children:"No models available"}):E.map(C=>p.jsx(I.MenuItem,{onClick:()=>x(C),children:p.jsx(I.Typography,{variant:"body2",children:C})},C))]})]})}function Py(){const e=K2.useNavigate();return(t,n)=>{if(!n||!n.metaKey&&!n.ctrlKey&&!n.shiftKey&&n.button!==1){e(t);return}const r=new URL(t,window.location.href).href;(n.metaKey||n.ctrlKey||n.button===1||n.shiftKey)&&window.open(r,"_blank")}}function eM({workbookPath:e,resourceUri:t}){const n=Py(),{server:r,getAccessToken:o}=it.useServer(),{apiClients:a}=it.useServer(),{workbookStorage:s}=Ap(),{projectName:i,packageName:l}=Ct(t),[u,c]=W.useState(void 0),[d,m]=W.useState(void 0);if(!s)throw new Error("Workbook storage be provided via WorkbookStorageProvider");const[f,h]=W.useState(),[b,g]=W.useState(),[x,E]=W.useState(),[C,T]=W.useState([]),[w,S]=W.useState(null),[O,F]=W.useState(null),B=!!w,P=()=>{S(null),F(null)},N=(K,ne)=>{f&&(h(f.insertCell(ne,{isMarkdown:K,value:""})),K?E(ne):g(ne),P(),console.log("handleAddCell",K,ne))},[v,M]=W.useState(!1),A=()=>{M(!0)},D=async()=>{e&&s&&await s.deleteWorkbook(e).then(()=>{m(void 0),c(void 0)}).catch(K=>{m(`Error deleting workbook: ${K.message}`),c(void 0)}),M(!1),n(`/${i}/${l}`)},R=()=>{M(!1)},z=W.useCallback(async()=>{if(!f){console.log("No workbook data ref");return}try{h(await f.saveWorkbook()),m(void 0),c("Workbook saved")}catch(K){m(`Error saving workbook: ${K.message}`),c(void 0)}},[f]);if(W.useEffect(()=>{if(!f)return;(async()=>{const ne=new Map(C.map(({modelPath:X,sourceInfos:q})=>[X,q])),L=[],fe=[];for(const X of f.getModels())ne.has(X)?L.push({modelPath:X,sourceInfos:ne.get(X)}):(console.log("Fetching model from Publisher",X),fe.push(a.models.getModel(i,l,X,void 0).then(q=>({modelPath:X,sourceInfos:q.data.sourceInfos.map(te=>JSON.parse(te))}))));if(fe.length>0){const X=await Promise.all(fe);T([...L,...X])}else T(L)})()},[o,f,l,i,r]),W.useEffect(()=>{e&&ua.loadWorkbook(s,e).then(K=>{h(K)})},[e,s]),!f)return p.jsx("div",{children:"Loading..."});const U=K=>{const ne=[];for(const L of K)for(const fe of L.sourceInfos)ne.push({modelPath:L.modelPath,sourceInfo:fe});return ne},j=(K,ne)=>p.jsx(I.Button,{size:"small",startIcon:p.jsx(vv,{}),onClick:()=>N(K,ne),variant:"contained",sx:{backgroundColor:"#fff",color:L=>L.palette.mode==="dark"?L.palette.grey[100]:L.palette.grey[700],boxShadow:"none","&:hover":{backgroundColor:L=>L.palette.mode==="dark"?L.palette.grey[500]:L.palette.grey[300],boxShadow:"none"}},children:K?"Markdown":"Explore"}),_=p.jsxs(I.Box,{sx:{display:"flex",gap:1,justifyContent:"center",flex:2},children:[j(!1,f.getCells().length),j(!0,f.getCells().length)]});return p.jsxs(hl,{variant:"outlined",children:[p.jsxs(I0,{children:[p.jsx(I.Box,{sx:{mb:2},children:p.jsx(I.Box,{sx:{minHeight:"24px"},children:d?p.jsx(I.Typography,{color:"error",variant:"body2",children:d}):u?p.jsx(I.Typography,{color:"success",variant:"body2",children:u}):p.jsx("span",{children:" "})})}),p.jsxs(Qo,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"center"},children:[p.jsxs(Qo,{direction:"row",spacing:1,alignItems:"center",children:[p.jsx(I.Typography,{variant:"overline",sx:{fontSize:"13px",fontWeight:"bold",verticalAlign:"middle"},children:"Workbook"}),p.jsx(I.Typography,{variant:"subtitle2",sx:{fontSize:"13px",fontWeight:"normal",verticalAlign:"middle",ml:1},children:`${e.workspace} > ${e.path}`})]}),p.jsxs(Qo,{sx:{display:"flex",flexDirection:"row",gap:1},children:[p.jsx(I.Box,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:p.jsx(tM,{workbookData:f})}),p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",mt:1,mb:1},children:[p.jsx(I.Button,{color:"error",onClick:A,size:"small",children:"Delete"}),p.jsxs(I.Dialog,{open:v,onClose:R,children:[p.jsx(I.DialogTitle,{children:"Delete Workbook"}),p.jsx(I.DialogContent,{children:p.jsxs(I.DialogContentText,{children:['Are you sure you want to delete the workbook "',e.path,'"? This action cannot be undone.']})}),p.jsxs(I.DialogActions,{children:[p.jsx(I.Button,{onClick:R,color:"primary",size:"small",children:"Cancel"}),p.jsx(I.Button,{onClick:D,color:"error",autoFocus:!0,size:"small",children:"Delete"})]})]})]})]})]}),p.jsx(I.Divider,{}),p.jsxs(Qo,{sx:{display:"flex",flexDirection:"row",width:"100%",mt:2},children:[p.jsx(I.Box,{sx:{flex:1},children:p.jsx(J8,{initialSelectedModels:f.getModels(),onModelChange:K=>{h(f.setModels(K)),z()},resourceUri:t})}),p.jsx(I.Box,{sx:{flex:1}})]})]}),p.jsx(Vd,{children:p.jsxs(Qo,{children:[f.getCells().length===0&&p.jsxs(p.Fragment,{children:[p.jsx(I.Typography,{sx:{textAlign:"center",p:2,variant:"subtitle2",fontWeight:"medium"},children:"Workbook is empty"}),p.jsx(I.Typography,{variant:"body2",sx:{textAlign:"center",mb:2,variant:"body2"},children:"Click the + buttons to add a markdown or code cell."})]}),f.getCells().map((K,ne)=>p.jsx(W.Fragment,{children:p.jsx(Q8,{cell:K,resourceUri:t,addButtonCallback:L=>j(L,ne),sourceAndPaths:U(C),editingMarkdown:x===ne,editingMalloy:b===ne,onDelete:()=>{h(f.deleteCell(ne)),z()},onCellChange:L=>{h(f.setCell(ne,L))},onEdit:()=>{K.isMarkdown?E(ne):g(ne)},onClose:()=>{K.isMarkdown?E(void 0):g(void 0),z()}},`${ne}-${K.isMarkdown}-${e.workspace}-${e.path}`)},`${ne}-${f.getCells().length}`)),_,p.jsxs(I.Menu,{anchorEl:w,open:B,onClose:P,anchorOrigin:{vertical:"bottom",horizontal:"right"},transformOrigin:{vertical:"top",horizontal:"right"},children:[p.jsx(I.MenuItem,{onClick:()=>N(!0,O??0),children:"Add Markdown"}),p.jsx(I.MenuItem,{onClick:()=>N(!1,O??0),children:"Add Malloy"})]}),p.jsx(Qo,{sx:{flexDirection:"row",justifyContent:"flex-end",p:1}})]})})]})}function tM({workbookData:e}){const[t,n]=W.useState(!1),r=async()=>{if(!e)return;const o=e.toMalloyWorkbook();try{await navigator.clipboard.writeText(o),n(!0),setTimeout(()=>n(!1),1500)}catch{n(!1),alert("Failed to copy to clipboard")}};return p.jsx(I.Button,{color:"primary",onClick:r,size:"small",children:t?"Copied!":"Export"})}function Ry({onWorkbookClick:e}){const{workbookStorage:t}=Ap(),[n,r]=W.useState([]),[o,a]=W.useState(void 0);return W.useEffect(()=>{t&&t.listWorkspaces(!1).then(s=>{const i=[];Promise.all(s.map(async l=>{await t.listWorkbooks(l).then(u=>{i.push(...u)}).catch(u=>{a(`Error listing workbooks: ${u.message}`)})})).then(()=>{r(i),a(void 0)})})},[t]),p.jsxs(p.Fragment,{children:[o&&p.jsx(I.Box,{sx:{mb:2},children:p.jsx(I.Typography,{color:"error",variant:"body2",children:o})}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{maxHeight:"300px",overflow:"auto","&::-webkit-scrollbar":{width:"8px"},"&::-webkit-scrollbar-track":{background:"transparent"},"&::-webkit-scrollbar-thumb":{background:"rgba(0,0,0,0.2)",borderRadius:"4px"}},children:p.jsxs(I.List,{dense:!0,children:[n.length===0&&p.jsx(I.ListItem,{children:p.jsx(I.ListItemText,{primary:"No workbooks found.",sx:{textAlign:"center"}})}),n.map(s=>p.jsx(I.ListItem,{onClick:i=>e(s,i),sx:{cursor:"pointer","&:hover":{backgroundColor:"action.hover"}},children:p.jsx(I.ListItemText,{primary:s.path})},s.path))]})})]})}const jh="Local";class nM{async listWorkspaces(t){return Promise.resolve([{name:jh,description:"Stored locally- only accessible to this browser",writeable:!0}])}async listWorkbooks(t){const n=[];for(let r=0;r<localStorage.length;r++){const o=localStorage.key(r);n.push({path:o,workspace:jh})}return n}async getWorkbook(t){const n=localStorage.getItem(t.path);if(n===null)throw new Error(`Notebook not found at path: ${t}`);return n}async deleteWorkbook(t){if(localStorage.getItem(t.path)===null)throw new Error(`Notebook not found at path: ${t}`);localStorage.removeItem(t.path)}async saveWorkbook(t,n){localStorage.setItem(t.path,n)}async moveWorkbook(t,n){const r=localStorage.getItem(t.path);if(r===null)throw new Error(`Notebook not found at path: ${t.path}`);localStorage.setItem(n.path,r),localStorage.removeItem(t.path)}}function rM({onWorkbookSelect:e}){const{workbookStorage:t}=Ap(),[n,r]=W.useState(""),[o,a]=W.useState(""),[s,i]=W.useState([]),[l,u]=W.useState(null),[c,d]=W.useState(!1),[m,f]=W.useState(!1),h=!!l,b=S=>{u(S.currentTarget)},g=()=>{u(null)},x=()=>{f(!1)},E=()=>{d(!1),r(""),a("")};W.useEffect(()=>{t&&(console.log("fetching workspaces"),t.listWorkspaces(!0).then(S=>{i(S),S.length===1&&a(S[0].name)}).catch(S=>{console.error("Error fetching workspaces:",S),i([])}))},[t]);const C=(S,O)=>{f(!1),e(S,O)},T=S=>{d(!1),e({path:n,workspace:o},S),r(""),a("")},w=s.length===0;return p.jsxs(p.Fragment,{children:[p.jsx(I.Button,{"aria-controls":h?"basic-menu":void 0,"aria-haspopup":"true","aria-expanded":h?"true":void 0,onClick:b,variant:"contained",sx:{height:"40px",px:2,backgroundColor:"#fbbb04","&:hover":{backgroundColor:"#eab308"}},children:"Analyze Package"}),p.jsxs(I.Menu,{id:"basic-menu",anchorEl:l,open:h,onClose:g,MenuListProps:{"aria-labelledby":"basic-button",sx:{py:.5}},children:[p.jsxs(I.MenuItem,{onClick:()=>{d(!0),g()},sx:{py:1,px:2},disabled:w,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Add,{fontSize:"small"})}),p.jsxs(I.ListItemText,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:"New Workbook"}),w?p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"No workspaces available"}):p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"Create a new analysis workbook"})]})]}),p.jsxs(I.MenuItem,{onClick:()=>{f(!0),g()},sx:{py:1,px:2},children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Launch,{fontSize:"small"})}),p.jsxs(I.ListItemText,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:"Open Workbook"}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:"Open an existing workbook"})]})]})]}),p.jsxs(I.Dialog,{open:c,onClose:E,maxWidth:"sm",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{pb:1,pt:2,px:2},children:[p.jsx(I.Typography,{fontWeight:600,sx:{fontSize:"1.5rem",mb:.5},children:"Create New Workbook"}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Start a new analysis workbook to explore your data"})]}),p.jsx(I.DialogContent,{sx:{px:2,pb:2},children:p.jsxs(I.Stack,{spacing:2,sx:{mt:1},children:[s.length>1?p.jsxs(I.FormControl,{fullWidth:!0,size:"small",children:[p.jsx(I.InputLabel,{children:"Workspace"}),p.jsx(I.Select,{value:o,label:"Workspace",onChange:S=>a(S.target.value),children:s.map(S=>p.jsx(I.MenuItem,{value:S.name,children:p.jsxs(I.Box,{children:[p.jsx(I.Typography,{variant:"body2",fontWeight:500,children:S.name}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:S.description})]})},S.name))})]}):s.length===1?p.jsxs(I.Box,{sx:{p:2,border:1,borderColor:"divider",borderRadius:1,backgroundColor:"grey.50"},children:[p.jsxs(I.Typography,{variant:"body2",fontWeight:500,gutterBottom:!0,children:["Workspace: ",s[0].name]}),p.jsx(I.Typography,{variant:"caption",color:"text.secondary",children:s[0].description})]}):null,p.jsx(I.FormControl,{fullWidth:!0,children:p.jsx(I.TextField,{label:"Workbook Name",value:n,onChange:S=>r(S.target.value),placeholder:"Enter workbook name...",fullWidth:!0,autoFocus:!0,size:"small"})}),p.jsxs(I.Stack,{direction:"row",spacing:1,justifyContent:"flex-end",children:[p.jsx(I.Button,{onClick:E,variant:"outlined",size:"small",children:"Cancel"}),p.jsx(I.Button,{onClick:S=>T(S),variant:"contained",disabled:!n.trim()||s.length>1&&!o,size:"small",children:"Create Workbook"})]})]})})]}),p.jsxs(I.Dialog,{open:m,onClose:x,maxWidth:"md",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{pb:1,pt:2,px:2},children:[p.jsx(I.Typography,{fontWeight:600,sx:{mb:.5,fontSize:"1.5rem"},children:"Open Workbook"}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Select an existing workbook to continue your analysis"})]}),p.jsx(I.DialogContent,{sx:{px:2,pb:2},children:p.jsx(Ry,{onWorkbookClick:C})})]})]})}const oM=e=>{const t=k.useRef({});return k.useEffect(()=>{t.current=e}),t.current};function Hh({array1:e,array2:t,parser:n=r=>r}){return e&&t&&e.length===t.length&&e.every((r,o)=>n(r)===n(t[o]))}function Uh(e){return e.normalize("NFD").replace(/[\u0300-\u036f]/g,"")}function aM(e={}){const{ignoreAccents:t=!0,ignoreCase:n=!0,limit:r,matchFrom:o="any",stringify:a,trim:s=!1}=e;return(i,{inputValue:l,getOptionLabel:u})=>{let c=s?l.trim():l;n&&(c=c.toLowerCase()),t&&(c=Uh(c));const d=c?i.filter(m=>{let f=(a||u)(m);return n&&(f=f.toLowerCase()),t&&(f=Uh(f)),o==="start"?f.startsWith(c):f.includes(c)}):i;return typeof r=="number"?d.slice(0,r):d}}const sM=aM(),zh=5,iM=e=>e.current!==null&&e.current.parentElement?.contains(document.activeElement),lM=[];function Vh(e,t,n,r){if(t||e==null||r)return"";const o=n(e);return typeof o=="string"?o:""}function uM(e){const{unstable_isActiveElementInListbox:t=iM,unstable_classNamePrefix:n="Mui",autoComplete:r=!1,autoHighlight:o=!1,autoSelect:a=!1,blurOnSelect:s=!1,clearOnBlur:i=!e.freeSolo,clearOnEscape:l=!1,componentName:u="useAutocomplete",defaultValue:c=e.multiple?lM:null,disableClearable:d=!1,disableCloseOnSelect:m=!1,disabled:f,disabledItemsFocusable:h=!1,disableListWrap:b=!1,filterOptions:g=sM,filterSelectedOptions:x=!1,freeSolo:E=!1,getOptionDisabled:C,getOptionKey:T,getOptionLabel:w=ge=>ge.label??ge,groupBy:S,handleHomeEndKeys:O=!e.freeSolo,id:F,includeInputInList:B=!1,inputValue:P,isOptionEqualToValue:N=(ge,he)=>ge===he,multiple:v=!1,onChange:M,onClose:A,onHighlightChange:D,onInputChange:R,onOpen:z,open:U,openOnFocus:j=!1,options:_,readOnly:K=!1,renderValue:ne,selectOnFocus:L=!e.freeSolo,value:fe}=e,X=nr(F);let q=w;q=ge=>{const he=w(ge);return typeof he!="string"?String(he):he};const te=k.useRef(!1),Z=k.useRef(!0),re=k.useRef(null),Q=k.useRef(null),[G,se]=k.useState(null),[J,ee]=k.useState(-1),xe=o?0:-1,de=k.useRef(xe),be=k.useRef(Vh(c??fe,v,q)).current,[le,Pe]=_n({controlled:fe,default:c,name:u}),[Te,ze]=_n({controlled:P,default:be,name:u,state:"inputValue"}),[we,Et]=k.useState(!1),st=k.useCallback((ge,he,Oe)=>{if(!(v?le.length<he.length:he!==null)&&!i)return;const Ye=Vh(he,v,q,ne);Te!==Ye&&(ze(Ye),R&&R(ge,Ye,Oe))},[q,Te,v,R,ze,i,le,ne]),[qe,ue]=_n({controlled:U,default:!1,name:u,state:"open"}),[Ee,Me]=k.useState(!0),He=!v&&le!=null&&Te===q(le),Be=qe&&!K,Ne=Be?g(_.filter(ge=>!(x&&(v?le:[le]).some(he=>he!==null&&N(ge,he)))),{inputValue:He&&Ee?"":Te,getOptionLabel:q}):[],Ze=oM({filteredOptions:Ne,value:le,inputValue:Te});k.useEffect(()=>{const ge=le!==Ze.value;we&&!ge||E&&!ge||st(null,le,"reset")},[le,st,we,Ze.value,E]);const ht=qe&&Ne.length>0&&!K,pt=Ae(ge=>{if(ge===-1)re.current.focus();else{const he=ne?"data-item-index":"data-tag-index";G.querySelector(`[${he}="${ge}"]`).focus()}});k.useEffect(()=>{v&&J>le.length-1&&(ee(-1),pt(-1))},[le,v,J,pt]);function ie(ge,he){if(!Q.current||ge<0||ge>=Ne.length)return-1;let Oe=ge;for(;;){const Ve=Q.current.querySelector(`[data-option-index="${Oe}"]`),Ye=h?!1:!Ve||Ve.disabled||Ve.getAttribute("aria-disabled")==="true";if(Ve&&Ve.hasAttribute("tabindex")&&!Ye)return Oe;if(he==="next"?Oe=(Oe+1)%Ne.length:Oe=(Oe-1+Ne.length)%Ne.length,Oe===ge)return-1}}const ye=Ae(({event:ge,index:he,reason:Oe})=>{if(de.current=he,he===-1?re.current.removeAttribute("aria-activedescendant"):re.current.setAttribute("aria-activedescendant",`${X}-option-${he}`),D&&["mouse","keyboard","touch"].includes(Oe)&&D(ge,he===-1?null:Ne[he],Oe),!Q.current)return;const Ve=Q.current.querySelector(`[role="option"].${n}-focused`);Ve&&(Ve.classList.remove(`${n}-focused`),Ve.classList.remove(`${n}-focusVisible`));let Ye=Q.current;if(Q.current.getAttribute("role")!=="listbox"&&(Ye=Q.current.parentElement.querySelector('[role="listbox"]')),!Ye)return;if(he===-1){Ye.scrollTop=0;return}const Yt=Q.current.querySelector(`[data-option-index="${he}"]`);if(Yt&&(Yt.classList.add(`${n}-focused`),Oe==="keyboard"&&Yt.classList.add(`${n}-focusVisible`),Ye.scrollHeight>Ye.clientHeight&&Oe!=="mouse"&&Oe!=="touch")){const Ot=Yt,Zn=Ye.clientHeight+Ye.scrollTop,Ei=Ot.offsetTop+Ot.offsetHeight;Ei>Zn?Ye.scrollTop=Ei-Ye.clientHeight:Ot.offsetTop-Ot.offsetHeight*(S?1.3:0)<Ye.scrollTop&&(Ye.scrollTop=Ot.offsetTop-Ot.offsetHeight*(S?1.3:0))}}),ve=Ae(({event:ge,diff:he,direction:Oe="next",reason:Ve})=>{if(!Be)return;const Yt=ie((()=>{const Ot=Ne.length-1;if(he==="reset")return xe;if(he==="start")return 0;if(he==="end")return Ot;const Zn=de.current+he;return Zn<0?Zn===-1&&B?-1:b&&de.current!==-1||Math.abs(he)>1?0:Ot:Zn>Ot?Zn===Ot+1&&B?-1:b||Math.abs(he)>1?Ot:0:Zn})(),Oe);if(ye({index:Yt,reason:Ve,event:ge}),r&&he!=="reset")if(Yt===-1)re.current.value=Te;else{const Ot=q(Ne[Yt]);re.current.value=Ot,Ot.toLowerCase().indexOf(Te.toLowerCase())===0&&Te.length>0&&re.current.setSelectionRange(Te.length,Ot.length)}}),$e=!Hh({array1:Ze.filteredOptions,array2:Ne,parser:q}),We=()=>{const ge=(he,Oe)=>{const Ve=he?q(he):"",Ye=Oe?q(Oe):"";return Ve===Ye};if(de.current!==-1&&!Hh({array1:Ze.filteredOptions,array2:Ne,parser:q})&&Ze.inputValue===Te&&(v?le.length===Ze.value.length&&Ze.value.every((he,Oe)=>q(le[Oe])===q(he)):ge(Ze.value,le))){const he=Ze.filteredOptions[de.current];if(he)return Ne.findIndex(Oe=>q(Oe)===q(he))}return-1},kt=k.useCallback(()=>{if(!Be)return;const ge=We();if(ge!==-1){de.current=ge;return}const he=v?le[0]:le;if(Ne.length===0||he==null){ve({diff:"reset"});return}if(Q.current){if(he!=null){const Oe=Ne[de.current];if(v&&Oe&&le.findIndex(Ye=>N(Oe,Ye))!==-1)return;const Ve=Ne.findIndex(Ye=>N(Ye,he));Ve===-1?ve({diff:"reset"}):ye({index:Ve});return}if(de.current>=Ne.length-1){ye({index:Ne.length-1});return}ye({index:de.current})}},[Ne.length,v?!1:le,x,ve,ye,Be,Te,v]),Pt=Ae(ge=>{Wc(Q,ge),ge&&kt()});k.useEffect(()=>{$e&&kt()},[kt,$e]);const bt=ge=>{qe||(ue(!0),Me(!0),z&&z(ge))},Ht=(ge,he)=>{qe&&(ue(!1),A&&A(ge,he))},Pn=(ge,he,Oe,Ve)=>{if(v){if(le.length===he.length&&le.every((Ye,Yt)=>Ye===he[Yt]))return}else if(le===he)return;M&&M(ge,he,Oe,Ve),Pe(he)},wt=k.useRef(!1),en=(ge,he,Oe="selectOption",Ve="options")=>{let Ye=Oe,Yt=he;if(v){Yt=Array.isArray(le)?le.slice():[];const Ot=Yt.findIndex(Zn=>N(he,Zn));Ot===-1?Yt.push(he):Ve!=="freeSolo"&&(Yt.splice(Ot,1),Ye="removeOption")}st(ge,Yt,Ye),Pn(ge,Yt,Ye,{option:he}),!m&&(!ge||!ge.ctrlKey&&!ge.metaKey)&&Ht(ge,Ye),(s===!0||s==="touch"&&wt.current||s==="mouse"&&!wt.current)&&re.current.blur()};function wr(ge,he){if(ge===-1)return-1;let Oe=ge;for(;;){if(he==="next"&&Oe===le.length||he==="previous"&&Oe===-1)return-1;const Ve=ne?"data-item-index":"data-tag-index",Ye=G.querySelector(`[${Ve}="${Oe}"]`);if(!Ye||!Ye.hasAttribute("tabindex")||Ye.disabled||Ye.getAttribute("aria-disabled")==="true")Oe+=he==="next"?1:-1;else return Oe}}const Rn=(ge,he)=>{if(!v)return;Te===""&&Ht(ge,"toggleInput");let Oe=J;J===-1?Te===""&&he==="previous"&&(Oe=le.length-1):(Oe+=he==="next"?1:-1,Oe<0&&(Oe=0),Oe===le.length&&(Oe=-1)),Oe=wr(Oe,he),ee(Oe),pt(Oe)},io=ge=>{te.current=!0,ze(""),R&&R(ge,"","clear"),Pn(ge,v?[]:null,"clear")},Xn=ge=>he=>{if(ge.onKeyDown&&ge.onKeyDown(he),!he.defaultMuiPrevented&&(J!==-1&&!["ArrowLeft","ArrowRight"].includes(he.key)&&(ee(-1),pt(-1)),he.which!==229))switch(he.key){case"Home":Be&&O&&(he.preventDefault(),ve({diff:"start",direction:"next",reason:"keyboard",event:he}));break;case"End":Be&&O&&(he.preventDefault(),ve({diff:"end",direction:"previous",reason:"keyboard",event:he}));break;case"PageUp":he.preventDefault(),ve({diff:-zh,direction:"previous",reason:"keyboard",event:he}),bt(he);break;case"PageDown":he.preventDefault(),ve({diff:zh,direction:"next",reason:"keyboard",event:he}),bt(he);break;case"ArrowDown":he.preventDefault(),ve({diff:1,direction:"next",reason:"keyboard",event:he}),bt(he);break;case"ArrowUp":he.preventDefault(),ve({diff:-1,direction:"previous",reason:"keyboard",event:he}),bt(he);break;case"ArrowLeft":!v&&ne?pt(0):Rn(he,"previous");break;case"ArrowRight":!v&&ne?pt(-1):Rn(he,"next");break;case"Enter":if(de.current!==-1&&Be){const Oe=Ne[de.current],Ve=C?C(Oe):!1;if(he.preventDefault(),Ve)return;en(he,Oe,"selectOption"),r&&re.current.setSelectionRange(re.current.value.length,re.current.value.length)}else E&&Te!==""&&He===!1&&(v&&he.preventDefault(),en(he,Te,"createOption","freeSolo"));break;case"Escape":Be?(he.preventDefault(),he.stopPropagation(),Ht(he,"escape")):l&&(Te!==""||v&&le.length>0||ne)&&(he.preventDefault(),he.stopPropagation(),io(he));break;case"Backspace":if(v&&!K&&Te===""&&le.length>0){const Oe=J===-1?le.length-1:J,Ve=le.slice();Ve.splice(Oe,1),Pn(he,Ve,"removeOption",{option:le[Oe]})}!v&&ne&&!K&&(Pe(null),pt(-1));break;case"Delete":if(v&&!K&&Te===""&&le.length>0&&J!==-1){const Oe=J,Ve=le.slice();Ve.splice(Oe,1),Pn(he,Ve,"removeOption",{option:le[Oe]})}!v&&ne&&!K&&(Pe(null),pt(-1));break}},_r=ge=>{Et(!0),j&&!te.current&&bt(ge)},Vo=ge=>{if(t(Q)){re.current.focus();return}Et(!1),Z.current=!0,te.current=!1,a&&de.current!==-1&&Be?en(ge,Ne[de.current],"blur"):a&&E&&Te!==""?en(ge,Te,"blur","freeSolo"):i&&st(ge,le,"blur"),Ht(ge,"blur")},za=ge=>{const he=ge.target.value;Te!==he&&(ze(he),Me(!1),R&&R(ge,he,"input")),he===""?!d&&!v&&Pn(ge,null,"clear"):bt(ge)},Nu=ge=>{const he=Number(ge.currentTarget.getAttribute("data-option-index"));de.current!==he&&ye({event:ge,index:he,reason:"mouse"})},Ou=ge=>{ye({event:ge,index:Number(ge.currentTarget.getAttribute("data-option-index")),reason:"touch"}),wt.current=!0},Lu=ge=>{const he=Number(ge.currentTarget.getAttribute("data-option-index"));en(ge,Ne[he],"selectOption"),wt.current=!1},Fu=ge=>he=>{const Oe=le.slice();Oe.splice(ge,1),Pn(he,Oe,"removeOption",{option:le[ge]})},Va=ge=>{Pn(ge,null,"removeOption",{option:le})},Ut=ge=>{qe?Ht(ge,"toggleInput"):bt(ge)},qt=ge=>{ge.currentTarget.contains(ge.target)&&ge.target.getAttribute("id")!==X&&ge.preventDefault()},zr=ge=>{ge.currentTarget.contains(ge.target)&&(re.current.focus(),L&&Z.current&&re.current.selectionEnd-re.current.selectionStart===0&&re.current.select(),Z.current=!1)},$u=ge=>{!f&&(Te===""||!qe)&&Ut(ge)};let Wa=E&&Te.length>0;Wa=Wa||(v?le.length>0:le!==null);let Ci=Ne;return S&&(Ci=Ne.reduce((ge,he,Oe)=>{const Ve=S(he);return ge.length>0&&ge[ge.length-1].group===Ve?ge[ge.length-1].options.push(he):ge.push({key:Oe,index:Oe,group:Ve,options:[he]}),ge},[])),f&&we&&Vo(),{getRootProps:(ge={})=>({...ge,onKeyDown:Xn(ge),onMouseDown:qt,onClick:zr}),getInputLabelProps:()=>({id:`${X}-label`,htmlFor:X}),getInputProps:()=>({id:X,value:Te,onBlur:Vo,onFocus:_r,onChange:za,onMouseDown:$u,"aria-activedescendant":Be?"":null,"aria-autocomplete":r?"both":"list","aria-controls":ht?`${X}-listbox`:void 0,"aria-expanded":ht,autoComplete:"off",ref:re,autoCapitalize:"none",spellCheck:"false",role:"combobox",disabled:f}),getClearProps:()=>({tabIndex:-1,type:"button",onClick:io}),getItemProps:({index:ge=0}={})=>({...v&&{key:ge},...ne?{"data-item-index":ge}:{"data-tag-index":ge},tabIndex:-1,...!K&&{onDelete:v?Fu(ge):Va}}),getPopupIndicatorProps:()=>({tabIndex:-1,type:"button",onClick:Ut}),getTagProps:({index:ge})=>({key:ge,"data-tag-index":ge,tabIndex:-1,...!K&&{onDelete:Fu(ge)}}),getListboxProps:()=>({role:"listbox",id:`${X}-listbox`,"aria-labelledby":`${X}-label`,ref:Pt,onMouseDown:ge=>{ge.preventDefault()}}),getOptionProps:({index:ge,option:he})=>{const Oe=(v?le:[le]).some(Ye=>Ye!=null&&N(he,Ye)),Ve=C?C(he):!1;return{key:T?.(he)??q(he),tabIndex:-1,role:"option",id:`${X}-option-${ge}`,onMouseMove:Nu,onClick:Lu,onTouchStart:Ou,"data-option-index":ge,"aria-disabled":Ve,"aria-selected":Oe}},id:X,inputValue:Te,value:le,dirty:Wa,expanded:Be&&G,popupOpen:Be,focused:we||J!==-1,anchorEl:G,setAnchorEl:se,focusedItem:J,focusedTag:J,groupedOptions:Ci}}const My=ce.oneOfType([ce.func,ce.object]);var bn="top",zn="bottom",Vn="right",yn="left",Dp="auto",mi=[bn,zn,Vn,yn],va="start",qs="end",cM="clippingParents",Ny="viewport",rs="popper",dM="reference",Wh=mi.reduce(function(e,t){return e.concat([t+"-"+va,t+"-"+qs])},[]),Oy=[].concat(mi,[Dp]).reduce(function(e,t){return e.concat([t,t+"-"+va,t+"-"+qs])},[]),pM="beforeRead",fM="read",mM="afterRead",hM="beforeMain",gM="main",bM="afterMain",yM="beforeWrite",xM="write",CM="afterWrite",EM=[pM,fM,mM,hM,gM,bM,yM,xM,CM];function br(e){return e?(e.nodeName||"").toLowerCase():null}function Dn(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Mo(e){var t=Dn(e).Element;return e instanceof t||e instanceof Element}function Hn(e){var t=Dn(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Pp(e){if(typeof ShadowRoot>"u")return!1;var t=Dn(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function vM(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},o=t.attributes[n]||{},a=t.elements[n];!Hn(a)||!br(a)||(Object.assign(a.style,r),Object.keys(o).forEach(function(s){var i=o[s];i===!1?a.removeAttribute(s):a.setAttribute(s,i===!0?"":i)}))})}function TM(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var o=t.elements[r],a=t.attributes[r]||{},s=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=s.reduce(function(l,u){return l[u]="",l},{});!Hn(o)||!br(o)||(Object.assign(o.style,i),Object.keys(a).forEach(function(l){o.removeAttribute(l)}))})}}const SM={name:"applyStyles",enabled:!0,phase:"write",fn:vM,effect:TM,requires:["computeStyles"]};function gr(e){return e.split("-")[0]}var _o=Math.max,Fl=Math.min,Ta=Math.round;function Td(){var e=navigator.userAgentData;return e!=null&&e.brands&&Array.isArray(e.brands)?e.brands.map(function(t){return t.brand+"/"+t.version}).join(" "):navigator.userAgent}function Ly(){return!/^((?!chrome|android).)*safari/i.test(Td())}function Sa(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!1);var r=e.getBoundingClientRect(),o=1,a=1;t&&Hn(e)&&(o=e.offsetWidth>0&&Ta(r.width)/e.offsetWidth||1,a=e.offsetHeight>0&&Ta(r.height)/e.offsetHeight||1);var s=Mo(e)?Dn(e):window,i=s.visualViewport,l=!Ly()&&n,u=(r.left+(l&&i?i.offsetLeft:0))/o,c=(r.top+(l&&i?i.offsetTop:0))/a,d=r.width/o,m=r.height/a;return{width:d,height:m,top:c,right:u+d,bottom:c+m,left:u,x:u,y:c}}function Rp(e){var t=Sa(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function Fy(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Pp(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function Fr(e){return Dn(e).getComputedStyle(e)}function kM(e){return["table","td","th"].indexOf(br(e))>=0}function so(e){return((Mo(e)?e.ownerDocument:e.document)||window.document).documentElement}function Cu(e){return br(e)==="html"?e:e.assignedSlot||e.parentNode||(Pp(e)?e.host:null)||so(e)}function qh(e){return!Hn(e)||Fr(e).position==="fixed"?null:e.offsetParent}function wM(e){var t=/firefox/i.test(Td()),n=/Trident/i.test(Td());if(n&&Hn(e)){var r=Fr(e);if(r.position==="fixed")return null}var o=Cu(e);for(Pp(o)&&(o=o.host);Hn(o)&&["html","body"].indexOf(br(o))<0;){var a=Fr(o);if(a.transform!=="none"||a.perspective!=="none"||a.contain==="paint"||["transform","perspective"].indexOf(a.willChange)!==-1||t&&a.willChange==="filter"||t&&a.filter&&a.filter!=="none")return o;o=o.parentNode}return null}function hi(e){for(var t=Dn(e),n=qh(e);n&&kM(n)&&Fr(n).position==="static";)n=qh(n);return n&&(br(n)==="html"||br(n)==="body"&&Fr(n).position==="static")?t:n||wM(e)||t}function Mp(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function Ds(e,t,n){return _o(e,Fl(t,n))}function _M(e,t,n){var r=Ds(e,t,n);return r>n?n:r}function $y(){return{top:0,right:0,bottom:0,left:0}}function By(e){return Object.assign({},$y(),e)}function jy(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var IM=function(t,n){return t=typeof t=="function"?t(Object.assign({},n.rects,{placement:n.placement})):t,By(typeof t!="number"?t:jy(t,mi))};function AM(e){var t,n=e.state,r=e.name,o=e.options,a=n.elements.arrow,s=n.modifiersData.popperOffsets,i=gr(n.placement),l=Mp(i),u=[yn,Vn].indexOf(i)>=0,c=u?"height":"width";if(!(!a||!s)){var d=IM(o.padding,n),m=Rp(a),f=l==="y"?bn:yn,h=l==="y"?zn:Vn,b=n.rects.reference[c]+n.rects.reference[l]-s[l]-n.rects.popper[c],g=s[l]-n.rects.reference[l],x=hi(a),E=x?l==="y"?x.clientHeight||0:x.clientWidth||0:0,C=b/2-g/2,T=d[f],w=E-m[c]-d[h],S=E/2-m[c]/2+C,O=Ds(T,S,w),F=l;n.modifiersData[r]=(t={},t[F]=O,t.centerOffset=O-S,t)}}function DM(e){var t=e.state,n=e.options,r=n.element,o=r===void 0?"[data-popper-arrow]":r;o!=null&&(typeof o=="string"&&(o=t.elements.popper.querySelector(o),!o)||Fy(t.elements.popper,o)&&(t.elements.arrow=o))}const PM={name:"arrow",enabled:!0,phase:"main",fn:AM,effect:DM,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function ka(e){return e.split("-")[1]}var RM={top:"auto",right:"auto",bottom:"auto",left:"auto"};function MM(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:Ta(n*o)/o||0,y:Ta(r*o)/o||0}}function Yh(e){var t,n=e.popper,r=e.popperRect,o=e.placement,a=e.variation,s=e.offsets,i=e.position,l=e.gpuAcceleration,u=e.adaptive,c=e.roundOffsets,d=e.isFixed,m=s.x,f=m===void 0?0:m,h=s.y,b=h===void 0?0:h,g=typeof c=="function"?c({x:f,y:b}):{x:f,y:b};f=g.x,b=g.y;var x=s.hasOwnProperty("x"),E=s.hasOwnProperty("y"),C=yn,T=bn,w=window;if(u){var S=hi(n),O="clientHeight",F="clientWidth";if(S===Dn(n)&&(S=so(n),Fr(S).position!=="static"&&i==="absolute"&&(O="scrollHeight",F="scrollWidth")),S=S,o===bn||(o===yn||o===Vn)&&a===qs){T=zn;var B=d&&S===w&&w.visualViewport?w.visualViewport.height:S[O];b-=B-r.height,b*=l?1:-1}if(o===yn||(o===bn||o===zn)&&a===qs){C=Vn;var P=d&&S===w&&w.visualViewport?w.visualViewport.width:S[F];f-=P-r.width,f*=l?1:-1}}var N=Object.assign({position:i},u&&RM),v=c===!0?MM({x:f,y:b},Dn(n)):{x:f,y:b};if(f=v.x,b=v.y,l){var M;return Object.assign({},N,(M={},M[T]=E?"0":"",M[C]=x?"0":"",M.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+b+"px)":"translate3d("+f+"px, "+b+"px, 0)",M))}return Object.assign({},N,(t={},t[T]=E?b+"px":"",t[C]=x?f+"px":"",t.transform="",t))}function NM(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=r===void 0?!0:r,a=n.adaptive,s=a===void 0?!0:a,i=n.roundOffsets,l=i===void 0?!0:i,u={placement:gr(t.placement),variation:ka(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,Yh(Object.assign({},u,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:s,roundOffsets:l})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,Yh(Object.assign({},u,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}const OM={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:NM,data:{}};var Li={passive:!0};function LM(e){var t=e.state,n=e.instance,r=e.options,o=r.scroll,a=o===void 0?!0:o,s=r.resize,i=s===void 0?!0:s,l=Dn(t.elements.popper),u=[].concat(t.scrollParents.reference,t.scrollParents.popper);return a&&u.forEach(function(c){c.addEventListener("scroll",n.update,Li)}),i&&l.addEventListener("resize",n.update,Li),function(){a&&u.forEach(function(c){c.removeEventListener("scroll",n.update,Li)}),i&&l.removeEventListener("resize",n.update,Li)}}const FM={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:LM,data:{}};var $M={left:"right",right:"left",bottom:"top",top:"bottom"};function tl(e){return e.replace(/left|right|bottom|top/g,function(t){return $M[t]})}var BM={start:"end",end:"start"};function Gh(e){return e.replace(/start|end/g,function(t){return BM[t]})}function Np(e){var t=Dn(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Op(e){return Sa(so(e)).left+Np(e).scrollLeft}function jM(e,t){var n=Dn(e),r=so(e),o=n.visualViewport,a=r.clientWidth,s=r.clientHeight,i=0,l=0;if(o){a=o.width,s=o.height;var u=Ly();(u||!u&&t==="fixed")&&(i=o.offsetLeft,l=o.offsetTop)}return{width:a,height:s,x:i+Op(e),y:l}}function HM(e){var t,n=so(e),r=Np(e),o=(t=e.ownerDocument)==null?void 0:t.body,a=_o(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),s=_o(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),i=-r.scrollLeft+Op(e),l=-r.scrollTop;return Fr(o||n).direction==="rtl"&&(i+=_o(n.clientWidth,o?o.clientWidth:0)-a),{width:a,height:s,x:i,y:l}}function Lp(e){var t=Fr(e),n=t.overflow,r=t.overflowX,o=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function Hy(e){return["html","body","#document"].indexOf(br(e))>=0?e.ownerDocument.body:Hn(e)&&Lp(e)?e:Hy(Cu(e))}function Ps(e,t){var n;t===void 0&&(t=[]);var r=Hy(e),o=r===((n=e.ownerDocument)==null?void 0:n.body),a=Dn(r),s=o?[a].concat(a.visualViewport||[],Lp(r)?r:[]):r,i=t.concat(s);return o?i:i.concat(Ps(Cu(s)))}function Sd(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function UM(e,t){var n=Sa(e,!1,t==="fixed");return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}function Kh(e,t,n){return t===Ny?Sd(jM(e,n)):Mo(t)?UM(t,n):Sd(HM(so(e)))}function zM(e){var t=Ps(Cu(e)),n=["absolute","fixed"].indexOf(Fr(e).position)>=0,r=n&&Hn(e)?hi(e):e;return Mo(r)?t.filter(function(o){return Mo(o)&&Fy(o,r)&&br(o)!=="body"}):[]}function VM(e,t,n,r){var o=t==="clippingParents"?zM(e):[].concat(t),a=[].concat(o,[n]),s=a[0],i=a.reduce(function(l,u){var c=Kh(e,u,r);return l.top=_o(c.top,l.top),l.right=Fl(c.right,l.right),l.bottom=Fl(c.bottom,l.bottom),l.left=_o(c.left,l.left),l},Kh(e,s,r));return i.width=i.right-i.left,i.height=i.bottom-i.top,i.x=i.left,i.y=i.top,i}function Uy(e){var t=e.reference,n=e.element,r=e.placement,o=r?gr(r):null,a=r?ka(r):null,s=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,l;switch(o){case bn:l={x:s,y:t.y-n.height};break;case zn:l={x:s,y:t.y+t.height};break;case Vn:l={x:t.x+t.width,y:i};break;case yn:l={x:t.x-n.width,y:i};break;default:l={x:t.x,y:t.y}}var u=o?Mp(o):null;if(u!=null){var c=u==="y"?"height":"width";switch(a){case va:l[u]=l[u]-(t[c]/2-n[c]/2);break;case qs:l[u]=l[u]+(t[c]/2-n[c]/2);break}}return l}function Ys(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=r===void 0?e.placement:r,a=n.strategy,s=a===void 0?e.strategy:a,i=n.boundary,l=i===void 0?cM:i,u=n.rootBoundary,c=u===void 0?Ny:u,d=n.elementContext,m=d===void 0?rs:d,f=n.altBoundary,h=f===void 0?!1:f,b=n.padding,g=b===void 0?0:b,x=By(typeof g!="number"?g:jy(g,mi)),E=m===rs?dM:rs,C=e.rects.popper,T=e.elements[h?E:m],w=VM(Mo(T)?T:T.contextElement||so(e.elements.popper),l,c,s),S=Sa(e.elements.reference),O=Uy({reference:S,element:C,placement:o}),F=Sd(Object.assign({},C,O)),B=m===rs?F:S,P={top:w.top-B.top+x.top,bottom:B.bottom-w.bottom+x.bottom,left:w.left-B.left+x.left,right:B.right-w.right+x.right},N=e.modifiersData.offset;if(m===rs&&N){var v=N[o];Object.keys(P).forEach(function(M){var A=[Vn,zn].indexOf(M)>=0?1:-1,D=[bn,zn].indexOf(M)>=0?"y":"x";P[M]+=v[D]*A})}return P}function WM(e,t){t===void 0&&(t={});var n=t,r=n.placement,o=n.boundary,a=n.rootBoundary,s=n.padding,i=n.flipVariations,l=n.allowedAutoPlacements,u=l===void 0?Oy:l,c=ka(r),d=c?i?Wh:Wh.filter(function(h){return ka(h)===c}):mi,m=d.filter(function(h){return u.indexOf(h)>=0});m.length===0&&(m=d);var f=m.reduce(function(h,b){return h[b]=Ys(e,{placement:b,boundary:o,rootBoundary:a,padding:s})[gr(b)],h},{});return Object.keys(f).sort(function(h,b){return f[h]-f[b]})}function qM(e){if(gr(e)===Dp)return[];var t=tl(e);return[Gh(e),t,Gh(t)]}function YM(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,i=s===void 0?!0:s,l=n.fallbackPlacements,u=n.padding,c=n.boundary,d=n.rootBoundary,m=n.altBoundary,f=n.flipVariations,h=f===void 0?!0:f,b=n.allowedAutoPlacements,g=t.options.placement,x=gr(g),E=x===g,C=l||(E||!h?[tl(g)]:qM(g)),T=[g].concat(C).reduce(function(fe,X){return fe.concat(gr(X)===Dp?WM(t,{placement:X,boundary:c,rootBoundary:d,padding:u,flipVariations:h,allowedAutoPlacements:b}):X)},[]),w=t.rects.reference,S=t.rects.popper,O=new Map,F=!0,B=T[0],P=0;P<T.length;P++){var N=T[P],v=gr(N),M=ka(N)===va,A=[bn,zn].indexOf(v)>=0,D=A?"width":"height",R=Ys(t,{placement:N,boundary:c,rootBoundary:d,altBoundary:m,padding:u}),z=A?M?Vn:yn:M?zn:bn;w[D]>S[D]&&(z=tl(z));var U=tl(z),j=[];if(a&&j.push(R[v]<=0),i&&j.push(R[z]<=0,R[U]<=0),j.every(function(fe){return fe})){B=N,F=!1;break}O.set(N,j)}if(F)for(var _=h?3:1,K=function(X){var q=T.find(function(te){var Z=O.get(te);if(Z)return Z.slice(0,X).every(function(re){return re})});if(q)return B=q,"break"},ne=_;ne>0;ne--){var L=K(ne);if(L==="break")break}t.placement!==B&&(t.modifiersData[r]._skip=!0,t.placement=B,t.reset=!0)}}const GM={name:"flip",enabled:!0,phase:"main",fn:YM,requiresIfExists:["offset"],data:{_skip:!1}};function Qh(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function Xh(e){return[bn,Vn,zn,yn].some(function(t){return e[t]>=0})}function KM(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,a=t.modifiersData.preventOverflow,s=Ys(t,{elementContext:"reference"}),i=Ys(t,{altBoundary:!0}),l=Qh(s,r),u=Qh(i,o,a),c=Xh(l),d=Xh(u);t.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:u,isReferenceHidden:c,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":d})}const QM={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:KM};function XM(e,t,n){var r=gr(e),o=[yn,bn].indexOf(r)>=0?-1:1,a=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,s=a[0],i=a[1];return s=s||0,i=(i||0)*o,[yn,Vn].indexOf(r)>=0?{x:i,y:s}:{x:s,y:i}}function ZM(e){var t=e.state,n=e.options,r=e.name,o=n.offset,a=o===void 0?[0,0]:o,s=Oy.reduce(function(c,d){return c[d]=XM(d,t.rects,a),c},{}),i=s[t.placement],l=i.x,u=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=u),t.modifiersData[r]=s}const JM={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:ZM};function eN(e){var t=e.state,n=e.name;t.modifiersData[n]=Uy({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}const tN={name:"popperOffsets",enabled:!0,phase:"read",fn:eN,data:{}};function nN(e){return e==="x"?"y":"x"}function rN(e){var t=e.state,n=e.options,r=e.name,o=n.mainAxis,a=o===void 0?!0:o,s=n.altAxis,i=s===void 0?!1:s,l=n.boundary,u=n.rootBoundary,c=n.altBoundary,d=n.padding,m=n.tether,f=m===void 0?!0:m,h=n.tetherOffset,b=h===void 0?0:h,g=Ys(t,{boundary:l,rootBoundary:u,padding:d,altBoundary:c}),x=gr(t.placement),E=ka(t.placement),C=!E,T=Mp(x),w=nN(T),S=t.modifiersData.popperOffsets,O=t.rects.reference,F=t.rects.popper,B=typeof b=="function"?b(Object.assign({},t.rects,{placement:t.placement})):b,P=typeof B=="number"?{mainAxis:B,altAxis:B}:Object.assign({mainAxis:0,altAxis:0},B),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,v={x:0,y:0};if(S){if(a){var M,A=T==="y"?bn:yn,D=T==="y"?zn:Vn,R=T==="y"?"height":"width",z=S[T],U=z+g[A],j=z-g[D],_=f?-F[R]/2:0,K=E===va?O[R]:F[R],ne=E===va?-F[R]:-O[R],L=t.elements.arrow,fe=f&&L?Rp(L):{width:0,height:0},X=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:$y(),q=X[A],te=X[D],Z=Ds(0,O[R],fe[R]),re=C?O[R]/2-_-Z-q-P.mainAxis:K-Z-q-P.mainAxis,Q=C?-O[R]/2+_+Z+te+P.mainAxis:ne+Z+te+P.mainAxis,G=t.elements.arrow&&hi(t.elements.arrow),se=G?T==="y"?G.clientTop||0:G.clientLeft||0:0,J=(M=N?.[T])!=null?M:0,ee=z+re-J-se,xe=z+Q-J,de=Ds(f?Fl(U,ee):U,z,f?_o(j,xe):j);S[T]=de,v[T]=de-z}if(i){var be,le=T==="x"?bn:yn,Pe=T==="x"?zn:Vn,Te=S[w],ze=w==="y"?"height":"width",we=Te+g[le],Et=Te-g[Pe],st=[bn,yn].indexOf(x)!==-1,qe=(be=N?.[w])!=null?be:0,ue=st?we:Te-O[ze]-F[ze]-qe+P.altAxis,Ee=st?Te+O[ze]+F[ze]-qe-P.altAxis:Et,Me=f&&st?_M(ue,Te,Ee):Ds(f?ue:we,Te,f?Ee:Et);S[w]=Me,v[w]=Me-Te}t.modifiersData[r]=v}}const oN={name:"preventOverflow",enabled:!0,phase:"main",fn:rN,requiresIfExists:["offset"]};function aN(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function sN(e){return e===Dn(e)||!Hn(e)?Np(e):aN(e)}function iN(e){var t=e.getBoundingClientRect(),n=Ta(t.width)/e.offsetWidth||1,r=Ta(t.height)/e.offsetHeight||1;return n!==1||r!==1}function lN(e,t,n){n===void 0&&(n=!1);var r=Hn(t),o=Hn(t)&&iN(t),a=so(t),s=Sa(e,o,n),i={scrollLeft:0,scrollTop:0},l={x:0,y:0};return(r||!r&&!n)&&((br(t)!=="body"||Lp(a))&&(i=sN(t)),Hn(t)?(l=Sa(t,!0),l.x+=t.clientLeft,l.y+=t.clientTop):a&&(l.x=Op(a))),{x:s.left+i.scrollLeft-l.x,y:s.top+i.scrollTop-l.y,width:s.width,height:s.height}}function uN(e){var t=new Map,n=new Set,r=[];e.forEach(function(a){t.set(a.name,a)});function o(a){n.add(a.name);var s=[].concat(a.requires||[],a.requiresIfExists||[]);s.forEach(function(i){if(!n.has(i)){var l=t.get(i);l&&o(l)}}),r.push(a)}return e.forEach(function(a){n.has(a.name)||o(a)}),r}function cN(e){var t=uN(e);return EM.reduce(function(n,r){return n.concat(t.filter(function(o){return o.phase===r}))},[])}function dN(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function pN(e){var t=e.reduce(function(n,r){var o=n[r.name];return n[r.name]=o?Object.assign({},o,r,{options:Object.assign({},o.options,r.options),data:Object.assign({},o.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var Zh={placement:"bottom",modifiers:[],strategy:"absolute"};function Jh(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function fN(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,o=t.defaultOptions,a=o===void 0?Zh:o;return function(i,l,u){u===void 0&&(u=a);var c={placement:"bottom",orderedModifiers:[],options:Object.assign({},Zh,a),modifiersData:{},elements:{reference:i,popper:l},attributes:{},styles:{}},d=[],m=!1,f={state:c,setOptions:function(x){var E=typeof x=="function"?x(c.options):x;b(),c.options=Object.assign({},a,c.options,E),c.scrollParents={reference:Mo(i)?Ps(i):i.contextElement?Ps(i.contextElement):[],popper:Ps(l)};var C=cN(pN([].concat(r,c.options.modifiers)));return c.orderedModifiers=C.filter(function(T){return T.enabled}),h(),f.update()},forceUpdate:function(){if(!m){var x=c.elements,E=x.reference,C=x.popper;if(Jh(E,C)){c.rects={reference:lN(E,hi(C),c.options.strategy==="fixed"),popper:Rp(C)},c.reset=!1,c.placement=c.options.placement,c.orderedModifiers.forEach(function(P){return c.modifiersData[P.name]=Object.assign({},P.data)});for(var T=0;T<c.orderedModifiers.length;T++){if(c.reset===!0){c.reset=!1,T=-1;continue}var w=c.orderedModifiers[T],S=w.fn,O=w.options,F=O===void 0?{}:O,B=w.name;typeof S=="function"&&(c=S({state:c,options:F,name:B,instance:f})||c)}}}},update:dN(function(){return new Promise(function(g){f.forceUpdate(),g(c)})}),destroy:function(){b(),m=!0}};if(!Jh(i,l))return f;f.setOptions(u).then(function(g){!m&&u.onFirstUpdate&&u.onFirstUpdate(g)});function h(){c.orderedModifiers.forEach(function(g){var x=g.name,E=g.options,C=E===void 0?{}:E,T=g.effect;if(typeof T=="function"){var w=T({state:c,name:x,instance:f,options:C}),S=function(){};d.push(w||S)}})}function b(){d.forEach(function(g){return g()}),d=[]}return f}}var mN=[FM,tN,OM,SM,JM,GM,oN,PM,QM],hN=fN({defaultModifiers:mN});function wa(e){return typeof e=="string"}function zy(e,t,n){return e===void 0||wa(e)?t:{...t,ownerState:{...t.ownerState,...n}}}function ln(e,t=[]){if(e===void 0)return{};const n={};return Object.keys(e).filter(r=>r.match(/^on[A-Z]/)&&typeof e[r]=="function"&&!t.includes(r)).forEach(r=>{n[r]=e[r]}),n}function eg(e){if(e===void 0)return{};const t={};return Object.keys(e).filter(n=>!(n.match(/^on[A-Z]/)&&typeof e[n]=="function")).forEach(n=>{t[n]=e[n]}),t}function Vy(e){const{getSlotProps:t,additionalProps:n,externalSlotProps:r,externalForwardedProps:o,className:a}=e;if(!t){const f=De(n?.className,a,o?.className,r?.className),h={...n?.style,...o?.style,...r?.style},b={...n,...o,...r};return f.length>0&&(b.className=f),Object.keys(h).length>0&&(b.style=h),{props:b,internalRef:void 0}}const s=ln({...o,...r}),i=eg(r),l=eg(o),u=t(s),c=De(u?.className,n?.className,a,o?.className,r?.className),d={...u?.style,...n?.style,...o?.style,...r?.style},m={...u,...n,...l,...i};return c.length>0&&(m.className=c),Object.keys(d).length>0&&(m.style=d),{props:m,internalRef:u.ref}}function jn(e,t,n){return typeof e=="function"?e(t,n):e}function tt(e){const{elementType:t,externalSlotProps:n,ownerState:r,skipResolvingSlotProps:o=!1,...a}=e,s=o?{}:jn(n,r),{props:i,internalRef:l}=Vy({...a,externalSlotProps:s}),u=nt(l,s?.ref,e.additionalProps?.ref);return zy(t,{...i,ref:u},r)}function ja(e){return parseInt(k.version,10)>=19?e?.props?.ref||null:e?.ref||null}function gN(e){return typeof e=="function"?e():e}const Wy=k.forwardRef(function(t,n){const{children:r,container:o,disablePortal:a=!1}=t,[s,i]=k.useState(null),l=nt(k.isValidElement(r)?ja(r):null,n);if(Vt(()=>{a||i(gN(o)||document.body)},[o,a]),Vt(()=>{if(s&&!a)return Wc(n,s),()=>{Wc(n,null)}},[n,s,a]),a){if(k.isValidElement(r)){const u={ref:l};return k.cloneElement(r,u)}return r}return s&&Q2.createPortal(r,s)});function bN(e){return Fe("MuiPopper",e)}Re("MuiPopper",["root"]);function yN(e,t){if(t==="ltr")return e;switch(e){case"bottom-end":return"bottom-start";case"bottom-start":return"bottom-end";case"top-end":return"top-start";case"top-start":return"top-end";default:return e}}function kd(e){return typeof e=="function"?e():e}function xN(e){return e.nodeType!==void 0}const CN=e=>{const{classes:t}=e;return Le({root:["root"]},bN,t)},EN={},vN=k.forwardRef(function(t,n){const{anchorEl:r,children:o,direction:a,disablePortal:s,modifiers:i,open:l,placement:u,popperOptions:c,popperRef:d,slotProps:m={},slots:f={},TransitionProps:h,ownerState:b,...g}=t,x=k.useRef(null),E=nt(x,n),C=k.useRef(null),T=nt(C,d),w=k.useRef(T);Vt(()=>{w.current=T},[T]),k.useImperativeHandle(d,()=>C.current,[]);const S=yN(u,a),[O,F]=k.useState(S),[B,P]=k.useState(kd(r));k.useEffect(()=>{C.current&&C.current.forceUpdate()}),k.useEffect(()=>{r&&P(kd(r))},[r]),Vt(()=>{if(!B||!l)return;const D=U=>{F(U.placement)};let R=[{name:"preventOverflow",options:{altBoundary:s}},{name:"flip",options:{altBoundary:s}},{name:"onUpdate",enabled:!0,phase:"afterWrite",fn:({state:U})=>{D(U)}}];i!=null&&(R=R.concat(i)),c&&c.modifiers!=null&&(R=R.concat(c.modifiers));const z=hN(B,x.current,{placement:S,...c,modifiers:R});return w.current(z),()=>{z.destroy(),w.current(null)}},[B,s,i,l,c,S]);const N={placement:O};h!==null&&(N.TransitionProps=h);const v=CN(t),M=f.root??"div",A=tt({elementType:M,externalSlotProps:m.root,externalForwardedProps:g,additionalProps:{role:"tooltip",ref:E},ownerState:t,className:v.root});return p.jsx(M,{...A,children:typeof o=="function"?o(N):o})}),TN=k.forwardRef(function(t,n){const{anchorEl:r,children:o,container:a,direction:s="ltr",disablePortal:i=!1,keepMounted:l=!1,modifiers:u,open:c,placement:d="bottom",popperOptions:m=EN,popperRef:f,style:h,transition:b=!1,slotProps:g={},slots:x={},...E}=t,[C,T]=k.useState(!0),w=()=>{T(!1)},S=()=>{T(!0)};if(!l&&!c&&(!b||C))return null;let O;if(a)O=a;else if(r){const P=kd(r);O=P&&xN(P)?jt(P).body:jt(null).body}const F=!c&&l&&(!b||C)?"none":void 0,B=b?{in:c,onEnter:w,onExited:S}:void 0;return p.jsx(Wy,{disablePortal:i,container:O,children:p.jsx(vN,{anchorEl:r,direction:s,disablePortal:i,modifiers:u,ref:n,open:b?!C:c,placement:d,popperOptions:m,popperRef:f,slotProps:g,slots:x,...E,style:{position:"fixed",top:0,left:0,display:F,...h},TransitionProps:B,children:o})})}),SN=ae(TN,{name:"MuiPopper",slot:"Root"})({}),Fp=k.forwardRef(function(t,n){const r=Yn(),o=Qe({props:t,name:"MuiPopper"}),{anchorEl:a,component:s,components:i,componentsProps:l,container:u,disablePortal:c,keepMounted:d,modifiers:m,open:f,placement:h,popperOptions:b,popperRef:g,transition:x,slots:E,slotProps:C,...T}=o,w=E?.root??i?.Root,S={anchorEl:a,container:u,disablePortal:c,keepMounted:d,modifiers:m,open:f,placement:h,popperOptions:b,popperRef:g,transition:x,...T};return p.jsx(SN,{as:s,direction:r?"rtl":"ltr",slots:{root:w},slotProps:C??l,...S,ref:n})});function kN(e){return Fe("MuiListSubheader",e)}Re("MuiListSubheader",["root","colorPrimary","colorInherit","gutters","inset","sticky"]);const wN=e=>{const{classes:t,color:n,disableGutters:r,inset:o,disableSticky:a}=e,s={root:["root",n!=="default"&&`color${ke(n)}`,!r&&"gutters",o&&"inset",!a&&"sticky"]};return Le(s,kN,t)},_N=ae("li",{name:"MuiListSubheader",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="default"&&t[`color${ke(n.color)}`],!n.disableGutters&&t.gutters,n.inset&&t.inset,!n.disableSticky&&t.sticky]}})(Je(({theme:e})=>({boxSizing:"border-box",lineHeight:"48px",listStyle:"none",color:(e.vars||e).palette.text.secondary,fontFamily:e.typography.fontFamily,fontWeight:e.typography.fontWeightMedium,fontSize:e.typography.pxToRem(14),variants:[{props:{color:"primary"},style:{color:(e.vars||e).palette.primary.main}},{props:{color:"inherit"},style:{color:"inherit"}},{props:({ownerState:t})=>!t.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:t})=>t.inset,style:{paddingLeft:72}},{props:({ownerState:t})=>!t.disableSticky,style:{position:"sticky",top:0,zIndex:1,backgroundColor:(e.vars||e).palette.background.paper}}]}))),wd=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiListSubheader"}),{className:o,color:a="default",component:s="li",disableGutters:i=!1,disableSticky:l=!1,inset:u=!1,...c}=r,d={...r,color:a,component:s,disableGutters:i,disableSticky:l,inset:u},m=wN(d);return p.jsx(_N,{as:s,className:De(m.root,o),ref:n,ownerState:d,...c})});wd&&(wd.muiSkipListHighlight=!0);function IN(e){return Fe("MuiPaper",e)}Re("MuiPaper",["root","rounded","outlined","elevation","elevation0","elevation1","elevation2","elevation3","elevation4","elevation5","elevation6","elevation7","elevation8","elevation9","elevation10","elevation11","elevation12","elevation13","elevation14","elevation15","elevation16","elevation17","elevation18","elevation19","elevation20","elevation21","elevation22","elevation23","elevation24"]);const AN=e=>{const{square:t,elevation:n,variant:r,classes:o}=e,a={root:["root",r,!t&&"rounded",r==="elevation"&&`elevation${n}`]};return Le(a,IN,o)},DN=ae("div",{name:"MuiPaper",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.variant],!n.square&&t.rounded,n.variant==="elevation"&&t[`elevation${n.elevation}`]]}})(Je(({theme:e})=>({backgroundColor:(e.vars||e).palette.background.paper,color:(e.vars||e).palette.text.primary,transition:e.transitions.create("box-shadow"),variants:[{props:({ownerState:t})=>!t.square,style:{borderRadius:e.shape.borderRadius}},{props:{variant:"outlined"},style:{border:`1px solid ${(e.vars||e).palette.divider}`}},{props:{variant:"elevation"},style:{boxShadow:"var(--Paper-shadow)",backgroundImage:"var(--Paper-overlay)"}}]}))),Ho=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiPaper"}),o=no(),{className:a,component:s="div",elevation:i=1,square:l=!1,variant:u="elevation",...c}=r,d={...r,component:s,elevation:i,square:l,variant:u},m=AN(d);return p.jsx(DN,{as:s,ownerState:d,className:De(m.root,a),ref:n,...c,style:{...u==="elevation"&&{"--Paper-shadow":(o.vars||o).shadows[i],...o.vars&&{"--Paper-overlay":o.vars.overlays?.[i]},...!o.vars&&o.palette.mode==="dark"&&{"--Paper-overlay":`linear-gradient(${fl("#fff",zc(i))}, ${fl("#fff",zc(i))})`}},...c.style}})});function PN(e){return typeof e.main=="string"}function RN(e,t=[]){if(!PN(e))return!1;for(const n of t)if(!e.hasOwnProperty(n)||typeof e[n]!="string")return!1;return!0}function dn(e=[]){return([,t])=>t&&RN(t,e)}function tg(e){try{return e.matches(":focus-visible")}catch{}return!1}const ng={};function qy(e,t){const n=k.useRef(ng);return n.current===ng&&(n.current=e(t)),n}class $l{static create(){return new $l}static use(){const t=qy($l.create).current,[n,r]=k.useState(!1);return t.shouldMount=n,t.setShouldMount=r,k.useEffect(t.mountEffect,[n]),t}constructor(){this.ref={current:null},this.mounted=null,this.didMount=!1,this.shouldMount=!1,this.setShouldMount=null}mount(){return this.mounted||(this.mounted=NN(),this.shouldMount=!0,this.setShouldMount(this.shouldMount)),this.mounted}mountEffect=()=>{this.shouldMount&&!this.didMount&&this.ref.current!==null&&(this.didMount=!0,this.mounted.resolve())};start(...t){this.mount().then(()=>this.ref.current?.start(...t))}stop(...t){this.mount().then(()=>this.ref.current?.stop(...t))}pulsate(...t){this.mount().then(()=>this.ref.current?.pulsate(...t))}}function MN(){return $l.use()}function NN(){let e,t;const n=new Promise((r,o)=>{e=r,t=o});return n.resolve=e,n.reject=t,n}function _d(e,t){return _d=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(n,r){return n.__proto__=r,n},_d(e,t)}function $p(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,_d(e,t)}function ON(e,t){return e.classList?!!t&&e.classList.contains(t):(" "+(e.className.baseVal||e.className)+" ").indexOf(" "+t+" ")!==-1}function LN(e,t){e.classList?e.classList.add(t):ON(e,t)||(typeof e.className=="string"?e.className=e.className+" "+t:e.setAttribute("class",(e.className&&e.className.baseVal||"")+" "+t))}function rg(e,t){return e.replace(new RegExp("(^|\\s)"+t+"(?:\\s|$)","g"),"$1").replace(/\s+/g," ").replace(/^\s*|\s*$/g,"")}function FN(e,t){e.classList?e.classList.remove(t):typeof e.className=="string"?e.className=rg(e.className,t):e.setAttribute("class",rg(e.className&&e.className.baseVal||"",t))}const og={disabled:!1},Bl=W.createContext(null);var Yy=function(t){return t.scrollTop},bs="unmounted",go="exited",bo="entering",ra="entered",Id="exiting",Kn=(function(e){$p(t,e);function t(r,o){var a;a=e.call(this,r,o)||this;var s=o,i=s&&!s.isMounting?r.enter:r.appear,l;return a.appearStatus=null,r.in?i?(l=go,a.appearStatus=bo):l=ra:r.unmountOnExit||r.mountOnEnter?l=bs:l=go,a.state={status:l},a.nextCallback=null,a}t.getDerivedStateFromProps=function(o,a){var s=o.in;return s&&a.status===bs?{status:go}:null};var n=t.prototype;return n.componentDidMount=function(){this.updateStatus(!0,this.appearStatus)},n.componentDidUpdate=function(o){var a=null;if(o!==this.props){var s=this.state.status;this.props.in?s!==bo&&s!==ra&&(a=bo):(s===bo||s===ra)&&(a=Id)}this.updateStatus(!1,a)},n.componentWillUnmount=function(){this.cancelNextCallback()},n.getTimeouts=function(){var o=this.props.timeout,a,s,i;return a=s=i=o,o!=null&&typeof o!="number"&&(a=o.exit,s=o.enter,i=o.appear!==void 0?o.appear:s),{exit:a,enter:s,appear:i}},n.updateStatus=function(o,a){if(o===void 0&&(o=!1),a!==null)if(this.cancelNextCallback(),a===bo){if(this.props.unmountOnExit||this.props.mountOnEnter){var s=this.props.nodeRef?this.props.nodeRef.current:ps.findDOMNode(this);s&&Yy(s)}this.performEnter(o)}else this.performExit();else this.props.unmountOnExit&&this.state.status===go&&this.setState({status:bs})},n.performEnter=function(o){var a=this,s=this.props.enter,i=this.context?this.context.isMounting:o,l=this.props.nodeRef?[i]:[ps.findDOMNode(this),i],u=l[0],c=l[1],d=this.getTimeouts(),m=i?d.appear:d.enter;if(!o&&!s||og.disabled){this.safeSetState({status:ra},function(){a.props.onEntered(u)});return}this.props.onEnter(u,c),this.safeSetState({status:bo},function(){a.props.onEntering(u,c),a.onTransitionEnd(m,function(){a.safeSetState({status:ra},function(){a.props.onEntered(u,c)})})})},n.performExit=function(){var o=this,a=this.props.exit,s=this.getTimeouts(),i=this.props.nodeRef?void 0:ps.findDOMNode(this);if(!a||og.disabled){this.safeSetState({status:go},function(){o.props.onExited(i)});return}this.props.onExit(i),this.safeSetState({status:Id},function(){o.props.onExiting(i),o.onTransitionEnd(s.exit,function(){o.safeSetState({status:go},function(){o.props.onExited(i)})})})},n.cancelNextCallback=function(){this.nextCallback!==null&&(this.nextCallback.cancel(),this.nextCallback=null)},n.safeSetState=function(o,a){a=this.setNextCallback(a),this.setState(o,a)},n.setNextCallback=function(o){var a=this,s=!0;return this.nextCallback=function(i){s&&(s=!1,a.nextCallback=null,o(i))},this.nextCallback.cancel=function(){s=!1},this.nextCallback},n.onTransitionEnd=function(o,a){this.setNextCallback(a);var s=this.props.nodeRef?this.props.nodeRef.current:ps.findDOMNode(this),i=o==null&&!this.props.addEndListener;if(!s||i){setTimeout(this.nextCallback,0);return}if(this.props.addEndListener){var l=this.props.nodeRef?[this.nextCallback]:[s,this.nextCallback],u=l[0],c=l[1];this.props.addEndListener(u,c)}o!=null&&setTimeout(this.nextCallback,o)},n.render=function(){var o=this.state.status;if(o===bs)return null;var a=this.props,s=a.children;a.in,a.mountOnEnter,a.unmountOnExit,a.appear,a.enter,a.exit,a.timeout,a.addEndListener,a.onEnter,a.onEntering,a.onEntered,a.onExit,a.onExiting,a.onExited,a.nodeRef;var i=je(a,["children","in","mountOnEnter","unmountOnExit","appear","enter","exit","timeout","addEndListener","onEnter","onEntering","onEntered","onExit","onExiting","onExited","nodeRef"]);return W.createElement(Bl.Provider,{value:null},typeof s=="function"?s(o,i):W.cloneElement(W.Children.only(s),i))},t})(W.Component);Kn.contextType=Bl;Kn.propTypes={};function ea(){}Kn.defaultProps={in:!1,mountOnEnter:!1,unmountOnExit:!1,appear:!1,enter:!0,exit:!0,onEnter:ea,onEntering:ea,onEntered:ea,onExit:ea,onExiting:ea,onExited:ea};Kn.UNMOUNTED=bs;Kn.EXITED=go;Kn.ENTERING=bo;Kn.ENTERED=ra;Kn.EXITING=Id;var $N=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return LN(t,r)})},Ic=function(t,n){return t&&n&&n.split(" ").forEach(function(r){return FN(t,r)})},Bp=(function(e){$p(t,e);function t(){for(var r,o=arguments.length,a=new Array(o),s=0;s<o;s++)a[s]=arguments[s];return r=e.call.apply(e,[this].concat(a))||this,r.appliedClasses={appear:{},enter:{},exit:{}},r.onEnter=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1];r.removeClasses(c,"exit"),r.addClass(c,d?"appear":"enter","base"),r.props.onEnter&&r.props.onEnter(i,l)},r.onEntering=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1],m=d?"appear":"enter";r.addClass(c,m,"active"),r.props.onEntering&&r.props.onEntering(i,l)},r.onEntered=function(i,l){var u=r.resolveArguments(i,l),c=u[0],d=u[1],m=d?"appear":"enter";r.removeClasses(c,m),r.addClass(c,m,"done"),r.props.onEntered&&r.props.onEntered(i,l)},r.onExit=function(i){var l=r.resolveArguments(i),u=l[0];r.removeClasses(u,"appear"),r.removeClasses(u,"enter"),r.addClass(u,"exit","base"),r.props.onExit&&r.props.onExit(i)},r.onExiting=function(i){var l=r.resolveArguments(i),u=l[0];r.addClass(u,"exit","active"),r.props.onExiting&&r.props.onExiting(i)},r.onExited=function(i){var l=r.resolveArguments(i),u=l[0];r.removeClasses(u,"exit"),r.addClass(u,"exit","done"),r.props.onExited&&r.props.onExited(i)},r.resolveArguments=function(i,l){return r.props.nodeRef?[r.props.nodeRef.current,i]:[i,l]},r.getClassNames=function(i){var l=r.props.classNames,u=typeof l=="string",c=u&&l?l+"-":"",d=u?""+c+i:l[i],m=u?d+"-active":l[i+"Active"],f=u?d+"-done":l[i+"Done"];return{baseClassName:d,activeClassName:m,doneClassName:f}},r}var n=t.prototype;return n.addClass=function(o,a,s){var i=this.getClassNames(a)[s+"ClassName"],l=this.getClassNames("enter"),u=l.doneClassName;a==="appear"&&s==="done"&&u&&(i+=" "+u),s==="active"&&o&&Yy(o),i&&(this.appliedClasses[a][s]=i,$N(o,i))},n.removeClasses=function(o,a){var s=this.appliedClasses[a],i=s.base,l=s.active,u=s.done;this.appliedClasses[a]={},i&&Ic(o,i),l&&Ic(o,l),u&&Ic(o,u)},n.render=function(){var o=this.props;o.classNames;var a=je(o,["classNames"]);return W.createElement(Kn,H({},a,{onEnter:this.onEnter,onEntered:this.onEntered,onEntering:this.onEntering,onExit:this.onExit,onExiting:this.onExiting,onExited:this.onExited}))},t})(W.Component);Bp.defaultProps={classNames:""};Bp.propTypes={};function BN(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function jp(e,t){var n=function(a){return t&&W.isValidElement(a)?t(a):a},r=Object.create(null);return e&&W.Children.map(e,function(o){return o}).forEach(function(o){r[o.key]=n(o)}),r}function jN(e,t){e=e||{},t=t||{};function n(c){return c in t?t[c]:e[c]}var r=Object.create(null),o=[];for(var a in e)a in t?o.length&&(r[a]=o,o=[]):o.push(a);var s,i={};for(var l in t){if(r[l])for(s=0;s<r[l].length;s++){var u=r[l][s];i[r[l][s]]=n(u)}i[l]=n(l)}for(s=0;s<o.length;s++)i[o[s]]=n(o[s]);return i}function vo(e,t,n){return n[t]!=null?n[t]:e.props[t]}function HN(e,t){return jp(e.children,function(n){return W.cloneElement(n,{onExited:t.bind(null,n),in:!0,appear:vo(n,"appear",e),enter:vo(n,"enter",e),exit:vo(n,"exit",e)})})}function UN(e,t,n){var r=jp(e.children),o=jN(t,r);return Object.keys(o).forEach(function(a){var s=o[a];if(W.isValidElement(s)){var i=a in t,l=a in r,u=t[a],c=W.isValidElement(u)&&!u.props.in;l&&(!i||c)?o[a]=W.cloneElement(s,{onExited:n.bind(null,s),in:!0,exit:vo(s,"exit",e),enter:vo(s,"enter",e)}):!l&&i&&!c?o[a]=W.cloneElement(s,{in:!1}):l&&i&&W.isValidElement(u)&&(o[a]=W.cloneElement(s,{onExited:n.bind(null,s),in:u.props.in,exit:vo(s,"exit",e),enter:vo(s,"enter",e)}))}}),o}var zN=Object.values||function(e){return Object.keys(e).map(function(t){return e[t]})},VN={component:"div",childFactory:function(t){return t}},gi=(function(e){$p(t,e);function t(r,o){var a;a=e.call(this,r,o)||this;var s=a.handleExited.bind(BN(a));return a.state={contextValue:{isMounting:!0},handleExited:s,firstRender:!0},a}var n=t.prototype;return n.componentDidMount=function(){this.mounted=!0,this.setState({contextValue:{isMounting:!1}})},n.componentWillUnmount=function(){this.mounted=!1},t.getDerivedStateFromProps=function(o,a){var s=a.children,i=a.handleExited,l=a.firstRender;return{children:l?HN(o,i):UN(o,s,i),firstRender:!1}},n.handleExited=function(o,a){var s=jp(this.props.children);o.key in s||(o.props.onExited&&o.props.onExited(a),this.mounted&&this.setState(function(i){var l=H({},i.children);return delete l[o.key],{children:l}}))},n.render=function(){var o=this.props,a=o.component,s=o.childFactory,i=je(o,["component","childFactory"]),l=this.state.contextValue,u=zN(this.state.children).map(s);return delete i.appear,delete i.enter,delete i.exit,a===null?W.createElement(Bl.Provider,{value:l},u):W.createElement(Bl.Provider,{value:l},W.createElement(a,i,u))},t})(W.Component);gi.propTypes={};gi.defaultProps=VN;const WN=[];function qN(e){k.useEffect(e,WN)}class Hp{static create(){return new Hp}currentId=null;start(t,n){this.clear(),this.currentId=setTimeout(()=>{this.currentId=null,n()},t)}clear=()=>{this.currentId!==null&&(clearTimeout(this.currentId),this.currentId=null)};disposeEffect=()=>this.clear}function Eu(){const e=qy(Hp.create).current;return qN(e.disposeEffect),e}function YN(e){const{className:t,classes:n,pulsate:r=!1,rippleX:o,rippleY:a,rippleSize:s,in:i,onExited:l,timeout:u}=e,[c,d]=k.useState(!1),m=De(t,n.ripple,n.rippleVisible,r&&n.ripplePulsate),f={width:s,height:s,top:-(s/2)+a,left:-(s/2)+o},h=De(n.child,c&&n.childLeaving,r&&n.childPulsate);return!i&&!c&&d(!0),k.useEffect(()=>{if(!i&&l!=null){const b=setTimeout(l,u);return()=>{clearTimeout(b)}}},[l,i,u]),p.jsx("span",{className:m,style:f,children:p.jsx("span",{className:h})})}const Ln=Re("MuiTouchRipple",["root","ripple","rippleVisible","ripplePulsate","child","childLeaving","childPulsate"]),Ad=550,GN=80,KN=ut.keyframes`
104
104
  0% {
105
105
  transform: scale(0);
106
106
  opacity: 0.1;
@@ -212,8 +212,8 @@ import {${t.sourceName}}" from '${t.modelPath}'"
212
212
  `));const t=k.useMemo(()=>H({},FF,e.localeText),[e.localeText]);return k.useMemo(()=>H({},e,{localeText:t}),[e,t])},_t=()=>Uo().utils,bi=()=>Uo().defaultDates,Iu=e=>{const t=_t(),n=k.useRef(void 0);return n.current===void 0&&(n.current=t.date(void 0,e)),n.current};function $F(e){return Fe("MuiPickersToolbar",e)}Re("MuiPickersToolbar",["root","content"]);const BF=["children","className","toolbarTitle","hidden","titleId","isLandscape","classes","landscapeDirection"],jF=e=>{const{classes:t}=e;return Le({root:["root"],content:["content"]},$F,t)},HF=ae("div",{name:"MuiPickersToolbar",slot:"Root",overridesResolver:(e,t)=>t.root})(({theme:e})=>({display:"flex",flexDirection:"column",alignItems:"flex-start",justifyContent:"space-between",padding:e.spacing(2,3),variants:[{props:{isLandscape:!0},style:{height:"auto",maxWidth:160,padding:16,justifyContent:"flex-start",flexWrap:"wrap"}}]})),UF=ae("div",{name:"MuiPickersToolbar",slot:"Content",overridesResolver:(e,t)=>t.content})({display:"flex",flexWrap:"wrap",width:"100%",flex:1,justifyContent:"space-between",alignItems:"center",flexDirection:"row",variants:[{props:{isLandscape:!0},style:{justifyContent:"flex-start",alignItems:"flex-start",flexDirection:"column"}},{props:{isLandscape:!0,landscapeDirection:"row"},style:{flexDirection:"row"}}]}),zF=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersToolbar"}),{children:o,className:a,toolbarTitle:s,hidden:i,titleId:l}=r,u=je(r,BF),c=r,d=jF(c);return i?null:p.jsxs(HF,H({ref:n,className:De(d.root,a),ownerState:c},u,{children:[p.jsx(Cn,{color:"text.secondary",variant:"overline",id:l,children:s}),p.jsx(UF,{className:d.content,ownerState:c,children:o})]}))}),Hr=()=>Uo().localeText;function VF(e){return Fe("MuiDatePickerToolbar",e)}Re("MuiDatePickerToolbar",["root","title"]);const WF=["value","isLandscape","onChange","toolbarFormat","toolbarPlaceholder","views","className","onViewChange","view"],qF=e=>{const{classes:t}=e;return Le({root:["root"],title:["title"]},VF,t)},YF=ae(zF,{name:"MuiDatePickerToolbar",slot:"Root",overridesResolver:(e,t)=>t.root})({}),GF=ae(Cn,{name:"MuiDatePickerToolbar",slot:"Title",overridesResolver:(e,t)=>t.title})({variants:[{props:{isLandscape:!0},style:{margin:"auto 16px auto auto"}}]}),KF=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiDatePickerToolbar"}),{value:o,isLandscape:a,toolbarFormat:s,toolbarPlaceholder:i="––",views:l,className:u}=r,c=je(r,WF),d=_t(),m=Hr(),f=qF(r),h=k.useMemo(()=>{if(!o)return i;const g=Qp(d,{format:s,views:l},!0);return d.formatByString(o,g)},[o,s,i,d,l]),b=r;return p.jsx(YF,H({ref:n,toolbarTitle:m.datePickerToolbarTitle,isLandscape:a,className:De(f.root,u)},c,{children:p.jsx(GF,{variant:"h4",align:a?"left":"center",ownerState:b,className:f.title,children:h})}))});function Cx(e,t){const n=_t(),r=bi(),o=St({props:e,name:t}),a=k.useMemo(()=>o.localeText?.toolbarTitle==null?o.localeText:H({},o.localeText,{datePickerToolbarTitle:o.localeText.toolbarTitle}),[o.localeText]);return H({},o,{localeText:a},uF({views:o.views,openTo:o.openTo,defaultViews:["year","day"],defaultOpenTo:"day"}),{disableFuture:o.disableFuture??!1,disablePast:o.disablePast??!1,minDate:Wn(n,o.minDate,r.minDate),maxDate:Wn(n,o.maxDate,r.maxDate),slots:H({toolbar:KF},o.slots)})}const yi=({props:e,value:t,timezone:n,adapter:r})=>{if(t===null)return null;const{shouldDisableDate:o,shouldDisableMonth:a,shouldDisableYear:s,disablePast:i,disableFuture:l}=e,u=r.utils.date(void 0,n),c=Wn(r.utils,e.minDate,r.defaultDates.minDate),d=Wn(r.utils,e.maxDate,r.defaultDates.maxDate);switch(!0){case!r.utils.isValid(t):return"invalidDate";case!!(o&&o(t)):return"shouldDisableDate";case!!(a&&a(t)):return"shouldDisableMonth";case!!(s&&s(t)):return"shouldDisableYear";case!!(l&&r.utils.isAfterDay(t,u)):return"disableFuture";case!!(i&&r.utils.isBeforeDay(t,u)):return"disablePast";case!!(c&&r.utils.isBeforeDay(t,c)):return"minDate";case!!(d&&r.utils.isAfterDay(t,d)):return"maxDate";default:return null}};yi.valueManager=xr;const Ex=["disablePast","disableFuture","minDate","maxDate","shouldDisableDate","shouldDisableMonth","shouldDisableYear"],QF=["disablePast","disableFuture","minTime","maxTime","shouldDisableTime","minutesStep","ampm","disableIgnoringDatePartForTimeValidation"],XF=["minDateTime","maxDateTime"],ZF=[...Ex,...QF,...XF],vx=e=>ZF.reduce((t,n)=>(e.hasOwnProperty(n)&&(t[n]=e[n]),t),{});function Tx(e){const{props:t,validator:n,value:r,timezone:o,onError:a}=e,s=Uo(),i=k.useRef(n.valueManager.defaultErrorState),l=n({adapter:s,value:r,timezone:o,props:t}),u=n.valueManager.hasError(l);k.useEffect(()=>{a&&!n.valueManager.isSameError(l,i.current)&&a(l,r),i.current=l},[n,a,l,r]);const c=Ae(d=>n({adapter:s,value:d,timezone:o,props:t}));return{validationError:l,hasValidationError:u,getValidationErrorForNewValue:c}}function JF(e){return Fe("MuiInputAdornment",e)}const Vg=Re("MuiInputAdornment",["root","filled","standard","outlined","positionStart","positionEnd","disablePointerEvents","hiddenLabel","sizeSmall"]);var Wg;const e7=(e,t)=>{const{ownerState:n}=e;return[t.root,t[`position${ke(n.position)}`],n.disablePointerEvents===!0&&t.disablePointerEvents,t[n.variant]]},t7=e=>{const{classes:t,disablePointerEvents:n,hiddenLabel:r,position:o,size:a,variant:s}=e,i={root:["root",n&&"disablePointerEvents",o&&`position${ke(o)}`,s,r&&"hiddenLabel",a&&`size${ke(a)}`]};return Le(i,JF,t)},n7=ae("div",{name:"MuiInputAdornment",slot:"Root",overridesResolver:e7})(Je(({theme:e})=>({display:"flex",maxHeight:"2em",alignItems:"center",whiteSpace:"nowrap",color:(e.vars||e).palette.action.active,variants:[{props:{variant:"filled"},style:{[`&.${Vg.positionStart}&:not(.${Vg.hiddenLabel})`]:{marginTop:16}}},{props:{position:"start"},style:{marginRight:8}},{props:{position:"end"},style:{marginLeft:8}},{props:{disablePointerEvents:!0},style:{pointerEvents:"none"}}]}))),Sx=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiInputAdornment"}),{children:o,className:a,component:s="div",disablePointerEvents:i=!1,disableTypography:l=!1,position:u,variant:c,...d}=r,m=Qn()||{};let f=c;c&&m.variant,m&&!f&&(f=m.variant);const h={...r,hiddenLabel:m.hiddenLabel,size:m.size,disablePointerEvents:i,position:u,variant:f},b=t7(h);return p.jsx(vu.Provider,{value:null,children:p.jsx(n7,{as:s,ownerState:h,className:De(b.root,a),ref:n,...d,children:typeof o=="string"&&!l?p.jsx(Cn,{color:"textSecondary",children:o}):p.jsxs(k.Fragment,{children:[u==="start"?Wg||(Wg=p.jsx("span",{className:"notranslate","aria-hidden":!0,children:"​"})):null,o]})})})});function r7(e){return Fe("MuiPickersPopper",e)}Re("MuiPickersPopper",["root","paper"]);function o7(e,t){return Array.isArray(t)?t.every(n=>e.indexOf(n)!==-1):e.indexOf(t)!==-1}const a7=(e,t)=>n=>{(n.key==="Enter"||n.key===" ")&&(e(n),n.preventDefault(),n.stopPropagation())},gn=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?gn(t.shadowRoot):t:null},s7="@media (pointer: fine)",i7="@media (prefers-reduced-motion: reduce)",ma=typeof navigator<"u"&&navigator.userAgent.match(/android\s(\d+)|OS\s(\d+)/i),qg=ma&&ma[1]?parseInt(ma[1],10):null,Yg=ma&&ma[2]?parseInt(ma[2],10):null,l7=qg&&qg<10||Yg&&Yg<13||!1,kx=()=>dx(i7,{defaultMatches:!1})||l7,u7=["PaperComponent","popperPlacement","ownerState","children","paperSlotProps","paperClasses","onPaperClick","onPaperTouchStart"],c7=e=>{const{classes:t}=e;return Le({root:["root"],paper:["paper"]},r7,t)},d7=ae(Fp,{name:"MuiPickersPopper",slot:"Root",overridesResolver:(e,t)=>t.root})(({theme:e})=>({zIndex:e.zIndex.modal})),p7=ae(Ho,{name:"MuiPickersPopper",slot:"Paper",overridesResolver:(e,t)=>t.paper})({outline:0,transformOrigin:"top center",variants:[{props:({placement:e})=>["top","top-start","top-end"].includes(e),style:{transformOrigin:"bottom center"}}]});function f7(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}function m7(e,t){const n=k.useRef(!1),r=k.useRef(!1),o=k.useRef(null),a=k.useRef(!1);k.useEffect(()=>{if(!e)return;function l(){a.current=!0}return document.addEventListener("mousedown",l,!0),document.addEventListener("touchstart",l,!0),()=>{document.removeEventListener("mousedown",l,!0),document.removeEventListener("touchstart",l,!0),a.current=!1}},[e]);const s=Ae(l=>{if(!a.current)return;const u=r.current;r.current=!1;const c=jt(o.current);if(!o.current||"clientX"in l&&f7(l,c))return;if(n.current){n.current=!1;return}let d;l.composedPath?d=l.composedPath().indexOf(o.current)>-1:d=!c.documentElement.contains(l.target)||o.current.contains(l.target),!d&&!u&&t(l)}),i=()=>{r.current=!0};return k.useEffect(()=>{if(e){const l=jt(o.current),u=()=>{n.current=!0};return l.addEventListener("touchstart",s),l.addEventListener("touchmove",u),()=>{l.removeEventListener("touchstart",s),l.removeEventListener("touchmove",u)}}},[e,s]),k.useEffect(()=>{if(e){const l=jt(o.current);return l.addEventListener("click",s),()=>{l.removeEventListener("click",s),r.current=!1}}},[e,s]),[o,i,i]}const h7=k.forwardRef((e,t)=>{const{PaperComponent:n,popperPlacement:r,ownerState:o,children:a,paperSlotProps:s,paperClasses:i,onPaperClick:l,onPaperTouchStart:u}=e,c=je(e,u7),d=H({},o,{placement:r}),m=tt({elementType:n,externalSlotProps:s,additionalProps:{tabIndex:-1,elevation:8,ref:t},className:i,ownerState:d});return p.jsx(n,H({},c,m,{onClick:f=>{l(f),m.onClick?.(f)},onTouchStart:f=>{u(f),m.onTouchStart?.(f)},ownerState:d,children:a}))});function g7(e){const t=St({props:e,name:"MuiPickersPopper"}),{anchorEl:n,children:r,containerRef:o=null,shouldRestoreFocus:a,onBlur:s,onDismiss:i,open:l,role:u,placement:c,slots:d,slotProps:m,reduceAnimations:f}=t;k.useEffect(()=>{function D(R){l&&R.key==="Escape"&&i()}return document.addEventListener("keydown",D),()=>{document.removeEventListener("keydown",D)}},[i,l]);const h=k.useRef(null);k.useEffect(()=>{u==="tooltip"||a&&!a()||(l?h.current=gn(document):h.current&&h.current instanceof HTMLElement&&setTimeout(()=>{h.current instanceof HTMLElement&&h.current.focus()}))},[l,u,a]);const[b,g,x]=m7(l,s??i),E=k.useRef(null),C=nt(E,o),T=nt(C,b),w=t,S=c7(w),O=kx(),F=f??O,B=D=>{D.key==="Escape"&&(D.stopPropagation(),i())},P=d?.desktopTransition??F?Oo:Gs,N=d?.desktopTrapFocus??tx,v=d?.desktopPaper??p7,M=d?.popper??d7,A=tt({elementType:M,externalSlotProps:m?.popper,additionalProps:{transition:!0,role:u,open:l,anchorEl:n,placement:c,onKeyDown:B},className:S.root,ownerState:t});return p.jsx(M,H({},A,{children:({TransitionProps:D,placement:R})=>p.jsx(N,H({open:l,disableAutoFocus:!0,disableRestoreFocus:!0,disableEnforceFocus:u==="tooltip",isEnabled:()=>!0},m?.desktopTrapFocus,{children:p.jsx(P,H({},D,m?.desktopTransition,{children:p.jsx(h7,{PaperComponent:v,ownerState:w,popperPlacement:R,ref:T,onPaperClick:g,onPaperTouchStart:x,paperClasses:S.paper,paperSlotProps:m?.desktopPaper,children:r})}))}))}))}const b7=({open:e,onOpen:t,onClose:n})=>{const r=k.useRef(typeof e=="boolean").current,[o,a]=k.useState(!1);k.useEffect(()=>{if(r){if(typeof e!="boolean")throw new Error("You must not mix controlling and uncontrolled mode for `open` prop");a(e)}},[r,e]);const s=k.useCallback(i=>{r||a(i),i&&t&&t(),!i&&n&&n()},[r,t,n]);return{isOpen:o,setIsOpen:s}},Jp=({timezone:e,value:t,defaultValue:n,referenceDate:r,onChange:o,valueManager:a})=>{const s=_t(),i=k.useRef(n),l=t??i.current??a.emptyValue,u=k.useMemo(()=>a.getTimezone(s,l),[s,a,l]),c=Ae(h=>u==null?h:a.setTimezone(s,u,h));let d;e?d=e:u?d=u:r?d=s.getTimezone(r):d="default";const m=k.useMemo(()=>a.setTimezone(s,d,l),[a,s,d,l]),f=Ae((h,...b)=>{const g=c(h);o?.(g,...b)});return{value:m,handleValueChange:f,timezone:d}},ef=({name:e,timezone:t,value:n,defaultValue:r,referenceDate:o,onChange:a,valueManager:s})=>{const[i,l]=_n({name:e,state:"value",controlled:n,default:r??s.emptyValue}),u=Ae((c,...d)=>{l(c),a?.(c,...d)});return Jp({timezone:t,value:i,defaultValue:void 0,referenceDate:o,onChange:u,valueManager:s})},y7=e=>{const{action:t,hasChanged:n,dateState:r,isControlled:o}=e,a=!o&&!r.hasBeenModifiedSinceMount;return t.name==="setValueFromField"?!0:t.name==="setValueFromAction"?a&&["accept","today","clear"].includes(t.pickerAction)?!0:n(r.lastPublishedValue):t.name==="setValueFromView"&&t.selectionState!=="shallow"||t.name==="setValueFromShortcut"?a?!0:n(r.lastPublishedValue):!1},x7=e=>{const{action:t,hasChanged:n,dateState:r,isControlled:o,closeOnSelect:a}=e,s=!o&&!r.hasBeenModifiedSinceMount;return t.name==="setValueFromAction"?s&&["accept","today","clear"].includes(t.pickerAction)?!0:n(r.lastCommittedValue):t.name==="setValueFromView"&&t.selectionState==="finish"&&a?s?!0:n(r.lastCommittedValue):t.name==="setValueFromShortcut"?t.changeImportance==="accept"&&n(r.lastCommittedValue):!1},C7=e=>{const{action:t,closeOnSelect:n}=e;return t.name==="setValueFromAction"?!0:t.name==="setValueFromView"?t.selectionState==="finish"&&n:t.name==="setValueFromShortcut"?t.changeImportance==="accept":!1},E7=({props:e,valueManager:t,valueType:n,wrapperVariant:r,validator:o})=>{const{onAccept:a,onChange:s,value:i,defaultValue:l,closeOnSelect:u=r==="desktop",timezone:c,referenceDate:d}=e,{current:m}=k.useRef(l),{current:f}=k.useRef(i!==void 0),[h,b]=k.useState(c),g=_t(),x=Uo(),{isOpen:E,setIsOpen:C}=b7(e),{timezone:T,value:w,handleValueChange:S}=Jp({timezone:c,value:i,defaultValue:m,referenceDate:d,onChange:s,valueManager:t}),[O,F]=k.useState(()=>{let re;return w!==void 0?re=w:m!==void 0?re=m:re=t.emptyValue,{draft:re,lastPublishedValue:re,lastCommittedValue:re,lastControlledValue:i,hasBeenModifiedSinceMount:!1}}),B=t.getTimezone(g,O.draft);h!==c&&(b(c),c&&B&&c!==B&&F(re=>H({},re,{draft:t.setTimezone(g,c,re.draft)})));const{getValidationErrorForNewValue:P}=Tx({props:e,validator:o,timezone:T,value:O.draft,onError:e.onError}),N=Ae(re=>{const Q={action:re,dateState:O,hasChanged:de=>!t.areValuesEqual(g,re.value,de),isControlled:f,closeOnSelect:u},G=y7(Q),se=x7(Q),J=C7(Q);F(de=>H({},de,{draft:re.value,lastPublishedValue:G?re.value:de.lastPublishedValue,lastCommittedValue:se?re.value:de.lastCommittedValue,hasBeenModifiedSinceMount:!0}));let ee=null;const xe=()=>(ee||(ee={validationError:re.name==="setValueFromField"?re.context.validationError:P(re.value)},re.name==="setValueFromShortcut"&&(ee.shortcut=re.shortcut)),ee);G&&S(re.value,xe()),se&&a&&a(re.value,xe()),J&&C(!1)});if(O.lastControlledValue!==i){const re=t.areValuesEqual(g,O.draft,w);F(Q=>H({},Q,{lastControlledValue:i},re?{}:{lastCommittedValue:w,lastPublishedValue:w,draft:w,hasBeenModifiedSinceMount:!0}))}const v=Ae(()=>{N({value:t.emptyValue,name:"setValueFromAction",pickerAction:"clear"})}),M=Ae(()=>{N({value:O.lastPublishedValue,name:"setValueFromAction",pickerAction:"accept"})}),A=Ae(()=>{N({value:O.lastPublishedValue,name:"setValueFromAction",pickerAction:"dismiss"})}),D=Ae(()=>{N({value:O.lastCommittedValue,name:"setValueFromAction",pickerAction:"cancel"})}),R=Ae(()=>{N({value:t.getTodayValue(g,T,n),name:"setValueFromAction",pickerAction:"today"})}),z=Ae(re=>{re.preventDefault(),C(!0)}),U=Ae(re=>{re?.preventDefault(),C(!1)}),j=Ae((re,Q="partial")=>N({name:"setValueFromView",value:re,selectionState:Q})),_=Ae((re,Q,G)=>N({name:"setValueFromShortcut",value:re,changeImportance:Q,shortcut:G})),K=Ae((re,Q)=>N({name:"setValueFromField",value:re,context:Q})),ne={onClear:v,onAccept:M,onDismiss:A,onCancel:D,onSetToday:R,onOpen:z,onClose:U},L={value:O.draft,onChange:K},fe=k.useMemo(()=>t.cleanValue(g,O.draft),[g,t,O.draft]),X={value:fe,onChange:j,onClose:U,open:E},te=H({},ne,{value:fe,onChange:j,onSelectShortcut:_,isValid:re=>{const Q=o({adapter:x,value:re,timezone:T,props:e});return!t.hasError(Q)}}),Z=k.useMemo(()=>({onOpen:z,onClose:U,open:E}),[E,U,z]);return{open:E,fieldProps:L,viewProps:X,layoutProps:te,actions:ne,contextValue:Z}};function wx({onChange:e,onViewChange:t,openTo:n,view:r,views:o,autoFocus:a,focusedView:s,onFocusedViewChange:i}){const l=k.useRef(n),u=k.useRef(o),c=k.useRef(o.includes(n)?n:o[0]),[d,m]=_n({name:"useViews",state:"view",controlled:r,default:c.current}),f=k.useRef(a?d:null),[h,b]=_n({name:"useViews",state:"focusedView",controlled:s,default:f.current});k.useEffect(()=>{(l.current&&l.current!==n||u.current&&u.current.some(O=>!o.includes(O)))&&(m(o.includes(n)?n:o[0]),u.current=o,l.current=n)},[n,m,d,o]);const g=o.indexOf(d),x=o[g-1]??null,E=o[g+1]??null,C=Ae((O,F)=>{b(F?O:B=>O===B?null:B),i?.(O,F)}),T=Ae(O=>{C(O,!0),O!==d&&(m(O),t&&t(O))}),w=Ae(()=>{E&&T(E)}),S=Ae((O,F,B)=>{const P=F==="finish",N=B?o.indexOf(B)<o.length-1:!!E;if(e(O,P&&N?"partial":F,B),B&&B!==d){const M=o[o.indexOf(B)+1];M&&T(M)}else P&&w()});return{view:d,setView:T,focusedView:h,setFocusedView:C,nextView:E,previousView:x,defaultView:o.includes(n)?n:o[0],goToNextView:w,setValueAndGoToNextView:S}}const v7=["className","sx"],T7=({props:e,propsFromPickerValue:t,additionalViewProps:n,autoFocusView:r,rendererInterceptor:o,fieldRef:a})=>{const{onChange:s,open:i,onClose:l}=t,{view:u,views:c,openTo:d,onViewChange:m,viewRenderers:f,timezone:h}=e,b=je(e,v7),{view:g,setView:x,defaultView:E,focusedView:C,setFocusedView:T,setValueAndGoToNextView:w}=wx({view:u,views:c,openTo:d,onChange:s,onViewChange:m,autoFocus:r}),{hasUIView:S,viewModeLookup:O}=k.useMemo(()=>c.reduce((A,D)=>{let R;return f[D]!=null?R="UI":R="field",A.viewModeLookup[D]=R,R==="UI"&&(A.hasUIView=!0),A},{hasUIView:!1,viewModeLookup:{}}),[f,c]),F=k.useMemo(()=>c.reduce((A,D)=>f[D]!=null&&hF(D)?A+1:A,0),[f,c]),B=O[g],P=Ae(()=>B==="UI"),[N,v]=k.useState(B==="UI"?g:null);return N!==g&&O[g]==="UI"&&v(g),Vt(()=>{B==="field"&&i&&(l(),setTimeout(()=>{a?.current?.setSelectedSections(g),a?.current?.focusField(g)}))},[g]),Vt(()=>{if(!i)return;let A=g;B==="field"&&N!=null&&(A=N),A!==E&&O[A]==="UI"&&O[E]==="UI"&&(A=E),A!==g&&x(A),T(A,!0)},[i]),{hasUIView:S,shouldRestoreFocus:P,layoutProps:{views:c,view:N,onViewChange:x},renderCurrentView:()=>{if(N==null)return null;const A=f[N];if(A==null)return null;const D=H({},b,n,t,{views:c,timezone:h,onChange:w,view:N,onViewChange:x,focusedView:C,onFocusedViewChange:T,showViewSwitcher:F>1,timeViewsCount:F});return o?o(f,N,D):A(D)}}};function Gg(){return typeof window>"u"?"portrait":window.screen&&window.screen.orientation&&window.screen.orientation.angle?Math.abs(window.screen.orientation.angle)===90?"landscape":"portrait":window.orientation&&Math.abs(Number(window.orientation))===90?"landscape":"portrait"}const S7=(e,t)=>{const[n,r]=k.useState(Gg);return Vt(()=>{const a=()=>{r(Gg())};return window.addEventListener("orientationchange",a),()=>{window.removeEventListener("orientationchange",a)}},[]),o7(e,["hours","minutes","seconds"])?!1:(t||n)==="landscape"},k7=({props:e,propsFromPickerValue:t,propsFromPickerViews:n,wrapperVariant:r})=>{const{orientation:o}=e,a=S7(n.views,o),s=Yn();return{layoutProps:H({},n,t,{isLandscape:a,isRtl:s,wrapperVariant:r,disabled:e.disabled,readOnly:e.readOnly})}};function w7(e){const{props:t,pickerValueResponse:n}=e;return k.useMemo(()=>({value:n.viewProps.value,open:n.open,disabled:t.disabled??!1,readOnly:t.readOnly??!1}),[n.viewProps.value,n.open,t.disabled,t.readOnly])}const _x=({props:e,valueManager:t,valueType:n,wrapperVariant:r,additionalViewProps:o,validator:a,autoFocusView:s,rendererInterceptor:i,fieldRef:l})=>{const u=E7({props:e,valueManager:t,valueType:n,wrapperVariant:r,validator:a}),c=T7({props:e,additionalViewProps:o,autoFocusView:s,fieldRef:l,propsFromPickerValue:u.viewProps,rendererInterceptor:i}),d=k7({props:e,wrapperVariant:r,propsFromPickerValue:u.layoutProps,propsFromPickerViews:c.layoutProps}),m=w7({props:e,pickerValueResponse:u});return{open:u.open,actions:u.actions,fieldProps:u.fieldProps,renderCurrentView:c.renderCurrentView,hasUIView:c.hasUIView,shouldRestoreFocus:c.shouldRestoreFocus,layoutProps:d.layoutProps,contextValue:u.contextValue,ownerState:m}};function Ix(e){return Fe("MuiPickersLayout",e)}const co=Re("MuiPickersLayout",["root","landscape","contentWrapper","toolbar","actionBar","tabs","shortcuts"]);function _7(e){return Fe("MuiButton",e)}const po=Re("MuiButton",["root","text","textInherit","textPrimary","textSecondary","textSuccess","textError","textInfo","textWarning","outlined","outlinedInherit","outlinedPrimary","outlinedSecondary","outlinedSuccess","outlinedError","outlinedInfo","outlinedWarning","contained","containedInherit","containedPrimary","containedSecondary","containedSuccess","containedError","containedInfo","containedWarning","disableElevation","focusVisible","disabled","colorInherit","colorPrimary","colorSecondary","colorSuccess","colorError","colorInfo","colorWarning","textSizeSmall","textSizeMedium","textSizeLarge","outlinedSizeSmall","outlinedSizeMedium","outlinedSizeLarge","containedSizeSmall","containedSizeMedium","containedSizeLarge","sizeMedium","sizeSmall","sizeLarge","fullWidth","startIcon","endIcon","icon","iconSizeSmall","iconSizeMedium","iconSizeLarge","loading","loadingWrapper","loadingIconPlaceholder","loadingIndicator","loadingPositionCenter","loadingPositionStart","loadingPositionEnd"]),I7=k.createContext({}),A7=k.createContext(void 0),D7=e=>{const{color:t,disableElevation:n,fullWidth:r,size:o,variant:a,loading:s,loadingPosition:i,classes:l}=e,u={root:["root",s&&"loading",a,`${a}${ke(t)}`,`size${ke(o)}`,`${a}Size${ke(o)}`,`color${ke(t)}`,n&&"disableElevation",r&&"fullWidth",s&&`loadingPosition${ke(i)}`],startIcon:["icon","startIcon",`iconSize${ke(o)}`],endIcon:["icon","endIcon",`iconSize${ke(o)}`],loadingIndicator:["loadingIndicator"],loadingWrapper:["loadingWrapper"]},c=Le(u,_7,l);return{...l,...c}},Ax=[{props:{size:"small"},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:"medium"},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:"large"},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],P7=ae(No,{shouldForwardProp:e=>fn(e)||e==="classes",name:"MuiButton",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${ke(n.color)}`],t[`size${ke(n.size)}`],t[`${n.variant}Size${ke(n.size)}`],n.color==="inherit"&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth,n.loading&&t.loading]}})(Je(({theme:e})=>{const t=e.palette.mode==="light"?e.palette.grey[300]:e.palette.grey[800],n=e.palette.mode==="light"?e.palette.grey.A100:e.palette.grey[700];return{...e.typography.button,minWidth:64,padding:"6px 16px",border:0,borderRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create(["background-color","box-shadow","border-color","color"],{duration:e.transitions.duration.short}),"&:hover":{textDecoration:"none"},[`&.${po.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:{variant:"contained"},style:{color:"var(--variant-containedColor)",backgroundColor:"var(--variant-containedBg)",boxShadow:(e.vars||e).shadows[2],"&:hover":{boxShadow:(e.vars||e).shadows[4],"@media (hover: none)":{boxShadow:(e.vars||e).shadows[2]}},"&:active":{boxShadow:(e.vars||e).shadows[8]},[`&.${po.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},[`&.${po.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}},{props:{variant:"outlined"},style:{padding:"5px 15px",border:"1px solid currentColor",borderColor:"var(--variant-outlinedBorder, currentColor)",backgroundColor:"var(--variant-outlinedBg)",color:"var(--variant-outlinedColor)",[`&.${po.disabled}`]:{border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`}}},{props:{variant:"text"},style:{padding:"6px 8px",color:"var(--variant-textColor)",backgroundColor:"var(--variant-textBg)"}},...Object.entries(e.palette).filter(dn()).map(([r])=>({props:{color:r},style:{"--variant-textColor":(e.vars||e).palette[r].main,"--variant-outlinedColor":(e.vars||e).palette[r].main,"--variant-outlinedBorder":e.alpha((e.vars||e).palette[r].main,.5),"--variant-containedColor":(e.vars||e).palette[r].contrastText,"--variant-containedBg":(e.vars||e).palette[r].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(e.vars||e).palette[r].dark,"--variant-textBg":e.alpha((e.vars||e).palette[r].main,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBorder":(e.vars||e).palette[r].main,"--variant-outlinedBg":e.alpha((e.vars||e).palette[r].main,(e.vars||e).palette.action.hoverOpacity)}}}})),{props:{color:"inherit"},style:{color:"inherit",borderColor:"currentColor","--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedBg:t,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity)}}}},{props:{size:"small",variant:"text"},style:{padding:"4px 5px",fontSize:e.typography.pxToRem(13)}},{props:{size:"large",variant:"text"},style:{padding:"8px 11px",fontSize:e.typography.pxToRem(15)}},{props:{size:"small",variant:"outlined"},style:{padding:"3px 9px",fontSize:e.typography.pxToRem(13)}},{props:{size:"large",variant:"outlined"},style:{padding:"7px 21px",fontSize:e.typography.pxToRem(15)}},{props:{size:"small",variant:"contained"},style:{padding:"4px 10px",fontSize:e.typography.pxToRem(13)}},{props:{size:"large",variant:"contained"},style:{padding:"8px 22px",fontSize:e.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:"none","&:hover":{boxShadow:"none"},[`&.${po.focusVisible}`]:{boxShadow:"none"},"&:active":{boxShadow:"none"},[`&.${po.disabled}`]:{boxShadow:"none"}}},{props:{fullWidth:!0},style:{width:"100%"}},{props:{loadingPosition:"center"},style:{transition:e.transitions.create(["background-color","box-shadow","border-color"],{duration:e.transitions.duration.short}),[`&.${po.loading}`]:{color:"transparent"}}}]}})),R7=ae("span",{name:"MuiButton",slot:"StartIcon",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.startIcon,n.loading&&t.startIconLoadingStart,t[`iconSize${ke(n.size)}`]]}})(({theme:e})=>({display:"inherit",marginRight:8,marginLeft:-4,variants:[{props:{size:"small"},style:{marginLeft:-2}},{props:{loadingPosition:"start",loading:!0},style:{transition:e.transitions.create(["opacity"],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:"start",loading:!0,fullWidth:!0},style:{marginRight:-8}},...Ax]})),M7=ae("span",{name:"MuiButton",slot:"EndIcon",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.endIcon,n.loading&&t.endIconLoadingEnd,t[`iconSize${ke(n.size)}`]]}})(({theme:e})=>({display:"inherit",marginRight:-4,marginLeft:8,variants:[{props:{size:"small"},style:{marginRight:-2}},{props:{loadingPosition:"end",loading:!0},style:{transition:e.transitions.create(["opacity"],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:"end",loading:!0,fullWidth:!0},style:{marginLeft:-8}},...Ax]})),N7=ae("span",{name:"MuiButton",slot:"LoadingIndicator"})(({theme:e})=>({display:"none",position:"absolute",visibility:"visible",variants:[{props:{loading:!0},style:{display:"flex"}},{props:{loadingPosition:"start"},style:{left:14}},{props:{loadingPosition:"start",size:"small"},style:{left:10}},{props:{variant:"text",loadingPosition:"start"},style:{left:6}},{props:{loadingPosition:"center"},style:{left:"50%",transform:"translate(-50%)",color:(e.vars||e).palette.action.disabled}},{props:{loadingPosition:"end"},style:{right:14}},{props:{loadingPosition:"end",size:"small"},style:{right:10}},{props:{variant:"text",loadingPosition:"end"},style:{right:6}},{props:{loadingPosition:"start",fullWidth:!0},style:{position:"relative",left:-10}},{props:{loadingPosition:"end",fullWidth:!0},style:{position:"relative",right:-10}}]})),Kg=ae("span",{name:"MuiButton",slot:"LoadingIconPlaceholder"})({display:"inline-block",width:"1em",height:"1em"}),Dt=k.forwardRef(function(t,n){const r=k.useContext(I7),o=k.useContext(A7),a=Fs(r,t),s=Qe({props:a,name:"MuiButton"}),{children:i,color:l="primary",component:u="button",className:c,disabled:d=!1,disableElevation:m=!1,disableFocusRipple:f=!1,endIcon:h,focusVisibleClassName:b,fullWidth:g=!1,id:x,loading:E=null,loadingIndicator:C,loadingPosition:T="center",size:w="medium",startIcon:S,type:O,variant:F="text",...B}=s,P=nr(x),N=C??p.jsx(Up,{"aria-labelledby":P,color:"inherit",size:16}),v={...s,color:l,component:u,disabled:d,disableElevation:m,disableFocusRipple:f,fullWidth:g,loading:E,loadingIndicator:N,loadingPosition:T,size:w,type:O,variant:F},M=D7(v),A=(S||E&&T==="start")&&p.jsx(R7,{className:M.startIcon,ownerState:v,children:S||p.jsx(Kg,{className:M.loadingIconPlaceholder,ownerState:v})}),D=(h||E&&T==="end")&&p.jsx(M7,{className:M.endIcon,ownerState:v,children:h||p.jsx(Kg,{className:M.loadingIconPlaceholder,ownerState:v})}),R=o||"",z=typeof E=="boolean"?p.jsx("span",{className:M.loadingWrapper,style:{display:"contents"},children:E&&p.jsx(N7,{className:M.loadingIndicator,ownerState:v,children:N})}):null;return p.jsxs(P7,{ownerState:v,className:De(r.className,M.root,c,R),component:u,disabled:d||E,focusRipple:!f,focusVisibleClassName:De(M.focusVisible,b),ref:n,type:O,id:E?P:x,...B,classes:M,children:[A,T!=="end"&&z,i,T==="end"&&z,D]})});function O7(e){return Fe("MuiDialogActions",e)}Re("MuiDialogActions",["root","spacing"]);const L7=e=>{const{classes:t,disableSpacing:n}=e;return Le({root:["root",!n&&"spacing"]},O7,t)},F7=ae("div",{name:"MuiDialogActions",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,!n.disableSpacing&&t.spacing]}})({display:"flex",alignItems:"center",padding:8,justifyContent:"flex-end",flex:"0 0 auto",variants:[{props:({ownerState:e})=>!e.disableSpacing,style:{"& > :not(style) ~ :not(style)":{marginLeft:8}}}]}),Tr=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogActions"}),{className:o,disableSpacing:a=!1,...s}=r,i={...r,disableSpacing:a},l=L7(i);return p.jsx(F7,{className:De(l.root,o),ownerState:i,ref:n,...s})}),$7=["onAccept","onClear","onCancel","onSetToday","actions"];function B7(e){const{onAccept:t,onClear:n,onCancel:r,onSetToday:o,actions:a}=e,s=je(e,$7),i=Hr();if(a==null||a.length===0)return null;const l=a?.map(u=>{switch(u){case"clear":return p.jsx(Dt,{onClick:n,children:i.clearButtonLabel},u);case"cancel":return p.jsx(Dt,{onClick:r,children:i.cancelButtonLabel},u);case"accept":return p.jsx(Dt,{onClick:t,children:i.okButtonLabel},u);case"today":return p.jsx(Dt,{onClick:o,children:i.todayButtonLabel},u);default:return null}});return p.jsx(Tr,H({},s,{children:l}))}function j7(e){return Fe("MuiListItem",e)}Re("MuiListItem",["root","container","dense","alignItemsFlexStart","divider","gutters","padding","secondaryAction"]);const H7=Re("MuiListItemButton",["root","focusVisible","dense","alignItemsFlexStart","disabled","divider","gutters","selected"]);function U7(e){return Fe("MuiListItemSecondaryAction",e)}Re("MuiListItemSecondaryAction",["root","disableGutters"]);const z7=e=>{const{disableGutters:t,classes:n}=e;return Le({root:["root",t&&"disableGutters"]},U7,n)},V7=ae("div",{name:"MuiListItemSecondaryAction",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.disableGutters&&t.disableGutters]}})({position:"absolute",right:16,top:"50%",transform:"translateY(-50%)",variants:[{props:({ownerState:e})=>e.disableGutters,style:{right:0}}]}),Dx=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiListItemSecondaryAction"}),{className:o,...a}=r,s=k.useContext(Io),i={...r,disableGutters:s.disableGutters},l=z7(i);return p.jsx(V7,{className:De(l.root,o),ownerState:i,ref:n,...a})});Dx.muiName="ListItemSecondaryAction";const W7=(e,t)=>{const{ownerState:n}=e;return[t.root,n.dense&&t.dense,n.alignItems==="flex-start"&&t.alignItemsFlexStart,n.divider&&t.divider,!n.disableGutters&&t.gutters,!n.disablePadding&&t.padding,n.hasSecondaryAction&&t.secondaryAction]},q7=e=>{const{alignItems:t,classes:n,dense:r,disableGutters:o,disablePadding:a,divider:s,hasSecondaryAction:i}=e;return Le({root:["root",r&&"dense",!o&&"gutters",!a&&"padding",s&&"divider",t==="flex-start"&&"alignItemsFlexStart",i&&"secondaryAction"],container:["container"]},j7,n)},Y7=ae("div",{name:"MuiListItem",slot:"Root",overridesResolver:W7})(Je(({theme:e})=>({display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",textDecoration:"none",width:"100%",boxSizing:"border-box",textAlign:"left",variants:[{props:({ownerState:t})=>!t.disablePadding,style:{paddingTop:8,paddingBottom:8}},{props:({ownerState:t})=>!t.disablePadding&&t.dense,style:{paddingTop:4,paddingBottom:4}},{props:({ownerState:t})=>!t.disablePadding&&!t.disableGutters,style:{paddingLeft:16,paddingRight:16}},{props:({ownerState:t})=>!t.disablePadding&&!!t.secondaryAction,style:{paddingRight:48}},{props:({ownerState:t})=>!!t.secondaryAction,style:{[`& > .${H7.root}`]:{paddingRight:48}}},{props:{alignItems:"flex-start"},style:{alignItems:"flex-start"}},{props:({ownerState:t})=>t.divider,style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`,backgroundClip:"padding-box"}},{props:({ownerState:t})=>t.button,style:{transition:e.transitions.create("background-color",{duration:e.transitions.duration.shortest}),"&:hover":{textDecoration:"none",backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}}}},{props:({ownerState:t})=>t.hasSecondaryAction,style:{paddingRight:48}}]}))),G7=ae("li",{name:"MuiListItem",slot:"Container"})({position:"relative"}),K7=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiListItem"}),{alignItems:o="center",children:a,className:s,component:i,components:l={},componentsProps:u={},ContainerComponent:c="li",ContainerProps:{className:d,...m}={},dense:f=!1,disableGutters:h=!1,disablePadding:b=!1,divider:g=!1,secondaryAction:x,slotProps:E={},slots:C={},...T}=r,w=k.useContext(Io),S=k.useMemo(()=>({dense:f||w.dense||!1,alignItems:o,disableGutters:h}),[o,w.dense,f,h]),O=k.useRef(null),F=k.Children.toArray(a),B=F.length&&zi(F[F.length-1],["ListItemSecondaryAction"]),P={...r,alignItems:o,dense:S.dense,disableGutters:h,disablePadding:b,divider:g,hasSecondaryAction:B},N=q7(P),v=nt(O,n),M=C.root||l.Root||Y7,A=E.root||u.root||{},D={className:De(N.root,A.className,s),...T};let R=i||"li";return B?(R=!D.component&&!i?"div":R,c==="li"&&(R==="li"?R="div":D.component==="li"&&(D.component="div")),p.jsx(Io.Provider,{value:S,children:p.jsxs(G7,{as:c,className:De(N.container,d),ref:v,ownerState:P,...m,children:[p.jsx(M,{...A,...!wa(M)&&{as:R,ownerState:{...P,...A.ownerState}},...D,children:F}),F.pop()]})})):p.jsx(Io.Provider,{value:S,children:p.jsxs(M,{...A,as:R,ref:v,...!wa(M)&&{ownerState:{...P,...A.ownerState}},...D,children:[F,x&&p.jsx(Dx,{children:x})]})})}),Ks=36,Au=2,Du=320,Q7=280,tf=336,X7=["items","changeImportance","isLandscape","onChange","isValid"],Z7=["getValue"];function J7(e){const{items:t,changeImportance:n="accept",onChange:r,isValid:o}=e,a=je(e,X7);if(t==null||t.length===0)return null;const s=t.map(i=>{let{getValue:l}=i,u=je(i,Z7);const c=l({isValid:o});return H({},u,{label:u.label,onClick:()=>{r(c,n,u)},disabled:!o(c)})});return p.jsx(Xy,H({dense:!0,sx:[{maxHeight:tf,maxWidth:200,overflow:"auto"},...Array.isArray(a.sx)?a.sx:[a.sx]]},a,{children:s.map(i=>p.jsx(K7,{children:p.jsx(Gy,H({},i))},i.id??i.label))}))}function e$(e){return e.view!==null}const t$=e=>{const{classes:t,isLandscape:n}=e;return Le({root:["root",n&&"landscape"],contentWrapper:["contentWrapper"],toolbar:["toolbar"],actionBar:["actionBar"],tabs:["tabs"],landscape:["landscape"],shortcuts:["shortcuts"]},Ix,t)},n$=e=>{const{wrapperVariant:t,onAccept:n,onClear:r,onCancel:o,onSetToday:a,view:s,views:i,onViewChange:l,value:u,onChange:c,onSelectShortcut:d,isValid:m,isLandscape:f,disabled:h,readOnly:b,children:g,slots:x,slotProps:E}=e,C=t$(e),T=x?.actionBar??B7,w=tt({elementType:T,externalSlotProps:E?.actionBar,additionalProps:{onAccept:n,onClear:r,onCancel:o,onSetToday:a,actions:t==="desktop"?[]:["cancel","accept"]},className:C.actionBar,ownerState:H({},e,{wrapperVariant:t})}),S=p.jsx(T,H({},w)),O=x?.toolbar,F=tt({elementType:O,externalSlotProps:E?.toolbar,additionalProps:{isLandscape:f,onChange:c,value:u,view:s,onViewChange:l,views:i,disabled:h,readOnly:b},className:C.toolbar,ownerState:H({},e,{wrapperVariant:t})}),B=e$(F)&&O?p.jsx(O,H({},F)):null,P=g,N=x?.tabs,v=s&&N?p.jsx(N,H({view:s,onViewChange:l,className:C.tabs},E?.tabs)):null,M=x?.shortcuts??J7,A=tt({elementType:M,externalSlotProps:E?.shortcuts,additionalProps:{isValid:m,isLandscape:f,onChange:d},className:C.shortcuts,ownerState:{isValid:m,isLandscape:f,onChange:d,wrapperVariant:t}}),D=s&&M?p.jsx(M,H({},A)):null;return{toolbar:B,content:P,tabs:v,actionBar:S,shortcuts:D}},r$=e=>{const{isLandscape:t,classes:n}=e;return Le({root:["root",t&&"landscape"],contentWrapper:["contentWrapper"]},Ix,n)},o$=ae("div",{name:"MuiPickersLayout",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"grid",gridAutoColumns:"max-content auto max-content",gridAutoRows:"max-content auto max-content",[`& .${co.actionBar}`]:{gridColumn:"1 / 4",gridRow:3},variants:[{props:{isLandscape:!0},style:{[`& .${co.toolbar}`]:{gridColumn:1,gridRow:"2 / 3"},[`.${co.shortcuts}`]:{gridColumn:"2 / 4",gridRow:1}}},{props:{isLandscape:!0,isRtl:!0},style:{[`& .${co.toolbar}`]:{gridColumn:3}}},{props:{isLandscape:!1},style:{[`& .${co.toolbar}`]:{gridColumn:"2 / 4",gridRow:1},[`& .${co.shortcuts}`]:{gridColumn:1,gridRow:"2 / 3"}}},{props:{isLandscape:!1,isRtl:!0},style:{[`& .${co.shortcuts}`]:{gridColumn:3}}}]}),a$=ae("div",{name:"MuiPickersLayout",slot:"ContentWrapper",overridesResolver:(e,t)=>t.contentWrapper})({gridColumn:2,gridRow:2,display:"flex",flexDirection:"column"}),Px=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersLayout"}),{toolbar:o,content:a,tabs:s,actionBar:i,shortcuts:l}=n$(r),{sx:u,className:c,isLandscape:d,wrapperVariant:m}=r,f=r$(r);return p.jsxs(o$,{ref:n,sx:u,className:De(f.root,c),ownerState:r,children:[d?l:o,d?o:l,p.jsx(a$,{className:f.contentWrapper,children:m==="desktop"?p.jsxs(k.Fragment,{children:[a,s]}):p.jsxs(k.Fragment,{children:[s,a]})}),i]})}),s$=k.createContext(null);function Rx(e){const{contextValue:t,localeText:n,children:r}=e;return p.jsx(s$.Provider,{value:t,children:p.jsx(Ld,{localeText:n,children:r})})}const i$=["props","getOpenDialogAriaText"],l$=["ownerState"],u$=["ownerState"],c$=e=>{let{props:t,getOpenDialogAriaText:n}=e,r=je(e,i$);const{slots:o,slotProps:a,className:s,sx:i,format:l,formatDensity:u,enableAccessibleFieldDOMStructure:c,selectedSections:d,onSelectedSectionsChange:m,timezone:f,name:h,label:b,inputRef:g,readOnly:x,disabled:E,autoFocus:C,localeText:T,reduceAnimations:w}=t,S=k.useRef(null),O=k.useRef(null),F=nr(),B=a?.toolbar?.hidden??!1,{open:P,actions:N,hasUIView:v,layoutProps:M,renderCurrentView:A,shouldRestoreFocus:D,fieldProps:R,contextValue:z,ownerState:U}=_x(H({},r,{props:t,fieldRef:O,autoFocusView:!0,additionalViewProps:{},wrapperVariant:"desktop"})),j=o.inputAdornment??Sx,_=tt({elementType:j,externalSlotProps:a?.inputAdornment,additionalProps:{position:"end"},ownerState:t}),K=je(_,l$),ne=o.openPickerButton??yr,L=tt({elementType:ne,externalSlotProps:a?.openPickerButton,additionalProps:{disabled:E||x,onClick:P?N.onClose:N.onOpen,"aria-label":n(R.value),edge:K.position},ownerState:t}),fe=je(L,u$),X=o.openPickerIcon,q=tt({elementType:X,externalSlotProps:a?.openPickerIcon,ownerState:U}),te=o.field,Z=tt({elementType:te,externalSlotProps:a?.field,additionalProps:H({},R,B&&{id:F},{readOnly:x,disabled:E,className:s,sx:i,format:l,formatDensity:u,enableAccessibleFieldDOMStructure:c,selectedSections:d,onSelectedSectionsChange:m,timezone:f,label:b,name:h,autoFocus:C&&!t.open,focused:P?!0:void 0},g?{inputRef:g}:{}),ownerState:t});v&&(Z.InputProps=H({},Z.InputProps,{ref:S},!t.disableOpenPicker&&{[`${K.position}Adornment`]:p.jsx(j,H({},K,{children:p.jsx(ne,H({},fe,{children:p.jsx(X,H({},q))}))}))}));const re=H({textField:o.textField,clearIcon:o.clearIcon,clearButton:o.clearButton},Z.slots),Q=o.layout??Px;let G=F;B&&(b?G=`${F}-label`:G=void 0);const se=H({},a,{toolbar:H({},a?.toolbar,{titleId:F}),popper:H({"aria-labelledby":G},a?.popper)}),J=nt(O,Z.unstableFieldRef);return{renderPicker:()=>p.jsxs(Rx,{contextValue:z,localeText:T,children:[p.jsx(te,H({},Z,{slots:re,slotProps:se,unstableFieldRef:J})),p.jsx(g7,H({role:"dialog",placement:"bottom-start",anchorEl:S.current},N,{open:P,slots:o,slotProps:se,shouldRestoreFocus:D,reduceAnimations:w,children:p.jsx(Q,H({},M,se?.layout,{slots:o,slotProps:se,children:A()}))}))]})}},d$=rt(p.jsx("path",{d:"M7 10l5 5 5-5z"})),p$=rt(p.jsx("path",{d:"M15.41 16.59L10.83 12l4.58-4.59L14 6l-6 6 6 6 1.41-1.41z"})),f$=rt(p.jsx("path",{d:"M8.59 16.59L13.17 12 8.59 7.41 10 6l6 6-6 6-1.41-1.41z"})),m$=rt(p.jsx("path",{d:"M17 12h-5v5h5v-5zM16 1v2H8V1H6v2H5c-1.11 0-1.99.9-1.99 2L3 19c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2h-1V1h-2zm3 18H5V8h14v11z"}));rt(p.jsxs(k.Fragment,{children:[p.jsx("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),p.jsx("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})]}));rt(p.jsx("path",{d:"M9 11H7v2h2v-2zm4 0h-2v2h2v-2zm4 0h-2v2h2v-2zm2-7h-1V2h-2v2H8V2H6v2H5c-1.11 0-1.99.9-1.99 2L3 20c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 16H5V9h14v11z"}));rt(p.jsxs(k.Fragment,{children:[p.jsx("path",{d:"M11.99 2C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z"}),p.jsx("path",{d:"M12.5 7H11v6l5.25 3.15.75-1.23-4.5-2.67z"})]}));const h$=rt(p.jsx("path",{d:"M19 6.41 17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"})),g$=({utils:e,format:t})=>{let n=10,r=t,o=e.expandFormat(t);for(;o!==r;)if(r=o,o=e.expandFormat(r),n-=1,n<0)throw new Error("MUI X: The format expansion seems to be in an infinite loop. Please open an issue with the format passed to the picker component.");return o},b$=({utils:e,expandedFormat:t})=>{const n=[],{start:r,end:o}=e.escapedCharacters,a=new RegExp(`(\\${r}[^\\${o}]*\\${o})+`,"g");let s=null;for(;s=a.exec(t);)n.push({start:s.index,end:a.lastIndex-1});return n},y$=(e,t,n,r)=>{switch(n.type){case"year":return t.fieldYearPlaceholder({digitAmount:e.formatByString(e.date(void 0,"default"),r).length,format:r});case"month":return t.fieldMonthPlaceholder({contentType:n.contentType,format:r});case"day":return t.fieldDayPlaceholder({format:r});case"weekDay":return t.fieldWeekDayPlaceholder({contentType:n.contentType,format:r});case"hours":return t.fieldHoursPlaceholder({format:r});case"minutes":return t.fieldMinutesPlaceholder({format:r});case"seconds":return t.fieldSecondsPlaceholder({format:r});case"meridiem":return t.fieldMeridiemPlaceholder({format:r});default:return r}},x$=({utils:e,date:t,shouldRespectLeadingZeros:n,localeText:r,localizedDigits:o,now:a,token:s,startSeparator:i})=>{if(s==="")throw new Error("MUI X: Should not call `commitToken` with an empty token");const l=fx(e,s),u=bx(e,l.contentType,l.type,s),c=n?u:l.contentType==="digit",d=t!=null&&e.isValid(t);let m=d?e.formatByString(t,s):"",f=null;if(c)if(u)f=m===""?e.formatByString(a,s).length:m.length;else{if(l.maxLength==null)throw new Error(`MUI X: The token ${s} should have a 'maxDigitNumber' property on it's adapter`);f=l.maxLength,d&&(m=Xp(hx(Lo(m,o),f),o))}return H({},l,{format:s,maxLength:f,value:m,placeholder:y$(e,r,l,s),hasLeadingZerosInFormat:u,hasLeadingZerosInInput:c,startSeparator:i,endSeparator:"",modified:!1})},C$=e=>{const{utils:t,expandedFormat:n,escapedParts:r}=e,o=t.date(void 0),a=[];let s="";const i=Object.keys(t.formatTokenMap).sort((f,h)=>h.length-f.length),l=/^([a-zA-Z]+)/,u=new RegExp(`^(${i.join("|")})*$`),c=new RegExp(`^(${i.join("|")})`),d=f=>r.find(h=>h.start<=f&&h.end>=f);let m=0;for(;m<n.length;){const f=d(m),h=f!=null,b=l.exec(n.slice(m))?.[1];if(!h&&b!=null&&u.test(b)){let g=b;for(;g.length>0;){const x=c.exec(g)[1];g=g.slice(x.length),a.push(x$(H({},e,{now:o,token:x,startSeparator:s}))),s=""}m+=b.length}else{const g=n[m];h&&f?.start===m||f?.end===m||(a.length===0?s+=g:a[a.length-1].endSeparator+=g),m+=1}}return a.length===0&&s.length>0&&a.push({type:"empty",contentType:"letter",maxLength:null,format:"",value:"",placeholder:"",hasLeadingZerosInFormat:!1,hasLeadingZerosInInput:!1,startSeparator:s,endSeparator:"",modified:!1}),a},E$=({isRtl:e,formatDensity:t,sections:n})=>n.map(r=>{const o=a=>{let s=a;return e&&s!==null&&s.includes(" ")&&(s=`⁩${s}⁦`),t==="spacious"&&["/",".","-"].includes(s)&&(s=` ${s} `),s};return r.startSeparator=o(r.startSeparator),r.endSeparator=o(r.endSeparator),r}),Qg=e=>{let t=g$(e);e.isRtl&&e.enableAccessibleFieldDOMStructure&&(t=t.split(" ").reverse().join(" "));const n=b$(H({},e,{expandedFormat:t})),r=C$(H({},e,{expandedFormat:t,escapedParts:n}));return E$(H({},e,{sections:r}))},v$=e=>{const t=_t(),n=Hr(),r=Uo(),o=Yn(),{valueManager:a,fieldValueManager:s,valueType:i,validator:l,internalProps:u,internalProps:{value:c,defaultValue:d,referenceDate:m,onChange:f,format:h,formatDensity:b="dense",selectedSections:g,onSelectedSectionsChange:x,shouldRespectLeadingZeros:E=!1,timezone:C,enableAccessibleFieldDOMStructure:T=!1}}=e,{timezone:w,value:S,handleValueChange:O}=Jp({timezone:C,value:c,defaultValue:d,referenceDate:m,onChange:f,valueManager:a}),F=k.useMemo(()=>EF(t),[t]),B=k.useMemo(()=>_F(t,F,w),[t,F,w]),P=k.useCallback((X,q=null)=>s.getSectionsFromValue(t,X,q,te=>Qg({utils:t,localeText:n,localizedDigits:F,format:h,date:te,formatDensity:b,shouldRespectLeadingZeros:E,enableAccessibleFieldDOMStructure:T,isRtl:o})),[s,h,n,F,o,E,t,b,T]),[N,v]=k.useState(()=>{const X=P(S),q={sections:X,value:S,referenceValue:a.emptyValue,tempValueStrAndroid:null},te=bF(X),Z=a.getInitialReferenceValue({referenceDate:m,value:S,utils:t,props:u,granularity:te,timezone:w});return H({},q,{referenceValue:Z})}),[M,A]=_n({controlled:g,default:null,name:"useField",state:"selectedSections"}),D=X=>{A(X),x?.(X)},R=k.useMemo(()=>Nd(M,N.sections),[M,N.sections]),z=R==="all"?0:R,U=({value:X,referenceValue:q,sections:te})=>{if(v(re=>H({},re,{sections:te,value:X,referenceValue:q,tempValueStrAndroid:null})),a.areValuesEqual(t,N.value,X))return;const Z={validationError:l({adapter:r,value:X,timezone:w,props:u})};O(X,Z)},j=(X,q)=>{const te=[...N.sections];return te[X]=H({},te[X],{value:q,modified:!0}),te},_=()=>{U({value:a.emptyValue,referenceValue:N.referenceValue,sections:P(a.emptyValue)})},K=()=>{if(z==null)return;const X=N.sections[z],q=s.getActiveDateManager(t,N,X),Z=q.getSections(N.sections).filter(se=>se.value!=="").length===(X.value===""?0:1),re=j(z,""),Q=Z?null:t.getInvalidDate(),G=q.getNewValuesFromNewActiveDate(Q);U(H({},G,{sections:re}))},ne=X=>{const q=(re,Q)=>{const G=t.parse(re,h);if(G==null||!t.isValid(G))return null;const se=Qg({utils:t,localeText:n,localizedDigits:F,format:h,date:G,formatDensity:b,shouldRespectLeadingZeros:E,enableAccessibleFieldDOMStructure:T,isRtl:o});return zg(t,G,se,Q,!1)},te=s.parseValueStr(X,N.referenceValue,q),Z=s.updateReferenceValue(t,te,N.referenceValue);U({value:te,referenceValue:Z,sections:P(te,N.sections)})},L=({activeSection:X,newSectionValue:q,shouldGoToNextSection:te})=>{te&&z<N.sections.length-1&&D(z+1);const Z=s.getActiveDateManager(t,N,X),re=j(z,q),Q=Z.getSections(re),G=SF(t,Q,F);let se,J;if(G!=null&&t.isValid(G)){const ee=zg(t,G,Q,Z.referenceDate,!0);se=Z.getNewValuesFromNewActiveDate(ee),J=!0}else se=Z.getNewValuesFromNewActiveDate(G),J=(G!=null&&!t.isValid(G))!=(Z.date!=null&&!t.isValid(Z.date));return J?U(H({},se,{sections:re})):v(ee=>H({},ee,se,{sections:re,tempValueStrAndroid:null}))},fe=X=>v(q=>H({},q,{tempValueStrAndroid:X}));return k.useEffect(()=>{const X=P(N.value);v(q=>H({},q,{sections:X}))},[h,t.locale,o]),k.useEffect(()=>{let X;a.areValuesEqual(t,N.value,S)?X=a.getTimezone(t,N.value)!==a.getTimezone(t,S):X=!0,X&&v(q=>H({},q,{value:S,referenceValue:s.updateReferenceValue(t,S,q.referenceValue),sections:P(S)}))},[S]),{state:N,activeSectionIndex:z,parsedSelectedSections:R,setSelectedSections:D,clearValue:_,clearActiveSection:K,updateSectionValue:L,updateValueFromValueStr:ne,setTempAndroidValueStr:fe,getSectionsFromValue:P,sectionsValueBoundaries:B,localizedDigits:F,timezone:w}},T$=5e3,ta=e=>e.saveQuery!=null,S$=({sections:e,updateSectionValue:t,sectionsValueBoundaries:n,localizedDigits:r,setTempAndroidValueStr:o,timezone:a})=>{const s=_t(),[i,l]=k.useState(null),u=Ae(()=>l(null));k.useEffect(()=>{i!=null&&e[i.sectionIndex]?.type!==i.sectionType&&u()},[e,i,u]),k.useEffect(()=>{if(i!=null){const h=setTimeout(()=>u(),T$);return()=>{clearTimeout(h)}}return()=>{}},[i,u]);const c=({keyPressed:h,sectionIndex:b},g,x)=>{const E=h.toLowerCase(),C=e[b];if(i!=null&&(!x||x(i.value))&&i.sectionIndex===b){const w=`${i.value}${E}`,S=g(w,C);if(!ta(S))return l({sectionIndex:b,value:w,sectionType:C.type}),S}const T=g(E,C);return ta(T)&&!T.saveQuery?(u(),null):(l({sectionIndex:b,value:E,sectionType:C.type}),ta(T)?null:T)},d=h=>{const b=(E,C,T)=>{const w=C.filter(S=>S.toLowerCase().startsWith(T));return w.length===0?{saveQuery:!1}:{sectionValue:w[0],shouldGoToNextSection:w.length===1}},g=(E,C,T,w)=>{const S=O=>mx(s,a,C.type,O);if(C.contentType==="letter")return b(C.format,S(C.format),E);if(T&&w!=null&&fx(s,T).contentType==="letter"){const O=S(T),F=b(T,O,E);return ta(F)?{saveQuery:!1}:H({},F,{sectionValue:w(F.sectionValue,O)})}return{saveQuery:!1}};return c(h,(E,C)=>{switch(C.type){case"month":{const T=w=>Hg(s,w,s.formats.month,C.format);return g(E,C,s.formats.month,T)}case"weekDay":{const T=(w,S)=>S.indexOf(w).toString();return g(E,C,s.formats.weekday,T)}case"meridiem":return g(E,C);default:return{saveQuery:!1}}})},m=h=>{const b=(x,E)=>{const C=Lo(x,r),T=Number(C),w=n[E.type]({currentDate:null,format:E.format,contentType:E.contentType});if(T>w.maximum)return{saveQuery:!1};if(T<w.minimum)return{saveQuery:!0};const S=T*10>w.maximum||C.length===w.maximum.toString().length;return{sectionValue:gx(s,T,w,r,E),shouldGoToNextSection:S}};return c(h,(x,E)=>{if(E.contentType==="digit"||E.contentType==="digit-with-letter")return b(x,E);if(E.type==="month"){bx(s,"digit","month","MM");const C=b(x,{type:E.type,format:"MM",hasLeadingZerosInInput:!0,contentType:"digit",maxLength:2});if(ta(C))return C;const T=Hg(s,C.sectionValue,"MM",E.format);return H({},C,{sectionValue:T})}if(E.type==="weekDay"){const C=b(x,E);if(ta(C))return C;const T=_u(s,E.format)[Number(C.sectionValue)-1];return H({},C,{sectionValue:T})}return{saveQuery:!1}},x=>jg(x,r))};return{applyCharacterEditing:Ae(h=>{const b=e[h.sectionIndex],x=jg(h.keyPressed,r)?m(H({},h,{keyPressed:Xp(h.keyPressed,r)})):d(h);if(x==null){o(null);return}t({activeSection:b,newSectionValue:x.sectionValue,shouldGoToNextSection:x.shouldGoToNextSection})}),resetCharacterQuery:u}},k$=e=>{const{internalProps:{disabled:t,readOnly:n=!1},forwardedProps:{sectionListRef:r,onBlur:o,onClick:a,onFocus:s,onInput:i,onPaste:l,focused:u,autoFocus:c=!1},fieldValueManager:d,applyCharacterEditing:m,resetCharacterQuery:f,setSelectedSections:h,parsedSelectedSections:b,state:g,clearActiveSection:x,clearValue:E,updateSectionValue:C,updateValueFromValueStr:T,sectionOrder:w,areAllSectionsEmpty:S,sectionsValueBoundaries:O}=e,F=k.useRef(null),B=nt(r,F),P=Hr(),N=_t(),v=nr(),[M,A]=k.useState(!1),D=k.useMemo(()=>({syncSelectionToDOM:()=>{if(!F.current)return;const J=document.getSelection();if(!J)return;if(b==null){J.rangeCount>0&&F.current.getRoot().contains(J.getRangeAt(0).startContainer)&&J.removeAllRanges(),M&&F.current.getRoot().blur();return}if(!F.current.getRoot().contains(gn(document)))return;const ee=new window.Range;let xe;b==="all"?xe=F.current.getRoot():g.sections[b].type==="empty"?xe=F.current.getSectionContainer(b):xe=F.current.getSectionContent(b),ee.selectNodeContents(xe),xe.focus(),J.removeAllRanges(),J.addRange(ee)},getActiveSectionIndexFromDOM:()=>{const J=gn(document);return!J||!F.current||!F.current.getRoot().contains(J)?null:F.current.getSectionIndexFromDOMElement(J)},focusField:(J=0)=>{if(!F.current||D.getActiveSectionIndexFromDOM()!=null)return;const ee=Nd(J,g.sections);A(!0),F.current.getSectionContent(ee).focus()},setSelectedSections:J=>{if(!F.current)return;const ee=Nd(J,g.sections);A((ee==="all"?0:ee)!==null),h(J)},isFieldFocused:()=>{const J=gn(document);return!!F.current&&F.current.getRoot().contains(J)}}),[b,h,g.sections,M]),R=Ae(J=>{if(!F.current)return;const ee=g.sections[J];F.current.getSectionContent(J).innerHTML=ee.value||ee.placeholder,D.syncSelectionToDOM()}),z=Ae((J,...ee)=>{J.isDefaultPrevented()||!F.current||(A(!0),a?.(J,...ee),b==="all"?setTimeout(()=>{const xe=document.getSelection().getRangeAt(0).startOffset;if(xe===0){h(w.startIndex);return}let de=0,be=0;for(;be<xe&&de<g.sections.length;){const le=g.sections[de];de+=1,be+=`${le.startSeparator}${le.value||le.placeholder}${le.endSeparator}`.length}h(de-1)}):M?F.current.getRoot().contains(J.target)||h(w.startIndex):(A(!0),h(w.startIndex)))}),U=Ae(J=>{if(i?.(J),!F.current||b!=="all")return;const xe=J.target.textContent??"";F.current.getRoot().innerHTML=g.sections.map(de=>`${de.startSeparator}${de.value||de.placeholder}${de.endSeparator}`).join(""),D.syncSelectionToDOM(),xe.length===0||xe.charCodeAt(0)===10?(f(),E(),h("all")):xe.length>1?T(xe):(b==="all"&&h(0),m({keyPressed:xe,sectionIndex:0}))}),j=Ae(J=>{if(l?.(J),n||b!=="all"){J.preventDefault();return}const ee=J.clipboardData.getData("text");J.preventDefault(),f(),T(ee)}),_=Ae((...J)=>{if(s?.(...J),M||!F.current)return;A(!0),F.current.getSectionIndexFromDOMElement(gn(document))!=null||h(w.startIndex)}),K=Ae((...J)=>{o?.(...J),setTimeout(()=>{if(!F.current)return;const ee=gn(document);!F.current.getRoot().contains(ee)&&(A(!1),h(null))})}),ne=Ae(J=>ee=>{ee.isDefaultPrevented()||h(J)}),L=Ae(J=>{J.preventDefault()}),fe=Ae(J=>()=>{h(J)}),X=Ae(J=>{if(J.preventDefault(),n||t||typeof b!="number")return;const ee=g.sections[b],xe=J.clipboardData.getData("text"),de=/^[a-zA-Z]+$/.test(xe),be=/^[0-9]+$/.test(xe),le=/^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(xe);ee.contentType==="letter"&&de||ee.contentType==="digit"&&be||ee.contentType==="digit-with-letter"&&le?(f(),C({activeSection:ee,newSectionValue:xe,shouldGoToNextSection:!0})):!de&&!be&&(f(),T(xe))}),q=Ae(J=>{J.preventDefault(),J.dataTransfer.dropEffect="none"}),te=Ae(J=>{if(!F.current)return;const ee=J.target,xe=ee.textContent??"",de=F.current.getSectionIndexFromDOMElement(ee),be=g.sections[de];if(n||!F.current){R(de);return}if(xe.length===0){if(be.value===""){R(de);return}const le=J.nativeEvent.inputType;if(le==="insertParagraph"||le==="insertLineBreak"){R(de);return}f(),x();return}m({keyPressed:xe,sectionIndex:de}),R(de)});Vt(()=>{if(!(!M||!F.current)){if(b==="all")F.current.getRoot().focus();else if(typeof b=="number"){const J=F.current.getSectionContent(b);J&&J.focus()}}},[b,M]);const Z=k.useMemo(()=>g.sections.reduce((J,ee)=>(J[ee.type]=O[ee.type]({currentDate:null,contentType:ee.contentType,format:ee.format}),J),{}),[O,g.sections]),re=b==="all",Q=k.useMemo(()=>g.sections.map((J,ee)=>{const xe=!re&&!t&&!n;return{container:{"data-sectionindex":ee,onClick:ne(ee)},content:{tabIndex:re||ee>0?-1:0,contentEditable:!re&&!t&&!n,role:"spinbutton",id:`${v}-${J.type}`,"aria-labelledby":`${v}-${J.type}`,"aria-readonly":n,"aria-valuenow":RF(J,N),"aria-valuemin":Z[J.type].minimum,"aria-valuemax":Z[J.type].maximum,"aria-valuetext":J.value?PF(J,N):P.empty,"aria-label":P[J.type],"aria-disabled":t,spellCheck:xe?!1:void 0,autoCapitalize:xe?"off":void 0,autoCorrect:xe?"off":void 0,[parseInt(k.version,10)>=17?"enterKeyHint":"enterkeyhint"]:xe?"next":void 0,children:J.value||J.placeholder,onInput:te,onPaste:X,onFocus:fe(ee),onDragOver:q,onMouseUp:L,inputMode:J.contentType==="letter"?"text":"numeric"},before:{children:J.startSeparator},after:{children:J.endSeparator}}}),[g.sections,fe,X,q,te,ne,L,t,n,re,P,N,Z,v]),G=Ae(J=>{T(J.target.value)}),se=k.useMemo(()=>S?"":d.getV7HiddenInputValueFromSections(g.sections),[S,g.sections,d]);return k.useEffect(()=>{if(F.current==null)throw new Error(["MUI X: The `sectionListRef` prop has not been initialized by `PickersSectionList`","You probably tried to pass a component to the `textField` slot that contains an `<input />` element instead of a `PickersSectionList`.","","If you want to keep using an `<input />` HTML element for the editing, please remove the `enableAccessibleFieldDOMStructure` prop from your picker or field component:","","<DatePicker slots={{ textField: MyCustomTextField }} />","","Learn more about the field accessible DOM structure on the MUI documentation: https://mui.com/x/react-date-pickers/fields/#fields-to-edit-a-single-element"].join(`
213
213
  `));c&&F.current&&F.current.getSectionContent(w.startIndex).focus()},[]),{interactions:D,returnedValue:{autoFocus:c,readOnly:n,focused:u??M,sectionListRef:B,onBlur:K,onClick:z,onFocus:_,onInput:U,onPaste:j,enableAccessibleFieldDOMStructure:!0,elements:Q,tabIndex:b===0?-1:0,contentEditable:re,value:se,onChange:G,areAllSectionsEmpty:S}}},sa=e=>e.replace(/[\u2066\u2067\u2068\u2069]/g,""),w$=(e,t,n)=>{let r=0,o=n?1:0;const a=[];for(let s=0;s<e.length;s+=1){const i=e[s],l=Zp(i,n?"input-rtl":"input-ltr",t),u=`${i.startSeparator}${l}${i.endSeparator}`,c=sa(u).length,d=u.length,m=sa(l),f=o+(m===""?0:l.indexOf(m[0]))+i.startSeparator.length,h=f+m.length;a.push(H({},i,{start:r,end:r+c,startInInput:f,endInInput:h})),r+=c,o+=d}return a},_$=e=>{const t=Yn(),n=k.useRef(void 0),r=k.useRef(void 0),{forwardedProps:{onFocus:o,onClick:a,onPaste:s,onBlur:i,inputRef:l,placeholder:u},internalProps:{readOnly:c=!1,disabled:d=!1},parsedSelectedSections:m,activeSectionIndex:f,state:h,fieldValueManager:b,valueManager:g,applyCharacterEditing:x,resetCharacterQuery:E,updateSectionValue:C,updateValueFromValueStr:T,clearActiveSection:w,clearValue:S,setTempAndroidValueStr:O,setSelectedSections:F,getSectionsFromValue:B,areAllSectionsEmpty:P,localizedDigits:N}=e,v=k.useRef(null),M=nt(l,v),A=k.useMemo(()=>w$(h.sections,N,t),[h.sections,N,t]),D=k.useMemo(()=>({syncSelectionToDOM:()=>{if(!v.current)return;if(m==null){v.current.scrollLeft&&(v.current.scrollLeft=0);return}if(v.current!==gn(document))return;const te=v.current.scrollTop;if(m==="all")v.current.select();else{const Z=A[m],re=Z.type==="empty"?Z.startInInput-Z.startSeparator.length:Z.startInInput,Q=Z.type==="empty"?Z.endInInput+Z.endSeparator.length:Z.endInInput;(re!==v.current.selectionStart||Q!==v.current.selectionEnd)&&v.current===gn(document)&&v.current.setSelectionRange(re,Q),clearTimeout(r.current),r.current=setTimeout(()=>{v.current&&v.current===gn(document)&&v.current.selectionStart===v.current.selectionEnd&&(v.current.selectionStart!==re||v.current.selectionEnd!==Q)&&D.syncSelectionToDOM()})}v.current.scrollTop=te},getActiveSectionIndexFromDOM:()=>{const te=v.current.selectionStart??0,Z=v.current.selectionEnd??0;if(te===0&&Z===0)return null;const re=te<=A[0].startInInput?1:A.findIndex(Q=>Q.startInInput-Q.startSeparator.length>te);return re===-1?A.length-1:re-1},focusField:(te=0)=>{gn(document)!==v.current&&(v.current?.focus(),F(te))},setSelectedSections:te=>F(te),isFieldFocused:()=>v.current===gn(document)}),[v,m,A,F]),R=()=>{const te=v.current.selectionStart??0;let Z;te<=A[0].startInInput||te>=A[A.length-1].endInInput?Z=1:Z=A.findIndex(Q=>Q.startInInput-Q.startSeparator.length>te);const re=Z===-1?A.length-1:Z-1;F(re)},z=Ae((...te)=>{o?.(...te);const Z=v.current;clearTimeout(n.current),n.current=setTimeout(()=>{!Z||Z!==v.current||f==null&&(Z.value.length&&Number(Z.selectionEnd)-Number(Z.selectionStart)===Z.value.length?F("all"):R())})}),U=Ae((te,...Z)=>{te.isDefaultPrevented()||(a?.(te,...Z),R())}),j=Ae(te=>{if(s?.(te),te.preventDefault(),c||d)return;const Z=te.clipboardData.getData("text");if(typeof m=="number"){const re=h.sections[m],Q=/^[a-zA-Z]+$/.test(Z),G=/^[0-9]+$/.test(Z),se=/^(([a-zA-Z]+)|)([0-9]+)(([a-zA-Z]+)|)$/.test(Z);if(re.contentType==="letter"&&Q||re.contentType==="digit"&&G||re.contentType==="digit-with-letter"&&se){E(),C({activeSection:re,newSectionValue:Z,shouldGoToNextSection:!0});return}if(Q||G)return}E(),T(Z)}),_=Ae((...te)=>{i?.(...te),F(null)}),K=Ae(te=>{if(c)return;const Z=te.target.value;if(Z===""){E(),S();return}const re=te.nativeEvent.data,Q=re&&re.length>1,G=Q?re:Z,se=sa(G);if(m==="all"&&F(f),f==null||Q){T(Q?re:se);return}let J;if(m==="all"&&se.length===1)J=se;else{const ee=sa(b.getV6InputValueFromSections(A,N,t));let xe=-1,de=-1;for(let Te=0;Te<ee.length;Te+=1)xe===-1&&ee[Te]!==se[Te]&&(xe=Te),de===-1&&ee[ee.length-Te-1]!==se[se.length-Te-1]&&(de=Te);const be=A[f];if(xe<be.start||ee.length-de-1>be.end)return;const Pe=se.length-ee.length+be.end-sa(be.endSeparator||"").length;J=se.slice(be.start+sa(be.startSeparator||"").length,Pe)}if(J.length===0){AF()&&O(G),E(),w();return}x({keyPressed:J,sectionIndex:f})}),ne=k.useMemo(()=>u!==void 0?u:b.getV6InputValueFromSections(B(g.emptyValue),N,t),[u,b,B,g.emptyValue,N,t]),L=k.useMemo(()=>h.tempValueStrAndroid??b.getV6InputValueFromSections(h.sections,N,t),[h.sections,b,h.tempValueStrAndroid,N,t]);k.useEffect(()=>(v.current&&v.current===gn(document)&&F("all"),()=>{clearTimeout(n.current),clearTimeout(r.current)}),[]);const fe=k.useMemo(()=>f==null||h.sections[f].contentType==="letter"?"text":"numeric",[f,h.sections]),q=!(v.current&&v.current===gn(document))&&P;return{interactions:D,returnedValue:{readOnly:c,onBlur:_,onClick:U,onFocus:z,onPaste:j,inputRef:M,enableAccessibleFieldDOMStructure:!1,placeholder:ne,inputMode:fe,autoComplete:"off",value:q?"":L,onChange:K}}},I$=e=>{const t=_t(),{internalProps:n,internalProps:{unstableFieldRef:r,minutesStep:o,enableAccessibleFieldDOMStructure:a=!1,disabled:s=!1,readOnly:i=!1},forwardedProps:{onKeyDown:l,error:u,clearable:c,onClear:d},fieldValueManager:m,valueManager:f,validator:h}=e,b=Yn(),g=v$(e),{state:x,activeSectionIndex:E,parsedSelectedSections:C,setSelectedSections:T,clearValue:w,clearActiveSection:S,updateSectionValue:O,setTempAndroidValueStr:F,sectionsValueBoundaries:B,localizedDigits:P,timezone:N}=g,v=S$({sections:x.sections,updateSectionValue:O,sectionsValueBoundaries:B,localizedDigits:P,setTempAndroidValueStr:F,timezone:N}),{resetCharacterQuery:M}=v,A=f.areValuesEqual(t,x.value,f.emptyValue),D=a?k$:_$,R=k.useMemo(()=>DF(x.sections,b&&!a),[x.sections,b,a]),{returnedValue:z,interactions:U}=D(H({},e,g,v,{areAllSectionsEmpty:A,sectionOrder:R})),j=Ae(X=>{if(l?.(X),!s)switch(!0){case((X.ctrlKey||X.metaKey)&&String.fromCharCode(X.keyCode)==="A"&&!X.shiftKey&&!X.altKey):{X.preventDefault(),T("all");break}case X.key==="ArrowRight":{if(X.preventDefault(),C==null)T(R.startIndex);else if(C==="all")T(R.endIndex);else{const q=R.neighbors[C].rightIndex;q!==null&&T(q)}break}case X.key==="ArrowLeft":{if(X.preventDefault(),C==null)T(R.endIndex);else if(C==="all")T(R.startIndex);else{const q=R.neighbors[C].leftIndex;q!==null&&T(q)}break}case X.key==="Delete":{if(X.preventDefault(),i)break;C==null||C==="all"?w():S(),M();break}case["ArrowUp","ArrowDown","Home","End","PageUp","PageDown"].includes(X.key):{if(X.preventDefault(),i||E==null)break;C==="all"&&T(E);const q=x.sections[E],te=m.getActiveDateManager(t,x,q),Z=vF(t,N,q,X.key,B,P,te.date,{minutesStep:o});O({activeSection:q,newSectionValue:Z,shouldGoToNextSection:!1});break}}});Vt(()=>{U.syncSelectionToDOM()});const{hasValidationError:_}=Tx({props:n,validator:h,timezone:N,value:x.value,onError:n.onError}),K=k.useMemo(()=>u!==void 0?u:_,[_,u]);k.useEffect(()=>{!K&&E==null&&M()},[x.referenceValue,E,K]),k.useEffect(()=>{x.tempValueStrAndroid!=null&&E!=null&&(M(),S())},[x.sections]),k.useImperativeHandle(r,()=>({getSections:()=>x.sections,getActiveSectionIndex:U.getActiveSectionIndexFromDOM,setSelectedSections:U.setSelectedSections,focusField:U.focusField,isFieldFocused:U.isFieldFocused}));const ne=Ae((X,...q)=>{X.preventDefault(),d?.(X,...q),w(),U.isFieldFocused()?T(R.startIndex):U.focusField(0)}),L={onKeyDown:j,onClear:ne,error:K,clearable:!!(c&&!A&&!i&&!s)},fe={disabled:s,readOnly:i};return H({},e.forwardedProps,L,fe,z)},A$=["clearable","onClear","InputProps","sx","slots","slotProps"],D$=["ownerState"],P$=e=>{const t=Hr(),{clearable:n,onClear:r,InputProps:o,sx:a,slots:s,slotProps:i}=e,l=je(e,A$),u=s?.clearButton??yr,c=tt({elementType:u,externalSlotProps:i?.clearButton,ownerState:{},className:"clearButton",additionalProps:{title:t.fieldClearLabel}}),d=je(c,D$),m=s?.clearIcon??h$,f=tt({elementType:m,externalSlotProps:i?.clearIcon,ownerState:{}});return H({},l,{InputProps:H({},o,{endAdornment:p.jsxs(k.Fragment,{children:[n&&p.jsx(Sx,{position:"end",sx:{marginRight:o?.endAdornment?-1:-1.5},children:p.jsx(u,H({},d,{onClick:r,children:p.jsx(m,H({fontSize:"small"},f))}))}),o?.endAdornment]})}),sx:[{"& .clearButton":{opacity:1},"@media (pointer: fine)":{"& .clearButton":{opacity:0},"&:hover, &:focus-within":{".clearButton":{opacity:1}}}},...Array.isArray(a)?a:[a]]})},R$=["value","defaultValue","referenceDate","format","formatDensity","onChange","timezone","onError","shouldRespectLeadingZeros","selectedSections","onSelectedSectionsChange","unstableFieldRef","enableAccessibleFieldDOMStructure","disabled","readOnly","dateSeparator"],M$=(e,t)=>k.useMemo(()=>{const n=H({},e),r={},o=a=>{n.hasOwnProperty(a)&&(r[a]=n[a],delete n[a])};return R$.forEach(o),Ex.forEach(o),{forwardedProps:n,internalProps:r}},[e,t]),N$=e=>{const t=_t(),n=bi();return H({},e,{disablePast:e.disablePast??!1,disableFuture:e.disableFuture??!1,format:e.format??t.formats.keyboardDate,minDate:Wn(t,e.minDate,n.minDate),maxDate:Wn(t,e.maxDate,n.maxDate)})},O$=e=>{const t=N$(e),{forwardedProps:n,internalProps:r}=M$(t,"date");return I$({forwardedProps:n,internalProps:r,valueManager:xr,fieldValueManager:NF,validator:yi,valueType:"date"})};function L$(e){return Fe("MuiPickersTextField",e)}Re("MuiPickersTextField",["root","focused","disabled","error","required"]);function F$(e){return Fe("MuiPickersInputBase",e)}const ha=Re("MuiPickersInputBase",["root","focused","disabled","error","notchedOutline","sectionContent","sectionBefore","sectionAfter","adornedStart","adornedEnd","input"]);function $$(e){return Fe("MuiPickersSectionList",e)}const us=Re("MuiPickersSectionList",["root","section","sectionContent"]),B$=["slots","slotProps","elements","sectionListRef"],Mx=ae("div",{name:"MuiPickersSectionList",slot:"Root",overridesResolver:(e,t)=>t.root})({direction:"ltr /*! @noflip */",outline:"none"}),Nx=ae("span",{name:"MuiPickersSectionList",slot:"Section",overridesResolver:(e,t)=>t.section})({}),Ox=ae("span",{name:"MuiPickersSectionList",slot:"SectionSeparator",overridesResolver:(e,t)=>t.sectionSeparator})({whiteSpace:"pre"}),Lx=ae("span",{name:"MuiPickersSectionList",slot:"SectionContent",overridesResolver:(e,t)=>t.sectionContent})({outline:"none"}),j$=e=>{const{classes:t}=e;return Le({root:["root"],section:["section"],sectionContent:["sectionContent"]},$$,t)};function H$(e){const{slots:t,slotProps:n,element:r,classes:o}=e,a=t?.section??Nx,s=tt({elementType:a,externalSlotProps:n?.section,externalForwardedProps:r.container,className:o.section,ownerState:{}}),i=t?.sectionContent??Lx,l=tt({elementType:i,externalSlotProps:n?.sectionContent,externalForwardedProps:r.content,additionalProps:{suppressContentEditableWarning:!0},className:o.sectionContent,ownerState:{}}),u=t?.sectionSeparator??Ox,c=tt({elementType:u,externalSlotProps:n?.sectionSeparator,externalForwardedProps:r.before,ownerState:{position:"before"}}),d=tt({elementType:u,externalSlotProps:n?.sectionSeparator,externalForwardedProps:r.after,ownerState:{position:"after"}});return p.jsxs(a,H({},s,{children:[p.jsx(u,H({},c)),p.jsx(i,H({},l)),p.jsx(u,H({},d))]}))}const U$=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersSectionList"}),{slots:o,slotProps:a,elements:s,sectionListRef:i}=r,l=je(r,B$),u=j$(r),c=k.useRef(null),d=nt(n,c),m=b=>{if(!c.current)throw new Error(`MUI X: Cannot call sectionListRef.${b} before the mount of the component.`);return c.current};k.useImperativeHandle(i,()=>({getRoot(){return m("getRoot")},getSectionContainer(b){return m("getSectionContainer").querySelector(`.${us.section}[data-sectionindex="${b}"]`)},getSectionContent(b){return m("getSectionContent").querySelector(`.${us.section}[data-sectionindex="${b}"] .${us.sectionContent}`)},getSectionIndexFromDOMElement(b){const g=m("getSectionIndexFromDOMElement");if(b==null||!g.contains(b))return null;let x=null;return b.classList.contains(us.section)?x=b:b.classList.contains(us.sectionContent)&&(x=b.parentElement),x==null?null:Number(x.dataset.sectionindex)}}));const f=o?.root??Mx,h=tt({elementType:f,externalSlotProps:a?.root,externalForwardedProps:l,additionalProps:{ref:d,suppressContentEditableWarning:!0},className:u.root,ownerState:{}});return p.jsx(f,H({},h,{children:h.contentEditable?s.map(({content:b,before:g,after:x})=>`${g.children}${b.children}${x.children}`).join(""):p.jsx(k.Fragment,{children:s.map((b,g)=>p.jsx(H$,{slots:o,slotProps:a,element:b,classes:u},g))})}))}),z$=["elements","areAllSectionsEmpty","defaultValue","label","value","onChange","id","autoFocus","endAdornment","startAdornment","renderSuffix","slots","slotProps","contentEditable","tabIndex","onInput","onPaste","onKeyDown","fullWidth","name","readOnly","inputProps","inputRef","sectionListRef"],V$=e=>Math.round(e*1e5)/1e5,Pu=ae("div",{name:"MuiPickersInputBase",slot:"Root",overridesResolver:(e,t)=>t.root})(({theme:e})=>H({},e.typography.body1,{color:(e.vars||e).palette.text.primary,cursor:"text",padding:0,display:"flex",justifyContent:"flex-start",alignItems:"center",position:"relative",boxSizing:"border-box",letterSpacing:`${V$(.15/16)}em`,variants:[{props:{fullWidth:!0},style:{width:"100%"}}]})),nf=ae(Mx,{name:"MuiPickersInputBase",slot:"SectionsContainer",overridesResolver:(e,t)=>t.sectionsContainer})(({theme:e})=>({padding:"4px 0 5px",fontFamily:e.typography.fontFamily,fontSize:"inherit",lineHeight:"1.4375em",flexGrow:1,outline:"none",display:"flex",flexWrap:"nowrap",overflow:"hidden",letterSpacing:"inherit",width:"182px",variants:[{props:{isRtl:!0},style:{textAlign:"right /*! @noflip */"}},{props:{size:"small"},style:{paddingTop:1}},{props:{adornedStart:!1,focused:!1,filled:!1},style:{color:"currentColor",opacity:0}},{props:({adornedStart:t,focused:n,filled:r,label:o})=>!t&&!n&&!r&&o==null,style:e.vars?{opacity:e.vars.opacity.inputPlaceholder}:{opacity:e.palette.mode==="light"?.42:.5}}]})),W$=ae(Nx,{name:"MuiPickersInputBase",slot:"Section",overridesResolver:(e,t)=>t.section})(({theme:e})=>({fontFamily:e.typography.fontFamily,fontSize:"inherit",letterSpacing:"inherit",lineHeight:"1.4375em",display:"inline-block",whiteSpace:"nowrap"})),q$=ae(Lx,{name:"MuiPickersInputBase",slot:"SectionContent",overridesResolver:(e,t)=>t.content})(({theme:e})=>({fontFamily:e.typography.fontFamily,lineHeight:"1.4375em",letterSpacing:"inherit",width:"fit-content",outline:"none"})),Y$=ae(Ox,{name:"MuiPickersInputBase",slot:"Separator",overridesResolver:(e,t)=>t.separator})(()=>({whiteSpace:"pre",letterSpacing:"inherit"})),G$=ae("input",{name:"MuiPickersInputBase",slot:"Input",overridesResolver:(e,t)=>t.hiddenInput})(H({},lF)),K$=e=>{const{focused:t,disabled:n,error:r,classes:o,fullWidth:a,readOnly:s,color:i,size:l,endAdornment:u,startAdornment:c}=e,d={root:["root",t&&!n&&"focused",n&&"disabled",s&&"readOnly",r&&"error",a&&"fullWidth",`color${ke(i)}`,l==="small"&&"inputSizeSmall",!!c&&"adornedStart",!!u&&"adornedEnd"],notchedOutline:["notchedOutline"],input:["input"],sectionsContainer:["sectionsContainer"],sectionContent:["sectionContent"],sectionBefore:["sectionBefore"],sectionAfter:["sectionAfter"]};return Le(d,F$,o)},rf=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersInputBase"}),{elements:o,areAllSectionsEmpty:a,value:s,onChange:i,id:l,endAdornment:u,startAdornment:c,renderSuffix:d,slots:m,slotProps:f,contentEditable:h,tabIndex:b,onInput:g,onPaste:x,onKeyDown:E,name:C,readOnly:T,inputProps:w,inputRef:S,sectionListRef:O}=r,F=je(r,z$),B=k.useRef(null),P=nt(n,B),N=nt(w?.ref,S),v=Yn(),M=Qn();if(!M)throw new Error("MUI X: PickersInputBase should always be used inside a PickersTextField component");const A=_=>{if(M.disabled){_.stopPropagation();return}M.onFocus?.(_)};k.useEffect(()=>{M&&M.setAdornedStart(!!c)},[M,c]),k.useEffect(()=>{M&&(a?M.onEmpty():M.onFilled())},[M,a]);const D=H({},r,M,{isRtl:v}),R=K$(D),z=m?.root||Pu,U=tt({elementType:z,externalSlotProps:f?.root,externalForwardedProps:F,additionalProps:{"aria-invalid":M.error,ref:P},className:R.root,ownerState:D}),j=m?.input||nf;return p.jsxs(z,H({},U,{children:[c,p.jsx(U$,{sectionListRef:O,elements:o,contentEditable:h,tabIndex:b,className:R.sectionsContainer,onFocus:A,onBlur:M.onBlur,onInput:g,onPaste:x,onKeyDown:E,slots:{root:j,section:W$,sectionContent:q$,sectionSeparator:Y$},slotProps:{root:{ownerState:D},sectionContent:{className:ha.sectionContent},sectionSeparator:({position:_})=>({className:_==="before"?ha.sectionBefore:ha.sectionAfter})}}),u,d?d(H({},M)):null,p.jsx(G$,H({name:C,className:R.input,value:s,onChange:i,id:l,"aria-hidden":"true",tabIndex:-1,readOnly:T,required:M.required,disabled:M.disabled},w,{ref:N}))]}))});function Q$(e){return Fe("MuiPickersOutlinedInput",e)}const Jn=H({},ha,Re("MuiPickersOutlinedInput",["root","notchedOutline","input"])),X$=["children","className","label","notched","shrink"],Z$=ae("fieldset",{name:"MuiPickersOutlinedInput",slot:"NotchedOutline",overridesResolver:(e,t)=>t.notchedOutline})(({theme:e})=>{const t=e.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{textAlign:"left",position:"absolute",bottom:0,right:0,top:-5,left:0,margin:0,padding:"0 8px",pointerEvents:"none",borderRadius:"inherit",borderStyle:"solid",borderWidth:1,overflow:"hidden",minWidth:"0%",borderColor:e.vars?`rgba(${e.vars.palette.common.onBackgroundChannel} / 0.23)`:t}}),Xg=ae("span")(({theme:e})=>({fontFamily:e.typography.fontFamily,fontSize:"inherit"})),J$=ae("legend")(({theme:e})=>({float:"unset",width:"auto",overflow:"hidden",variants:[{props:{withLabel:!1},style:{padding:0,lineHeight:"11px",transition:e.transitions.create("width",{duration:150,easing:e.transitions.easing.easeOut})}},{props:{withLabel:!0},style:{display:"block",padding:0,height:11,fontSize:"0.75em",visibility:"hidden",maxWidth:.01,transition:e.transitions.create("max-width",{duration:50,easing:e.transitions.easing.easeOut}),whiteSpace:"nowrap","& > span":{paddingLeft:5,paddingRight:5,display:"inline-block",opacity:0,visibility:"visible"}}},{props:{withLabel:!0,notched:!0},style:{maxWidth:"100%",transition:e.transitions.create("max-width",{duration:100,easing:e.transitions.easing.easeOut,delay:50})}}]}));function eB(e){const{className:t,label:n}=e,r=je(e,X$),o=n!=null&&n!=="",a=H({},e,{withLabel:o});return p.jsx(Z$,H({"aria-hidden":!0,className:t},r,{ownerState:a,children:p.jsx(J$,{ownerState:a,children:o?p.jsx(Xg,{children:n}):p.jsx(Xg,{className:"notranslate",children:"​"})})}))}const tB=["label","autoFocus","ownerState","notched"],nB=ae(Pu,{name:"MuiPickersOutlinedInput",slot:"Root",overridesResolver:(e,t)=>t.root})(({theme:e})=>{const t=e.palette.mode==="light"?"rgba(0, 0, 0, 0.23)":"rgba(255, 255, 255, 0.23)";return{padding:"0 14px",borderRadius:(e.vars||e).shape.borderRadius,[`&:hover .${Jn.notchedOutline}`]:{borderColor:(e.vars||e).palette.text.primary},"@media (hover: none)":{[`&:hover .${Jn.notchedOutline}`]:{borderColor:e.vars?`rgba(${e.vars.palette.common.onBackgroundChannel} / 0.23)`:t}},[`&.${Jn.focused} .${Jn.notchedOutline}`]:{borderStyle:"solid",borderWidth:2},[`&.${Jn.disabled}`]:{[`& .${Jn.notchedOutline}`]:{borderColor:(e.vars||e).palette.action.disabled},"*":{color:(e.vars||e).palette.action.disabled}},[`&.${Jn.error} .${Jn.notchedOutline}`]:{borderColor:(e.vars||e).palette.error.main},variants:Object.keys((e.vars??e).palette).filter(n=>(e.vars??e).palette[n]?.main??!1).map(n=>({props:{color:n},style:{[`&.${Jn.focused}:not(.${Jn.error}) .${Jn.notchedOutline}`]:{borderColor:(e.vars||e).palette[n].main}}}))}}),rB=ae(nf,{name:"MuiPickersOutlinedInput",slot:"SectionsContainer",overridesResolver:(e,t)=>t.sectionsContainer})({padding:"16.5px 0",variants:[{props:{size:"small"},style:{padding:"8.5px 0"}}]}),oB=e=>{const{classes:t}=e,r=Le({root:["root"],notchedOutline:["notchedOutline"],input:["input"]},Q$,t);return H({},t,r)},Fx=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersOutlinedInput"}),{label:o,ownerState:a,notched:s}=r,i=je(r,tB),l=Qn(),u=H({},r,a,l,{color:l?.color||"primary"}),c=oB(u);return p.jsx(rf,H({slots:{root:nB,input:rB},renderSuffix:d=>p.jsx(eB,{shrink:!!(s||d.adornedStart||d.focused||d.filled),notched:!!(s||d.adornedStart||d.focused||d.filled),className:c.notchedOutline,label:o!=null&&o!==""&&l?.required?p.jsxs(k.Fragment,{children:[o," ","*"]}):o,ownerState:u})},i,{label:o,classes:c,ref:n}))});Fx.muiName="Input";function aB(e){return Fe("MuiPickersFilledInput",e)}const fo=H({},ha,Re("MuiPickersFilledInput",["root","underline","input"])),sB=["label","autoFocus","disableUnderline","ownerState"],iB=ae(Pu,{name:"MuiPickersFilledInput",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>ut.shouldForwardProp(e)&&e!=="disableUnderline"})(({theme:e})=>{const t=e.palette.mode==="light",n=t?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)",r=t?"rgba(0, 0, 0, 0.06)":"rgba(255, 255, 255, 0.09)",o=t?"rgba(0, 0, 0, 0.09)":"rgba(255, 255, 255, 0.13)",a=t?"rgba(0, 0, 0, 0.12)":"rgba(255, 255, 255, 0.12)";return{backgroundColor:e.vars?e.vars.palette.FilledInput.bg:r,borderTopLeftRadius:(e.vars||e).shape.borderRadius,borderTopRightRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create("background-color",{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut}),"&:hover":{backgroundColor:e.vars?e.vars.palette.FilledInput.hoverBg:o,"@media (hover: none)":{backgroundColor:e.vars?e.vars.palette.FilledInput.bg:r}},[`&.${fo.focused}`]:{backgroundColor:e.vars?e.vars.palette.FilledInput.bg:r},[`&.${fo.disabled}`]:{backgroundColor:e.vars?e.vars.palette.FilledInput.disabledBg:a},variants:[...Object.keys((e.vars??e).palette).filter(s=>(e.vars??e).palette[s].main).map(s=>({props:{color:s,disableUnderline:!1},style:{"&::after":{borderBottom:`2px solid ${(e.vars||e).palette[s]?.main}`}}})),{props:{disableUnderline:!1},style:{"&::after":{left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:e.transitions.create("transform",{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${fo.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${fo.error}`]:{"&:before, &:after":{borderBottomColor:(e.vars||e).palette.error.main}},"&::before":{borderBottom:`1px solid ${e.vars?`rgba(${e.vars.palette.common.onBackgroundChannel} / ${e.vars.opacity.inputUnderline})`:n}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:e.transitions.create("border-bottom-color",{duration:e.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${fo.disabled}, .${fo.error}):before`]:{borderBottom:`1px solid ${(e.vars||e).palette.text.primary}`},[`&.${fo.disabled}:before`]:{borderBottomStyle:"dotted"}}},{props:({startAdornment:s})=>!!s,style:{paddingLeft:12}},{props:({endAdornment:s})=>!!s,style:{paddingRight:12}}]}}),lB=ae(nf,{name:"MuiPickersFilledInput",slot:"sectionsContainer",overridesResolver:(e,t)=>t.sectionsContainer})({paddingTop:25,paddingRight:12,paddingBottom:8,paddingLeft:12,variants:[{props:{size:"small"},style:{paddingTop:21,paddingBottom:4}},{props:({startAdornment:e})=>!!e,style:{paddingLeft:0}},{props:({endAdornment:e})=>!!e,style:{paddingRight:0}},{props:{hiddenLabel:!0},style:{paddingTop:16,paddingBottom:17}},{props:{hiddenLabel:!0,size:"small"},style:{paddingTop:8,paddingBottom:9}}]}),uB=e=>{const{classes:t,disableUnderline:n}=e,o=Le({root:["root",!n&&"underline"],input:["input"]},aB,t);return H({},t,o)},$x=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersFilledInput"}),{label:o,disableUnderline:a=!1,ownerState:s}=r,i=je(r,sB),l=Qn(),u=H({},r,s,l,{color:l?.color||"primary"}),c=uB(u);return p.jsx(rf,H({slots:{root:iB,input:lB},slotProps:{root:{disableUnderline:a}}},i,{label:o,classes:c,ref:n}))});$x.muiName="Input";function cB(e){return Fe("MuiPickersFilledInput",e)}const cs=H({},ha,Re("MuiPickersInput",["root","input"])),dB=["label","autoFocus","disableUnderline","ownerState"],pB=ae(Pu,{name:"MuiPickersInput",slot:"Root",overridesResolver:(e,t)=>t.root})(({theme:e})=>{let n=e.palette.mode==="light"?"rgba(0, 0, 0, 0.42)":"rgba(255, 255, 255, 0.7)";return e.vars&&(n=`rgba(${e.vars.palette.common.onBackgroundChannel} / ${e.vars.opacity.inputUnderline})`),{"label + &":{marginTop:16},variants:[...Object.keys((e.vars??e).palette).filter(r=>(e.vars??e).palette[r].main).map(r=>({props:{color:r},style:{"&::after":{borderBottom:`2px solid ${(e.vars||e).palette[r].main}`}}})),{props:{disableUnderline:!1},style:{"&::after":{background:"red",left:0,bottom:0,content:'""',position:"absolute",right:0,transform:"scaleX(0)",transition:e.transitions.create("transform",{duration:e.transitions.duration.shorter,easing:e.transitions.easing.easeOut}),pointerEvents:"none"},[`&.${cs.focused}:after`]:{transform:"scaleX(1) translateX(0)"},[`&.${cs.error}`]:{"&:before, &:after":{borderBottomColor:(e.vars||e).palette.error.main}},"&::before":{borderBottom:`1px solid ${n}`,left:0,bottom:0,content:'"\\00a0"',position:"absolute",right:0,transition:e.transitions.create("border-bottom-color",{duration:e.transitions.duration.shorter}),pointerEvents:"none"},[`&:hover:not(.${cs.disabled}, .${cs.error}):before`]:{borderBottom:`2px solid ${(e.vars||e).palette.text.primary}`,"@media (hover: none)":{borderBottom:`1px solid ${n}`}},[`&.${cs.disabled}:before`]:{borderBottomStyle:"dotted"}}}]}}),fB=e=>{const{classes:t,disableUnderline:n}=e,o=Le({root:["root",!n&&"underline"],input:["input"]},cB,t);return H({},t,o)},Bx=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersInput"}),{label:o,disableUnderline:a=!1,ownerState:s}=r,i=je(r,dB),l=Qn(),u=H({},r,s,l,{disableUnderline:a,color:l?.color||"primary"}),c=fB(u);return p.jsx(rf,H({slots:{root:pB}},i,{label:o,classes:c,ref:n}))});Bx.muiName="Input";const mB=["onFocus","onBlur","className","color","disabled","error","variant","required","InputProps","inputProps","inputRef","sectionListRef","elements","areAllSectionsEmpty","onClick","onKeyDown","onKeyUp","onPaste","onInput","endAdornment","startAdornment","tabIndex","contentEditable","focused","value","onChange","fullWidth","id","name","helperText","FormHelperTextProps","label","InputLabelProps"],hB={standard:Bx,filled:$x,outlined:Fx},gB=ae(Hl,{name:"MuiPickersTextField",slot:"Root",overridesResolver:(e,t)=>t.root})({maxWidth:"100%"}),bB=e=>{const{focused:t,disabled:n,classes:r,required:o}=e;return Le({root:["root",t&&!n&&"focused",n&&"disabled",o&&"required"]},L$,r)},yB=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersTextField"}),{onFocus:o,onBlur:a,className:s,color:i="primary",disabled:l=!1,error:u=!1,variant:c="outlined",required:d=!1,InputProps:m,inputProps:f,inputRef:h,sectionListRef:b,elements:g,areAllSectionsEmpty:x,onClick:E,onKeyDown:C,onKeyUp:T,onPaste:w,onInput:S,endAdornment:O,startAdornment:F,tabIndex:B,contentEditable:P,focused:N,value:v,onChange:M,fullWidth:A,id:D,name:R,helperText:z,FormHelperTextProps:U,label:j,InputLabelProps:_}=r,K=je(r,mB),ne=k.useRef(null),L=nt(n,ne),fe=nr(D),X=z&&fe?`${fe}-helper-text`:void 0,q=j&&fe?`${fe}-label`:void 0,te=H({},r,{color:i,disabled:l,error:u,focused:N,required:d,variant:c}),Z=bB(te),re=hB[c];return p.jsxs(gB,H({className:De(Z.root,s),ref:L,focused:N,onFocus:o,onBlur:a,disabled:l,variant:c,error:u,color:i,fullWidth:A,required:d,ownerState:te},K,{children:[p.jsx(Ul,H({htmlFor:fe,id:q},_,{children:j})),p.jsx(re,H({elements:g,areAllSectionsEmpty:x,onClick:E,onKeyDown:C,onKeyUp:T,onInput:S,onPaste:w,endAdornment:O,startAdornment:F,tabIndex:B,contentEditable:P,value:v,onChange:M,id:fe,fullWidth:A,inputProps:f,inputRef:h,sectionListRef:b,label:j,name:R,role:"group","aria-labelledby":q,"aria-describedby":X,"aria-live":X?"polite":void 0},m)),z&&p.jsx(lx,H({id:X},U,{children:z}))]}))}),xB=["enableAccessibleFieldDOMStructure"],CB=["InputProps","readOnly"],EB=["onPaste","onKeyDown","inputMode","readOnly","InputProps","inputProps","inputRef"],vB=e=>{let{enableAccessibleFieldDOMStructure:t}=e,n=je(e,xB);if(t){const{InputProps:d,readOnly:m}=n,f=je(n,CB);return H({},f,{InputProps:H({},d??{},{readOnly:m})})}const{onPaste:r,onKeyDown:o,inputMode:a,readOnly:s,InputProps:i,inputProps:l,inputRef:u}=n,c=je(n,EB);return H({},c,{InputProps:H({},i??{},{readOnly:s}),inputProps:H({},l??{},{inputMode:a,onPaste:r,onKeyDown:o,ref:u})})},TB=["slots","slotProps","InputProps","inputProps"],jx=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiDateField"}),{slots:o,slotProps:a,InputProps:s,inputProps:i}=r,l=je(r,TB),u=r,c=o?.textField??(t.enableAccessibleFieldDOMStructure?yB:Rt),d=tt({elementType:c,externalSlotProps:a?.textField,externalForwardedProps:l,additionalProps:{ref:n},ownerState:u});d.inputProps=H({},i,d.inputProps),d.InputProps=H({},s,d.InputProps);const m=O$(d),f=vB(m),h=P$(H({},f,{slots:o,slotProps:a}));return p.jsx(c,H({},h))}),Hx=({shouldDisableDate:e,shouldDisableMonth:t,shouldDisableYear:n,minDate:r,maxDate:o,disableFuture:a,disablePast:s,timezone:i})=>{const l=Uo();return k.useCallback(u=>yi({adapter:l,value:u,timezone:i,props:{shouldDisableDate:e,shouldDisableMonth:t,shouldDisableYear:n,minDate:r,maxDate:o,disableFuture:a,disablePast:s}})!==null,[l,e,t,n,r,o,a,s,i])},SB=(e,t,n)=>(r,o)=>{switch(o.type){case"changeMonth":return H({},r,{slideDirection:o.direction,currentMonth:o.newMonth,isMonthSwitchingAnimating:!e});case"changeMonthTimezone":{const a=o.newTimezone;if(n.getTimezone(r.currentMonth)===a)return r;let s=n.setTimezone(r.currentMonth,a);return n.getMonth(s)!==n.getMonth(r.currentMonth)&&(s=n.setMonth(s,n.getMonth(r.currentMonth))),H({},r,{currentMonth:s})}case"finishMonthSwitchingAnimation":return H({},r,{isMonthSwitchingAnimating:!1});case"changeFocusedDay":{if(r.focusedDay!=null&&o.focusedDay!=null&&n.isSameDay(o.focusedDay,r.focusedDay))return r;const a=o.focusedDay!=null&&!t&&!n.isSameMonth(r.currentMonth,o.focusedDay);return H({},r,{focusedDay:o.focusedDay,isMonthSwitchingAnimating:a&&!e&&!o.withoutMonthSwitchingAnimation,currentMonth:a?n.startOfMonth(o.focusedDay):r.currentMonth,slideDirection:o.focusedDay!=null&&n.isAfterDay(o.focusedDay,r.currentMonth)?"left":"right"})}default:throw new Error("missing support")}},kB=e=>{const{value:t,referenceDate:n,disableFuture:r,disablePast:o,disableSwitchToMonthOnDayFocus:a=!1,maxDate:s,minDate:i,onMonthChange:l,reduceAnimations:u,shouldDisableDate:c,timezone:d}=e,m=_t(),f=k.useRef(SB(!!u,a,m)).current,h=k.useMemo(()=>xr.getInitialReferenceValue({value:t,utils:m,timezone:d,props:e,referenceDate:n,granularity:fr.day}),[n,d]),[b,g]=k.useReducer(f,{isMonthSwitchingAnimating:!1,focusedDay:h,currentMonth:m.startOfMonth(h),slideDirection:"left"});k.useEffect(()=>{g({type:"changeMonthTimezone",newTimezone:m.getTimezone(h)})},[h,m]);const x=k.useCallback(S=>{g(H({type:"changeMonth"},S)),l&&l(S.newMonth)},[l]),E=k.useCallback(S=>{const O=S;m.isSameMonth(O,b.currentMonth)||x({newMonth:m.startOfMonth(O),direction:m.isAfterDay(O,b.currentMonth)?"left":"right"})},[b.currentMonth,x,m]),C=Hx({shouldDisableDate:c,minDate:i,maxDate:s,disableFuture:r,disablePast:o,timezone:d}),T=k.useCallback(()=>{g({type:"finishMonthSwitchingAnimation"})},[]),w=Ae((S,O)=>{C(S)||g({type:"changeFocusedDay",focusedDay:S,withoutMonthSwitchingAnimation:O})});return{referenceDate:h,calendarState:b,changeMonth:E,changeFocusedDay:w,isDateDisabled:C,onMonthSwitchingAnimationEnd:T,handleChangeMonth:x}},wB=e=>Fe("MuiPickersFadeTransitionGroup",e);Re("MuiPickersFadeTransitionGroup",["root"]);const _B=e=>{const{classes:t}=e;return Le({root:["root"]},wB,t)},IB=ae(gi,{name:"MuiPickersFadeTransitionGroup",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"block",position:"relative"});function Ux(e){const t=St({props:e,name:"MuiPickersFadeTransitionGroup"}),{children:n,className:r,reduceAnimations:o,transKey:a}=t,s=_B(t),i=no();return o?n:p.jsx(IB,{className:De(s.root,r),children:p.jsx(Oo,{appear:!1,mountOnEnter:!0,unmountOnExit:!0,timeout:{appear:i.transitions.duration.enteringScreen,enter:i.transitions.duration.enteringScreen,exit:0},children:n},a)})}function AB(e){return Fe("MuiPickersDay",e)}const mo=Re("MuiPickersDay",["root","dayWithMargin","dayOutsideMonth","hiddenDaySpacingFiller","today","selected","disabled"]),DB=["autoFocus","className","day","disabled","disableHighlightToday","disableMargin","hidden","isAnimating","onClick","onDaySelect","onFocus","onBlur","onKeyDown","onMouseDown","onMouseEnter","outsideCurrentMonth","selected","showDaysOutsideCurrentMonth","children","today","isFirstVisibleCell","isLastVisibleCell"],PB=e=>{const{selected:t,disableMargin:n,disableHighlightToday:r,today:o,disabled:a,outsideCurrentMonth:s,showDaysOutsideCurrentMonth:i,classes:l}=e,u=s&&!i;return Le({root:["root",t&&!u&&"selected",a&&"disabled",!n&&"dayWithMargin",!r&&o&&"today",s&&i&&"dayOutsideMonth",u&&"hiddenDaySpacingFiller"],hiddenDaySpacingFiller:["hiddenDaySpacingFiller"]},AB,l)},zx=({theme:e})=>H({},e.typography.caption,{width:Ks,height:Ks,borderRadius:"50%",padding:0,backgroundColor:"transparent",transition:e.transitions.create("background-color",{duration:e.transitions.duration.short}),color:(e.vars||e).palette.text.primary,"@media (pointer: fine)":{"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.hoverOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.hoverOpacity)}},"&:focus":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.focusOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.focusOpacity),[`&.${mo.selected}`]:{willChange:"background-color",backgroundColor:(e.vars||e).palette.primary.dark}},[`&.${mo.selected}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.main,fontWeight:e.typography.fontWeightMedium,"&:hover":{willChange:"background-color",backgroundColor:(e.vars||e).palette.primary.dark}},[`&.${mo.disabled}:not(.${mo.selected})`]:{color:(e.vars||e).palette.text.disabled},[`&.${mo.disabled}&.${mo.selected}`]:{opacity:.6},variants:[{props:{disableMargin:!1},style:{margin:`0 ${Au}px`}},{props:{outsideCurrentMonth:!0,showDaysOutsideCurrentMonth:!0},style:{color:(e.vars||e).palette.text.secondary}},{props:{disableHighlightToday:!1,today:!0},style:{[`&:not(.${mo.selected})`]:{border:`1px solid ${(e.vars||e).palette.text.secondary}`}}}]}),Vx=(e,t)=>{const{ownerState:n}=e;return[t.root,!n.disableMargin&&t.dayWithMargin,!n.disableHighlightToday&&n.today&&t.today,!n.outsideCurrentMonth&&n.showDaysOutsideCurrentMonth&&t.dayOutsideMonth,n.outsideCurrentMonth&&!n.showDaysOutsideCurrentMonth&&t.hiddenDaySpacingFiller]},RB=ae(No,{name:"MuiPickersDay",slot:"Root",overridesResolver:Vx})(zx),MB=ae("div",{name:"MuiPickersDay",slot:"Root",overridesResolver:Vx})(({theme:e})=>H({},zx({theme:e}),{opacity:0,pointerEvents:"none"})),ds=()=>{},NB=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiPickersDay"}),{autoFocus:o=!1,className:a,day:s,disabled:i=!1,disableHighlightToday:l=!1,disableMargin:u=!1,isAnimating:c,onClick:d,onDaySelect:m,onFocus:f=ds,onBlur:h=ds,onKeyDown:b=ds,onMouseDown:g=ds,onMouseEnter:x=ds,outsideCurrentMonth:E,selected:C=!1,showDaysOutsideCurrentMonth:T=!1,children:w,today:S=!1}=r,O=je(r,DB),F=H({},r,{autoFocus:o,disabled:i,disableHighlightToday:l,disableMargin:u,selected:C,showDaysOutsideCurrentMonth:T,today:S}),B=PB(F),P=_t(),N=k.useRef(null),v=nt(N,n);Vt(()=>{o&&!i&&!c&&!E&&N.current.focus()},[o,i,c,E]);const M=D=>{g(D),E&&D.preventDefault()},A=D=>{i||m(s),E&&D.currentTarget.focus(),d&&d(D)};return E&&!T?p.jsx(MB,{className:De(B.root,B.hiddenDaySpacingFiller,a),ownerState:F,role:O.role}):p.jsx(RB,H({className:De(B.root,a),ref:v,centerRipple:!0,disabled:i,tabIndex:C?0:-1,onKeyDown:D=>b(D,s),onFocus:D=>f(D,s),onBlur:D=>h(D,s),onMouseEnter:D=>x(D,s),onClick:A,onMouseDown:M},O,{ownerState:F,children:w||P.format(s,"dayOfMonth")}))}),OB=k.memo(NB),LB=e=>Fe("MuiPickersSlideTransition",e),Mn=Re("MuiPickersSlideTransition",["root","slideEnter-left","slideEnter-right","slideEnterActive","slideExit","slideExitActiveLeft-left","slideExitActiveLeft-right"]),FB=["children","className","reduceAnimations","slideDirection","transKey","classes"],$B=e=>{const{classes:t,slideDirection:n}=e,r={root:["root"],exit:["slideExit"],enterActive:["slideEnterActive"],enter:[`slideEnter-${n}`],exitActive:[`slideExitActiveLeft-${n}`]};return Le(r,LB,t)},BB=ae(gi,{name:"MuiPickersSlideTransition",slot:"Root",overridesResolver:(e,t)=>[t.root,{[`.${Mn["slideEnter-left"]}`]:t["slideEnter-left"]},{[`.${Mn["slideEnter-right"]}`]:t["slideEnter-right"]},{[`.${Mn.slideEnterActive}`]:t.slideEnterActive},{[`.${Mn.slideExit}`]:t.slideExit},{[`.${Mn["slideExitActiveLeft-left"]}`]:t["slideExitActiveLeft-left"]},{[`.${Mn["slideExitActiveLeft-right"]}`]:t["slideExitActiveLeft-right"]}]})(({theme:e})=>{const t=e.transitions.create("transform",{duration:e.transitions.duration.complex,easing:"cubic-bezier(0.35, 0.8, 0.4, 1)"});return{display:"block",position:"relative",overflowX:"hidden","& > *":{position:"absolute",top:0,right:0,left:0},[`& .${Mn["slideEnter-left"]}`]:{willChange:"transform",transform:"translate(100%)",zIndex:1},[`& .${Mn["slideEnter-right"]}`]:{willChange:"transform",transform:"translate(-100%)",zIndex:1},[`& .${Mn.slideEnterActive}`]:{transform:"translate(0%)",transition:t},[`& .${Mn.slideExit}`]:{transform:"translate(0%)"},[`& .${Mn["slideExitActiveLeft-left"]}`]:{willChange:"transform",transform:"translate(-100%)",transition:t,zIndex:0},[`& .${Mn["slideExitActiveLeft-right"]}`]:{willChange:"transform",transform:"translate(100%)",transition:t,zIndex:0}}});function jB(e){const t=St({props:e,name:"MuiPickersSlideTransition"}),{children:n,className:r,reduceAnimations:o,transKey:a}=t,s=je(t,FB),i=$B(t),l=no();if(o)return p.jsx("div",{className:De(i.root,r),children:n});const u={exit:i.exit,enterActive:i.enterActive,enter:i.enter,exitActive:i.exitActive};return p.jsx(BB,{className:De(i.root,r),childFactory:c=>k.cloneElement(c,{classNames:u}),role:"presentation",children:p.jsx(Bp,H({mountOnEnter:!0,unmountOnExit:!0,timeout:l.transitions.duration.complex,classNames:u},s,{children:n}),a)})}const HB=e=>Fe("MuiDayCalendar",e);Re("MuiDayCalendar",["root","header","weekDayLabel","loadingContainer","slideTransition","monthContainer","weekContainer","weekNumberLabel","weekNumber"]);const UB=["parentProps","day","focusableDay","selectedDays","isDateDisabled","currentMonthNumber","isViewFocused"],zB=["ownerState"],VB=e=>{const{classes:t}=e;return Le({root:["root"],header:["header"],weekDayLabel:["weekDayLabel"],loadingContainer:["loadingContainer"],slideTransition:["slideTransition"],monthContainer:["monthContainer"],weekContainer:["weekContainer"],weekNumberLabel:["weekNumberLabel"],weekNumber:["weekNumber"]},HB,t)},Wx=(Ks+Au*2)*6,WB=ae("div",{name:"MuiDayCalendar",slot:"Root",overridesResolver:(e,t)=>t.root})({}),qB=ae("div",{name:"MuiDayCalendar",slot:"Header",overridesResolver:(e,t)=>t.header})({display:"flex",justifyContent:"center",alignItems:"center"}),YB=ae(Cn,{name:"MuiDayCalendar",slot:"WeekDayLabel",overridesResolver:(e,t)=>t.weekDayLabel})(({theme:e})=>({width:36,height:40,margin:"0 2px",textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",color:(e.vars||e).palette.text.secondary})),GB=ae(Cn,{name:"MuiDayCalendar",slot:"WeekNumberLabel",overridesResolver:(e,t)=>t.weekNumberLabel})(({theme:e})=>({width:36,height:40,margin:"0 2px",textAlign:"center",display:"flex",justifyContent:"center",alignItems:"center",color:e.palette.text.disabled})),KB=ae(Cn,{name:"MuiDayCalendar",slot:"WeekNumber",overridesResolver:(e,t)=>t.weekNumber})(({theme:e})=>H({},e.typography.caption,{width:Ks,height:Ks,padding:0,margin:`0 ${Au}px`,color:e.palette.text.disabled,fontSize:"0.75rem",alignItems:"center",justifyContent:"center",display:"inline-flex"})),QB=ae("div",{name:"MuiDayCalendar",slot:"LoadingContainer",overridesResolver:(e,t)=>t.loadingContainer})({display:"flex",justifyContent:"center",alignItems:"center",minHeight:Wx}),XB=ae(jB,{name:"MuiDayCalendar",slot:"SlideTransition",overridesResolver:(e,t)=>t.slideTransition})({minHeight:Wx}),ZB=ae("div",{name:"MuiDayCalendar",slot:"MonthContainer",overridesResolver:(e,t)=>t.monthContainer})({overflow:"hidden"}),JB=ae("div",{name:"MuiDayCalendar",slot:"WeekContainer",overridesResolver:(e,t)=>t.weekContainer})({margin:`${Au}px 0`,display:"flex",justifyContent:"center"});function ej(e){let{parentProps:t,day:n,focusableDay:r,selectedDays:o,isDateDisabled:a,currentMonthNumber:s,isViewFocused:i}=e,l=je(e,UB);const{disabled:u,disableHighlightToday:c,isMonthSwitchingAnimating:d,showDaysOutsideCurrentMonth:m,slots:f,slotProps:h,timezone:b}=t,g=_t(),x=Iu(b),E=r!==null&&g.isSameDay(n,r),C=o.some(v=>g.isSameDay(v,n)),T=g.isSameDay(n,x),w=f?.day??OB,S=tt({elementType:w,externalSlotProps:h?.day,additionalProps:H({disableHighlightToday:c,showDaysOutsideCurrentMonth:m,role:"gridcell",isAnimating:d,"data-timestamp":g.toJsDate(n).valueOf()},l),ownerState:H({},t,{day:n,selected:C})}),O=je(S,zB),F=k.useMemo(()=>u||a(n),[u,a,n]),B=k.useMemo(()=>g.getMonth(n)!==s,[g,n,s]),P=k.useMemo(()=>{const v=g.startOfMonth(g.setMonth(n,s));return m?g.isSameDay(n,g.startOfWeek(v)):g.isSameDay(n,v)},[s,n,m,g]),N=k.useMemo(()=>{const v=g.endOfMonth(g.setMonth(n,s));return m?g.isSameDay(n,g.endOfWeek(v)):g.isSameDay(n,v)},[s,n,m,g]);return p.jsx(w,H({},O,{day:n,disabled:F,autoFocus:i&&E,today:T,outsideCurrentMonth:B,isFirstVisibleCell:P,isLastVisibleCell:N,selected:C,tabIndex:E?0:-1,"aria-selected":C,"aria-current":T?"date":void 0}))}function tj(e){const t=St({props:e,name:"MuiDayCalendar"}),n=_t(),{onFocusedDayChange:r,className:o,currentMonth:a,selectedDays:s,focusedDay:i,loading:l,onSelectedDaysChange:u,onMonthSwitchingAnimationEnd:c,readOnly:d,reduceAnimations:m,renderLoading:f=()=>p.jsx("span",{children:"..."}),slideDirection:h,TransitionProps:b,disablePast:g,disableFuture:x,minDate:E,maxDate:C,shouldDisableDate:T,shouldDisableMonth:w,shouldDisableYear:S,dayOfWeekFormatter:O=de=>n.format(de,"weekdayShort").charAt(0).toUpperCase(),hasFocus:F,onFocusedViewChange:B,gridLabelId:P,displayWeekNumber:N,fixedWeekNumber:v,autoFocus:M,timezone:A}=t,D=Iu(A),R=VB(t),z=Yn(),U=Hx({shouldDisableDate:T,shouldDisableMonth:w,shouldDisableYear:S,minDate:E,maxDate:C,disablePast:g,disableFuture:x,timezone:A}),j=Hr(),[_,K]=_n({name:"DayCalendar",state:"hasFocus",controlled:F,default:M??!1}),[ne,L]=k.useState(()=>i||D),fe=Ae(de=>{d||u(de)}),X=de=>{U(de)||(r(de),L(de),B?.(!0),K(!0))},q=Ae((de,be)=>{switch(de.key){case"ArrowUp":X(n.addDays(be,-7)),de.preventDefault();break;case"ArrowDown":X(n.addDays(be,7)),de.preventDefault();break;case"ArrowLeft":{const le=n.addDays(be,z?1:-1),Pe=n.addMonths(be,z?1:-1),Te=Ns({utils:n,date:le,minDate:z?le:n.startOfMonth(Pe),maxDate:z?n.endOfMonth(Pe):le,isDateDisabled:U,timezone:A});X(Te||le),de.preventDefault();break}case"ArrowRight":{const le=n.addDays(be,z?-1:1),Pe=n.addMonths(be,z?-1:1),Te=Ns({utils:n,date:le,minDate:z?n.startOfMonth(Pe):le,maxDate:z?le:n.endOfMonth(Pe),isDateDisabled:U,timezone:A});X(Te||le),de.preventDefault();break}case"Home":X(n.startOfWeek(be)),de.preventDefault();break;case"End":X(n.endOfWeek(be)),de.preventDefault();break;case"PageUp":X(n.addMonths(be,1)),de.preventDefault();break;case"PageDown":X(n.addMonths(be,-1)),de.preventDefault();break}}),te=Ae((de,be)=>X(be)),Z=Ae((de,be)=>{_&&n.isSameDay(ne,be)&&B?.(!1)}),re=n.getMonth(a),Q=n.getYear(a),G=k.useMemo(()=>s.filter(de=>!!de).map(de=>n.startOfDay(de)),[n,s]),se=`${Q}-${re}`,J=k.useMemo(()=>k.createRef(),[se]),ee=k.useMemo(()=>{const de=n.startOfMonth(a),be=n.endOfMonth(a);return U(ne)||n.isAfterDay(ne,be)||n.isBeforeDay(ne,de)?Ns({utils:n,date:ne,minDate:de,maxDate:be,disablePast:g,disableFuture:x,isDateDisabled:U,timezone:A}):ne},[a,x,g,ne,U,n,A]),xe=k.useMemo(()=>{const de=n.getWeekArray(a);let be=n.addMonths(a,1);for(;v&&de.length<v;){const le=n.getWeekArray(be),Pe=n.isSameDay(de[de.length-1][0],le[0][0]);le.slice(Pe?1:0).forEach(Te=>{de.length<v&&de.push(Te)}),be=n.addMonths(be,1)}return de},[a,v,n]);return p.jsxs(WB,{role:"grid","aria-labelledby":P,className:R.root,children:[p.jsxs(qB,{role:"row",className:R.header,children:[N&&p.jsx(GB,{variant:"caption",role:"columnheader","aria-label":j.calendarWeekNumberHeaderLabel,className:R.weekNumberLabel,children:j.calendarWeekNumberHeaderText}),fF(n,D).map((de,be)=>p.jsx(YB,{variant:"caption",role:"columnheader","aria-label":n.format(de,"weekday"),className:R.weekDayLabel,children:O(de)},be.toString()))]}),l?p.jsx(QB,{className:R.loadingContainer,children:f()}):p.jsx(XB,H({transKey:se,onExited:c,reduceAnimations:m,slideDirection:h,className:De(o,R.slideTransition)},b,{nodeRef:J,children:p.jsx(ZB,{ref:J,role:"rowgroup",className:R.monthContainer,children:xe.map((de,be)=>p.jsxs(JB,{role:"row",className:R.weekContainer,"aria-rowindex":be+1,children:[N&&p.jsx(KB,{className:R.weekNumber,role:"rowheader","aria-label":j.calendarWeekNumberAriaLabelText(n.getWeekNumber(de[0])),children:j.calendarWeekNumberText(n.getWeekNumber(de[0]))}),de.map((le,Pe)=>p.jsx(ej,{parentProps:t,day:le,selectedDays:G,focusableDay:ee,onKeyDown:q,onFocus:te,onBlur:Z,onDaySelect:fe,isDateDisabled:U,currentMonthNumber:re,isViewFocused:_,"aria-colindex":Pe+1},le.toString()))]},`week-${de[0]}`))})}))]})}function nj(e){return Fe("MuiPickersMonth",e)}const ji=Re("MuiPickersMonth",["root","monthButton","disabled","selected"]),rj=["autoFocus","className","children","disabled","selected","value","tabIndex","onClick","onKeyDown","onFocus","onBlur","aria-current","aria-label","monthsPerRow","slots","slotProps"],oj=e=>{const{disabled:t,selected:n,classes:r}=e;return Le({root:["root"],monthButton:["monthButton",t&&"disabled",n&&"selected"]},nj,r)},aj=ae("div",{name:"MuiPickersMonth",slot:"Root",overridesResolver:(e,t)=>[t.root]})({display:"flex",alignItems:"center",justifyContent:"center",flexBasis:"33.3%",variants:[{props:{monthsPerRow:4},style:{flexBasis:"25%"}}]}),sj=ae("button",{name:"MuiPickersMonth",slot:"MonthButton",overridesResolver:(e,t)=>[t.monthButton,{[`&.${ji.disabled}`]:t.disabled},{[`&.${ji.selected}`]:t.selected}]})(({theme:e})=>H({color:"unset",backgroundColor:"transparent",border:0,outline:0},e.typography.subtitle1,{margin:"8px 0",height:36,width:72,borderRadius:18,cursor:"pointer","&:focus":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.activeChannel} / ${e.vars.palette.action.hoverOpacity})`:ut.alpha(e.palette.action.active,e.palette.action.hoverOpacity)},"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.activeChannel} / ${e.vars.palette.action.hoverOpacity})`:ut.alpha(e.palette.action.active,e.palette.action.hoverOpacity)},"&:disabled":{cursor:"auto",pointerEvents:"none"},[`&.${ji.disabled}`]:{color:(e.vars||e).palette.text.secondary},[`&.${ji.selected}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.main,"&:focus, &:hover":{backgroundColor:(e.vars||e).palette.primary.dark}}})),ij=k.memo(function(t){const n=St({props:t,name:"MuiPickersMonth"}),{autoFocus:r,className:o,children:a,disabled:s,selected:i,value:l,tabIndex:u,onClick:c,onKeyDown:d,onFocus:m,onBlur:f,"aria-current":h,"aria-label":b,slots:g,slotProps:x}=n,E=je(n,rj),C=k.useRef(null),T=oj(n);Vt(()=>{r&&C.current?.focus()},[r]);const w=g?.monthButton??sj,S=tt({elementType:w,externalSlotProps:x?.monthButton,additionalProps:{children:a,disabled:s,tabIndex:u,ref:C,type:"button",role:"radio","aria-current":h,"aria-checked":i,"aria-label":b,onClick:O=>c(O,l),onKeyDown:O=>d(O,l),onFocus:O=>m(O,l),onBlur:O=>f(O,l)},ownerState:n,className:T.monthButton});return p.jsx(aj,H({className:De(T.root,o),ownerState:n},E,{children:p.jsx(w,H({},S))}))});function lj(e){return Fe("MuiMonthCalendar",e)}Re("MuiMonthCalendar",["root"]);const uj=["className","value","defaultValue","referenceDate","disabled","disableFuture","disablePast","maxDate","minDate","onChange","shouldDisableMonth","readOnly","disableHighlightToday","autoFocus","onMonthFocus","hasFocus","onFocusedViewChange","monthsPerRow","timezone","gridLabelId","slots","slotProps"],cj=e=>{const{classes:t}=e;return Le({root:["root"]},lj,t)};function dj(e,t){const n=_t(),r=bi(),o=St({props:e,name:t});return H({disableFuture:!1,disablePast:!1},o,{minDate:Wn(n,o.minDate,r.minDate),maxDate:Wn(n,o.maxDate,r.maxDate)})}const pj=ae("div",{name:"MuiMonthCalendar",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"flex",flexWrap:"wrap",alignContent:"stretch",padding:"0 4px",width:Du,boxSizing:"border-box"}),fj=k.forwardRef(function(t,n){const r=dj(t,"MuiMonthCalendar"),{className:o,value:a,defaultValue:s,referenceDate:i,disabled:l,disableFuture:u,disablePast:c,maxDate:d,minDate:m,onChange:f,shouldDisableMonth:h,readOnly:b,autoFocus:g=!1,onMonthFocus:x,hasFocus:E,onFocusedViewChange:C,monthsPerRow:T=3,timezone:w,gridLabelId:S,slots:O,slotProps:F}=r,B=je(r,uj),{value:P,handleValueChange:N,timezone:v}=ef({name:"MonthCalendar",timezone:w,value:a,defaultValue:s,referenceDate:i,onChange:f,valueManager:xr}),M=Iu(v),A=Yn(),D=_t(),R=k.useMemo(()=>xr.getInitialReferenceValue({value:P,utils:D,props:r,timezone:v,referenceDate:i,granularity:fr.month}),[]),z=r,U=cj(z),j=k.useMemo(()=>D.getMonth(M),[D,M]),_=k.useMemo(()=>P!=null?D.getMonth(P):null,[P,D]),[K,ne]=k.useState(()=>_||D.getMonth(R)),[L,fe]=_n({name:"MonthCalendar",state:"hasFocus",controlled:E,default:g??!1}),X=Ae(se=>{fe(se),C&&C(se)}),q=k.useCallback(se=>{const J=D.startOfMonth(c&&D.isAfter(M,m)?M:m),ee=D.startOfMonth(u&&D.isBefore(M,d)?M:d),xe=D.startOfMonth(se);return D.isBefore(xe,J)||D.isAfter(xe,ee)?!0:h?h(xe):!1},[u,c,d,m,M,h,D]),te=Ae((se,J)=>{if(b)return;const ee=D.setMonth(P??R,J);N(ee)}),Z=Ae(se=>{q(D.setMonth(P??R,se))||(ne(se),X(!0),x&&x(se))});k.useEffect(()=>{ne(se=>_!==null&&se!==_?_:se)},[_]);const re=Ae((se,J)=>{switch(se.key){case"ArrowUp":Z((12+J-3)%12),se.preventDefault();break;case"ArrowDown":Z((12+J+3)%12),se.preventDefault();break;case"ArrowLeft":Z((12+J+(A?1:-1))%12),se.preventDefault();break;case"ArrowRight":Z((12+J+(A?-1:1))%12),se.preventDefault();break}}),Q=Ae((se,J)=>{Z(J)}),G=Ae((se,J)=>{K===J&&X(!1)});return p.jsx(pj,H({ref:n,className:De(U.root,o),ownerState:z,role:"radiogroup","aria-labelledby":S},B,{children:Kp(D,P??R).map(se=>{const J=D.getMonth(se),ee=D.format(se,"monthShort"),xe=D.format(se,"month"),de=J===_,be=l||q(se);return p.jsx(ij,{selected:de,value:J,onClick:te,onKeyDown:re,autoFocus:L&&J===K,disabled:be,tabIndex:J===K&&!be?0:-1,onFocus:Q,onBlur:G,"aria-current":j===J?"date":void 0,"aria-label":xe,monthsPerRow:T,slots:O,slotProps:F,children:ee},ee)})}))});function mj(e){return Fe("MuiPickersYear",e)}const Hi=Re("MuiPickersYear",["root","yearButton","selected","disabled"]),hj=["autoFocus","className","children","disabled","selected","value","tabIndex","onClick","onKeyDown","onFocus","onBlur","aria-current","yearsPerRow","slots","slotProps"],gj=e=>{const{disabled:t,selected:n,classes:r}=e;return Le({root:["root"],yearButton:["yearButton",t&&"disabled",n&&"selected"]},mj,r)},bj=ae("div",{name:"MuiPickersYear",slot:"Root",overridesResolver:(e,t)=>[t.root]})({display:"flex",alignItems:"center",justifyContent:"center",flexBasis:"33.3%",variants:[{props:{yearsPerRow:4},style:{flexBasis:"25%"}}]}),yj=ae("button",{name:"MuiPickersYear",slot:"YearButton",overridesResolver:(e,t)=>[t.yearButton,{[`&.${Hi.disabled}`]:t.disabled},{[`&.${Hi.selected}`]:t.selected}]})(({theme:e})=>H({color:"unset",backgroundColor:"transparent",border:0,outline:0},e.typography.subtitle1,{margin:"6px 0",height:36,width:72,borderRadius:18,cursor:"pointer","&:focus":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.activeChannel} / ${e.vars.palette.action.focusOpacity})`:ut.alpha(e.palette.action.active,e.palette.action.focusOpacity)},"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.action.activeChannel} / ${e.vars.palette.action.hoverOpacity})`:ut.alpha(e.palette.action.active,e.palette.action.hoverOpacity)},"&:disabled":{cursor:"auto",pointerEvents:"none"},[`&.${Hi.disabled}`]:{color:(e.vars||e).palette.text.secondary},[`&.${Hi.selected}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.main,"&:focus, &:hover":{backgroundColor:(e.vars||e).palette.primary.dark}}})),xj=k.memo(function(t){const n=St({props:t,name:"MuiPickersYear"}),{autoFocus:r,className:o,children:a,disabled:s,selected:i,value:l,tabIndex:u,onClick:c,onKeyDown:d,onFocus:m,onBlur:f,"aria-current":h,slots:b,slotProps:g}=n,x=je(n,hj),E=k.useRef(null),C=gj(n);Vt(()=>{r&&E.current?.focus()},[r]);const T=b?.yearButton??yj,w=tt({elementType:T,externalSlotProps:g?.yearButton,additionalProps:{children:a,disabled:s,tabIndex:u,ref:E,type:"button",role:"radio","aria-current":h,"aria-checked":i,onClick:S=>c(S,l),onKeyDown:S=>d(S,l),onFocus:S=>m(S,l),onBlur:S=>f(S,l)},ownerState:n,className:C.yearButton});return p.jsx(bj,H({className:De(C.root,o),ownerState:n},x,{children:p.jsx(T,H({},w))}))});function Cj(e){return Fe("MuiYearCalendar",e)}Re("MuiYearCalendar",["root"]);const Ej=["autoFocus","className","value","defaultValue","referenceDate","disabled","disableFuture","disablePast","maxDate","minDate","onChange","readOnly","shouldDisableYear","disableHighlightToday","onYearFocus","hasFocus","onFocusedViewChange","yearsOrder","yearsPerRow","timezone","gridLabelId","slots","slotProps"],vj=e=>{const{classes:t}=e;return Le({root:["root"]},Cj,t)};function Tj(e,t){const n=_t(),r=bi(),o=St({props:e,name:t});return H({disablePast:!1,disableFuture:!1},o,{yearsPerRow:o.yearsPerRow??3,minDate:Wn(n,o.minDate,r.minDate),maxDate:Wn(n,o.maxDate,r.maxDate)})}const Sj=ae("div",{name:"MuiYearCalendar",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"flex",flexDirection:"row",flexWrap:"wrap",overflowY:"auto",height:"100%",padding:"0 4px",width:Du,maxHeight:Q7,boxSizing:"border-box",position:"relative"}),kj=k.forwardRef(function(t,n){const r=Tj(t,"MuiYearCalendar"),{autoFocus:o,className:a,value:s,defaultValue:i,referenceDate:l,disabled:u,disableFuture:c,disablePast:d,maxDate:m,minDate:f,onChange:h,readOnly:b,shouldDisableYear:g,onYearFocus:x,hasFocus:E,onFocusedViewChange:C,yearsOrder:T="asc",yearsPerRow:w,timezone:S,gridLabelId:O,slots:F,slotProps:B}=r,P=je(r,Ej),{value:N,handleValueChange:v,timezone:M}=ef({name:"YearCalendar",timezone:S,value:s,defaultValue:i,referenceDate:l,onChange:h,valueManager:xr}),A=Iu(M),D=Yn(),R=_t(),z=k.useMemo(()=>xr.getInitialReferenceValue({value:N,utils:R,props:r,timezone:M,referenceDate:l,granularity:fr.year}),[]),U=r,j=vj(U),_=k.useMemo(()=>R.getYear(A),[R,A]),K=k.useMemo(()=>N!=null?R.getYear(N):null,[N,R]),[ne,L]=k.useState(()=>K||R.getYear(z)),[fe,X]=_n({name:"YearCalendar",state:"hasFocus",controlled:E,default:o??!1}),q=Ae(le=>{X(le),C&&C(le)}),te=k.useCallback(le=>{if(d&&R.isBeforeYear(le,A)||c&&R.isAfterYear(le,A)||f&&R.isBeforeYear(le,f)||m&&R.isAfterYear(le,m))return!0;if(!g)return!1;const Pe=R.startOfYear(le);return g(Pe)},[c,d,m,f,A,g,R]),Z=Ae((le,Pe)=>{if(b)return;const Te=R.setYear(N??z,Pe);v(Te)}),re=Ae(le=>{te(R.setYear(N??z,le))||(L(le),q(!0),x?.(le))});k.useEffect(()=>{L(le=>K!==null&&le!==K?K:le)},[K]);const Q=T!=="desc"?w*1:w*-1,G=D&&T==="asc"||!D&&T==="desc"?-1:1,se=Ae((le,Pe)=>{switch(le.key){case"ArrowUp":re(Pe-Q),le.preventDefault();break;case"ArrowDown":re(Pe+Q),le.preventDefault();break;case"ArrowLeft":re(Pe-G),le.preventDefault();break;case"ArrowRight":re(Pe+G),le.preventDefault();break}}),J=Ae((le,Pe)=>{re(Pe)}),ee=Ae((le,Pe)=>{ne===Pe&&q(!1)}),xe=k.useRef(null),de=nt(n,xe);k.useEffect(()=>{if(o||xe.current===null)return;const le=xe.current.querySelector('[tabindex="0"]');if(!le)return;const Pe=le.offsetHeight,Te=le.offsetTop,ze=xe.current.clientHeight,we=xe.current.scrollTop,Et=Te+Pe;Pe>ze||Te<we||(xe.current.scrollTop=Et-ze/2-Pe/2)},[o]);const be=R.getYearRange([f,m]);return T==="desc"&&be.reverse(),p.jsx(Sj,H({ref:de,className:De(j.root,a),ownerState:U,role:"radiogroup","aria-labelledby":O},P,{children:be.map(le=>{const Pe=R.getYear(le),Te=Pe===K,ze=u||te(le);return p.jsx(xj,{selected:Te,value:Pe,onClick:Z,onKeyDown:se,autoFocus:fe&&Pe===ne,disabled:ze,tabIndex:Pe===ne&&!ze?0:-1,onFocus:J,onBlur:ee,"aria-current":_===Pe?"date":void 0,yearsPerRow:w,slots:F,slotProps:B,children:R.format(le,"year")},R.format(le,"year"))})}))}),wj=e=>Fe("MuiPickersCalendarHeader",e),_j=Re("MuiPickersCalendarHeader",["root","labelContainer","label","switchViewButton","switchViewIcon"]);function Ij(e){return Fe("MuiPickersArrowSwitcher",e)}Re("MuiPickersArrowSwitcher",["root","spacer","button","previousIconButton","nextIconButton","leftArrowIcon","rightArrowIcon"]);const Aj=["children","className","slots","slotProps","isNextDisabled","isNextHidden","onGoToNext","nextLabel","isPreviousDisabled","isPreviousHidden","onGoToPrevious","previousLabel","labelId"],Dj=["ownerState"],Pj=["ownerState"],Rj=ae("div",{name:"MuiPickersArrowSwitcher",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"flex"}),Mj=ae("div",{name:"MuiPickersArrowSwitcher",slot:"Spacer",overridesResolver:(e,t)=>t.spacer})(({theme:e})=>({width:e.spacing(3)})),Zg=ae(yr,{name:"MuiPickersArrowSwitcher",slot:"Button",overridesResolver:(e,t)=>t.button})({variants:[{props:{hidden:!0},style:{visibility:"hidden"}}]}),Nj=e=>{const{classes:t}=e;return Le({root:["root"],spacer:["spacer"],button:["button"],previousIconButton:["previousIconButton"],nextIconButton:["nextIconButton"],leftArrowIcon:["leftArrowIcon"],rightArrowIcon:["rightArrowIcon"]},Ij,t)},Oj=k.forwardRef(function(t,n){const r=Yn(),o=St({props:t,name:"MuiPickersArrowSwitcher"}),{children:a,className:s,slots:i,slotProps:l,isNextDisabled:u,isNextHidden:c,onGoToNext:d,nextLabel:m,isPreviousDisabled:f,isPreviousHidden:h,onGoToPrevious:b,previousLabel:g,labelId:x}=o,E=je(o,Aj),C=o,T=Nj(C),w={isDisabled:u,isHidden:c,goTo:d,label:m},S={isDisabled:f,isHidden:h,goTo:b,label:g},O=i?.previousIconButton??Zg,F=tt({elementType:O,externalSlotProps:l?.previousIconButton,additionalProps:{size:"medium",title:S.label,"aria-label":S.label,disabled:S.isDisabled,edge:"end",onClick:S.goTo},ownerState:H({},C,{hidden:S.isHidden}),className:De(T.button,T.previousIconButton)}),B=i?.nextIconButton??Zg,P=tt({elementType:B,externalSlotProps:l?.nextIconButton,additionalProps:{size:"medium",title:w.label,"aria-label":w.label,disabled:w.isDisabled,edge:"start",onClick:w.goTo},ownerState:H({},C,{hidden:w.isHidden}),className:De(T.button,T.nextIconButton)}),N=i?.leftArrowIcon??p$,v=tt({elementType:N,externalSlotProps:l?.leftArrowIcon,additionalProps:{fontSize:"inherit"},ownerState:C,className:T.leftArrowIcon}),M=je(v,Dj),A=i?.rightArrowIcon??f$,D=tt({elementType:A,externalSlotProps:l?.rightArrowIcon,additionalProps:{fontSize:"inherit"},ownerState:C,className:T.rightArrowIcon}),R=je(D,Pj);return p.jsxs(Rj,H({ref:n,className:De(T.root,s),ownerState:C},E,{children:[p.jsx(O,H({},F,{children:r?p.jsx(A,H({},R)):p.jsx(N,H({},M))})),a?p.jsx(Cn,{variant:"subtitle1",component:"span",id:x,children:a}):p.jsx(Mj,{className:T.spacer,ownerState:C}),p.jsx(B,H({},P,{children:r?p.jsx(N,H({},M)):p.jsx(A,H({},R))}))]}))});function Lj(e,{disableFuture:t,maxDate:n,timezone:r}){const o=_t();return k.useMemo(()=>{const a=o.date(void 0,r),s=o.startOfMonth(t&&o.isBefore(a,n)?a:n);return!o.isAfter(s,e)},[t,n,e,o,r])}function Fj(e,{disablePast:t,minDate:n,timezone:r}){const o=_t();return k.useMemo(()=>{const a=o.date(void 0,r),s=o.startOfMonth(t&&o.isAfter(a,n)?a:n);return!o.isBefore(s,e)},[t,n,e,o,r])}const $j=["slots","slotProps","currentMonth","disabled","disableFuture","disablePast","maxDate","minDate","onMonthChange","onViewChange","view","reduceAnimations","views","labelId","className","timezone","format"],Bj=["ownerState"],jj=e=>{const{classes:t}=e;return Le({root:["root"],labelContainer:["labelContainer"],label:["label"],switchViewButton:["switchViewButton"],switchViewIcon:["switchViewIcon"]},wj,t)},Hj=ae("div",{name:"MuiPickersCalendarHeader",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"flex",alignItems:"center",marginTop:12,marginBottom:4,paddingLeft:24,paddingRight:12,maxHeight:40,minHeight:40}),Uj=ae("div",{name:"MuiPickersCalendarHeader",slot:"LabelContainer",overridesResolver:(e,t)=>t.labelContainer})(({theme:e})=>H({display:"flex",overflow:"hidden",alignItems:"center",cursor:"pointer",marginRight:"auto"},e.typography.body1,{fontWeight:e.typography.fontWeightMedium})),zj=ae("div",{name:"MuiPickersCalendarHeader",slot:"Label",overridesResolver:(e,t)=>t.label})({marginRight:6}),Vj=ae(yr,{name:"MuiPickersCalendarHeader",slot:"SwitchViewButton",overridesResolver:(e,t)=>t.switchViewButton})({marginRight:"auto",variants:[{props:{view:"year"},style:{[`.${_j.switchViewIcon}`]:{transform:"rotate(180deg)"}}}]}),Wj=ae(d$,{name:"MuiPickersCalendarHeader",slot:"SwitchViewIcon",overridesResolver:(e,t)=>t.switchViewIcon})(({theme:e})=>({willChange:"transform",transition:e.transitions.create("transform"),transform:"rotate(0deg)"})),qj=k.forwardRef(function(t,n){const r=Hr(),o=_t(),a=St({props:t,name:"MuiPickersCalendarHeader"}),{slots:s,slotProps:i,currentMonth:l,disabled:u,disableFuture:c,disablePast:d,maxDate:m,minDate:f,onMonthChange:h,onViewChange:b,view:g,reduceAnimations:x,views:E,labelId:C,className:T,timezone:w,format:S=`${o.formats.month} ${o.formats.year}`}=a,O=je(a,$j),F=a,B=jj(a),P=s?.switchViewButton??Vj,N=tt({elementType:P,externalSlotProps:i?.switchViewButton,additionalProps:{size:"small","aria-label":r.calendarViewSwitchingButtonAriaLabel(g)},ownerState:F,className:B.switchViewButton}),v=s?.switchViewIcon??Wj,M=tt({elementType:v,externalSlotProps:i?.switchViewIcon,ownerState:F,className:B.switchViewIcon}),A=je(M,Bj),D=()=>h(o.addMonths(l,1),"left"),R=()=>h(o.addMonths(l,-1),"right"),z=Lj(l,{disableFuture:c,maxDate:m,timezone:w}),U=Fj(l,{disablePast:d,minDate:f,timezone:w}),j=()=>{if(!(E.length===1||!b||u))if(E.length===2)b(E.find(K=>K!==g)||E[0]);else{const K=E.indexOf(g)!==0?0:1;b(E[K])}};if(E.length===1&&E[0]==="year")return null;const _=o.formatByString(l,S);return p.jsxs(Hj,H({},O,{ownerState:F,className:De(B.root,T),ref:n,children:[p.jsxs(Uj,{role:"presentation",onClick:j,ownerState:F,"aria-live":"polite",className:B.labelContainer,children:[p.jsx(Ux,{reduceAnimations:x,transKey:_,children:p.jsx(zj,{id:C,ownerState:F,className:B.label,children:_})}),E.length>1&&!u&&p.jsx(P,H({},N,{children:p.jsx(v,H({},A))}))]}),p.jsx(Oo,{in:g==="day",appear:!x,enter:!x,children:p.jsx(Oj,{slots:s,slotProps:i,onGoToPrevious:R,isPreviousDisabled:U,previousLabel:r.previousMonth,onGoToNext:D,isNextDisabled:z,nextLabel:r.nextMonth})})]}))}),Yj=ae("div")({overflow:"hidden",width:Du,maxHeight:tf,display:"flex",flexDirection:"column",margin:"0 auto"}),Gj=e=>Fe("MuiDateCalendar",e);Re("MuiDateCalendar",["root","viewTransitionContainer"]);const Kj=["autoFocus","onViewChange","value","defaultValue","referenceDate","disableFuture","disablePast","onChange","onYearChange","onMonthChange","reduceAnimations","shouldDisableDate","shouldDisableMonth","shouldDisableYear","view","views","openTo","className","disabled","readOnly","minDate","maxDate","disableHighlightToday","focusedView","onFocusedViewChange","showDaysOutsideCurrentMonth","fixedWeekNumber","dayOfWeekFormatter","slots","slotProps","loading","renderLoading","displayWeekNumber","yearsOrder","yearsPerRow","monthsPerRow","timezone"],Qj=e=>{const{classes:t}=e;return Le({root:["root"],viewTransitionContainer:["viewTransitionContainer"]},Gj,t)};function Xj(e,t){const n=_t(),r=bi(),o=kx(),a=St({props:e,name:t});return H({},a,{loading:a.loading??!1,disablePast:a.disablePast??!1,disableFuture:a.disableFuture??!1,openTo:a.openTo??"day",views:a.views??["year","day"],reduceAnimations:a.reduceAnimations??o,renderLoading:a.renderLoading??(()=>p.jsx("span",{children:"..."})),minDate:Wn(n,a.minDate,r.minDate),maxDate:Wn(n,a.maxDate,r.maxDate)})}const Zj=ae(Yj,{name:"MuiDateCalendar",slot:"Root",overridesResolver:(e,t)=>t.root})({display:"flex",flexDirection:"column",height:tf}),Jj=ae(Ux,{name:"MuiDateCalendar",slot:"ViewTransitionContainer",overridesResolver:(e,t)=>t.viewTransitionContainer})({}),eH=k.forwardRef(function(t,n){const r=_t(),o=nr(),a=Xj(t,"MuiDateCalendar"),{autoFocus:s,onViewChange:i,value:l,defaultValue:u,referenceDate:c,disableFuture:d,disablePast:m,onChange:f,onYearChange:h,onMonthChange:b,reduceAnimations:g,shouldDisableDate:x,shouldDisableMonth:E,shouldDisableYear:C,view:T,views:w,openTo:S,className:O,disabled:F,readOnly:B,minDate:P,maxDate:N,disableHighlightToday:v,focusedView:M,onFocusedViewChange:A,showDaysOutsideCurrentMonth:D,fixedWeekNumber:R,dayOfWeekFormatter:z,slots:U,slotProps:j,loading:_,renderLoading:K,displayWeekNumber:ne,yearsOrder:L,yearsPerRow:fe,monthsPerRow:X,timezone:q}=a,te=je(a,Kj),{value:Z,handleValueChange:re,timezone:Q}=ef({name:"DateCalendar",timezone:q,value:l,defaultValue:u,referenceDate:c,onChange:f,valueManager:xr}),{view:G,setView:se,focusedView:J,setFocusedView:ee,goToNextView:xe,setValueAndGoToNextView:de}=wx({view:T,views:w,openTo:S,onChange:re,onViewChange:i,autoFocus:s,focusedView:M,onFocusedViewChange:A}),{referenceDate:be,calendarState:le,changeFocusedDay:Pe,changeMonth:Te,handleChangeMonth:ze,isDateDisabled:we,onMonthSwitchingAnimationEnd:Et}=kB({value:Z,referenceDate:c,reduceAnimations:g,onMonthChange:b,minDate:P,maxDate:N,shouldDisableDate:x,disablePast:m,disableFuture:d,timezone:Q}),st=F&&Z||P,qe=F&&Z||N,ue=`${o}-grid-label`,Ee=J!==null,Me=U?.calendarHeader??qj,He=tt({elementType:Me,externalSlotProps:j?.calendarHeader,additionalProps:{views:w,view:G,currentMonth:le.currentMonth,onViewChange:se,onMonthChange:(We,kt)=>ze({newMonth:We,direction:kt}),minDate:st,maxDate:qe,disabled:F,disablePast:m,disableFuture:d,reduceAnimations:g,timezone:Q,labelId:ue},ownerState:a}),Be=Ae(We=>{const kt=r.startOfMonth(We),Pt=r.endOfMonth(We),bt=we(We)?Ns({utils:r,date:We,minDate:r.isBefore(P,kt)?kt:P,maxDate:r.isAfter(N,Pt)?Pt:N,disablePast:m,disableFuture:d,isDateDisabled:we,timezone:Q}):We;bt?(de(bt,"finish"),b?.(kt)):(xe(),Te(kt)),Pe(bt,!0)}),Ne=Ae(We=>{const kt=r.startOfYear(We),Pt=r.endOfYear(We),bt=we(We)?Ns({utils:r,date:We,minDate:r.isBefore(P,kt)?kt:P,maxDate:r.isAfter(N,Pt)?Pt:N,disablePast:m,disableFuture:d,isDateDisabled:we,timezone:Q}):We;bt?(de(bt,"finish"),h?.(bt)):(xe(),Te(kt)),Pe(bt,!0)}),Ze=Ae(We=>re(We&&Vl(r,We,Z??be),"finish",G));k.useEffect(()=>{Z!=null&&r.isValid(Z)&&Te(Z)},[Z]);const ht=a,pt=Qj(ht),ie={disablePast:m,disableFuture:d,maxDate:N,minDate:P},ye={disableHighlightToday:v,readOnly:B,disabled:F,timezone:Q,gridLabelId:ue,slots:U,slotProps:j},ve=k.useRef(G);k.useEffect(()=>{ve.current!==G&&(J===ve.current&&ee(G,!0),ve.current=G)},[J,ee,G]);const $e=k.useMemo(()=>[Z],[Z]);return p.jsxs(Zj,H({ref:n,className:De(pt.root,O),ownerState:ht},te,{children:[p.jsx(Me,H({},He,{slots:U,slotProps:j})),p.jsx(Jj,{reduceAnimations:g,className:pt.viewTransitionContainer,transKey:G,ownerState:ht,children:p.jsxs("div",{children:[G==="year"&&p.jsx(kj,H({},ie,ye,{value:Z,onChange:Ne,shouldDisableYear:C,hasFocus:Ee,onFocusedViewChange:We=>ee("year",We),yearsOrder:L,yearsPerRow:fe,referenceDate:be})),G==="month"&&p.jsx(fj,H({},ie,ye,{hasFocus:Ee,className:O,value:Z,onChange:Be,shouldDisableMonth:E,onFocusedViewChange:We=>ee("month",We),monthsPerRow:X,referenceDate:be})),G==="day"&&p.jsx(tj,H({},le,ie,ye,{onMonthSwitchingAnimationEnd:Et,onFocusedDayChange:Pe,reduceAnimations:g,selectedDays:$e,onSelectedDaysChange:Ze,shouldDisableDate:x,shouldDisableMonth:E,shouldDisableYear:C,hasFocus:Ee,onFocusedViewChange:We=>ee("day",We),showDaysOutsideCurrentMonth:D,fixedWeekNumber:R,dayOfWeekFormatter:z,displayWeekNumber:ne,loading:_,renderLoading:K}))]})})]}))}),ga=({view:e,onViewChange:t,views:n,focusedView:r,onFocusedViewChange:o,value:a,defaultValue:s,referenceDate:i,onChange:l,className:u,classes:c,disableFuture:d,disablePast:m,minDate:f,maxDate:h,shouldDisableDate:b,shouldDisableMonth:g,shouldDisableYear:x,reduceAnimations:E,onMonthChange:C,monthsPerRow:T,onYearChange:w,yearsOrder:S,yearsPerRow:O,slots:F,slotProps:B,loading:P,renderLoading:N,disableHighlightToday:v,readOnly:M,disabled:A,showDaysOutsideCurrentMonth:D,dayOfWeekFormatter:R,sx:z,autoFocus:U,fixedWeekNumber:j,displayWeekNumber:_,timezone:K})=>p.jsx(eH,{view:e,onViewChange:t,views:n.filter(Fg),focusedView:r&&Fg(r)?r:null,onFocusedViewChange:o,value:a,defaultValue:s,referenceDate:i,onChange:l,className:u,classes:c,disableFuture:d,disablePast:m,minDate:f,maxDate:h,shouldDisableDate:b,shouldDisableMonth:g,shouldDisableYear:x,reduceAnimations:E,onMonthChange:C,monthsPerRow:T,onYearChange:w,yearsOrder:S,yearsPerRow:O,slots:F,slotProps:B,loading:P,renderLoading:N,disableHighlightToday:v,readOnly:M,disabled:A,showDaysOutsideCurrentMonth:D,dayOfWeekFormatter:R,sx:z,autoFocus:U,fixedWeekNumber:j,displayWeekNumber:_,timezone:K}),qx=k.forwardRef(function(t,n){const r=Hr(),o=_t(),a=Cx(t,"MuiDesktopDatePicker"),s=H({day:ga,month:ga,year:ga},a.viewRenderers),i=H({},a,{viewRenderers:s,format:Qp(o,a,!1),yearsPerRow:a.yearsPerRow??4,slots:H({openPickerIcon:m$,field:jx},a.slots),slotProps:H({},a.slotProps,{field:u=>H({},jn(a.slotProps?.field,u),vx(a),{ref:n}),toolbar:H({hidden:!0},a.slotProps?.toolbar)})}),{renderPicker:l}=c$({props:i,valueManager:xr,valueType:"date",getOpenDialogAriaText:yx({utils:o,formatKey:"fullDate",contextTranslation:r.openDatePickerDialogue,propsTranslation:i.localeText?.openDatePickerDialogue}),validator:yi});return l()});qx.propTypes={autoFocus:ce.bool,className:ce.string,closeOnSelect:ce.bool,dayOfWeekFormatter:ce.func,defaultValue:ce.object,disabled:ce.bool,disableFuture:ce.bool,disableHighlightToday:ce.bool,disableOpenPicker:ce.bool,disablePast:ce.bool,displayWeekNumber:ce.bool,enableAccessibleFieldDOMStructure:ce.any,fixedWeekNumber:ce.number,format:ce.string,formatDensity:ce.oneOf(["dense","spacious"]),inputRef:My,label:ce.node,loading:ce.bool,localeText:ce.object,maxDate:ce.object,minDate:ce.object,monthsPerRow:ce.oneOf([3,4]),name:ce.string,onAccept:ce.func,onChange:ce.func,onClose:ce.func,onError:ce.func,onMonthChange:ce.func,onOpen:ce.func,onSelectedSectionsChange:ce.func,onViewChange:ce.func,onYearChange:ce.func,open:ce.bool,openTo:ce.oneOf(["day","month","year"]),orientation:ce.oneOf(["landscape","portrait"]),readOnly:ce.bool,reduceAnimations:ce.bool,referenceDate:ce.object,renderLoading:ce.func,selectedSections:ce.oneOfType([ce.oneOf(["all","day","empty","hours","meridiem","minutes","month","seconds","weekDay","year"]),ce.number]),shouldDisableDate:ce.func,shouldDisableMonth:ce.func,shouldDisableYear:ce.func,showDaysOutsideCurrentMonth:ce.bool,slotProps:ce.object,slots:ce.object,sx:ce.oneOfType([ce.arrayOf(ce.oneOfType([ce.func,ce.object,ce.bool])),ce.func,ce.object]),timezone:ce.string,value:ce.object,view:ce.oneOf(["day","month","year"]),viewRenderers:ce.shape({day:ce.func,month:ce.func,year:ce.func}),views:ce.arrayOf(ce.oneOf(["day","month","year"]).isRequired),yearsOrder:ce.oneOf(["asc","desc"]),yearsPerRow:ce.oneOf([3,4])};function tH(e){return Fe("MuiDialogContent",e)}Re("MuiDialogContent",["root","dividers"]);function nH(e){return Fe("MuiDialogTitle",e)}const rH=Re("MuiDialogTitle",["root"]),oH=e=>{const{classes:t,dividers:n}=e;return Le({root:["root",n&&"dividers"]},tH,t)},aH=ae("div",{name:"MuiDialogContent",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.dividers&&t.dividers]}})(Je(({theme:e})=>({flex:"1 1 auto",WebkitOverflowScrolling:"touch",overflowY:"auto",padding:"20px 24px",variants:[{props:({ownerState:t})=>t.dividers,style:{padding:"16px 24px",borderTop:`1px solid ${(e.vars||e).palette.divider}`,borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:t})=>!t.dividers,style:{[`.${rH.root} + &`]:{paddingTop:0}}}]}))),Sr=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogContent"}),{className:o,dividers:a=!1,...s}=r,i={...r,dividers:a},l=oH(i);return p.jsx(aH,{className:De(l.root,o),ownerState:i,ref:n,...s})});function sH(e){return Fe("MuiDialog",e)}const Os=Re("MuiDialog",["root","scrollPaper","scrollBody","container","paper","paperScrollPaper","paperScrollBody","paperWidthFalse","paperWidthXs","paperWidthSm","paperWidthMd","paperWidthLg","paperWidthXl","paperFullWidth","paperFullScreen"]),Yx=k.createContext({}),iH=ae(nx,{name:"MuiDialog",slot:"Backdrop",overrides:(e,t)=>t.backdrop})({zIndex:-1}),lH=e=>{const{classes:t,scroll:n,maxWidth:r,fullWidth:o,fullScreen:a}=e,s={root:["root"],container:["container",`scroll${ke(n)}`],paper:["paper",`paperScroll${ke(n)}`,`paperWidth${ke(String(r))}`,o&&"paperFullWidth",a&&"paperFullScreen"]};return Le(s,sH,t)},uH=ae(rx,{name:"MuiDialog",slot:"Root"})({"@media print":{position:"absolute !important"}}),cH=ae("div",{name:"MuiDialog",slot:"Container",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.container,t[`scroll${ke(n.scroll)}`]]}})({height:"100%","@media print":{height:"auto"},outline:0,variants:[{props:{scroll:"paper"},style:{display:"flex",justifyContent:"center",alignItems:"center"}},{props:{scroll:"body"},style:{overflowY:"auto",overflowX:"hidden",textAlign:"center","&::after":{content:'""',display:"inline-block",verticalAlign:"middle",height:"100%",width:"0"}}}]}),dH=ae(Ho,{name:"MuiDialog",slot:"Paper",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.paper,t[`scrollPaper${ke(n.scroll)}`],t[`paperWidth${ke(String(n.maxWidth))}`],n.fullWidth&&t.paperFullWidth,n.fullScreen&&t.paperFullScreen]}})(Je(({theme:e})=>({margin:32,position:"relative",overflowY:"auto","@media print":{overflowY:"visible",boxShadow:"none"},variants:[{props:{scroll:"paper"},style:{display:"flex",flexDirection:"column",maxHeight:"calc(100% - 64px)"}},{props:{scroll:"body"},style:{display:"inline-block",verticalAlign:"middle",textAlign:"initial"}},{props:({ownerState:t})=>!t.maxWidth,style:{maxWidth:"calc(100% - 64px)"}},{props:{maxWidth:"xs"},style:{maxWidth:e.breakpoints.unit==="px"?Math.max(e.breakpoints.values.xs,444):`max(${e.breakpoints.values.xs}${e.breakpoints.unit}, 444px)`,[`&.${Os.paperScrollBody}`]:{[e.breakpoints.down(Math.max(e.breakpoints.values.xs,444)+64)]:{maxWidth:"calc(100% - 64px)"}}}},...Object.keys(e.breakpoints.values).filter(t=>t!=="xs").map(t=>({props:{maxWidth:t},style:{maxWidth:`${e.breakpoints.values[t]}${e.breakpoints.unit}`,[`&.${Os.paperScrollBody}`]:{[e.breakpoints.down(e.breakpoints.values[t]+64)]:{maxWidth:"calc(100% - 64px)"}}}})),{props:({ownerState:t})=>t.fullWidth,style:{width:"calc(100% - 64px)"}},{props:({ownerState:t})=>t.fullScreen,style:{margin:0,width:"100%",maxWidth:"100%",height:"100%",maxHeight:"none",borderRadius:0,[`&.${Os.paperScrollBody}`]:{margin:0,maxWidth:"100%"}}}]}))),kr=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialog"}),o=no(),a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{"aria-describedby":s,"aria-labelledby":i,"aria-modal":l=!0,BackdropComponent:u,BackdropProps:c,children:d,className:m,disableEscapeKeyDown:f=!1,fullScreen:h=!1,fullWidth:b=!1,maxWidth:g="sm",onClick:x,onClose:E,open:C,PaperComponent:T=Ho,PaperProps:w={},scroll:S="paper",slots:O={},slotProps:F={},TransitionComponent:B=Oo,transitionDuration:P=a,TransitionProps:N,...v}=r,M={...r,disableEscapeKeyDown:f,fullScreen:h,fullWidth:b,maxWidth:g,scroll:S},A=lH(M),D=k.useRef(),R=J=>{D.current=J.target===J.currentTarget},z=J=>{x&&x(J),D.current&&(D.current=null,E&&E(J,"backdropClick"))},U=nr(i),j=k.useMemo(()=>({titleId:U}),[U]),_={transition:B,...O},K={transition:N,paper:w,backdrop:c,...F},ne={slots:_,slotProps:K},[L,fe]=ct("root",{elementType:uH,shouldForwardComponentProp:!0,externalForwardedProps:ne,ownerState:M,className:De(A.root,m),ref:n}),[X,q]=ct("backdrop",{elementType:iH,shouldForwardComponentProp:!0,externalForwardedProps:ne,ownerState:M}),[te,Z]=ct("paper",{elementType:dH,shouldForwardComponentProp:!0,externalForwardedProps:ne,ownerState:M,className:De(A.paper,w.className)}),[re,Q]=ct("container",{elementType:cH,externalForwardedProps:ne,ownerState:M,className:A.container}),[G,se]=ct("transition",{elementType:Oo,externalForwardedProps:ne,ownerState:M,additionalProps:{appear:!0,in:C,timeout:P,role:"presentation"}});return p.jsx(L,{closeAfterTransition:!0,slots:{backdrop:X},slotProps:{backdrop:{transitionDuration:P,as:u,...q}},disableEscapeKeyDown:f,onClose:E,open:C,onClick:z,...fe,...v,children:p.jsx(G,{...se,children:p.jsx(re,{onMouseDown:R,...Q,children:p.jsx(te,{as:T,elevation:24,role:"dialog","aria-describedby":s,"aria-labelledby":U,"aria-modal":l,...Z,children:p.jsx(Yx.Provider,{value:j,children:d})})})})})}),pH=ae(kr)({[`& .${Os.container}`]:{outline:0},[`& .${Os.paper}`]:{outline:0,minWidth:Du}}),fH=ae(Sr)({"&:first-of-type":{padding:0}});function mH(e){const{children:t,onDismiss:n,open:r,slots:o,slotProps:a}=e,s=o?.dialog??pH,i=o?.mobileTransition??Oo;return p.jsx(s,H({open:r,onClose:n},a?.dialog,{TransitionComponent:i,TransitionProps:a?.mobileTransition,PaperComponent:o?.mobilePaper,PaperProps:a?.mobilePaper,children:p.jsx(fH,{children:t})}))}const hH=["props","getOpenDialogAriaText"],gH=e=>{let{props:t,getOpenDialogAriaText:n}=e,r=je(e,hH);const{slots:o,slotProps:a,className:s,sx:i,format:l,formatDensity:u,enableAccessibleFieldDOMStructure:c,selectedSections:d,onSelectedSectionsChange:m,timezone:f,name:h,label:b,inputRef:g,readOnly:x,disabled:E,localeText:C}=t,T=k.useRef(null),w=nr(),S=a?.toolbar?.hidden??!1,{open:O,actions:F,layoutProps:B,renderCurrentView:P,fieldProps:N,contextValue:v}=_x(H({},r,{props:t,fieldRef:T,autoFocusView:!0,additionalViewProps:{},wrapperVariant:"mobile"})),M=o.field,A=tt({elementType:M,externalSlotProps:a?.field,additionalProps:H({},N,S&&{id:w},!(E||x)&&{onClick:F.onOpen,onKeyDown:a7(F.onOpen)},{readOnly:x??!0,disabled:E,className:s,sx:i,format:l,formatDensity:u,enableAccessibleFieldDOMStructure:c,selectedSections:d,onSelectedSectionsChange:m,timezone:f,label:b,name:h},g?{inputRef:g}:{}),ownerState:t});A.inputProps=H({},A.inputProps,{"aria-label":n(N.value)});const D=H({textField:o.textField},A.slots),R=o.layout??Px;let z=w;S&&(b?z=`${w}-label`:z=void 0);const U=H({},a,{toolbar:H({},a?.toolbar,{titleId:w}),mobilePaper:H({"aria-labelledby":z},a?.mobilePaper)}),j=nt(T,A.unstableFieldRef);return{renderPicker:()=>p.jsxs(Rx,{contextValue:v,localeText:C,children:[p.jsx(M,H({},A,{slots:D,slotProps:U,unstableFieldRef:j})),p.jsx(mH,H({},F,{open:O,slots:o,slotProps:U,children:p.jsx(R,H({},B,U?.layout,{slots:o,slotProps:U,children:P()}))}))]})}},Gx=k.forwardRef(function(t,n){const r=Hr(),o=_t(),a=Cx(t,"MuiMobileDatePicker"),s=H({day:ga,month:ga,year:ga},a.viewRenderers),i=H({},a,{viewRenderers:s,format:Qp(o,a,!1),slots:H({field:jx},a.slots),slotProps:H({},a.slotProps,{field:u=>H({},jn(a.slotProps?.field,u),vx(a),{ref:n}),toolbar:H({hidden:!1},a.slotProps?.toolbar)})}),{renderPicker:l}=gH({props:i,valueManager:xr,valueType:"date",getOpenDialogAriaText:yx({utils:o,formatKey:"fullDate",contextTranslation:r.openDatePickerDialogue,propsTranslation:i.localeText?.openDatePickerDialogue}),validator:yi});return l()});Gx.propTypes={autoFocus:ce.bool,className:ce.string,closeOnSelect:ce.bool,dayOfWeekFormatter:ce.func,defaultValue:ce.object,disabled:ce.bool,disableFuture:ce.bool,disableHighlightToday:ce.bool,disableOpenPicker:ce.bool,disablePast:ce.bool,displayWeekNumber:ce.bool,enableAccessibleFieldDOMStructure:ce.any,fixedWeekNumber:ce.number,format:ce.string,formatDensity:ce.oneOf(["dense","spacious"]),inputRef:My,label:ce.node,loading:ce.bool,localeText:ce.object,maxDate:ce.object,minDate:ce.object,monthsPerRow:ce.oneOf([3,4]),name:ce.string,onAccept:ce.func,onChange:ce.func,onClose:ce.func,onError:ce.func,onMonthChange:ce.func,onOpen:ce.func,onSelectedSectionsChange:ce.func,onViewChange:ce.func,onYearChange:ce.func,open:ce.bool,openTo:ce.oneOf(["day","month","year"]),orientation:ce.oneOf(["landscape","portrait"]),readOnly:ce.bool,reduceAnimations:ce.bool,referenceDate:ce.object,renderLoading:ce.func,selectedSections:ce.oneOfType([ce.oneOf(["all","day","empty","hours","meridiem","minutes","month","seconds","weekDay","year"]),ce.number]),shouldDisableDate:ce.func,shouldDisableMonth:ce.func,shouldDisableYear:ce.func,showDaysOutsideCurrentMonth:ce.bool,slotProps:ce.object,slots:ce.object,sx:ce.oneOfType([ce.arrayOf(ce.oneOfType([ce.func,ce.object,ce.bool])),ce.func,ce.object]),timezone:ce.string,value:ce.object,view:ce.oneOf(["day","month","year"]),viewRenderers:ce.shape({day:ce.func,month:ce.func,year:ce.func}),views:ce.arrayOf(ce.oneOf(["day","month","year"]).isRequired),yearsOrder:ce.oneOf(["asc","desc"]),yearsPerRow:ce.oneOf([3,4])};const bH=["desktopModeMediaQuery"],Mc=k.forwardRef(function(t,n){const r=St({props:t,name:"MuiDatePicker"}),{desktopModeMediaQuery:o=s7}=r,a=je(r,bH);return dx(o,{defaultMatches:!0})?p.jsx(qx,H({ref:n},a)):p.jsx(Gx,H({ref:n},a))});var ll={exports:{}},yH=ll.exports,Jg;function xH(){return Jg||(Jg=1,(function(e,t){(function(n,r){e.exports=r()})(yH,(function(){var n="minute",r=/[+-]\d\d(?::?\d\d)?/g,o=/([+-]|\d\d)/g;return function(a,s,i){var l=s.prototype;i.utc=function(b){var g={date:b,utc:!0,args:arguments};return new s(g)},l.utc=function(b){var g=i(this.toDate(),{locale:this.$L,utc:!0});return b?g.add(this.utcOffset(),n):g},l.local=function(){return i(this.toDate(),{locale:this.$L,utc:!1})};var u=l.parse;l.parse=function(b){b.utc&&(this.$u=!0),this.$utils().u(b.$offset)||(this.$offset=b.$offset),u.call(this,b)};var c=l.init;l.init=function(){if(this.$u){var b=this.$d;this.$y=b.getUTCFullYear(),this.$M=b.getUTCMonth(),this.$D=b.getUTCDate(),this.$W=b.getUTCDay(),this.$H=b.getUTCHours(),this.$m=b.getUTCMinutes(),this.$s=b.getUTCSeconds(),this.$ms=b.getUTCMilliseconds()}else c.call(this)};var d=l.utcOffset;l.utcOffset=function(b,g){var x=this.$utils().u;if(x(b))return this.$u?0:x(this.$offset)?d.call(this):this.$offset;if(typeof b=="string"&&(b=(function(w){w===void 0&&(w="");var S=w.match(r);if(!S)return null;var O=(""+S[0]).match(o)||["-",0,0],F=O[0],B=60*+O[1]+ +O[2];return B===0?0:F==="+"?B:-B})(b),b===null))return this;var E=Math.abs(b)<=16?60*b:b;if(E===0)return this.utc(g);var C=this.clone();if(g)return C.$offset=E,C.$u=!1,C;var T=this.$u?this.toDate().getTimezoneOffset():-1*this.utcOffset();return(C=this.local().add(E+T,n)).$offset=E,C.$x.$localOffset=T,C};var m=l.format;l.format=function(b){var g=b||(this.$u?"YYYY-MM-DDTHH:mm:ss[Z]":"");return m.call(this,g)},l.valueOf=function(){var b=this.$utils().u(this.$offset)?0:this.$offset+(this.$x.$localOffset||this.$d.getTimezoneOffset());return this.$d.valueOf()-6e4*b},l.isUTC=function(){return!!this.$u},l.toISOString=function(){return this.toDate().toISOString()},l.toString=function(){return this.toDate().toUTCString()};var f=l.toDate;l.toDate=function(b){return b==="s"&&this.$offset?i(this.format("YYYY-MM-DD HH:mm:ss:SSS")).toDate():f.call(this)};var h=l.diff;l.diff=function(b,g,x){if(b&&this.$u===b.$u)return h.call(this,b,g,x);var E=this.local(),C=i(b).local();return h.call(E,C,g,x)}}}))})(ll)),ll.exports}var CH=xH();const EH=tr(CH);yt.extend(EH);function Nc(e){switch(e){case"Star":return["Equals","Contains"];case"MinMax":return["Equals","Less Than","Greater Than","Between"];case"DateMinMax":return["Equals","Before","After","Between"];case"Retrieval":return["Semantic Search"];case"Boolean":return["Equals"];case"NONE":default:return[]}}function vH(e){return e==="DateMinMax"}function Oc(e){return e==="Between"}function Kx({spec:e,values:t,selection:n,onChange:r,retrievalFn:o}){const a=()=>n?.matchType?n.matchType:e.filterType==="DateMinMax"?"Between":Nc(e.filterType)[0]||"Equals",[s,i]=W.useState(a()),[l,u]=W.useState(n?.value??""),[c,d]=W.useState(n?.value2??""),[m,f]=W.useState([]),[h,b]=W.useState(!1),[g,x]=W.useState(""),[E,C]=W.useState(!1),[T,w]=W.useState(!1),S=W.useRef(null),O=W.useRef(0),[F,B]=W.useState(!1);W.useEffect(()=>{if(e.filterType!=="Retrieval"||!o)return;const _=g.trim();if(_.length<=2){f([]),C(!1);return}return S.current&&clearTimeout(S.current),S.current=setTimeout(async()=>{O.current+=1;const K=O.current;b(!0);try{const ne=await o(_,e);K===O.current&&f(ne)}catch(ne){K===O.current&&(console.error("Retrieval failed",ne),f([]))}finally{K===O.current&&(b(!1),C(!0))}},500),()=>{S.current&&clearTimeout(S.current)}},[g,e,o]),W.useEffect(()=>{n===null?(u(""),d(""),i(e.filterType==="DateMinMax"?"Between":Nc(e.filterType)[0]||"Equals")):n&&(i(n.matchType),u(n.value??""),d(n.value2??""))},[n,e.filterType]);const P=Nc(e.filterType),N=vH(e.filterType),v=Oc(s),M=N&&t.length>=2&&t[0].value instanceof Date?yt.utc(t[0].value):void 0,A=N&&t.length>=2&&t[1].value instanceof Date?yt.utc(t[1].value):void 0,D=e.filterType==="MinMax"&&t.length>=2&&typeof t[0].value=="number"?t[0].value:void 0,R=e.filterType==="MinMax"&&t.length>=2&&typeof t[1].value=="number"?t[1].value:void 0;if(P.length===0)return null;const z=_=>{const K=_.target.value;i(K),Oc(K)||d(""),l&&r({dimensionName:e.dimensionName,matchType:K,value:l,...Oc(K)&&c&&{value2:c}})},U=(_,K)=>{u(_??""),K!==void 0&&d(K??"");const ne=Array.isArray(_)&&_.length===0;r(!ne&&_!==""&&_!==null&&_!==void 0?{dimensionName:e.dimensionName,matchType:s,value:_,...v&&K&&{value2:K}}:null)},j=()=>{u(""),d(""),r(null)};return p.jsxs(ar,{sx:{display:"flex",flexDirection:"column",gap:1.5,fontSize:"0.75rem","& .MuiInputBase-root":{fontSize:"0.75rem"},"& .MuiInputBase-input":{padding:"6px 10px"},"& .MuiSelect-select":{padding:"6px 10px !important"},"& .MuiAutocomplete-input":{padding:"0 !important"},"& .MuiAutocomplete-root .MuiInputBase-root":{padding:"5px 10px",minHeight:"29.5px",maxHeight:"29.5px",boxSizing:"border-box",overflow:"hidden"},"& .MuiChip-root":{height:"16px",margin:"0 2px 0 0"},"& .MuiChip-label":{fontSize:"0.7rem",padding:"0 6px"},"& .MuiChip-deleteIcon":{fontSize:"14px",margin:"0 2px 0 -4px"},"& .MuiInputLabel-root":{fontSize:"0.75rem",transform:"translate(10px, 6px) scale(1)"},"& .MuiInputLabel-shrink":{fontSize:"0.85rem",transform:"translate(14px, -9px) scale(0.75)"},"& .MuiOutlinedInput-notchedOutline legend":{fontSize:"0.65rem"},"& .MuiFormHelperText-root":{fontSize:"0.65rem",marginTop:"2px"},"& .MuiSvgIcon-root":{fontSize:"1.25rem"}},children:[p.jsx(ar,{sx:{fontWeight:600},children:e.label??e.dimensionName}),e.filterType!=="Boolean"&&p.jsxs(Hl,{size:"small",fullWidth:!0,children:[p.jsx(Ul,{children:"Match Type"}),p.jsx(zl,{value:s,label:"Match Type",onChange:z,disabled:P.length===1,MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:"0.75rem",minHeight:"auto",padding:"4px 10px"}}}},children:P.map(_=>p.jsx(aa,{value:_,children:_},_))})]}),e.filterType==="Star"&&s==="Equals"&&p.jsx(Rd,{multiple:!0,size:"small",options:t,getOptionLabel:_=>typeof _=="string"?_:typeof _=="object"&&_!==null&&"value"in _?String(_.value):String(_),value:Array.isArray(l)?l.map(_=>t.find(K=>K.value===_)||_):l?[t.find(_=>_.value===l)||l]:[],onChange:(_,K)=>{const ne=K.map(L=>typeof L=="string"?L:L&&typeof L=="object"&&"value"in L?L.value:L);U(ne)},noOptionsText:"No matches found",renderInput:_=>p.jsx(Rt,{..._,size:"small",label:"Values",placeholder:"Select values..."}),freeSolo:!e.values||e.values.length===0,slotProps:{paper:{sx:{"& .MuiAutocomplete-option":{fontSize:"0.75rem",minHeight:"auto",padding:"4px 10px"}}}}}),e.filterType==="Star"&&s==="Contains"&&p.jsx(Rt,{size:"small",label:"Search Text",value:l,onChange:_=>U(_.target.value),placeholder:"Enter text to search...",fullWidth:!0}),e.filterType==="Boolean"&&p.jsxs(Hl,{size:"small",fullWidth:!0,children:[p.jsx(Ul,{children:"Value"}),p.jsxs(zl,{value:l===!0?"true":l===!1?"false":"",label:"Value",onChange:_=>{const K=_.target.value;K==="true"?U(!0):K==="false"?U(!1):j()},MenuProps:{PaperProps:{sx:{"& .MuiMenuItem-root":{fontSize:"0.75rem",minHeight:"auto",padding:"4px 10px"}}}},children:[p.jsx(aa,{value:"",children:p.jsx("em",{children:"Blank"})}),p.jsx(aa,{value:"true",children:"True"}),p.jsx(aa,{value:"false",children:"False"})]})]}),e.filterType==="Retrieval"&&s==="Semantic Search"&&p.jsx(Rd,{multiple:!0,size:"small",options:m,loading:h,getOptionLabel:_=>typeof _=="string"?_:typeof _=="object"&&_!==null&&"value"in _?String(_.value):String(_),value:Array.isArray(l)?l.map(_=>m.find(ne=>ne.value===_)||{value:_}):l?[{value:l}]:[],onInputChange:(_,K)=>{x(K)},onChange:(_,K)=>{const ne=K.map(L=>typeof L=="string"?L:L&&typeof L=="object"&&"value"in L?L.value:L);U(ne)},noOptionsText:g.trim().length<=2?"Type at least 3 characters to search":"No matches found",renderInput:_=>p.jsx(Rt,{..._,size:"small",label:"Search Values",placeholder:"Type to search...",onFocus:()=>w(!0),onBlur:()=>w(!1),helperText:T&&!h&&E&&m.length===0?"No matches found":void 0,InputProps:{..._.InputProps,endAdornment:p.jsxs(p.Fragment,{children:[h?p.jsx(Up,{color:"inherit",size:20}):null,_.InputProps.endAdornment]})}}),freeSolo:!0,filterOptions:_=>_,slotProps:{paper:{sx:{"& .MuiAutocomplete-option":{fontSize:"0.75rem",minHeight:"auto",padding:"4px 10px"}}}}}),e.filterType==="MinMax"&&!v&&p.jsx(Rt,{size:"small",type:"number",label:"Value",value:l,onChange:_=>U(parseFloat(_.target.value)||""),onFocus:()=>B(!0),onBlur:()=>B(!1),placeholder:"Enter number...",fullWidth:!0,inputProps:{min:D,max:R},helperText:F&&D!==void 0&&R!==void 0?`Valid range: [${D} - ${R}]`:void 0}),e.filterType==="MinMax"&&v&&p.jsxs(ar,{sx:{display:"flex",flexDirection:"column",gap:1},children:[p.jsxs(ar,{sx:{display:"flex",gap:1,alignItems:"center"},children:[p.jsx(Rt,{size:"small",type:"number",label:"From",value:l,onChange:_=>U(parseFloat(_.target.value)||"",c),onFocus:()=>B(!0),onBlur:()=>B(!1),placeholder:"Min...",fullWidth:!0,inputProps:{min:D,max:c||R}}),p.jsx(ar,{children:"to"}),p.jsx(Rt,{size:"small",type:"number",label:"To",value:c,onChange:_=>U(l,parseFloat(_.target.value)||""),onFocus:()=>B(!0),onBlur:()=>B(!1),placeholder:"Max...",fullWidth:!0,inputProps:{min:l||D,max:R}})]}),F&&D!==void 0&&R!==void 0&&p.jsxs(Cn,{variant:"caption",color:"text.secondary",sx:{mt:-.5,ml:1.5},children:["Valid range: [",D," - ",R,"]"]})]}),N&&!v&&p.jsx(Ld,{dateAdapter:Lg,children:p.jsx(Mc,{label:"Date",value:l instanceof Date?yt.utc(l):null,onChange:_=>{_===null?U(null):_.isValid()&&U(_.utc().toDate())},timezone:"UTC",minDate:l instanceof Date?void 0:M,maxDate:l instanceof Date?void 0:A,referenceDate:s==="After"&&M?M:void 0,slotProps:{textField:{size:"small",fullWidth:!0,sx:{minWidth:150},onFocus:()=>B(!0),onBlur:()=>B(!1),helperText:F&&M&&A?`Valid range: [${M.format("YYYY-MM-DD")} - ${A.format("YYYY-MM-DD")}]`:void 0},openPickerButton:{sx:{backgroundColor:"transparent"}}}})}),N&&v&&p.jsx(Ld,{dateAdapter:Lg,children:p.jsxs(ar,{sx:{display:"flex",flexDirection:"column",gap:1},children:[p.jsxs(ar,{sx:{display:"flex",gap:1,alignItems:"center"},children:[p.jsx(ar,{sx:{flex:1,minWidth:0},children:p.jsx(Mc,{label:"From",value:l instanceof Date?yt.utc(l):null,onChange:_=>{_===null?U(null,c):_.isValid()&&U(_.utc().toDate(),c)},timezone:"UTC",minDate:l instanceof Date?void 0:M,maxDate:c instanceof Date?yt.utc(c):l instanceof Date?void 0:A,referenceDate:M,slotProps:{textField:{size:"small",fullWidth:!0,onFocus:()=>B(!0),onBlur:()=>B(!1)},openPickerButton:{sx:{backgroundColor:"transparent"}}}})}),p.jsx(ar,{children:"to"}),p.jsx(ar,{sx:{flex:1,minWidth:0},children:p.jsx(Mc,{label:"To",value:c instanceof Date?yt.utc(c):null,onChange:_=>{_===null?U(l,null):_.isValid()&&U(l,_.utc().toDate())},timezone:"UTC",minDate:l instanceof Date?yt.utc(l):c instanceof Date?void 0:M,maxDate:c instanceof Date?void 0:A,referenceDate:l instanceof Date?yt.utc(l):M,slotProps:{textField:{size:"small",fullWidth:!0,onFocus:()=>B(!0),onBlur:()=>B(!1)},openPickerButton:{sx:{backgroundColor:"transparent"}}}})})]}),F&&M&&A&&p.jsxs(Cn,{variant:"caption",color:"text.secondary",sx:{mt:-.5,ml:1.5},children:["Valid range: [",M.format("YYYY-MM-DD")," -"," ",A.format("YYYY-MM-DD"),"]"]})]})})]})}function Qx(e){const t=new Set,n=e.schema?.fields;if(!n)return t;for(const r of n)"kind"in r&&r.kind==="join"&&r.name&&t.add(r.name);return t}function Xx(e){if(!e)return null;for(const t of e)if(t.startsWith("##(filters)")){const n=t.slice(11).trim();try{const r=JSON.parse(n);if(Array.isArray(r)){const o=[];for(const a of r)if(typeof a=="string"){const s=a.indexOf(".");s>0&&s<a.length-1&&o.push({source:a.substring(0,s),dimension:a.substring(s+1)})}if(o.length>0)return{filters:o}}}catch(r){console.error(`Failed to parse "${t}" annotation:`,r)}}return null}function Zx(e){if(e.startsWith("#(filter)")){const t=e.slice(9).trim();try{const n=JSON.parse(t);if(n.type)return n}catch(n){console.error(`Failed to parse "${e}" annotation:`,n)}}return null}function TH(e){const t=e.match(/^#\s*label\s*=\s*"([^"]+)"/);return t?t[1]:null}function Jx(e){const t=new Map;let n="";for(const r of e)if(r.type==="code"){if(!n&&r.text){const o=r.text.match(/import\s+(?:\{[^}]*\}\s+from\s+)?['"]([^'"]+)['"]/);o&&(n=o[1])}if(r.newSources&&r.newSources.length>0)for(const o of r.newSources)try{const a=JSON.parse(o);a.name&&t.set(a.name,a)}catch(a){console.error("Failed to parse SourceInfo:",a)}}return{sourceInfoMap:t,modelPath:n}}function e2(e,t,n){const r=[];for(const{source:o,dimension:a}of t){const s=e.get(o);if(!s){console.warn(`Source "${o}" not found in notebook sources`),r.push({source:o,model:n,dimensionName:a,filterType:"Star"});continue}const i=s.schema?.fields;if(!i){r.push({source:o,model:n,dimensionName:a,filterType:"Star"});continue}const l=i.find(d=>d.name===a);if(!l){console.warn(`Dimension "${a}" not found in source "${o}"`),r.push({source:o,model:n,dimensionName:a,filterType:"Star"});continue}let u="Star",c;if("annotations"in l&&l.annotations){for(const d of l.annotations)if(d.value){const m=Zx(d.value);m&&(u=m.type);const f=TH(d.value);f&&(c=f)}}r.push({source:o,model:n,dimensionName:a,filterType:u,label:c})}return r}function t2(e,t,n){return e.length===0?"":e.map(o=>{const{dimensionName:a,matchType:s,value:i,value2:l}=o,u=t.get(a),d=u&&u!==n?`\`${u}\`.\`${a}\``:`\`${a}\``,m=i instanceof Date,f=(h,b=!1)=>h==null?"null":b&&h instanceof Date?`@${h.getFullYear()}-${String(h.getMonth()+1).padStart(2,"0")}-${String(h.getDate()).padStart(2,"0")}`:typeof h=="string"?`'${h.replace(/'/g,"\\'")}'`:typeof h=="boolean"?h?"true":"false":String(h);switch(s){case"Equals":case"Semantic Search":return Array.isArray(i)&&i.length>0?`(${i.map(b=>`${d} = ${f(b,m)}`).join(" or ")})`:`${d} = ${f(i,m)}`;case"Contains":return typeof i=="string"?`${d} ~ f'%${i.replace(/'/g,"\\'")}%'`:`${d} = ${f(i)}`;case"After":case"Greater Than":return`${d} > ${f(i,m)}`;case"Before":case"Less Than":return`${d} < ${f(i,m)}`;case"Between":return l!==void 0?`${d} >= ${f(i,m)} and ${d} <= ${f(l,m)}`:`${d} >= ${f(i,m)}`;default:return""}}).filter(o=>o.length>0).join(" and ")}function n2(e){const t=e.match(/run\s*:\s*(\w+)\s*->/);if(t)return t[1];const n=e.match(/^\s*(\w+)\s*->/m);return n?n[1]:null}function r2(e,t){return`${e.trimEnd()} + {where: ${t}}`}const SH=rt(p.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-2M8 17c-.55 0-1-.45-1-1v-3c0-.55.45-1 1-1s1 .45 1 1v3c0 .55-.45 1-1 1m4 0c-.55 0-1-.45-1-1v-1c0-.55.45-1 1-1s1 .45 1 1v1c0 .55-.45 1-1 1m0-5c-.55 0-1-.45-1-1s.45-1 1-1 1 .45 1 1-.45 1-1 1m4 5c-.55 0-1-.45-1-1V8c0-.55.45-1 1-1s1 .45 1 1v8c0 .55-.45 1-1 1"})),kH=rt(p.jsx("path",{d:"M5 13h11.17l-4.88 4.88c-.39.39-.39 1.03 0 1.42s1.02.39 1.41 0l6.59-6.59c.39-.39.39-1.02 0-1.41l-6.58-6.6a.996.996 0 0 0-1.41 0c-.39.39-.39 1.02 0 1.41L16.17 11H5c-.55 0-1 .45-1 1s.45 1 1 1"})),e0=rt(p.jsx("path",{d:"m19.46 8 .79-1.75L22 5.46c.39-.18.39-.73 0-.91l-1.75-.79L19.46 2c-.18-.39-.73-.39-.91 0l-.79 1.75-1.76.79c-.39.18-.39.73 0 .91l1.75.79.79 1.76c.18.39.74.39.92 0M11.5 9.5 9.91 6c-.35-.78-1.47-.78-1.82 0L6.5 9.5 3 11.09c-.78.36-.78 1.47 0 1.82l3.5 1.59L8.09 18c.36.78 1.47.78 1.82 0l1.59-3.5 3.5-1.59c.78-.36.78-1.47 0-1.82zm7.04 6.5-.79 1.75-1.75.79c-.39.18-.39.73 0 .91l1.75.79.79 1.76c.18.39.73.39.91 0l.79-1.75 1.76-.79c.39-.18.39-.73 0-.91l-1.75-.79-.79-1.76c-.18-.39-.74-.39-.92 0"})),wH=rt(p.jsx("path",{d:"M8.7 15.9 4.8 12l3.9-3.9c.39-.39.39-1.01 0-1.4a.984.984 0 0 0-1.4 0l-4.59 4.59c-.39.39-.39 1.02 0 1.41l4.59 4.6c.39.39 1.01.39 1.4 0s.39-1.01 0-1.4m6.6 0 3.9-3.9-3.9-3.9a.984.984 0 0 1 0-1.4c.39-.39 1.01-.39 1.4 0l4.59 4.59c.39.39.39 1.02 0 1.41l-4.59 4.6c-.39.39-1.01.39-1.4 0a.984.984 0 0 1 0-1.4"})),_H=rt(p.jsx("path",{d:"M12 10.9c-.61 0-1.1.49-1.1 1.1s.49 1.1 1.1 1.1 1.1-.49 1.1-1.1-.49-1.1-1.1-1.1M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m2.19 12.19L6 18l3.81-8.19L18 6z"})),IH=rt([p.jsx("path",{d:"M13 8.57c-.79 0-1.43.64-1.43 1.43s.64 1.43 1.43 1.43 1.43-.64 1.43-1.43-.64-1.43-1.43-1.43"},"0"),p.jsx("path",{d:"M13.21 3c-3.84-.11-7 2.87-7.19 6.64L4.1 12.2c-.25.33-.01.8.4.8H6v3c0 1.1.9 2 2 2h1v2c0 .55.45 1 1 1h5c.55 0 1-.45 1-1v-3.68c2.44-1.16 4.1-3.68 4-6.58-.14-3.62-3.18-6.63-6.79-6.74M16 10c0 .13-.01.26-.02.39l.83.66c.08.06.1.16.05.25l-.8 1.39c-.05.09-.16.12-.24.09l-.99-.4c-.21.16-.43.29-.67.39L14 13.83c-.01.1-.1.17-.2.17h-1.6c-.1 0-.18-.07-.2-.17l-.15-1.06c-.25-.1-.47-.23-.68-.39l-.99.4c-.09.03-.2 0-.25-.09l-.8-1.39c-.05-.08-.03-.19.05-.25l.84-.66c-.01-.13-.02-.26-.02-.39s.02-.27.04-.39l-.85-.66c-.08-.06-.1-.16-.05-.26l.8-1.38c.05-.09.15-.12.24-.09l1 .4c.2-.15.43-.29.67-.39L12 6.17c.02-.1.1-.17.2-.17h1.6c.1 0 .18.07.2.17l.15 1.06c.24.1.46.23.67.39l1-.4c.09-.03.2 0 .24.09l.8 1.38c.05.09.03.2-.05.26l-.85.66c.03.12.04.25.04.39"},"1")]),t0=rt(p.jsx("path",{d:"M4 20h16c1.1 0 2-.9 2-2s-.9-2-2-2H4c-1.1 0-2 .9-2 2s.9 2 2 2m0-3h2v2H4zM2 6c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2s-.9-2-2-2H4c-1.1 0-2 .9-2 2m4 1H4V5h2zm-2 7h16c1.1 0 2-.9 2-2s-.9-2-2-2H4c-1.1 0-2 .9-2 2s.9 2 2 2m0-3h2v2H4z"})),o2=e=>{if(!e)return"Explore semantic models, run queries, and build dashboards";const t=e.replace(/^#+\s+/gm,"").replace(/\*\*(.*?)\*\*/g,"$1").replace(/\*(.*?)\*/g,"$1").replace(/\[([^\]]+)\]\([^)]+\)/g,"$1").replace(/`([^`]+)`/g,"$1").trim(),r=t.split(/\n\s*\n/)[1]||t;if(r.length<=120)return r;const o=r.substring(0,120).split(" ");return o.pop(),o.join(" ")+"..."},a2=(e,t)=>{const n=(e.readme||void 0)?.split(`
214
214
  `)??[];return n.length===0&&(n.push(`# ${e.name}`),n.push("")),(e.readme?.length??0)>0&&t?n.splice(2,1,t):t&&n.push(t),n.join(`
215
- `)};function AH(e){return Fe("MuiDialogContentText",e)}Re("MuiDialogContentText",["root"]);const DH=e=>{const{classes:t}=e,r=Le({root:["root"]},AH,t);return{...t,...r}},PH=ae(Cn,{shouldForwardProp:e=>fn(e)||e==="classes",name:"MuiDialogContentText",slot:"Root"})({}),Ua=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogContentText"}),{children:o,className:a,...s}=r,i=DH(s);return p.jsx(PH,{component:"p",variant:"body1",color:"textSecondary",ref:n,ownerState:s,className:De(i.root,a),...r,classes:i})}),RH=e=>{const{classes:t}=e;return Le({root:["root"]},nH,t)},MH=ae(Cn,{name:"MuiDialogTitle",slot:"Root"})({padding:"16px 24px",flex:"0 0 auto"}),Ur=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogTitle"}),{className:o,id:a,...s}=r,i=r,l=RH(i),{titleId:u=a}=k.useContext(Yx);return p.jsx(MH,{component:"h2",className:De(l.root,o),ownerState:i,ref:n,variant:"h6",id:a??u,...s})});function NH(e={}){const{autoHideDuration:t=null,disableWindowBlurListener:n=!1,onClose:r,open:o,resumeHideDuration:a}=e,s=Eu();k.useEffect(()=>{if(!o)return;function x(E){E.defaultPrevented||E.key==="Escape"&&r?.(E,"escapeKeyDown")}return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}},[o,r]);const i=Ae((x,E)=>{r?.(x,E)}),l=Ae(x=>{!r||x==null||s.start(x,()=>{i(null,"timeout")})});k.useEffect(()=>(o&&l(t),s.clear),[o,t,l,s]);const u=x=>{r?.(x,"clickaway")},c=s.clear,d=k.useCallback(()=>{t!=null&&l(a??t*.5)},[t,a,l]),m=x=>E=>{const C=x.onBlur;C?.(E),d()},f=x=>E=>{const C=x.onFocus;C?.(E),c()},h=x=>E=>{const C=x.onMouseEnter;C?.(E),c()},b=x=>E=>{const C=x.onMouseLeave;C?.(E),d()};return k.useEffect(()=>{if(!n&&o)return window.addEventListener("focus",d),window.addEventListener("blur",c),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",c)}},[n,o,d,c]),{getRootProps:(x={})=>{const E={...ln(e),...ln(x)};return{role:"presentation",...x,...E,onBlur:m(E),onFocus:f(E),onMouseEnter:h(E),onMouseLeave:b(E)}},onClickAway:u}}function n0(e){return e.substring(2).toLowerCase()}function OH(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}function LH(e){const{children:t,disableReactTree:n=!1,mouseEvent:r="onClick",onClickAway:o,touchEvent:a="onTouchEnd"}=e,s=k.useRef(!1),i=k.useRef(null),l=k.useRef(!1),u=k.useRef(!1);k.useEffect(()=>(setTimeout(()=>{l.current=!0},0),()=>{l.current=!1}),[]);const c=nt(ja(t),i),d=Ae(h=>{const b=u.current;u.current=!1;const g=jt(i.current);if(!l.current||!i.current||"clientX"in h&&OH(h,g))return;if(s.current){s.current=!1;return}let x;h.composedPath?x=h.composedPath().includes(i.current):x=!g.documentElement.contains(h.target)||i.current.contains(h.target),!x&&(n||!b)&&o(h)}),m=h=>b=>{u.current=!0;const g=t.props[h];g&&g(b)},f={ref:c};return a!==!1&&(f[a]=m(a)),k.useEffect(()=>{if(a!==!1){const h=n0(a),b=jt(i.current),g=()=>{s.current=!0};return b.addEventListener(h,d),b.addEventListener("touchmove",g),()=>{b.removeEventListener(h,d),b.removeEventListener("touchmove",g)}}},[d,a]),r!==!1&&(f[r]=m(r)),k.useEffect(()=>{if(r!==!1){const h=n0(r),b=jt(i.current);return b.addEventListener(h,d),()=>{b.removeEventListener(h,d)}}},[d,r]),k.cloneElement(t,f)}function FH(e){return Fe("MuiSnackbarContent",e)}Re("MuiSnackbarContent",["root","message","action"]);const $H=e=>{const{classes:t}=e;return Le({root:["root"],action:["action"],message:["message"]},FH,t)},BH=ae(Ho,{name:"MuiSnackbarContent",slot:"Root"})(Je(({theme:e})=>{const t=e.palette.mode==="light"?.8:.98;return{...e.typography.body2,color:e.vars?e.vars.palette.SnackbarContent.color:e.palette.getContrastText(jc(e.palette.background.default,t)),backgroundColor:e.vars?e.vars.palette.SnackbarContent.bg:jc(e.palette.background.default,t),display:"flex",alignItems:"center",flexWrap:"wrap",padding:"6px 16px",flexGrow:1,[e.breakpoints.up("sm")]:{flexGrow:"initial",minWidth:288}}})),jH=ae("div",{name:"MuiSnackbarContent",slot:"Message"})({padding:"8px 0"}),HH=ae("div",{name:"MuiSnackbarContent",slot:"Action"})({display:"flex",alignItems:"center",marginLeft:"auto",paddingLeft:16,marginRight:-8}),UH=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiSnackbarContent"}),{action:o,className:a,message:s,role:i="alert",...l}=r,u=r,c=$H(u);return p.jsxs(BH,{role:i,elevation:6,className:De(c.root,a),ownerState:u,ref:n,...l,children:[p.jsx(jH,{className:c.message,ownerState:u,children:s}),o?p.jsx(HH,{className:c.action,ownerState:u,children:o}):null]})});function zH(e){return Fe("MuiSnackbar",e)}Re("MuiSnackbar",["root","anchorOriginTopCenter","anchorOriginBottomCenter","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft"]);const VH=e=>{const{classes:t,anchorOrigin:n}=e,r={root:["root",`anchorOrigin${ke(n.vertical)}${ke(n.horizontal)}`]};return Le(r,zH,t)},WH=ae("div",{name:"MuiSnackbar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[`anchorOrigin${ke(n.anchorOrigin.vertical)}${ke(n.anchorOrigin.horizontal)}`]]}})(Je(({theme:e})=>({zIndex:(e.vars||e).zIndex.snackbar,position:"fixed",display:"flex",left:8,right:8,justifyContent:"center",alignItems:"center",variants:[{props:({ownerState:t})=>t.anchorOrigin.vertical==="top",style:{top:8,[e.breakpoints.up("sm")]:{top:24}}},{props:({ownerState:t})=>t.anchorOrigin.vertical!=="top",style:{bottom:8,[e.breakpoints.up("sm")]:{bottom:24}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="left",style:{justifyContent:"flex-start",[e.breakpoints.up("sm")]:{left:24,right:"auto"}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="right",style:{justifyContent:"flex-end",[e.breakpoints.up("sm")]:{right:24,left:"auto"}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="center",style:{[e.breakpoints.up("sm")]:{left:"50%",right:"auto",transform:"translateX(-50%)"}}}]}))),qH=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiSnackbar"}),o=no(),a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{action:s,anchorOrigin:{vertical:i,horizontal:l}={vertical:"bottom",horizontal:"left"},autoHideDuration:u=null,children:c,className:d,ClickAwayListenerProps:m,ContentProps:f,disableWindowBlurListener:h=!1,message:b,onBlur:g,onClose:x,onFocus:E,onMouseEnter:C,onMouseLeave:T,open:w,resumeHideDuration:S,slots:O={},slotProps:F={},TransitionComponent:B,transitionDuration:P=a,TransitionProps:{onEnter:N,onExited:v,...M}={},...A}=r,D={...r,anchorOrigin:{vertical:i,horizontal:l},autoHideDuration:u,disableWindowBlurListener:h,TransitionComponent:B,transitionDuration:P},R=VH(D),{getRootProps:z,onClickAway:U}=NH({...D}),[j,_]=k.useState(!0),K=J=>{_(!0),v&&v(J)},ne=(J,ee)=>{_(!1),N&&N(J,ee)},L={slots:{transition:B,...O},slotProps:{content:f,clickAwayListener:m,transition:M,...F}},[fe,X]=ct("root",{ref:n,className:[R.root,d],elementType:WH,getSlotProps:z,externalForwardedProps:{...L,...A},ownerState:D}),[q,{ownerState:te,...Z}]=ct("clickAwayListener",{elementType:LH,externalForwardedProps:L,getSlotProps:J=>({onClickAway:(...ee)=>{const xe=ee[0];J.onClickAway?.(...ee),!xe?.defaultMuiPrevented&&U(...ee)}}),ownerState:D}),[re,Q]=ct("content",{elementType:UH,shouldForwardComponentProp:!0,externalForwardedProps:L,additionalProps:{message:b,action:s},ownerState:D}),[G,se]=ct("transition",{elementType:Gs,externalForwardedProps:L,getSlotProps:J=>({onEnter:(...ee)=>{J.onEnter?.(...ee),ne(...ee)},onExited:(...ee)=>{J.onExited?.(...ee),K(...ee)}}),additionalProps:{appear:!0,in:w,timeout:P,direction:i==="top"?"down":"up"},ownerState:D});return!w&&j?null:p.jsx(q,{...Z,...O.clickAwayListener&&{ownerState:te},children:p.jsx(fe,{...X,children:p.jsx(G,{...se,children:c||p.jsx(re,{...Q})})})})});function r0(){const[e,t]=W.useState(!1),{apiClients:n}=it.useServer(),[r,o]=W.useState(""),a=()=>{t(!0)},s=()=>{t(!1)},i=$r.useQueryClient(),l=hr({async mutationFn(c){return n.projects.createProject({name:c.name,readme:a2({name:c.name,readme:""},c.description)})},onSuccess(){s(),i.invalidateQueries({queryKey:["projects"]}),o("Project created successfully")},onError(c){o(c instanceof Error?c.message:"An unknown error occurred")}}),u=async c=>{c.preventDefault();const d=new FormData(c.currentTarget),m=d.get("name")?.toString(),f=d.get("description")?.toString();if(!m)throw new Error("Name is required");l.mutate({name:m,description:f})};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{variant:"contained",onClick:a,startIcon:p.jsx(An.AddCircleRounded,{}),sx:{mt:2,color:"white"},children:"Create New Project"}),p.jsxs(kr,{open:e,onClose:s,children:[p.jsx(Ur,{children:"Create New Project"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new project to start exploring semantic models and analyzing data."}),p.jsxs("form",{onSubmit:u,id:"project-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Project Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{margin:"dense",id:"description",name:"description",label:"Project Description",placeholder:"Explore semantic models, run queries, and build dashboards",type:"text",fullWidth:!0,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:l.isPending,onClick:s,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"project-form",loading:l.isPending,children:"Create Project"})]})]}),p.jsx(qH,{open:r!=="",autoHideDuration:6e3,onClose:()=>o(""),message:r})]})}function YH({project:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},c=hr({mutationFn:()=>o.projects.deleteProject(e.name),onSuccess(){u(),a.invalidateQueries({queryKey:["projects"]}),i("Project deleted successfully")},onError(d){i(d instanceof Error?d.message:"An unknown error occurred")}});return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Delete,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Delete"})]}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Project"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:d=>({position:"absolute",right:8,top:8,color:d.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',e.name,'"? This action cannot be undone.']})}),p.jsxs(Tr,{children:[p.jsx(Dt,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),p.jsx(Dt,{loading:c.isPending,variant:"contained",autoFocus:!0,onClick:()=>c.mutate(),color:"error",children:"Delete"})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function GH({project:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},c=hr({async mutationFn(m){return o.projects.updateProject(e.name,{name:e.name,readme:a2({name:e.name,readme:e.readme},m.description)})},onSuccess(){u(),a.invalidateQueries({queryKey:["projects"]}),i("Project updated successfully")},onError(m){i(m instanceof Error?m.message:"An unknown error occurred")}}),d=m=>{m.preventDefault();const h=new FormData(m.currentTarget).get("description")?.toString();c.mutate({description:h})};return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Edit,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Edit"})]}),p.jsxs(kr,{open:n,onClose:u,children:[p.jsx(Ur,{children:"Edit Project"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new project to start exploring semantic models and analyzing data."}),p.jsxs("form",{onSubmit:d,id:"project-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Project Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),p.jsx(Rt,{margin:"dense",id:"description",name:"description",label:"Project Description",type:"text",fullWidth:!0,variant:"standard",defaultValue:o2(e.readme)})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:c.isPending,onClick:u,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"project-form",loading:c.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})}function KH({onClickProject:e}){const{apiClients:t,mutable:n}=it.useServer(),{data:r,isSuccess:o,isError:a,error:s}=Jt({queryKey:["projects"],queryFn:()=>t.projects.listProjects()});return a?p.jsx(Zt,{error:s,context:"Projects List"}):o?p.jsxs(I.Container,{maxWidth:"lg",sx:{py:4},children:[p.jsxs(I.Box,{sx:{textAlign:"center",mb:6},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(e0,{sx:{fontSize:32,color:"primary.main"}}),p.jsx(I.Typography,{variant:"h3",component:"h1",fontWeight:700,children:"Publisher"})]}),p.jsx(I.Typography,{variant:"h5",color:"text.secondary",sx:{mb:3,maxWidth:600,mx:"auto"},children:"The open-source semantic model server for the Malloy data language"}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",sx:{maxWidth:800,mx:"auto"},children:"Define semantic models once — and use them everywhere. Publisher serves Malloy models through clean APIs, enabling consistent, interpretable, and AI-ready data access for tools, applications, and agents."})]}),p.jsxs(I.Grid,{container:!0,spacing:3,sx:{mb:6},children:[p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#ad-hoc-data-analysis","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(SH,{sx:{color:"info.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"Ad Hoc Analysis"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Use Explorer, a visual query builder that allows analysts to browse semantic sources, build queries, and run nested logic — all without writing code."}),p.jsx(I.Chip,{label:"No-code",size:"small",color:"primary",variant:"outlined"})]})})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#notebook-based-dashboards","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(wH,{sx:{color:"warning.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"Notebook Dashboards"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Create shareable, code-first dashboards using Malloy notebooks. Include text, charts, and reusable views — all versioned alongside your models."}),p.jsx(I.Chip,{label:"Versioned",size:"small",color:"warning",variant:"outlined"})]})})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#mcp-based-ai-data-agents","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(IH,{sx:{color:"success.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"AI Data Agents"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Expose your semantic models via the Model Context Protocol (MCP), enabling AI agents to discover sources and ask well-formed questions."}),p.jsx(I.Chip,{label:"AI-Ready",size:"small",color:"success",variant:"outlined"})]})})})]}),p.jsx(I.Divider,{sx:{my:4}}),r.data.length>0?p.jsxs(p.Fragment,{children:[p.jsxs(I.Box,{sx:{textAlign:"center",mb:4},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(t0,{sx:{color:"primary.main",fontSize:24}}),p.jsx(I.Typography,{variant:"h4",fontWeight:600,children:"Select a Project"})]}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",children:"Choose a project to explore its semantic models and start analyzing your data"}),n&&p.jsx(r0,{})]}),p.jsx(I.Grid,{container:!0,spacing:3,justifyContent:"center",children:r.data.map(i=>p.jsx(I.Grid,{size:{xs:12,sm:6,md:4},children:p.jsx(QH,{project:i,onClickProject:e})},i.name))})]}):p.jsxs(I.Box,{sx:{textAlign:"center",mb:4},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(t0,{sx:{color:"primary.main",fontSize:24}}),p.jsx(I.Typography,{variant:"h4",fontWeight:600,children:"Get Started"})]}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",sx:{mb:3},children:"No projects found. Create your first Malloy project to start exploring semantic models and building data experiences."}),n?p.jsx(r0,{}):p.jsx(I.Button,{variant:"contained",size:"large",color:"primary",startIcon:p.jsx(e0,{}),href:"https://github.com/malloydata/publisher/blob/main/README.md#server-configuration",target:"_blank",rel:"noopener noreferrer",children:"Learn How to Create Models"})]}),p.jsx(I.Box,{sx:{textAlign:"center",mt:6,pt:4,borderTop:1,borderColor:"divider"},children:p.jsxs(I.Typography,{variant:"body2",color:"text.secondary",children:["Publisher is built on fully open infrastructure and designed for the AI era. Join the"," ",p.jsx("a",{href:"https://join.slack.com/t/malloy-community/shared_invite/zt-1kgfwgi5g-CrsdaRqs81QY67QW0~t_uw",target:"_blank",rel:"noopener noreferrer",style:{color:"primary.main",textDecoration:"underline"},children:"Malloy Slack community"})," ","to ask questions, share ideas, and contribute to the future of data modeling."]})})]}):p.jsx(on,{text:"Loading projects..."})}function QH({project:e,onClickProject:t}){const{mutable:n}=it.useServer(),[r,o]=W.useState(null),a=!!r,s=l=>{o(l.currentTarget)},i=()=>{o(null)};return p.jsx("div",{children:p.jsxs(I.Card,{variant:"outlined",sx:{height:"100%",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2,borderColor:"primary.main"}},children:[n&&p.jsxs(p.Fragment,{children:[p.jsx(I.IconButton,{"aria-controls":a?"project-menu":void 0,"aria-haspopup":"true","aria-expanded":a?"true":void 0,onClick:s,sx:{position:"absolute",top:8,right:8},children:p.jsx(An.MoreVert,{fontSize:"small"})}),p.jsxs(I.Menu,{id:"project-menu","aria-haspopup":"true","aria-expanded":a?"true":void 0,open:a,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},children:[p.jsx(GH,{project:e,onCloseDialog:i}),p.jsx(YH,{project:e,onCloseDialog:i})]})]}),p.jsxs(I.CardContent,{sx:{p:3,textAlign:"center"},children:[p.jsx(_H,{sx:{fontSize:48,color:"primary.main",mb:2}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,gutterBottom:!0,children:e.name}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2,minHeight:"60px"},children:o2(e.readme)}),p.jsx(I.Button,{variant:"contained",color:"secondary",endIcon:p.jsx(kH,{}),fullWidth:!0,onClick:l=>t(`/${e.name}/`,l),children:"Open Project"})]})]})})}const Ia=rt(p.jsx("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"})),XH=rt(p.jsx("path",{d:"M8 5v14l11-7z"}));function s2({open:e,onClose:t,result:n,title:r="Results"}){return p.jsxs(I.Dialog,{open:e,onClose:t,maxWidth:!1,fullWidth:!0,sx:{"& .MuiDialog-paper":{width:"95vw",height:"95vh",maxWidth:"none"}},children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[r,p.jsx(I.IconButton,{onClick:t,sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{sx:{height:"calc(95vh - 120px)",overflow:"auto",padding:"0 16px"},children:p.jsx(fi,{result:n,minHeight:800,maxHeight:800,hideToggle:!0})})]})}function ZH({queryName:e,annotations:t,resourceUri:n,runOnDemand:r=!1,maxResultSize:o=0}){const[a,s]=W.useState(),[i,l]=W.useState(!1),[u,c]=W.useState(!1),{packageName:d,projectName:m,versionId:f,modelPath:h}=Ct(n),{apiClients:b}=it.useServer(),{data:g,isSuccess:x,isLoading:E}=Jt({queryKey:["namedQueryResult",n,e],queryFn:()=>b.models.executeQueryModel(m,d,h,{query:void 0,sourceName:void 0,queryName:e,versionId:f}),enabled:r?u:!0});return W.useEffect(()=>{if(t&&t.length>0){const C=t.map(T=>`// ${T}`).join(`
216
- `);Ll(C,"typescript").then(T=>{s(T)})}},[t]),p.jsxs(qc,{children:[a&&p.jsx(I.Box,{sx:{marginBottom:"16px"},children:p.jsx(I.Typography,{fontSize:"12px",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},children:p.jsx("div",{className:"content",dangerouslySetInnerHTML:{__html:a}})})}),p.jsxs(I.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[p.jsx(I.Typography,{variant:"body2",sx:{fontSize:"15px",fontWeight:"600",color:"#495057",padding:"8px 16px",backgroundColor:"#f8f9fa",borderRadius:"6px",border:"1px solid #e9ecef"},children:e}),p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:()=>l(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]}),p.jsxs(Vi,{sx:{position:"relative"},children:[r&&!u&&p.jsxs(I.Box,{sx:{padding:"40px 20px",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",gap:"16px"},children:[p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Click Run to execute the query"}),p.jsx(I.Button,{variant:"contained",startIcon:p.jsx(XH,{}),onClick:()=>c(!0),sx:{backgroundColor:"#1976d2","&:hover":{backgroundColor:"#1565c0"},textTransform:"none",fontSize:"14px",fontWeight:600,padding:"8px 24px"},children:"Run Query"})]}),(!r||u)&&E&&p.jsx(I.Box,{sx:{padding:"20px",textAlign:"center"},children:p.jsx(I.Typography,{children:"Loading results..."})}),(!r||u)&&x&&g?.data?.result&&p.jsx(fi,{result:g.data.result,minHeight:300,maxHeight:600,hideToggle:!1,maxResultSize:o})]}),p.jsx(s2,{open:i,onClose:()=>l(!1),result:g?.data?.result||"",title:`Query: ${e}`})]})}function of(e,t=!0){const{modelPath:n,projectName:r,packageName:o,versionId:a}=Ct(e),{apiClients:s}=it.useServer();return Jt({queryKey:["package",r,o,n,a],queryFn:async()=>(await s.models.getModel(r,o,n,a)).data,enabled:t})}function af({data:e,onChange:t,existingQuery:n,initialSelectedSourceIndex:r=0,onSourceChange:o,resourceUri:a}){const[s,i]=W.useState(r);W.useEffect(()=>{i(r)},[r]);const{data:l,isError:u,isLoading:c,error:d}=of(a,!e),{modelPath:m}=Ct(a),f=e||l;if(c&&!e)return p.jsx(on,{text:"Fetching Model..."});if(u&&!e)return console.log("error",d),p.jsx(Zt,{error:d,context:`ModelExplorer > ${m}`});if(!f)return p.jsx(on,{text:"Loading..."});const h=(f?.sourceInfos||[]).map((g,x)=>{try{return JSON.parse(g)?.name||`Source ${x+1}`}catch{return`Source ${x+1}`}}),b=h[s]||"";return p.jsxs(hl,{variant:"outlined",children:[p.jsx(I0,{children:p.jsx(I.Stack,{sx:{flexDirection:"row"},children:p.jsx(Rd,{size:"small",id:"size-small-standard",disablePortal:!0,options:h,value:b,onChange:(g,x)=>{if(!x)return;const E=h.indexOf(x);E>=0&&(i(E),o?.(E))},renderInput:g=>p.jsx(Rt,{...g}),style:{width:350,marginTop:"3px",marginLeft:"6px",marginBottom:"8px"}})})}),p.jsx(Vd,{children:p.jsxs(I.Stack,{spacing:2,component:"section",children:[Array.isArray(f.sourceInfos)&&f.sourceInfos.length>0&&p.jsx(Ip,{sourceAndPaths:f.sourceInfos.map(g=>({sourceInfo:JSON.parse(g),modelPath:m})),selectedSourceIndex:s,existingQuery:n,onQueryChange:t,resourceUri:a}),p.jsx(I.Box,{height:"5px"})]})})]})}function sf({open:e,onClose:t,resourceUri:n,data:r,title:o="Data Sources",hasValidImport:a=!0,existingQuery:s,initialSelectedSourceIndex:i,onChange:l,onSourceChange:u}){return p.jsxs(I.Dialog,{open:e,onClose:t,fullScreen:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[o,p.jsx(I.IconButton,{onClick:t,sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:a?p.jsx(af,{resourceUri:n,data:r,existingQuery:s,initialSelectedSourceIndex:i,onChange:l,onSourceChange:u}):p.jsx("div",{children:"No valid import statement found in cell"})})]})}function JH({onChange:e,resourceUri:t,runOnDemand:n=!1,maxResultSize:r=0}){const{modelPath:o}=Ct(t),{data:a,isError:s,isLoading:i,error:l}=of(t),[u,c]=W.useState(!1),[d,m]=W.useState(),[f,h]=W.useState(0),[b,g]=W.useState("");if(i)return p.jsx(on,{text:"Fetching Model..."});if(s)return console.log("error",l),p.jsx(Zt,{error:l,context:`Model > ${o}`});const x=T=>{m(T),e&&e(T)},E=T=>{h(T)},C=()=>{const T=window.location.href;navigator.clipboard.writeText(T).then(()=>g("URL copied to clipboard!")).catch(()=>g("Failed to copy URL"))};return p.jsxs(p.Fragment,{children:[p.jsxs(I.Box,{sx:{position:"relative",maxWidth:"1200px",margin:"0 auto",paddingTop:"24px"},children:[Array.isArray(a?.sourceInfos)&&a.sourceInfos.length>0&&p.jsxs(I.Stack,{spacing:2,component:"section",children:[p.jsxs(I.Box,{sx:{padding:"0 0 16px 0",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[p.jsx(I.Typography,{variant:"h1",sx:{fontSize:"28px",fontWeight:"600",color:"#1a1a1a",marginBottom:"8px",marginTop:"0",paddingLeft:"0"},children:"Sources"}),p.jsx(I.Tooltip,{title:"Click to copy link",children:p.jsx(Wd,{sx:{fontSize:"24px",color:"#666666",cursor:"pointer"},onClick:C})})]}),p.jsx(af,{data:a,onChange:x,onSourceChange:E,existingQuery:d,initialSelectedSourceIndex:f,resourceUri:t}),p.jsx(I.IconButton,{sx:{position:"absolute",top:"90px",right:"4px",backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px",zIndex:2},onClick:()=>c(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666",marginBottom:"5px"}})})]}),a?.queries?.length>0&&p.jsxs(I.Stack,{spacing:2,component:"section",sx:{marginTop:"24px"},children:[p.jsx(I.Box,{sx:{padding:"0 0 16px 0"},children:p.jsx(I.Typography,{variant:"h2",sx:{fontSize:"24px",fontWeight:"600",color:"#1a1a1a",marginBottom:"0",marginTop:"8px",paddingLeft:"0"},children:"Named Queries"})}),a.queries.map(T=>p.jsx(ZH,{queryName:T.name,annotations:T.annotations,resourceUri:t,runOnDemand:n,maxResultSize:r},T.name))]}),p.jsx(sf,{open:u,onClose:()=>c(!1),resourceUri:t,data:a,title:`Model: ${o.split("/").pop()}`,existingQuery:d,initialSelectedSourceIndex:f,onChange:x,onSourceChange:E})]}),p.jsx(I.Snackbar,{open:b!=="",autoHideDuration:6e3,onClose:()=>g(""),message:b})]})}function i2(e){return e.replace(/'/g,"\\'").replace(/\\/g,"\\\\")}function sr(e,t=!1){return e==null?"null":t?e instanceof Date?`@${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:`@${e}`:typeof e=="string"?`'${i2(e)}'`:typeof e=="number"?String(e):typeof e=="boolean"?e?"true":"false":String(e)}function eU(e){const{dimensionName:t,matchType:n,value:r,value2:o}=e,a=`\`${t}\``,s=r instanceof Date;switch(n){case"Equals":case"Semantic Search":return Array.isArray(r)&&r.length>0?`(${r.map(l=>`${a} = ${sr(l,s)}`).join(" or ")})`:Array.isArray(r)?"":`${a} = ${sr(r,s)}`;case"Contains":return typeof r=="string"?`${a} ~ f'%${i2(r)}%'`:Array.isArray(r)?"":`${a} = ${sr(r)}`;case"After":return Array.isArray(r)?"":`${a} > ${sr(r,s)}`;case"Before":return Array.isArray(r)?"":`${a} < ${sr(r,s)}`;case"Greater Than":return Array.isArray(r)?"":`${a} > ${sr(r)}`;case"Less Than":return Array.isArray(r)?"":`${a} < ${sr(r)}`;case"Between":return Array.isArray(r)?"":o!==void 0?`${a} >= ${sr(r,s)} and ${a} <= ${sr(o,s)}`:`${a} >= ${sr(r,s)}`;default:return""}}function tU(e){const t=new Map;for(const n of e){const r=`${n.source}|${n.model}`,o=t.get(r)||[];o.push(n),t.set(r,o)}return t}function nU(e,t,n,r){const o=t.filter(l=>(l.filterType==="Star"||l.filterType==="MinMax"||l.filterType==="DateMinMax")&&!l.values);if(o.length===0)return"";const a=o.map(l=>`\`${l.dimensionName}\``).join(", "),s=r?.filter(l=>t.find(c=>c.dimensionName===l.dimensionName)?.source===e)||[],i=s.length>0?s.map(l=>eU(l)).filter(l=>l.length>0).join(" and "):"";return`
215
+ `)};function AH(e){return Fe("MuiDialogContentText",e)}Re("MuiDialogContentText",["root"]);const DH=e=>{const{classes:t}=e,r=Le({root:["root"]},AH,t);return{...t,...r}},PH=ae(Cn,{shouldForwardProp:e=>fn(e)||e==="classes",name:"MuiDialogContentText",slot:"Root"})({}),Ua=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogContentText"}),{children:o,className:a,...s}=r,i=DH(s);return p.jsx(PH,{component:"p",variant:"body1",color:"textSecondary",ref:n,ownerState:s,className:De(i.root,a),...r,classes:i})}),RH=e=>{const{classes:t}=e;return Le({root:["root"]},nH,t)},MH=ae(Cn,{name:"MuiDialogTitle",slot:"Root"})({padding:"16px 24px",flex:"0 0 auto"}),Ur=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiDialogTitle"}),{className:o,id:a,...s}=r,i=r,l=RH(i),{titleId:u=a}=k.useContext(Yx);return p.jsx(MH,{component:"h2",className:De(l.root,o),ownerState:i,ref:n,variant:"h6",id:a??u,...s})});function NH(e={}){const{autoHideDuration:t=null,disableWindowBlurListener:n=!1,onClose:r,open:o,resumeHideDuration:a}=e,s=Eu();k.useEffect(()=>{if(!o)return;function x(E){E.defaultPrevented||E.key==="Escape"&&r?.(E,"escapeKeyDown")}return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}},[o,r]);const i=Ae((x,E)=>{r?.(x,E)}),l=Ae(x=>{!r||x==null||s.start(x,()=>{i(null,"timeout")})});k.useEffect(()=>(o&&l(t),s.clear),[o,t,l,s]);const u=x=>{r?.(x,"clickaway")},c=s.clear,d=k.useCallback(()=>{t!=null&&l(a??t*.5)},[t,a,l]),m=x=>E=>{const C=x.onBlur;C?.(E),d()},f=x=>E=>{const C=x.onFocus;C?.(E),c()},h=x=>E=>{const C=x.onMouseEnter;C?.(E),c()},b=x=>E=>{const C=x.onMouseLeave;C?.(E),d()};return k.useEffect(()=>{if(!n&&o)return window.addEventListener("focus",d),window.addEventListener("blur",c),()=>{window.removeEventListener("focus",d),window.removeEventListener("blur",c)}},[n,o,d,c]),{getRootProps:(x={})=>{const E={...ln(e),...ln(x)};return{role:"presentation",...x,...E,onBlur:m(E),onFocus:f(E),onMouseEnter:h(E),onMouseLeave:b(E)}},onClickAway:u}}function n0(e){return e.substring(2).toLowerCase()}function OH(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}function LH(e){const{children:t,disableReactTree:n=!1,mouseEvent:r="onClick",onClickAway:o,touchEvent:a="onTouchEnd"}=e,s=k.useRef(!1),i=k.useRef(null),l=k.useRef(!1),u=k.useRef(!1);k.useEffect(()=>(setTimeout(()=>{l.current=!0},0),()=>{l.current=!1}),[]);const c=nt(ja(t),i),d=Ae(h=>{const b=u.current;u.current=!1;const g=jt(i.current);if(!l.current||!i.current||"clientX"in h&&OH(h,g))return;if(s.current){s.current=!1;return}let x;h.composedPath?x=h.composedPath().includes(i.current):x=!g.documentElement.contains(h.target)||i.current.contains(h.target),!x&&(n||!b)&&o(h)}),m=h=>b=>{u.current=!0;const g=t.props[h];g&&g(b)},f={ref:c};return a!==!1&&(f[a]=m(a)),k.useEffect(()=>{if(a!==!1){const h=n0(a),b=jt(i.current),g=()=>{s.current=!0};return b.addEventListener(h,d),b.addEventListener("touchmove",g),()=>{b.removeEventListener(h,d),b.removeEventListener("touchmove",g)}}},[d,a]),r!==!1&&(f[r]=m(r)),k.useEffect(()=>{if(r!==!1){const h=n0(r),b=jt(i.current);return b.addEventListener(h,d),()=>{b.removeEventListener(h,d)}}},[d,r]),k.cloneElement(t,f)}function FH(e){return Fe("MuiSnackbarContent",e)}Re("MuiSnackbarContent",["root","message","action"]);const $H=e=>{const{classes:t}=e;return Le({root:["root"],action:["action"],message:["message"]},FH,t)},BH=ae(Ho,{name:"MuiSnackbarContent",slot:"Root"})(Je(({theme:e})=>{const t=e.palette.mode==="light"?.8:.98;return{...e.typography.body2,color:e.vars?e.vars.palette.SnackbarContent.color:e.palette.getContrastText(jc(e.palette.background.default,t)),backgroundColor:e.vars?e.vars.palette.SnackbarContent.bg:jc(e.palette.background.default,t),display:"flex",alignItems:"center",flexWrap:"wrap",padding:"6px 16px",flexGrow:1,[e.breakpoints.up("sm")]:{flexGrow:"initial",minWidth:288}}})),jH=ae("div",{name:"MuiSnackbarContent",slot:"Message"})({padding:"8px 0"}),HH=ae("div",{name:"MuiSnackbarContent",slot:"Action"})({display:"flex",alignItems:"center",marginLeft:"auto",paddingLeft:16,marginRight:-8}),UH=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiSnackbarContent"}),{action:o,className:a,message:s,role:i="alert",...l}=r,u=r,c=$H(u);return p.jsxs(BH,{role:i,elevation:6,className:De(c.root,a),ownerState:u,ref:n,...l,children:[p.jsx(jH,{className:c.message,ownerState:u,children:s}),o?p.jsx(HH,{className:c.action,ownerState:u,children:o}):null]})});function zH(e){return Fe("MuiSnackbar",e)}Re("MuiSnackbar",["root","anchorOriginTopCenter","anchorOriginBottomCenter","anchorOriginTopRight","anchorOriginBottomRight","anchorOriginTopLeft","anchorOriginBottomLeft"]);const VH=e=>{const{classes:t,anchorOrigin:n}=e,r={root:["root",`anchorOrigin${ke(n.vertical)}${ke(n.horizontal)}`]};return Le(r,zH,t)},WH=ae("div",{name:"MuiSnackbar",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[`anchorOrigin${ke(n.anchorOrigin.vertical)}${ke(n.anchorOrigin.horizontal)}`]]}})(Je(({theme:e})=>({zIndex:(e.vars||e).zIndex.snackbar,position:"fixed",display:"flex",left:8,right:8,justifyContent:"center",alignItems:"center",variants:[{props:({ownerState:t})=>t.anchorOrigin.vertical==="top",style:{top:8,[e.breakpoints.up("sm")]:{top:24}}},{props:({ownerState:t})=>t.anchorOrigin.vertical!=="top",style:{bottom:8,[e.breakpoints.up("sm")]:{bottom:24}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="left",style:{justifyContent:"flex-start",[e.breakpoints.up("sm")]:{left:24,right:"auto"}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="right",style:{justifyContent:"flex-end",[e.breakpoints.up("sm")]:{right:24,left:"auto"}}},{props:({ownerState:t})=>t.anchorOrigin.horizontal==="center",style:{[e.breakpoints.up("sm")]:{left:"50%",right:"auto",transform:"translateX(-50%)"}}}]}))),qH=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiSnackbar"}),o=no(),a={enter:o.transitions.duration.enteringScreen,exit:o.transitions.duration.leavingScreen},{action:s,anchorOrigin:{vertical:i,horizontal:l}={vertical:"bottom",horizontal:"left"},autoHideDuration:u=null,children:c,className:d,ClickAwayListenerProps:m,ContentProps:f,disableWindowBlurListener:h=!1,message:b,onBlur:g,onClose:x,onFocus:E,onMouseEnter:C,onMouseLeave:T,open:w,resumeHideDuration:S,slots:O={},slotProps:F={},TransitionComponent:B,transitionDuration:P=a,TransitionProps:{onEnter:N,onExited:v,...M}={},...A}=r,D={...r,anchorOrigin:{vertical:i,horizontal:l},autoHideDuration:u,disableWindowBlurListener:h,TransitionComponent:B,transitionDuration:P},R=VH(D),{getRootProps:z,onClickAway:U}=NH({...D}),[j,_]=k.useState(!0),K=J=>{_(!0),v&&v(J)},ne=(J,ee)=>{_(!1),N&&N(J,ee)},L={slots:{transition:B,...O},slotProps:{content:f,clickAwayListener:m,transition:M,...F}},[fe,X]=ct("root",{ref:n,className:[R.root,d],elementType:WH,getSlotProps:z,externalForwardedProps:{...L,...A},ownerState:D}),[q,{ownerState:te,...Z}]=ct("clickAwayListener",{elementType:LH,externalForwardedProps:L,getSlotProps:J=>({onClickAway:(...ee)=>{const xe=ee[0];J.onClickAway?.(...ee),!xe?.defaultMuiPrevented&&U(...ee)}}),ownerState:D}),[re,Q]=ct("content",{elementType:UH,shouldForwardComponentProp:!0,externalForwardedProps:L,additionalProps:{message:b,action:s},ownerState:D}),[G,se]=ct("transition",{elementType:Gs,externalForwardedProps:L,getSlotProps:J=>({onEnter:(...ee)=>{J.onEnter?.(...ee),ne(...ee)},onExited:(...ee)=>{J.onExited?.(...ee),K(...ee)}}),additionalProps:{appear:!0,in:w,timeout:P,direction:i==="top"?"down":"up"},ownerState:D});return!w&&j?null:p.jsx(q,{...Z,...O.clickAwayListener&&{ownerState:te},children:p.jsx(fe,{...X,children:p.jsx(G,{...se,children:c||p.jsx(re,{...Q})})})})});function r0(){const[e,t]=W.useState(!1),{apiClients:n}=it.useServer(),[r,o]=W.useState(""),a=()=>{t(!0)},s=()=>{t(!1)},i=$r.useQueryClient(),l=hr({async mutationFn(c){return n.projects.createProject({name:c.name,readme:a2({name:c.name,readme:""},c.description)})},onSuccess(){s(),i.invalidateQueries({queryKey:["projects"]}),o("Project created successfully")},onError(c){o(c instanceof Error?c.message:"An unknown error occurred")}}),u=async c=>{c.preventDefault();const d=new FormData(c.currentTarget),m=d.get("name")?.toString(),f=d.get("description")?.toString();if(!m)throw new Error("Name is required");l.mutate({name:m,description:f})};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{variant:"contained",onClick:a,startIcon:p.jsx(An.AddCircleRounded,{}),sx:{mt:2,color:"white"},children:"Create New Project"}),p.jsxs(kr,{open:e,onClose:s,children:[p.jsx(Ur,{children:"Create New Project"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new project to start exploring semantic models and analyzing data."}),p.jsxs("form",{onSubmit:u,id:"project-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Project Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{margin:"dense",id:"description",name:"description",label:"Project Description",placeholder:"Explore semantic models, run queries, and build dashboards",type:"text",fullWidth:!0,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:l.isPending,onClick:s,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"project-form",loading:l.isPending,children:"Create Project"})]})]}),p.jsx(qH,{open:r!=="",autoHideDuration:6e3,onClose:()=>o(""),message:r})]})}function YH({project:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},c=hr({mutationFn:()=>o.projects.deleteProject(e.name),onSuccess(){u(),a.invalidateQueries({queryKey:["projects"]}),i("Project deleted successfully")},onError(d){i(d instanceof Error?d.message:"An unknown error occurred")}});return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Delete,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Delete"})]}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Project"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:d=>({position:"absolute",right:8,top:8,color:d.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',e.name,'"? This action cannot be undone.']})}),p.jsxs(Tr,{children:[p.jsx(Dt,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),p.jsx(Dt,{loading:c.isPending,variant:"contained",autoFocus:!0,onClick:()=>c.mutate(),color:"error",children:"Delete"})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function GH({project:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},c=hr({async mutationFn(m){return o.projects.updateProject(e.name,{name:e.name,readme:a2({name:e.name,readme:e.readme},m.description)})},onSuccess(){u(),a.invalidateQueries({queryKey:["projects"]}),i("Project updated successfully")},onError(m){i(m instanceof Error?m.message:"An unknown error occurred")}}),d=m=>{m.preventDefault();const h=new FormData(m.currentTarget).get("description")?.toString();c.mutate({description:h})};return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Edit,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Edit"})]}),p.jsxs(kr,{open:n,onClose:u,children:[p.jsx(Ur,{children:"Edit Project"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new project to start exploring semantic models and analyzing data."}),p.jsxs("form",{onSubmit:d,id:"project-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Project Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),p.jsx(Rt,{margin:"dense",id:"description",name:"description",label:"Project Description",type:"text",fullWidth:!0,variant:"standard",defaultValue:o2(e.readme)})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:c.isPending,onClick:u,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"project-form",loading:c.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})}function KH({onClickProject:e}){const{apiClients:t,mutable:n}=it.useServer(),{data:r,isSuccess:o,isError:a,error:s}=Jt({queryKey:["projects"],queryFn:()=>t.projects.listProjects()});return a?p.jsx(Zt,{error:s,context:"Projects List"}):o?p.jsxs(I.Container,{maxWidth:"lg",sx:{py:4},children:[p.jsxs(I.Box,{sx:{textAlign:"center",mb:6},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(e0,{sx:{fontSize:32,color:"primary.main"}}),p.jsx(I.Typography,{variant:"h3",component:"h1",fontWeight:700,children:"Publisher"})]}),p.jsx(I.Typography,{variant:"h5",color:"text.secondary",sx:{mb:3,maxWidth:600,mx:"auto"},children:"The open-source semantic model server for the Malloy data language"}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",sx:{maxWidth:800,mx:"auto"},children:"Define semantic models once — and use them everywhere. Publisher serves Malloy models through clean APIs, enabling consistent, interpretable, and AI-ready data access for tools, applications, and agents."})]}),p.jsxs(I.Grid,{container:!0,spacing:3,sx:{mb:6},children:[p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#ad-hoc-data-analysis","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(SH,{sx:{color:"info.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"Ad Hoc Analysis"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Use Explorer, a visual query builder that allows analysts to browse semantic sources, build queries, and run nested logic — all without writing code."}),p.jsx(I.Chip,{label:"No-code",size:"small",color:"primary",variant:"outlined"})]})})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#notebook-based-dashboards","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(wH,{sx:{color:"warning.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"Notebook Dashboards"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Create shareable, code-first dashboards using Malloy notebooks. Include text, charts, and reusable views — all versioned alongside your models."}),p.jsx(I.Chip,{label:"Versioned",size:"small",color:"warning",variant:"outlined"})]})})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(I.Card,{variant:"outlined",onClick:()=>{window.open("https://github.com/malloydata/publisher/blob/main/README.md#mcp-based-ai-data-agents","_blank")},sx:{height:"100%",cursor:"pointer",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2}},children:p.jsxs(I.CardContent,{sx:{p:3},children:[p.jsxs(I.Stack,{direction:"row",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(IH,{sx:{color:"success.main",fontSize:28}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,children:"AI Data Agents"})]}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2},children:"Expose your semantic models via the Model Context Protocol (MCP), enabling AI agents to discover sources and ask well-formed questions."}),p.jsx(I.Chip,{label:"AI-Ready",size:"small",color:"success",variant:"outlined"})]})})})]}),p.jsx(I.Divider,{sx:{my:4}}),r.data.length>0?p.jsxs(p.Fragment,{children:[p.jsxs(I.Box,{sx:{textAlign:"center",mb:4},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(t0,{sx:{color:"primary.main",fontSize:24}}),p.jsx(I.Typography,{variant:"h4",fontWeight:600,children:"Select a Project"})]}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",children:"Choose a project to explore its semantic models and start analyzing your data"}),n&&p.jsx(r0,{})]}),p.jsx(I.Grid,{container:!0,spacing:3,justifyContent:"center",children:r.data.map(i=>p.jsx(I.Grid,{size:{xs:12,sm:6,md:4},children:p.jsx(QH,{project:i,onClickProject:e})},i.name))})]}):p.jsxs(I.Box,{sx:{textAlign:"center",mb:4},children:[p.jsxs(I.Stack,{direction:"row",justifyContent:"center",alignItems:"center",spacing:1,sx:{mb:2},children:[p.jsx(t0,{sx:{color:"primary.main",fontSize:24}}),p.jsx(I.Typography,{variant:"h4",fontWeight:600,children:"Get Started"})]}),p.jsx(I.Typography,{variant:"body1",color:"text.secondary",sx:{mb:3},children:"No projects found. Create your first Malloy project to start exploring semantic models and building data experiences."}),n?p.jsx(r0,{}):p.jsx(I.Button,{variant:"contained",size:"large",color:"primary",startIcon:p.jsx(e0,{}),href:"https://github.com/malloydata/publisher/blob/main/README.md#server-configuration",target:"_blank",rel:"noopener noreferrer",children:"Learn How to Create Models"})]}),p.jsx(I.Box,{sx:{textAlign:"center",mt:6,pt:4,borderTop:1,borderColor:"divider"},children:p.jsxs(I.Typography,{variant:"body2",color:"text.secondary",children:["Publisher is built on fully open infrastructure and designed for the AI era. Join the"," ",p.jsx("a",{href:"https://join.slack.com/t/malloy-community/shared_invite/zt-1kgfwgi5g-CrsdaRqs81QY67QW0~t_uw",target:"_blank",rel:"noopener noreferrer",style:{color:"primary.main",textDecoration:"underline"},children:"Malloy Slack community"})," ","to ask questions, share ideas, and contribute to the future of data modeling."]})})]}):p.jsx(on,{text:"Loading projects..."})}function QH({project:e,onClickProject:t}){const{mutable:n}=it.useServer(),[r,o]=W.useState(null),a=!!r,s=l=>{o(l.currentTarget)},i=()=>{o(null)};return p.jsx("div",{children:p.jsxs(I.Card,{variant:"outlined",sx:{height:"100%",transition:"all 0.2s ease","&:hover":{transform:"translateY(-2px)",boxShadow:2,borderColor:"primary.main"}},children:[n&&p.jsxs(p.Fragment,{children:[p.jsx(I.IconButton,{"aria-controls":a?"project-menu":void 0,"aria-haspopup":"true","aria-expanded":a?"true":void 0,onClick:s,sx:{position:"absolute",top:8,right:8},children:p.jsx(An.MoreVert,{fontSize:"small"})}),p.jsxs(I.Menu,{id:"project-menu","aria-haspopup":"true","aria-expanded":a?"true":void 0,open:a,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},children:[p.jsx(GH,{project:e,onCloseDialog:i}),p.jsx(YH,{project:e,onCloseDialog:i})]})]}),p.jsxs(I.CardContent,{sx:{p:3,textAlign:"center"},children:[p.jsx(_H,{sx:{fontSize:48,color:"primary.main",mb:2}}),p.jsx(I.Typography,{variant:"h6",fontWeight:600,gutterBottom:!0,children:e.name}),p.jsx(I.Typography,{variant:"body2",color:"text.secondary",sx:{mb:2,minHeight:"60px"},children:o2(e.readme)}),p.jsx(I.Button,{variant:"contained",color:"secondary",endIcon:p.jsx(kH,{}),fullWidth:!0,onClick:l=>t(`/${e.name}/`,l),children:"Open Project"})]})]})})}const Ia=rt(p.jsx("path",{d:"M15.5 14h-.79l-.28-.27C15.41 12.59 16 11.11 16 9.5 16 5.91 13.09 3 9.5 3S3 5.91 3 9.5 5.91 16 9.5 16c1.61 0 3.09-.59 4.23-1.57l.27.28v.79l5 4.99L20.49 19zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14"})),XH=rt(p.jsx("path",{d:"M8 5v14l11-7z"}));function s2({open:e,onClose:t,result:n,title:r="Results"}){return p.jsxs(I.Dialog,{open:e,onClose:t,maxWidth:!1,fullWidth:!0,sx:{"& .MuiDialog-paper":{width:"95vw",height:"95vh",maxWidth:"none"}},children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[r,p.jsx(I.IconButton,{onClick:t,sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{sx:{height:"calc(95vh - 120px)",overflow:"auto",padding:"0 16px"},children:p.jsx(fi,{result:n,maxHeight:800,maxResultSize:1e6})})]})}function ZH({queryName:e,annotations:t,resourceUri:n,runOnDemand:r=!1,maxResultSize:o=0}){const[a,s]=W.useState(),[i,l]=W.useState(!1),[u,c]=W.useState(!1),{packageName:d,projectName:m,versionId:f,modelPath:h}=Ct(n),{apiClients:b}=it.useServer(),{data:g,isSuccess:x,isLoading:E}=Jt({queryKey:["namedQueryResult",n,e],queryFn:()=>b.models.executeQueryModel(m,d,h,{query:void 0,sourceName:void 0,queryName:e,versionId:f}),enabled:r?u:!0});return W.useEffect(()=>{if(t&&t.length>0){const C=t.map(T=>`// ${T}`).join(`
216
+ `);Ll(C,"typescript").then(T=>{s(T)})}},[t]),p.jsxs(qc,{children:[a&&p.jsx(I.Box,{sx:{marginBottom:"16px"},children:p.jsx(I.Typography,{fontSize:"12px",sx:{fontSize:"12px","& .line":{textWrap:"wrap"}},children:p.jsx("div",{className:"content",dangerouslySetInnerHTML:{__html:a}})})}),p.jsxs(I.Box,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:"8px"},children:[p.jsx(I.Typography,{variant:"body2",sx:{fontSize:"15px",fontWeight:"600",color:"#495057",padding:"8px 16px",backgroundColor:"#f8f9fa",borderRadius:"6px",border:"1px solid #e9ecef"},children:e}),p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:()=>l(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]}),p.jsxs(Vi,{sx:{position:"relative"},children:[r&&!u&&p.jsxs(I.Box,{sx:{padding:"40px 20px",textAlign:"center",display:"flex",flexDirection:"column",alignItems:"center",gap:"16px"},children:[p.jsx(I.Typography,{variant:"body2",color:"text.secondary",children:"Click Run to execute the query"}),p.jsx(I.Button,{variant:"contained",startIcon:p.jsx(XH,{}),onClick:()=>c(!0),sx:{backgroundColor:"#1976d2","&:hover":{backgroundColor:"#1565c0"},textTransform:"none",fontSize:"14px",fontWeight:600,padding:"8px 24px"},children:"Run Query"})]}),(!r||u)&&E&&p.jsx(I.Box,{sx:{padding:"20px",textAlign:"center"},children:p.jsx(I.Typography,{children:"Loading results..."})}),(!r||u)&&x&&g?.data?.result&&p.jsx(fi,{result:g.data.result,maxHeight:600,maxResultSize:o})]}),p.jsx(s2,{open:i,onClose:()=>l(!1),result:g?.data?.result||"",title:`Query: ${e}`})]})}function of(e,t=!0){const{modelPath:n,projectName:r,packageName:o,versionId:a}=Ct(e),{apiClients:s}=it.useServer();return Jt({queryKey:["package",r,o,n,a],queryFn:async()=>(await s.models.getModel(r,o,n,a)).data,enabled:t})}function af({data:e,onChange:t,existingQuery:n,initialSelectedSourceIndex:r=0,onSourceChange:o,resourceUri:a}){const[s,i]=W.useState(r);W.useEffect(()=>{i(r)},[r]);const{data:l,isError:u,isLoading:c,error:d}=of(a,!e),{modelPath:m}=Ct(a),f=e||l;if(c&&!e)return p.jsx(on,{text:"Fetching Model..."});if(u&&!e)return console.log("error",d),p.jsx(Zt,{error:d,context:`ModelExplorer > ${m}`});if(!f)return p.jsx(on,{text:"Loading..."});const h=(f?.sourceInfos||[]).map((g,x)=>{try{return JSON.parse(g)?.name||`Source ${x+1}`}catch{return`Source ${x+1}`}}),b=h[s]||"";return p.jsxs(hl,{variant:"outlined",children:[p.jsx(I0,{children:p.jsx(I.Stack,{sx:{flexDirection:"row"},children:p.jsx(Rd,{size:"small",id:"size-small-standard",disablePortal:!0,options:h,value:b,onChange:(g,x)=>{if(!x)return;const E=h.indexOf(x);E>=0&&(i(E),o?.(E))},renderInput:g=>p.jsx(Rt,{...g}),style:{width:350,marginTop:"3px",marginLeft:"6px",marginBottom:"8px"}})})}),p.jsx(Vd,{children:p.jsxs(I.Stack,{spacing:2,component:"section",children:[Array.isArray(f.sourceInfos)&&f.sourceInfos.length>0&&p.jsx(Ip,{sourceAndPaths:f.sourceInfos.map(g=>({sourceInfo:JSON.parse(g),modelPath:m})),selectedSourceIndex:s,existingQuery:n,onQueryChange:t,resourceUri:a}),p.jsx(I.Box,{height:"5px"})]})})]})}function sf({open:e,onClose:t,resourceUri:n,data:r,title:o="Data Sources",hasValidImport:a=!0,existingQuery:s,initialSelectedSourceIndex:i,onChange:l,onSourceChange:u}){return p.jsxs(I.Dialog,{open:e,onClose:t,fullScreen:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:[o,p.jsx(I.IconButton,{onClick:t,sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:a?p.jsx(af,{resourceUri:n,data:r,existingQuery:s,initialSelectedSourceIndex:i,onChange:l,onSourceChange:u}):p.jsx("div",{children:"No valid import statement found in cell"})})]})}function JH({onChange:e,resourceUri:t,runOnDemand:n=!1,maxResultSize:r=0}){const{modelPath:o}=Ct(t),{data:a,isError:s,isLoading:i,error:l}=of(t),[u,c]=W.useState(!1),[d,m]=W.useState(),[f,h]=W.useState(0),[b,g]=W.useState("");if(i)return p.jsx(on,{text:"Fetching Model..."});if(s)return console.log("error",l),p.jsx(Zt,{error:l,context:`Model > ${o}`});const x=T=>{m(T),e&&e(T)},E=T=>{h(T)},C=()=>{const T=window.location.href;navigator.clipboard.writeText(T).then(()=>g("URL copied to clipboard!")).catch(()=>g("Failed to copy URL"))};return p.jsxs(p.Fragment,{children:[p.jsxs(I.Box,{sx:{position:"relative",maxWidth:"1200px",margin:"0 auto",paddingTop:"24px"},children:[Array.isArray(a?.sourceInfos)&&a.sourceInfos.length>0&&p.jsxs(I.Stack,{spacing:2,component:"section",children:[p.jsxs(I.Box,{sx:{padding:"0 0 16px 0",display:"flex",alignItems:"center",justifyContent:"space-between"},children:[p.jsx(I.Typography,{variant:"h1",sx:{fontSize:"28px",fontWeight:"600",color:"#1a1a1a",marginBottom:"8px",marginTop:"0",paddingLeft:"0"},children:"Sources"}),p.jsx(I.Tooltip,{title:"Click to copy link",children:p.jsx(Wd,{sx:{fontSize:"24px",color:"#666666",cursor:"pointer"},onClick:C})})]}),p.jsx(af,{data:a,onChange:x,onSourceChange:E,existingQuery:d,initialSelectedSourceIndex:f,resourceUri:t}),p.jsx(I.IconButton,{sx:{position:"absolute",top:"90px",right:"4px",backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px",zIndex:2},onClick:()=>c(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666",marginBottom:"5px"}})})]}),a?.queries?.length>0&&p.jsxs(I.Stack,{spacing:2,component:"section",sx:{marginTop:"24px"},children:[p.jsx(I.Box,{sx:{padding:"0 0 16px 0"},children:p.jsx(I.Typography,{variant:"h2",sx:{fontSize:"24px",fontWeight:"600",color:"#1a1a1a",marginBottom:"0",marginTop:"8px",paddingLeft:"0"},children:"Named Queries"})}),a.queries.map(T=>p.jsx(ZH,{queryName:T.name,annotations:T.annotations,resourceUri:t,runOnDemand:n,maxResultSize:r},T.name))]}),p.jsx(sf,{open:u,onClose:()=>c(!1),resourceUri:t,data:a,title:`Model: ${o.split("/").pop()}`,existingQuery:d,initialSelectedSourceIndex:f,onChange:x,onSourceChange:E})]}),p.jsx(I.Snackbar,{open:b!=="",autoHideDuration:6e3,onClose:()=>g(""),message:b})]})}function i2(e){return e.replace(/'/g,"\\'").replace(/\\/g,"\\\\")}function sr(e,t=!1){return e==null?"null":t?e instanceof Date?`@${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:`@${e}`:typeof e=="string"?`'${i2(e)}'`:typeof e=="number"?String(e):typeof e=="boolean"?e?"true":"false":String(e)}function eU(e){const{dimensionName:t,matchType:n,value:r,value2:o}=e,a=`\`${t}\``,s=r instanceof Date;switch(n){case"Equals":case"Semantic Search":return Array.isArray(r)&&r.length>0?`(${r.map(l=>`${a} = ${sr(l,s)}`).join(" or ")})`:Array.isArray(r)?"":`${a} = ${sr(r,s)}`;case"Contains":return typeof r=="string"?`${a} ~ f'%${i2(r)}%'`:Array.isArray(r)?"":`${a} = ${sr(r)}`;case"After":return Array.isArray(r)?"":`${a} > ${sr(r,s)}`;case"Before":return Array.isArray(r)?"":`${a} < ${sr(r,s)}`;case"Greater Than":return Array.isArray(r)?"":`${a} > ${sr(r)}`;case"Less Than":return Array.isArray(r)?"":`${a} < ${sr(r)}`;case"Between":return Array.isArray(r)?"":o!==void 0?`${a} >= ${sr(r,s)} and ${a} <= ${sr(o,s)}`:`${a} >= ${sr(r,s)}`;default:return""}}function tU(e){const t=new Map;for(const n of e){const r=`${n.source}|${n.model}`,o=t.get(r)||[];o.push(n),t.set(r,o)}return t}function nU(e,t,n,r){const o=t.filter(l=>(l.filterType==="Star"||l.filterType==="MinMax"||l.filterType==="DateMinMax")&&!l.values);if(o.length===0)return"";const a=o.map(l=>`\`${l.dimensionName}\``).join(", "),s=r?.filter(l=>t.find(c=>c.dimensionName===l.dimensionName)?.source===e)||[],i=s.length>0?s.map(l=>eU(l)).filter(l=>l.length>0).join(" and "):"";return`
217
217
  run: ${e} -> {
218
218
  ${i?`where: ${i}`:""}
219
219
  index: ${a}
@@ -225,12 +225,12 @@ import {${t.sourceName}}" from '${t.modelPath}'"
225
225
  }
226
226
  `}function rU(e,t){const n=new Map;for(const c of t)n.set(c.dimensionName,[]);const r=JSON.parse(e),o=r.schema.fields,a=new Map;o.forEach((c,d)=>{a.set(c.name,d)});const s=c=>{if(!c)return null;switch(c.kind){case"string_cell":return c.string_value??null;case"number_cell":return c.number_value??null;case"boolean_cell":return c.boolean_value??null;case"null_cell":return null;default:return console.log("Unknown cell kind: "+c.kind),null}},l=(r.data?.array_value||[]).map(c=>{const d={};return c.kind==="record_cell"&&c.record_value&&c.record_value.forEach((m,f)=>{const h=o[f]?.name;if(h){const b=s(m);h==="fieldName"&&typeof b=="string"?d.fieldName=b:h==="fieldPath"&&typeof b=="string"?d.fieldPath=b:h==="fieldType"&&typeof b=="string"?d.fieldType=b:h==="fieldValue"&&typeof b=="string"?d.fieldValue=b:h==="weight"&&typeof b=="number"&&(d.weight=b)}}),d}),u=l.length===0||l.every(c=>!c.fieldName);for(const c of t){if(c.filterType==="NONE"||c.filterType==="Retrieval")continue;const d=l.filter(m=>{const f=m.fieldName||"",h=m.fieldPath||"";if(f===c.dimensionName||h===c.dimensionName||f.toLowerCase()===c.dimensionName.toLowerCase()||h.toLowerCase()===c.dimensionName.toLowerCase())return!0;const b=h.split(".").pop()||"";return b===c.dimensionName||b.toLowerCase()===c.dimensionName.toLowerCase()});if(d.length!==0){if(c.filterType==="Star"){const m=d.filter(f=>f.fieldType==="string").map(f=>({value:f.fieldValue??"",count:f.weight})).sort((f,h)=>(h.count??0)-(f.count??0));n.set(c.dimensionName,m)}else if(c.filterType==="MinMax"){console.log("MinMax dimensionEntries: "+JSON.stringify(d,null,2)),console.log("All MinMax dimension entries fieldTypes:",d.map(f=>f.fieldType));const m=d.find(f=>f.fieldType==="number");if(console.log("numericEntry: "+JSON.stringify(m,null,2)),m?.fieldValue){const f=m.fieldValue,h=f.split(" to ");if(console.log("rangeParts: "+h),h.length===2){const b=[{value:parseFloat(h[0])},{value:parseFloat(h[1])}];n.set(c.dimensionName,b)}else console.warn(`Could not parse numeric range for ${c.dimensionName}: ${f}`)}else console.warn(`No numeric entry found for ${c.dimensionName}. Available entries:`,d)}else if(c.filterType==="DateMinMax"){const m=d.find(f=>f.fieldType==="date"||f.fieldType==="timestamp"||f.fieldType==="string");if(console.log("dateEntry: "+JSON.stringify(m,null,2)),console.log("All date dimension entries fieldTypes:",d.map(f=>f.fieldType)),m?.fieldValue){const f=m.fieldValue,h=f.split(" to ");if(console.log("date rangeParts: "+h),h.length===2){const b=[{value:new Date(h[0].trim())},{value:new Date(h[1].trim())}];n.set(c.dimensionName,b)}else console.warn(`Could not parse date range for ${c.dimensionName}: ${f}`)}else console.warn(`No date entry found for ${c.dimensionName}. Available entries:`,d)}}}return{values:n,noRowsMatchedFilter:u}}function lf(e){const{project:t,package:n,dimensionSpecs:r,versionId:o,enabled:a=!0,indexLimit:s=1e4,activeFilters:i=[]}=e,l=W.useMemo(()=>tU(r),[r]),u=W.useMemo(()=>{const b=[];for(const[g,x]of l){const[E,C]=g.split("|"),T=nU(E,x,s,i);T?b.push({key:g,source:E,model:C,query:T,specs:x}):console.log("No query for source: ",E,"model: ",C)}return b},[l,s,i]),c=W.useMemo(()=>a&&u.length>0&&r.some(b=>b.filterType==="Star"||b.filterType==="MinMax"||b.filterType==="DateMinMax"),[a,u,r]),{apiClients:d}=it.useServer(),m=Jt({queryKey:["dimensionalFilter",t,n,r,o,i],queryFn:async()=>{if(!c){const E=new Map;for(const C of r)E.set(C.dimensionName,[]);return{values:E,noRowsMatchedFilter:!1}}const b=await Promise.all(u.map(async E=>{const C=await d.models.executeQueryModel(t,n,E.model,{query:E.query,versionId:o});return{config:E,result:rU(C.data.result,E.specs)}})),g=new Map;let x=!1;for(const{result:E}of b){for(const[C,T]of E.values)g.set(C,T);E.noRowsMatchedFilter&&(x=!0)}return{values:g,noRowsMatchedFilter:x}},enabled:c,staleTime:300*1e3,placeholderData:b=>b}),f=m.data?.values;return{data:W.useMemo(()=>{const b=new Map;for(const g of r)g.values?b.set(g.dimensionName,g.values.map(x=>({value:x}))):b.set(g.dimensionName,[]);if(f)for(const[g,x]of f)x.length>0&&b.set(g,x);return b},[r,f]),noRowsMatchedFilter:m.data?.noRowsMatchedFilter??!1,isLoading:c?m.isPending:!1,isError:c?m.isError:!1,error:c?m.error:null,refetch:m.refetch}}function l2(e){return e.replace(/'/g,"\\'").replace(/\\/g,"\\\\")}function ir(e,t=!1){return e==null?"null":t?e instanceof Date?`@${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:`@${e}`:typeof e=="string"?`'${l2(e)}'`:typeof e=="number"?String(e):typeof e=="boolean"?e?"true":"false":String(e)}function oU(e){const{dimensionName:t,matchType:n,value:r,value2:o}=e,a=`\`${t}\``,s=r instanceof Date;switch(n){case"Equals":case"Semantic Search":return Array.isArray(r)&&r.length>0?`(${r.map(l=>`${a} = ${ir(l,s)}`).join(" or ")})`:Array.isArray(r)?"":`${a} = ${ir(r,s)}`;case"Contains":return typeof r=="string"?`${a} ~ f'%${l2(r)}%'`:Array.isArray(r)?"":`${a} = ${ir(r)}`;case"After":return Array.isArray(r)?"":`${a} > ${ir(r,s)}`;case"Before":return Array.isArray(r)?"":`${a} < ${ir(r,s)}`;case"Greater Than":return Array.isArray(r)?"":`${a} > ${ir(r)}`;case"Less Than":return Array.isArray(r)?"":`${a} < ${ir(r)}`;case"Between":return Array.isArray(r)?"":o!==void 0?`${a} >= ${ir(r,s)} and ${a} <= ${ir(o,s)}`:`${a} >= ${ir(r,s)}`;default:return""}}function uf(e){const{dimensionSpecs:t}=e,[n,r]=W.useState(()=>{const u=new Map;return t.forEach(c=>{u.set(c.dimensionName,{spec:c,selection:null})}),u});W.useEffect(()=>{r(u=>{const c=new Map;return t.forEach(d=>{const m=u.get(d.dimensionName);c.set(d.dimensionName,{spec:d,selection:m?.selection??null})}),c})},[t]);const o=W.useCallback((u,c)=>{r(d=>{const m=new Map(d),f=m.get(u);return f&&m.set(u,{...f,selection:c}),m})},[]),a=W.useCallback(u=>{o(u,null)},[o]),s=W.useCallback(()=>{r(u=>{const c=new Map(u);return c.forEach((d,m)=>{c.set(m,{...d,selection:null})}),c})},[]),i=W.useCallback(()=>{const u=[];return n.forEach(c=>{c.selection&&u.push(c.selection)}),u},[n]),l=W.useCallback(()=>{const u=i();if(u.length===0)return"";const c=u.map(d=>oU(d)).filter(d=>d.length>0);return c.length===0?"":`where ${c.join(" and ")}`},[i]);return{filterStates:n,updateFilter:o,clearFilter:a,clearAllFilters:s,getActiveFilters:i,generateWhereClause:l}}const aU=rt(p.jsx("path",{d:"M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2m0 16H8V7h11z"})),sU=W.lazy(()=>Promise.resolve().then(()=>F2));function cf(e){const{projectName:t,packageName:n}=Ct(e.resourceUri);if(!t||!n)throw new Error("Project and Package name must be provided for query embedding.");return JSON.stringify({...e})}function iU({embeddedQueryResult:e}){const{query:t,sourceName:n,queryName:r,resourceUri:o}=JSON.parse(e),{modelPath:a}=Ct(o);if(!a||!t&&(!r||!n)||typeof a!="string")throw new Error("Invalid embedded query result: "+e);return p.jsx(u2,{query:t,sourceName:n,queryName:r,resourceUri:o})}function u2({query:e,sourceName:t,queryName:n,resourceUri:r}){const{modelPath:o,projectName:a,packageName:s,versionId:i}=Ct(r),{apiClients:l}=it.useServer();if(!a||!s)throw new Error("No project or package name provided. A resource URI must be provided.");const{data:u,isSuccess:c,isError:d,error:m}=Jt({queryKey:[r,e,t,n],queryFn:()=>l.models.executeQueryModel(a,s,o,{query:e,sourceName:t,queryName:n,versionId:i})});return p.jsxs(p.Fragment,{children:[!c&&!d&&p.jsx(on,{text:"Fetching Query Results..."}),c&&p.jsx(W.Suspense,{fallback:p.jsx("div",{children:"Loading..."}),children:p.jsx(sU,{result:u.data.result})}),d&&p.jsx(Zt,{context:`${a} > ${s} > ${o}`,error:m})]})}function lU({cell:e,hideCodeCellIcon:t,hideEmbeddingIcon:n,resourceUri:r,index:o,maxResultSize:a,isExecuting:s}){const[i,l]=W.useState(!1),[u,c]=W.useState(!1),[d,m]=W.useState(!1),[f,h]=W.useState(),[b,g]=W.useState(),[x,E]=W.useState(!1),[C,T]=W.useState(""),w=/import\s*\{([^}]+)\}\s*from\s*['"`][^'"`]+['"`]/,S=/import\s*(?:\{[^}]*\}\s*from\s*)?['"`]([^'"`]+)['"`]/,O=M=>M.split(`
227
227
  `).filter(A=>!A.trimStart().startsWith("##")).join(`
228
- `),F=!!e.text&&(w.test(e.text)||S.test(e.text)),B=()=>{if(!e.newSources||e.newSources.length===0)return 0;let M=[],A="";if(e.text){const D=e.text.match(w);D&&(M=D[1].split(",").map(z=>z.trim()));const R=e.text.match(S);R&&(A=R[1].trim())}for(let D=0;D<e.newSources.length;D++)try{const R=JSON.parse(e.newSources[D]);if(M.length>0&&M.includes(R.name)||A&&A===R.path)return D}catch{continue}return 0},P=e.newSources&&e.newSources.length>0?{sourceInfos:e.newSources,resource:r}:void 0,N=cf({query:e.text,resourceUri:r});W.useEffect(()=>{e.type==="code"&&Ll(O(e.text),"malloy").then(M=>{h(M)})},[e]),W.useEffect(()=>{Ll(N,"typescript").then(M=>{g(M)})},[N]);const v=()=>{const M=window.location.href;navigator.clipboard.writeText(M).then(()=>T("URL copied to clipboard!")).catch(()=>T("Failed to copy URL"))};return e.type==="markdown"&&p.jsx(qc,{children:p.jsxs(I.Box,{sx:{"& h1, & h2, & h3, & h4, & h5, & h6":{fontWeight:"600",color:"#1a1a1a",marginBottom:"8px",marginTop:"16px"},"& h1":{fontSize:"28px"},"& h2":{fontSize:"24px"},"& h3":{fontSize:"20px"},"& p":{color:"#333333",lineHeight:"1.7",marginBottom:"8px",fontSize:"16px"},"& ul, & ol":{color:"#333333",lineHeight:"1.7",marginBottom:"8px",fontSize:"16px"},"& li":{marginBottom:"4px"}},children:[o===0?p.jsxs(I.Stack,{direction:"row",alignItems:"flex-start",justifyContent:"space-between",children:[p.jsx(dl,{children:e.text}),p.jsx(I.Tooltip,{title:"Click to copy link",children:p.jsx(Wd,{sx:{fontSize:"24px",color:"#666666",cursor:"pointer",marginTop:"26px"},onClick:v})})]}):p.jsx(dl,{children:e.text}),p.jsx(I.Snackbar,{open:C!=="",autoHideDuration:6e3,onClose:()=>T(""),message:C})]})})||e.type==="code"&&p.jsxs(qc,{children:[(!t||!n&&e.result||e.newSources&&e.newSources.length>0)&&p.jsx(I.Stack,{sx:{flexDirection:"column",gap:"8px",marginBottom:"2px"},children:e.newSources&&e.newSources.length>0&&p.jsx(Vi,{sx:{position:"relative",padding:"0"},children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingLeft:"24px",paddingRight:"8px"},children:[f&&p.jsx("span",{dangerouslySetInnerHTML:{__html:f},style:{fontFamily:"monospace",fontSize:"14px",flex:1,marginRight:"8px"}}),F&&p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px",flexShrink:0},onClick:()=>E(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]})})}),p.jsx(sf,{open:x,onClose:()=>E(!1),title:"Data Sources",hasValidImport:F,resourceUri:r,data:P,initialSelectedSourceIndex:B()}),p.jsxs(I.Dialog,{open:i,onClose:()=>l(!1),maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["Malloy Code",p.jsx(I.IconButton,{onClick:()=>l(!1),sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:p.jsx(I.Box,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",padding:"16px",fontFamily:"monospace",fontSize:"14px",lineHeight:"1.5",overflow:"auto",maxHeight:"70vh",backgroundColor:"#ffffff"},children:p.jsx("pre",{className:"code-display",style:{margin:0},dangerouslySetInnerHTML:{__html:f}})})})]}),p.jsxs(I.Dialog,{open:u,onClose:()=>c(!1),maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["Embeddable Code",p.jsx(I.IconButton,{onClick:()=>c(!1),sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:p.jsxs(I.Stack,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"flex-start"},children:[p.jsx(I.Typography,{component:"div",sx:{fontSize:"12px",fontFamily:"monospace","& .line":{textWrap:"wrap"},flex:1},dangerouslySetInnerHTML:{__html:b}}),p.jsx(I.Tooltip,{title:"Copy Embeddable Code",children:p.jsx(I.IconButton,{sx:{width:"24px",height:"24px",marginLeft:"8px",color:"#666666"},onClick:()=>{navigator.clipboard.writeText(N)},children:p.jsx(aU,{})})})]})})]}),p.jsx(s2,{open:d,onClose:()=>m(!1),result:e.result||"",title:"Results"}),s&&!e.result&&!F&&!(e.newSources&&e.newSources.length>0)&&p.jsx(Vi,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:p.jsx(I.CircularProgress,{size:32})}),e.result&&p.jsxs(Vi,{sx:{position:"relative"},children:[p.jsx(I.Box,{sx:{paddingTop:"24px"},children:p.jsx(fi,{result:e.result,minHeight:200,maxHeight:700,maxResultSize:a})}),p.jsx(I.Box,{sx:{position:"absolute",bottom:0,left:0,right:0,height:"40px",background:"linear-gradient(transparent, rgba(255, 255, 255, 0.9))",pointerEvents:"none",zIndex:1}}),p.jsxs(I.Stack,{sx:{position:"absolute",top:"8px",right:"8px",flexDirection:"row",gap:"8px",alignItems:"center",zIndex:2},children:[!t&&p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:M=>{M.stopPropagation(),l(!0)},children:p.jsx(D0,{sx:{fontSize:"18px",color:"#666666"}})}),p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:()=>m(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]})]})]})}function c2({resourceUri:e,maxResultSize:t=0,retrievalFn:n}){const{apiClients:r}=it.useServer(),{projectName:o,packageName:a,versionId:s,modelPath:i}=Ct(e),{data:l,isSuccess:u,isError:c,error:d}=Jt({queryKey:[e],queryFn:async()=>(await r.notebooks.getNotebook(o,a,i,s)).data}),[m,f]=W.useState([]),[h,b]=W.useState(!1),[g,x]=W.useState(null),E=W.useMemo(()=>l?Xx(l.annotations):null,[l]),C=W.useMemo(()=>l?.notebookCells?Jx(l.notebookCells):null,[l]),T=W.useMemo(()=>C?.sourceInfoMap??new Map,[C]),w=C?.modelPath??null,S=W.useMemo(()=>!E||T.size===0||!w?[]:e2(T,E.filters,w),[E,T,w]),{filterStates:O,updateFilter:F,getActiveFilters:B}=uf({dimensionSpecs:S}),P=W.useMemo(()=>B(),[O,B]),N=W.useMemo(()=>{const z=new Map;for(const U of S)z.set(U.dimensionName,U.source);return z},[S]),v=W.useMemo(()=>{const z=new Map;for(const[U,j]of T)z.set(U,Qx(j));return z},[T]),{data:M}=lf({project:o,package:a,dimensionSpecs:S,versionId:s,enabled:S.length>0,activeFilters:P}),A=W.useCallback(async(z=[])=>{if(!(!u||!l?.notebookCells)){f(U=>U.length===0?l.notebookCells.map(j=>({...j})):U.map(j=>({...j,result:void 0}))),b(!0),x(null);try{for(let U=0;U<l.notebookCells.length;U++){const j=l.notebookCells[U];if(j.type==="markdown")continue;const _=j.text||"",K=_.includes("run:")||_.includes("->")||/^\s*(run|query)\s*:/m.test(_);try{let ne,L;if(K&&w&&z.length>0){let fe=_;if(z.length>0){const q=n2(_),te=q&&v.get(q)||new Set,Z=q?z.filter(re=>{const Q=N.get(re.dimensionName);return Q?Q===q||te.has(Q):!1}):[];if(Z.length>0){const re=t2(Z,N,q);re&&(fe=r2(_,re))}}ne=(await r.models.executeQueryModel(o,a,w,{query:fe,versionId:s})).data.result}else{const X=(await r.notebooks.executeNotebookCell(o,a,i,U,s)).data;ne=X.result,L=j.newSources||X.newSources}f(fe=>{const X=[...fe];return X[U]||(X[U]={...j}),X[U]={...X[U],result:ne,newSources:L},X})}catch(ne){console.error(`Error executing cell ${U}:`,ne)}}}catch(U){console.error("Error executing notebook cells:",U),x(U)}finally{b(!1)}}},[u,l,w,N,v,o,a,i,s,r.models,r.notebooks]);W.useEffect(()=>{!u||!l?.notebookCells||A([])},[u,l,A]);const D=W.useRef("");W.useEffect(()=>{const z=JSON.stringify(P.map(U=>({dim:U.dimensionName,type:U.matchType,val:U.value,val2:U.value2})));if(z!==D.current){if(D.current===""&&P.length===0){D.current=z;return}D.current=z,h||A(P)}},[P,h,A]);const R=W.useCallback(z=>U=>{F(z,U)},[F]);return S.some(z=>z.filterType==="Retrieval"),p.jsx(Tv,{children:p.jsx(Sv,{children:p.jsxs(I.Stack,{spacing:3,component:"section",children:[S.length>0&&M&&p.jsxs(I.Paper,{elevation:0,sx:{p:3,backgroundColor:"#ffffff",border:"1px solid #e0e0e0",borderRadius:2},children:[p.jsx(I.Typography,{variant:"subtitle2",sx:{fontWeight:600,mb:2,color:"#333"},children:"Filters"}),p.jsx(I.Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(250px, 1fr))",gap:3},children:S.map(z=>{const U=M.get(z.dimensionName)||[],j=O.get(z.dimensionName);return z.filterType==="Retrieval"&&!n?null:p.jsx(I.Box,{children:p.jsx(Kx,{spec:z,values:U,selection:j?.selection,onChange:R(z.dimensionName),retrievalFn:n})},z.dimensionName)})})]}),!u&&!c&&p.jsx(on,{text:"Fetching Notebook..."}),u&&(m.length>0?m:l?.notebookCells||[]).map((z,U)=>p.jsx(lU,{cell:z,index:U,resourceUri:e,maxResultSize:t,isExecuting:h},U)),c&&d.status===404&&p.jsxs(I.Typography,{variant:"body2",sx:{color:"#666666"},children:[p.jsx("code",{children:`${o} > ${a} > ${i}`})," ","not found."]}),c&&d.status!==404&&p.jsx(Zt,{error:d,context:`${o} > ${a} > ${i}`}),g&&p.jsx(Zt,{error:{message:g.message,status:500,name:"ExecutionError"},context:"Notebook Execution"})]})})})}const d2=rt(p.jsx("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}));function uU({resourceUri:e}){const{apiClients:t}=it.useServer(),{projectName:n,packageName:r,versionId:o}=Ct(e),{data:a,isSuccess:s,isError:i,error:l}=Jt({queryKey:["package",n,r,o],queryFn:()=>t.packages.getPackage(n,r,o,!1)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Package Config"}),p.jsx(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:p.jsxs(I.List,{dense:!0,disablePadding:!0,children:[p.jsx(I.ListItem,{dense:!0,disablePadding:!0,children:p.jsx(I.ListItemText,{primary:"Name",primaryTypographyProps:{fontWeight:"500"},secondary:r})}),!s&&!i&&p.jsx(I.ListItem,{children:p.jsx(on,{text:"Fetching Package Metadata..."})}),s&&(a.data&&p.jsx(I.ListItem,{dense:!0,disablePadding:!0,children:p.jsx(I.ListItemText,{primary:"Description",primaryTypographyProps:{fontWeight:"500"},secondary:a.data.description})})||p.jsxs(I.ListItem,{disablePadding:!0,dense:!0,sx:{mt:"20px"},children:[p.jsx(d2,{sx:{color:"grey.600",mr:"10px"}}),p.jsx(I.ListItemText,{primary:"No package manifest"})]})),i&&p.jsx(Zt,{error:l,context:`${n} > ${r} > ${o}`})]})})]})})}const Wl={postgres:[{label:"Host",name:"host",type:"text"},{label:"Port",name:"port",type:"number"},{label:"Database Name",name:"databaseName",type:"text"},{label:"User Name",name:"userName",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Connection String",name:"connectionString",type:"text"}],bigquery:[{label:"Project ID",name:"defaultProjectId",type:"text"},{label:"Billing Project ID",name:"billingProjectId",type:"text"},{label:"Location",name:"location",type:"text"},{label:"Service Account Key JSON",name:"serviceAccountKeyJson",type:"text"},{label:"Maximum Bytes Billed",name:"maximumBytesBilled",type:"text"},{label:"Query Timeout Milliseconds",name:"queryTimeoutMilliseconds",type:"text"}],snowflake:[{label:"Account",name:"account",type:"text"},{label:"Username",name:"username",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Role",name:"role",type:"text"},{label:"Warehouse",name:"warehouse",type:"text"},{label:"Database",name:"database",type:"text"},{label:"Schema",name:"schema",type:"text"},{label:"Response Timeout Milliseconds",name:"responseTimeoutMilliseconds",type:"text"},{label:"Private Key",name:"privateKey",type:"password"},{label:"Private Key Passphrase",name:"privateKeyPass",type:"password"}],trino:[{label:"Server",name:"server",type:"text"},{label:"Port",name:"port",type:"number"},{label:"Catalog",name:"catalog",type:"text"},{label:"Schema",name:"schema",type:"text"},{label:"User",name:"user",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Peaka Key",name:"peakaKey",type:"password"}],mysql:[{label:"Host",name:"host",type:"text"},{label:"Port",name:"port",type:"number"},{label:"User",name:"user",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Database",name:"database",type:"text"}],duckdb:[],motherduck:[{label:"Access Token",name:"accessToken",type:"text"},{label:"Database",name:"database",type:"text"}]},Lc={postgres:"postgresConnection",bigquery:"bigqueryConnection",snowflake:"snowflakeConnection",trino:"trinoConnection",mysql:"mysqlConnection",duckdb:"duckdbConnection",motherduck:"motherduckConnection"};function cU({onSubmit:e,isSubmitting:t}){const[n,r]=W.useState(!1),[o,a]=W.useState("postgres"),s=()=>{r(!0)},i=()=>{r(!1)},l=async u=>{u.preventDefault();const c=new FormData(u.currentTarget),d=c.get("name")?.toString(),m=c.get("type")?.toString(),f=Wl[m];if(!d)throw new Error("Name is required");if(!m)throw new Error("Type is required");const b={name:d,type:m,[{postgres:"postgresConnection",bigquery:"bigqueryConnection",snowflake:"snowflakeConnection",trino:"trinoConnection",mysql:"mysqlConnection",motherduck:"motherduckConnection"}[m]]:f.reduce((g,x)=>(g[x.name]=c.get(x.name)?.toString(),g),{})};await e(b),i()};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{variant:"outlined",onClick:s,children:"Add Connection"}),p.jsxs(kr,{open:n,onClose:i,children:[p.jsx(Ur,{children:"Create New Connection"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new connection to query your data database using Malloy."}),p.jsxs("form",{onSubmit:l,id:"connection-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Connection Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{margin:"dense",id:"type",name:"type",label:"Connection Type",fullWidth:!0,variant:"standard",value:o,select:!0,onChange:u=>a(u.target.value),children:Object.values(it.ConnectionTypeEnum).map(u=>p.jsx(aa,{value:u,children:u},u))}),Wl[o].map(u=>p.jsx(Rt,{margin:"dense",id:u.name,name:u.name,label:u.label,type:u.type,fullWidth:!0,variant:"standard"},u.name))]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:t,onClick:i,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"connection-form",loading:t,children:"Create Connection"})]})]})]})}function dU({connection:e,onCloseDialog:t,isMutating:n,onDelete:r}){const[o,a]=W.useState(!1),[s,i]=W.useState(""),l=()=>{a(!0)},u=()=>{a(!1),t()};return p.jsxs(W.Fragment,{children:[p.jsx(yr,{onClick:c=>{c.stopPropagation(),l()},children:p.jsx(An.Delete,{})}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:o,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Connection"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:c=>({position:"absolute",right:8,top:8,color:c.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',e.name,'"? This action cannot be undone.']})}),p.jsx(Tr,{children:p.jsx(Dt,{loading:n,variant:"contained",autoFocus:!0,onClick:()=>r(),color:"error",children:"Delete"})}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function pU({connection:e,onSubmit:t,isSubmitting:n}){const[r,o]=W.useState(!1),[a,s]=W.useState(e.type),i=()=>{o(!0)},l=()=>{o(!1)},u=async c=>{c.preventDefault();const d=new FormData(c.currentTarget),m=d.get("name")?.toString(),f=d.get("type")?.toString(),h=Wl[f];if(!m)throw new Error("Name is required");if(!f)throw new Error("Type is required");const b={name:m,type:f,[Lc[f]]:h.reduce((g,x)=>(g[x.name]=d.get(x.name)?.toString()??e[Lc[f]][x.name],g),{})};await t(b),l()};return p.jsxs(W.Fragment,{children:[p.jsx(I.IconButton,{onClick:c=>{c.preventDefault(),c.stopPropagation(),i()},children:p.jsx(An.Edit,{})}),p.jsxs(kr,{open:r,onClose:l,children:[p.jsx(Ur,{onClick:c=>{c.stopPropagation()},children:"Edit Connection"}),p.jsxs(Sr,{onClick:c=>{c.stopPropagation()},children:[p.jsx(Ua,{children:"Edit a connection to query your data database using Malloy."}),p.jsxs("form",{onSubmit:u,id:"connection-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Connection Name",type:"text",fullWidth:!0,variant:"standard",value:e.name,defaultValue:e.name}),p.jsx(Rt,{margin:"dense",id:"type",name:"type",label:"Connection Type",fullWidth:!0,variant:"standard",value:a,select:!0,onChange:c=>s(c.target.value),children:Object.values(it.ConnectionTypeEnum).map(c=>p.jsx(aa,{value:c,children:c},c))}),Wl[a].map(c=>p.jsx(Rt,{margin:"dense",id:c.name,name:c.name,label:c.label,type:c.type,fullWidth:!0,variant:"standard",defaultValue:e?.[Lc[a]??""]?.[c.name??""]??""},c.name))]})]}),p.jsxs(Tr,{onClick:c=>{c.stopPropagation()},children:[p.jsx(Dt,{disabled:n,onClick:l,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"connection-form",loading:n,children:"Edit Connection"})]})]})]})}function p2({connectionName:e,resourceUri:t,schema:n}){const{apiClients:r}=it.useServer(),{projectName:o}=Ct(t),[a,s]=W.useState(void 0),[i,l]=W.useState(n||null),[u,c]=W.useState(!1),{data:d,isError:m,isLoading:f,error:h}=Jt({queryKey:["schemas",o,e],queryFn:()=>r.connections.listSchemas(o,e)}),b=d?.data||[];return p.jsxs(I.Grid,{container:!0,spacing:1,children:[!n&&p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsxs(I.Paper,{sx:{p:1,m:0},children:[p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:0},children:[p.jsx(I.Typography,{variant:"overline",fontWeight:"bold",children:"Table Paths"}),p.jsx(I.FormControlLabel,{control:p.jsx(I.Switch,{checked:u,onChange:g=>c(g.target.checked)}),label:"Hidden Schemas"})]}),p.jsx(I.Divider,{sx:{mt:"2px"}}),p.jsxs(I.Box,{sx:{mt:"2px",maxHeight:"600px",overflowY:"auto"},children:[f&&p.jsx(on,{text:"Loading schemas..."}),m&&p.jsx(Zt,{error:h,context:`${o} > ${e} > Schemas`}),!f&&!m&&b.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Schemas"}),!f&&!m&&b.length>0&&p.jsx(I.List,{dense:!0,disablePadding:!0,children:b.map(g=>{const x=g.name;if(g.isHidden&&!u)return null;const C=i===x;return p.jsx(I.ListItemButton,{selected:C,onClick:()=>{l(x),s(void 0)},children:p.jsx(I.ListItemText,{primary:x})},x)})})]})]})}),p.jsx(I.Grid,{size:{xs:12,md:n?6:4},children:i&&p.jsx(I.Paper,{sx:{p:1,m:0},children:p.jsx(mU,{connectionName:e,schemaName:i,onTableClick:g=>{s(g)},resourceUri:t})})}),p.jsx(I.Grid,{size:{xs:12,md:n?6:4},children:a&&p.jsx(I.Paper,{sx:{p:1,m:0},children:p.jsx(fU,{table:a})})})]})}function fU({table:e}){return p.jsxs(p.Fragment,{children:[p.jsxs(I.Typography,{variant:"overline",fontWeight:"bold",children:["Schema: ",e.resource]}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{mt:"10px",maxHeight:"600px",overflowY:"auto"},children:p.jsx(I.TableContainer,{children:p.jsxs(I.Table,{size:"small",sx:{"& .MuiTableCell-root":{padding:"10px"}},children:[p.jsx(I.TableHead,{children:p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:"NAME"}),p.jsx(I.TableCell,{children:"TYPE"})]})}),p.jsx(I.TableBody,{children:e.columns?.sort((t,n)=>t.name.localeCompare(n.name))?.map(t=>p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:t.name}),p.jsx(I.TableCell,{children:t.type})]},t.name))})]})})})]})}function mU({connectionName:e,schemaName:t,onTableClick:n,resourceUri:r}){const{projectName:o}=Ct(r),{apiClients:a}=it.useServer(),[s,i]=W.useState(""),{data:l,isSuccess:u,isError:c,error:d,isLoading:m}=Jt({queryKey:["tablesInSchema",o,e,t],queryFn:()=>a.connections.listTables(o,e,t)}),f=u&&l?.data?l.data.filter(h=>(h.resource.split(".").pop()?.toLowerCase()||"").includes(s.toLowerCase())).sort((h,b)=>{const g=h.resource.split(".").pop()||h.resource,x=b.resource.split(".").pop()||b.resource;return g.localeCompare(x)}):[];return p.jsxs(p.Fragment,{children:[p.jsxs(I.Typography,{variant:"overline",fontWeight:"bold",children:["Tables in ",t]}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{mt:1,mb:1},children:p.jsx(I.TextField,{size:"small",fullWidth:!0,placeholder:"Search tables...",value:s,onChange:h=>i(h.target.value),variant:"outlined"})}),p.jsx(I.Divider,{}),p.jsxs(I.Box,{sx:{mt:"2px",maxHeight:"600px",overflowY:"auto"},children:[m&&p.jsx(on,{text:"Fetching Tables..."}),c&&p.jsx(Zt,{error:d,context:`${o} > ${e} > ${t}`}),u&&f.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Tables"}),u&&l?.data&&l.data.length>0&&p.jsx(I.List,{dense:!0,disablePadding:!0,children:f.map(h=>{const b=h.resource.split(".").pop()||h.resource;return p.jsx(I.ListItemButton,{onClick:()=>n(h),children:p.jsx(I.ListItemText,{primary:b,secondary:`${h.columns.length} columns`})},h.resource)})})]})]})}function hU({connection:e,onClick:t,onEdit:n,onDelete:r,isMutating:o,mutable:a}){return p.jsxs(I.TableRow,{sx:{"&:hover":{backgroundColor:"action.hover"}},children:[p.jsx(I.TableCell,{sx:{cursor:"pointer",flexGrow:1},onClick:t,children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[p.jsx(I.Typography,{variant:"body2",children:e.name}),p.jsx(Ia,{sx:{fontSize:"1rem",color:"action.active",opacity:.7}})]})}),p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",children:e.type})}),a&&p.jsxs(I.TableCell,{sx:{minWidth:"120px"},children:[p.jsx(pU,{connection:e,onSubmit:n,isSubmitting:o}),p.jsx(dU,{connection:e,onCloseDialog:()=>{},isMutating:o,onDelete:()=>r(e)})]})]},e.name)}function gU({resourceUri:e}){const{apiClients:t,mutable:n}=it.useServer(),r=$r.useQueryClient(),{projectName:o}=Ct(e),[a,s]=W.useState(""),[i,l]=W.useState(null),u=pi({projectName:o,connectionName:i}),{data:c,isSuccess:d,isError:m,error:f}=Jt({queryKey:["connections",o],queryFn:()=>t.connections.listConnections(o)}),h=C=>{l(C)},b=()=>{l(null)},g=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:[...c.data,C]}),onSuccess(){s("Connection added successfully"),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}}),x=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:c.data.map(T=>T.name===C.name?C:T)}),onSuccess(C,T){s(`Connection ${T.name} updated successfully`),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}}),E=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:c.data.filter(T=>T.name!==C.name)}),onSuccess(C,T){s(`Connection ${T.name} deleted successfully`),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}});return p.jsxs(p.Fragment,{children:[p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Database Connections"}),p.jsxs(I.Box,{sx:{mb:1,maxHeight:"200px",overflowY:"auto"},children:[!d&&!m&&p.jsx(I.Typography,{variant:"body2",sx:{m:"auto"},children:"Fetching Connections..."}),d&&c.data.length>0&&p.jsx(I.Table,{size:"small",sx:{borderCollapse:"collapse","& .MuiTableRow-root":{display:"flex",width:"100%"},"& .MuiTableCell-root":{borderBottom:"1px solid #e0e0e0",display:"flex",alignItems:"center"},"& .MuiTableRow-root:last-child .MuiTableCell-root":{borderBottom:"none"}},children:p.jsxs(I.TableBody,{children:[p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{sx:{flexGrow:1},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Connection Name"})}),p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Type"})}),n&&p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",sx:{mx:"auto"},children:"Actions"})})]}),c.data.map(C=>p.jsx(hU,{connection:C,onClick:()=>h(C.name),onEdit:T=>x.mutateAsync(T),onDelete:T=>{C.resource?s("Cannot delete this connection"):E.mutateAsync(T)},isMutating:x.isPending||E.isPending,mutable:n},C.name))]})}),d&&c.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Connections"}),m&&p.jsx(Zt,{error:f,context:`${o} > Connections`})]}),n&&p.jsx(I.Box,{sx:{display:"flex",justifyContent:"flex-end"},children:p.jsx(cU,{onSubmit:C=>g.mutateAsync(C),isSubmitting:g.isPending})})]})}),p.jsx(I.Snackbar,{open:a!=="",autoHideDuration:6e3,onClose:()=>s(""),message:a}),p.jsxs(I.Dialog,{open:i!==null,onClose:b,maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{children:["Connection Explorer: ",i,p.jsx(I.IconButton,{"aria-label":"close",onClick:b,sx:{position:"absolute",right:8,top:8},children:p.jsx(I.Box,{sx:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center"},children:"X"})})]}),p.jsx(I.DialogContent,{children:i&&p.jsx(p2,{resourceUri:u,connectionName:i})})]})]})}function bU({resourceUri:e}){const{apiClients:t}=it.useServer(),{projectName:n,packageName:r,versionId:o}=Ct(e),[a,s]=W.useState(!1),[i,l]=W.useState(null),u=g=>{l(g),s(!0)},c=()=>{s(!1),l(null)},{data:d,isError:m,error:f,isSuccess:h}=Jt({queryKey:["databases",n,r,o],queryFn:()=>t.databases.listDatabases(n,r,o)}),b=g=>g>=1024*1024*1024*1024?`${(g/(1024*1024*1024)).toFixed(2)} T`:g>=1024*1024*1024?`${(g/(1024*1024*1024)).toFixed(2)} G`:g>=1024*1024?`${(g/(1024*1024)).toFixed(2)} M`:`${(g/1024).toFixed(2)} K`;return p.jsxs(p.Fragment,{children:[p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Embedded Databases"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!h&&!m&&p.jsx(on,{text:"Fetching Databases..."}),m&&p.jsx(Zt,{error:f,context:`${n} > ${r} > Databases`}),h&&d.data.length>0&&p.jsx(I.Table,{size:"small",sx:{borderCollapse:"collapse","& .MuiTableCell-root":{borderBottom:"1px solid #e0e0e0"},"& .MuiTableRow-root:last-child .MuiTableCell-root":{borderBottom:"none"}},children:p.jsxs(I.TableBody,{children:[p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Name"})}),p.jsx(I.TableCell,{align:"right",children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Rows"})})]}),d.data.map(g=>p.jsxs(I.TableRow,{onClick:()=>u(g),sx:{cursor:"pointer","&:hover":{backgroundColor:"action.hover"}},children:[p.jsx(I.TableCell,{component:"th",scope:"row",children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[p.jsx(I.Typography,{variant:"body2",children:g.path}),p.jsx(Ia,{sx:{fontSize:"1rem",color:"action.active",opacity:.7}})]})}),p.jsx(I.TableCell,{align:"right",children:p.jsx(I.Typography,{variant:"body2",children:b(g.info.rowCount)})})]},g.path))]})}),h&&d.data.length===0&&p.jsx(I.Typography,{variant:"body2",sx:{m:"auto"},children:"No databases found"})]})]})}),p.jsxs(I.Dialog,{open:a,onClose:c,maxWidth:"sm",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{children:[i?.path,p.jsx(I.IconButton,{"aria-label":"close",onClick:c,sx:{position:"absolute",right:8,top:8},children:p.jsx(I.Box,{sx:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center"},children:"X"})})]}),p.jsx(I.DialogContent,{children:i?.info?.columns&&p.jsx(I.TableContainer,{children:p.jsxs(I.Table,{size:"small",children:[p.jsx(I.TableHead,{children:p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:"Column"}),p.jsx(I.TableCell,{children:"Type"})]})}),p.jsx(I.TableBody,{children:i.info.columns.map(g=>p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{component:"th",scope:"row",children:g.name}),p.jsx(I.TableCell,{children:g.type})]},g.name))})]})})})]})]})}function yU(e){return Fe("MuiCollapse",e)}Re("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);const xU=e=>{const{orientation:t,classes:n}=e,r={root:["root",`${t}`],entered:["entered"],hidden:["hidden"],wrapper:["wrapper",`${t}`],wrapperInner:["wrapperInner",`${t}`]};return Le(r,yU,n)},CU=ae("div",{name:"MuiCollapse",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.orientation],n.state==="entered"&&t.entered,n.state==="exited"&&!n.in&&n.collapsedSize==="0px"&&t.hidden]}})(Je(({theme:e})=>({height:0,overflow:"hidden",transition:e.transitions.create("height"),variants:[{props:{orientation:"horizontal"},style:{height:"auto",width:0,transition:e.transitions.create("width")}},{props:{state:"entered"},style:{height:"auto",overflow:"visible"}},{props:{state:"entered",orientation:"horizontal"},style:{width:"auto"}},{props:({ownerState:t})=>t.state==="exited"&&!t.in&&t.collapsedSize==="0px",style:{visibility:"hidden"}}]}))),EU=ae("div",{name:"MuiCollapse",slot:"Wrapper"})({display:"flex",width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),vU=ae("div",{name:"MuiCollapse",slot:"WrapperInner"})({width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),Qs=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiCollapse"}),{addEndListener:o,children:a,className:s,collapsedSize:i="0px",component:l,easing:u,in:c,onEnter:d,onEntered:m,onEntering:f,onExit:h,onExited:b,onExiting:g,orientation:x="vertical",style:E,timeout:C=x0.standard,TransitionComponent:T=Kn,...w}=r,S={...r,orientation:x,collapsedSize:i},O=xU(S),F=no(),B=Eu(),P=k.useRef(null),N=k.useRef(),v=typeof i=="number"?`${i}px`:i,M=x==="horizontal",A=M?"width":"height",D=k.useRef(null),R=nt(n,D),z=q=>te=>{if(q){const Z=D.current;te===void 0?q(Z):q(Z,te)}},U=()=>P.current?P.current[M?"clientWidth":"clientHeight"]:0,j=z((q,te)=>{P.current&&M&&(P.current.style.position="absolute"),q.style[A]=v,d&&d(q,te)}),_=z((q,te)=>{const Z=U();P.current&&M&&(P.current.style.position="");const{duration:re,easing:Q}=_a({style:E,timeout:C,easing:u},{mode:"enter"});if(C==="auto"){const G=F.transitions.getAutoHeightDuration(Z);q.style.transitionDuration=`${G}ms`,N.current=G}else q.style.transitionDuration=typeof re=="string"?re:`${re}ms`;q.style[A]=`${Z}px`,q.style.transitionTimingFunction=Q,f&&f(q,te)}),K=z((q,te)=>{q.style[A]="auto",m&&m(q,te)}),ne=z(q=>{q.style[A]=`${U()}px`,h&&h(q)}),L=z(b),fe=z(q=>{const te=U(),{duration:Z,easing:re}=_a({style:E,timeout:C,easing:u},{mode:"exit"});if(C==="auto"){const Q=F.transitions.getAutoHeightDuration(te);q.style.transitionDuration=`${Q}ms`,N.current=Q}else q.style.transitionDuration=typeof Z=="string"?Z:`${Z}ms`;q.style[A]=v,q.style.transitionTimingFunction=re,g&&g(q)}),X=q=>{C==="auto"&&B.start(N.current||0,q),o&&o(D.current,q)};return p.jsx(T,{in:c,onEnter:j,onEntered:K,onEntering:_,onExit:ne,onExited:L,onExiting:fe,addEndListener:X,nodeRef:D,timeout:C==="auto"?null:C,...w,children:(q,{ownerState:te,...Z})=>p.jsx(CU,{as:l,className:De(O.root,s,{entered:O.entered,exited:!c&&v==="0px"&&O.hidden}[q]),style:{[M?"minWidth":"minHeight"]:v,...E},ref:R,ownerState:{...S,state:q},...Z,children:p.jsx(EU,{ownerState:{...S,state:q},className:O.wrapper,ref:P,children:p.jsx(vU,{ownerState:{...S,state:q},className:O.wrapperInner,children:a})})})})});Qs&&(Qs.muiSupportAuto=!0);function TU(e){return Fe("PrivateSwitchBase",e)}Re("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const SU=e=>{const{classes:t,checked:n,disabled:r,edge:o}=e,a={root:["root",n&&"checked",r&&"disabled",o&&`edge${ke(o)}`],input:["input"]};return Le(a,TU,t)},kU=ae(No,{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}}]}),wU=ae("input",{name:"MuiSwitchBase",shouldForwardProp:fn})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),_U=k.forwardRef(function(t,n){const{autoFocus:r,checked:o,checkedIcon:a,defaultChecked:s,disabled:i,disableFocusRipple:l=!1,edge:u=!1,icon:c,id:d,inputProps:m,inputRef:f,name:h,onBlur:b,onChange:g,onFocus:x,readOnly:E,required:C=!1,tabIndex:T,type:w,value:S,slots:O={},slotProps:F={},...B}=t,[P,N]=_n({controlled:o,default:!!s,name:"SwitchBase",state:"checked"}),v=Qn(),M=X=>{x&&x(X),v&&v.onFocus&&v.onFocus(X)},A=X=>{b&&b(X),v&&v.onBlur&&v.onBlur(X)},D=X=>{if(X.nativeEvent.defaultPrevented)return;const q=X.target.checked;N(q),g&&g(X,q)};let R=i;v&&typeof R>"u"&&(R=v.disabled);const z=w==="checkbox"||w==="radio",U={...t,checked:P,disabled:R,disableFocusRipple:l,edge:u},j=SU(U),_={slots:O,slotProps:{input:m,...F}},[K,ne]=ct("root",{ref:n,elementType:kU,className:j.root,shouldForwardComponentProp:!0,externalForwardedProps:{..._,component:"span",...B},getSlotProps:X=>({...X,onFocus:q=>{X.onFocus?.(q),M(q)},onBlur:q=>{X.onBlur?.(q),A(q)}}),ownerState:U,additionalProps:{centerRipple:!0,focusRipple:!l,disabled:R,role:void 0,tabIndex:null}}),[L,fe]=ct("input",{ref:f,elementType:wU,className:j.input,externalForwardedProps:_,getSlotProps:X=>({...X,onChange:q=>{X.onChange?.(q),D(q)}}),ownerState:U,additionalProps:{autoFocus:r,checked:o,defaultChecked:s,disabled:R,id:z?d:void 0,name:h,readOnly:E,required:C,tabIndex:T,type:w,...w==="checkbox"&&S===void 0?{}:{value:S}}});return p.jsxs(K,{...ne,children:[p.jsx(L,{...fe}),P?a:c]})}),IU=rt(p.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"})),AU=rt(p.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"})),DU=rt(p.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"}));function PU(e){return Fe("MuiCheckbox",e)}const Fc=Re("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary","sizeSmall","sizeMedium"]),RU=e=>{const{classes:t,indeterminate:n,color:r,size:o}=e,a={root:["root",n&&"indeterminate",`color${ke(r)}`,`size${ke(o)}`]},s=Le(a,PU,t);return{...t,...s}},MU=ae(_U,{shouldForwardProp:e=>fn(e)||e==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${ke(n.size)}`],n.color!=="default"&&t[`color${ke(n.color)}`]]}})(Je(({theme:e})=>({color:(e.vars||e).palette.text.secondary,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(dn()).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(dn()).map(([t])=>({props:{color:t},style:{[`&.${Fc.checked}, &.${Fc.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Fc.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}))),NU=p.jsx(AU,{}),OU=p.jsx(IU,{}),LU=p.jsx(DU,{}),f2=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiCheckbox"}),{checkedIcon:o=NU,color:a="primary",icon:s=OU,indeterminate:i=!1,indeterminateIcon:l=LU,inputProps:u,size:c="medium",disableRipple:d=!1,className:m,slots:f={},slotProps:h={},...b}=r,g=i?l:s,x=i?l:o,E={...r,disableRipple:d,color:a,indeterminate:i,size:c},C=RU(E),T=h.input??u,[w,S]=ct("root",{ref:n,elementType:MU,className:De(C.root,m),shouldForwardComponentProp:!0,externalForwardedProps:{slots:f,slotProps:h,...b},ownerState:E,additionalProps:{type:"checkbox",icon:k.cloneElement(g,{fontSize:g.props.fontSize??c}),checkedIcon:k.cloneElement(x,{fontSize:x.props.fontSize??c}),disableRipple:d,slots:f,slotProps:{input:_0(typeof T=="function"?T(E):T,{"data-indeterminate":i})}}});return p.jsx(w,{...S,classes:C})});function m2(e){return St}const h2=k.createContext(null);function FU(e){const{value:t,children:n}=e;return p.jsx(h2.Provider,{value:t,children:t.wrapRoot({children:n,instance:t.instance})})}const zo=()=>{const e=k.useContext(h2);if(e==null)throw new Error(["MUI X: Could not find the Tree View context.","It looks like you rendered your component outside of a SimpleTreeView or RichTreeView parent component.","This can also happen if you are bundling multiple versions of the Tree View."].join(`
228
+ `),F=!!e.text&&(w.test(e.text)||S.test(e.text)),B=()=>{if(!e.newSources||e.newSources.length===0)return 0;let M=[],A="";if(e.text){const D=e.text.match(w);D&&(M=D[1].split(",").map(z=>z.trim()));const R=e.text.match(S);R&&(A=R[1].trim())}for(let D=0;D<e.newSources.length;D++)try{const R=JSON.parse(e.newSources[D]);if(M.length>0&&M.includes(R.name)||A&&A===R.path)return D}catch{continue}return 0},P=e.newSources&&e.newSources.length>0?{sourceInfos:e.newSources,resource:r}:void 0,N=cf({query:e.text,resourceUri:r});W.useEffect(()=>{e.type==="code"&&Ll(O(e.text),"malloy").then(M=>{h(M)})},[e]),W.useEffect(()=>{Ll(N,"typescript").then(M=>{g(M)})},[N]);const v=()=>{const M=window.location.href;navigator.clipboard.writeText(M).then(()=>T("URL copied to clipboard!")).catch(()=>T("Failed to copy URL"))};return e.type==="markdown"&&p.jsx(qc,{children:p.jsxs(I.Box,{sx:{"& h1, & h2, & h3, & h4, & h5, & h6":{fontWeight:"600",color:"#1a1a1a",marginBottom:"8px",marginTop:"16px"},"& h1":{fontSize:"28px"},"& h2":{fontSize:"24px"},"& h3":{fontSize:"20px"},"& p":{color:"#333333",lineHeight:"1.7",marginBottom:"8px",fontSize:"16px"},"& ul, & ol":{color:"#333333",lineHeight:"1.7",marginBottom:"8px",fontSize:"16px"},"& li":{marginBottom:"4px"}},children:[o===0?p.jsxs(I.Stack,{direction:"row",alignItems:"flex-start",justifyContent:"space-between",children:[p.jsx(dl,{children:e.text}),p.jsx(I.Tooltip,{title:"Click to copy link",children:p.jsx(Wd,{sx:{fontSize:"24px",color:"#666666",cursor:"pointer",marginTop:"26px"},onClick:v})})]}):p.jsx(dl,{children:e.text}),p.jsx(I.Snackbar,{open:C!=="",autoHideDuration:6e3,onClose:()=>T(""),message:C})]})})||e.type==="code"&&p.jsxs(qc,{children:[(!t||!n&&e.result||e.newSources&&e.newSources.length>0)&&p.jsx(I.Stack,{sx:{flexDirection:"column",gap:"8px",marginBottom:"2px"},children:e.newSources&&e.newSources.length>0&&p.jsx(Vi,{sx:{position:"relative",padding:"0"},children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",paddingLeft:"24px",paddingRight:"8px"},children:[f&&p.jsx("span",{dangerouslySetInnerHTML:{__html:f},style:{fontFamily:"monospace",fontSize:"14px",flex:1,marginRight:"8px"}}),F&&p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px",flexShrink:0},onClick:()=>E(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]})})}),p.jsx(sf,{open:x,onClose:()=>E(!1),title:"Data Sources",hasValidImport:F,resourceUri:r,data:P,initialSelectedSourceIndex:B()}),p.jsxs(I.Dialog,{open:i,onClose:()=>l(!1),maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["Malloy Code",p.jsx(I.IconButton,{onClick:()=>l(!1),sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:p.jsx(I.Box,{sx:{border:"1px solid #e0e0e0",borderRadius:"8px",padding:"16px",fontFamily:"monospace",fontSize:"14px",lineHeight:"1.5",overflow:"auto",maxHeight:"70vh",backgroundColor:"#ffffff"},children:p.jsx("pre",{className:"code-display",style:{margin:0},dangerouslySetInnerHTML:{__html:f}})})})]}),p.jsxs(I.Dialog,{open:u,onClose:()=>c(!1),maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{sx:{display:"flex",justifyContent:"space-between",alignItems:"center"},children:["Embeddable Code",p.jsx(I.IconButton,{onClick:()=>c(!1),sx:{color:"#666666"},children:p.jsx(to,{})})]}),p.jsx(I.DialogContent,{children:p.jsxs(I.Stack,{sx:{flexDirection:"row",justifyContent:"space-between",alignItems:"flex-start"},children:[p.jsx(I.Typography,{component:"div",sx:{fontSize:"12px",fontFamily:"monospace","& .line":{textWrap:"wrap"},flex:1},dangerouslySetInnerHTML:{__html:b}}),p.jsx(I.Tooltip,{title:"Copy Embeddable Code",children:p.jsx(I.IconButton,{sx:{width:"24px",height:"24px",marginLeft:"8px",color:"#666666"},onClick:()=>{navigator.clipboard.writeText(N)},children:p.jsx(aU,{})})})]})})]}),p.jsx(s2,{open:d,onClose:()=>m(!1),result:e.result||"",title:"Results"}),s&&!e.result&&!F&&!(e.newSources&&e.newSources.length>0)&&p.jsx(Vi,{sx:{display:"flex",justifyContent:"center",alignItems:"center",minHeight:200},children:p.jsx(I.CircularProgress,{size:32})}),e.result&&p.jsxs(Vi,{sx:{position:"relative"},children:[p.jsx(I.Box,{sx:{paddingTop:"24px"},children:p.jsx(fi,{result:e.result,maxHeight:700,maxResultSize:a})}),p.jsxs(I.Stack,{sx:{position:"absolute",top:"8px",right:"8px",flexDirection:"row",gap:"8px",alignItems:"center",zIndex:2},children:[!t&&p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:M=>{M.stopPropagation(),l(!0)},children:p.jsx(D0,{sx:{fontSize:"18px",color:"#666666"}})}),p.jsx(I.IconButton,{sx:{backgroundColor:"rgba(255, 255, 255, 0.9)","&:hover":{backgroundColor:"rgba(255, 255, 255, 1)"},width:"32px",height:"32px"},onClick:()=>m(!0),children:p.jsx(Ia,{sx:{fontSize:"18px",color:"#666666"}})})]})]})]})}function c2({resourceUri:e,maxResultSize:t=0,retrievalFn:n}){const{apiClients:r}=it.useServer(),{projectName:o,packageName:a,versionId:s,modelPath:i}=Ct(e),{data:l,isSuccess:u,isError:c,error:d}=Jt({queryKey:[e],queryFn:async()=>(await r.notebooks.getNotebook(o,a,i,s)).data}),[m,f]=W.useState([]),[h,b]=W.useState(!1),[g,x]=W.useState(null),E=W.useMemo(()=>l?Xx(l.annotations):null,[l]),C=W.useMemo(()=>l?.notebookCells?Jx(l.notebookCells):null,[l]),T=W.useMemo(()=>C?.sourceInfoMap??new Map,[C]),w=C?.modelPath??null,S=W.useMemo(()=>!E||T.size===0||!w?[]:e2(T,E.filters,w),[E,T,w]),{filterStates:O,updateFilter:F,getActiveFilters:B}=uf({dimensionSpecs:S}),P=W.useMemo(()=>B(),[O,B]),N=W.useMemo(()=>{const z=new Map;for(const U of S)z.set(U.dimensionName,U.source);return z},[S]),v=W.useMemo(()=>{const z=new Map;for(const[U,j]of T)z.set(U,Qx(j));return z},[T]),{data:M}=lf({project:o,package:a,dimensionSpecs:S,versionId:s,enabled:S.length>0,activeFilters:P}),A=W.useCallback(async(z=[])=>{if(!(!u||!l?.notebookCells)){f(U=>U.length===0?l.notebookCells.map(j=>({...j})):U.map(j=>({...j,result:void 0}))),b(!0),x(null);try{for(let U=0;U<l.notebookCells.length;U++){const j=l.notebookCells[U];if(j.type==="markdown")continue;const _=j.text||"",K=_.includes("run:")||_.includes("->")||/^\s*(run|query)\s*:/m.test(_);try{let ne,L;if(K&&w&&z.length>0){let fe=_;if(z.length>0){const q=n2(_),te=q&&v.get(q)||new Set,Z=q?z.filter(re=>{const Q=N.get(re.dimensionName);return Q?Q===q||te.has(Q):!1}):[];if(Z.length>0){const re=t2(Z,N,q);re&&(fe=r2(_,re))}}ne=(await r.models.executeQueryModel(o,a,w,{query:fe,versionId:s})).data.result}else{const X=(await r.notebooks.executeNotebookCell(o,a,i,U,s)).data;ne=X.result,L=j.newSources||X.newSources}f(fe=>{const X=[...fe];return X[U]||(X[U]={...j}),X[U]={...X[U],result:ne,newSources:L},X})}catch(ne){console.error(`Error executing cell ${U}:`,ne)}}}catch(U){console.error("Error executing notebook cells:",U),x(U)}finally{b(!1)}}},[u,l,w,N,v,o,a,i,s,r.models,r.notebooks]);W.useEffect(()=>{!u||!l?.notebookCells||A([])},[u,l,A]);const D=W.useRef("");W.useEffect(()=>{const z=JSON.stringify(P.map(U=>({dim:U.dimensionName,type:U.matchType,val:U.value,val2:U.value2})));if(z!==D.current){if(D.current===""&&P.length===0){D.current=z;return}D.current=z,h||A(P)}},[P,h,A]);const R=W.useCallback(z=>U=>{F(z,U)},[F]);return S.some(z=>z.filterType==="Retrieval"),p.jsx(Tv,{children:p.jsx(Sv,{children:p.jsxs(I.Stack,{spacing:3,component:"section",children:[S.length>0&&M&&p.jsxs(I.Paper,{elevation:0,sx:{p:3,backgroundColor:"#ffffff",border:"1px solid #e0e0e0",borderRadius:2},children:[p.jsx(I.Typography,{variant:"subtitle2",sx:{fontWeight:600,mb:2,color:"#333"},children:"Filters"}),p.jsx(I.Box,{sx:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(250px, 1fr))",gap:3},children:S.map(z=>{const U=M.get(z.dimensionName)||[],j=O.get(z.dimensionName);return z.filterType==="Retrieval"&&!n?null:p.jsx(I.Box,{children:p.jsx(Kx,{spec:z,values:U,selection:j?.selection,onChange:R(z.dimensionName),retrievalFn:n})},z.dimensionName)})})]}),!u&&!c&&p.jsx(on,{text:"Fetching Notebook..."}),u&&(m.length>0?m:l?.notebookCells||[]).map((z,U)=>p.jsx(lU,{cell:z,index:U,resourceUri:e,maxResultSize:t,isExecuting:h},U)),c&&d.status===404&&p.jsxs(I.Typography,{variant:"body2",sx:{color:"#666666"},children:[p.jsx("code",{children:`${o} > ${a} > ${i}`})," ","not found."]}),c&&d.status!==404&&p.jsx(Zt,{error:d,context:`${o} > ${a} > ${i}`}),g&&p.jsx(Zt,{error:{message:g.message,status:500,name:"ExecutionError"},context:"Notebook Execution"})]})})})}const d2=rt(p.jsx("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m1 15h-2v-2h2zm0-4h-2V7h2z"}));function uU({resourceUri:e}){const{apiClients:t}=it.useServer(),{projectName:n,packageName:r,versionId:o}=Ct(e),{data:a,isSuccess:s,isError:i,error:l}=Jt({queryKey:["package",n,r,o],queryFn:()=>t.packages.getPackage(n,r,o,!1)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Package Config"}),p.jsx(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:p.jsxs(I.List,{dense:!0,disablePadding:!0,children:[p.jsx(I.ListItem,{dense:!0,disablePadding:!0,children:p.jsx(I.ListItemText,{primary:"Name",primaryTypographyProps:{fontWeight:"500"},secondary:r})}),!s&&!i&&p.jsx(I.ListItem,{children:p.jsx(on,{text:"Fetching Package Metadata..."})}),s&&(a.data&&p.jsx(I.ListItem,{dense:!0,disablePadding:!0,children:p.jsx(I.ListItemText,{primary:"Description",primaryTypographyProps:{fontWeight:"500"},secondary:a.data.description})})||p.jsxs(I.ListItem,{disablePadding:!0,dense:!0,sx:{mt:"20px"},children:[p.jsx(d2,{sx:{color:"grey.600",mr:"10px"}}),p.jsx(I.ListItemText,{primary:"No package manifest"})]})),i&&p.jsx(Zt,{error:l,context:`${n} > ${r} > ${o}`})]})})]})})}const Wl={postgres:[{label:"Host",name:"host",type:"text"},{label:"Port",name:"port",type:"number"},{label:"Database Name",name:"databaseName",type:"text"},{label:"User Name",name:"userName",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Connection String",name:"connectionString",type:"text"}],bigquery:[{label:"Project ID",name:"defaultProjectId",type:"text"},{label:"Billing Project ID",name:"billingProjectId",type:"text"},{label:"Location",name:"location",type:"text"},{label:"Service Account Key JSON",name:"serviceAccountKeyJson",type:"text"},{label:"Maximum Bytes Billed",name:"maximumBytesBilled",type:"text"},{label:"Query Timeout Milliseconds",name:"queryTimeoutMilliseconds",type:"text"}],snowflake:[{label:"Account",name:"account",type:"text"},{label:"Username",name:"username",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Role",name:"role",type:"text"},{label:"Warehouse",name:"warehouse",type:"text"},{label:"Database",name:"database",type:"text"},{label:"Schema",name:"schema",type:"text"},{label:"Response Timeout Milliseconds",name:"responseTimeoutMilliseconds",type:"text"},{label:"Private Key",name:"privateKey",type:"password"},{label:"Private Key Passphrase",name:"privateKeyPass",type:"password"}],trino:[{label:"Server",name:"server",type:"text"},{label:"Port",name:"port",type:"number"},{label:"Catalog",name:"catalog",type:"text"},{label:"Schema",name:"schema",type:"text"},{label:"User",name:"user",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Peaka Key",name:"peakaKey",type:"password"}],mysql:[{label:"Host",name:"host",type:"text"},{label:"Port",name:"port",type:"number"},{label:"User",name:"user",type:"text"},{label:"Password",name:"password",type:"password"},{label:"Database",name:"database",type:"text"}],duckdb:[],motherduck:[{label:"Access Token",name:"accessToken",type:"text"},{label:"Database",name:"database",type:"text"}]},Lc={postgres:"postgresConnection",bigquery:"bigqueryConnection",snowflake:"snowflakeConnection",trino:"trinoConnection",mysql:"mysqlConnection",duckdb:"duckdbConnection",motherduck:"motherduckConnection"};function cU({onSubmit:e,isSubmitting:t}){const[n,r]=W.useState(!1),[o,a]=W.useState("postgres"),s=()=>{r(!0)},i=()=>{r(!1)},l=async u=>{u.preventDefault();const c=new FormData(u.currentTarget),d=c.get("name")?.toString(),m=c.get("type")?.toString(),f=Wl[m];if(!d)throw new Error("Name is required");if(!m)throw new Error("Type is required");const b={name:d,type:m,[{postgres:"postgresConnection",bigquery:"bigqueryConnection",snowflake:"snowflakeConnection",trino:"trinoConnection",mysql:"mysqlConnection",motherduck:"motherduckConnection"}[m]]:f.reduce((g,x)=>(g[x.name]=c.get(x.name)?.toString(),g),{})};await e(b),i()};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{variant:"outlined",onClick:s,children:"Add Connection"}),p.jsxs(kr,{open:n,onClose:i,children:[p.jsx(Ur,{children:"Create New Connection"}),p.jsxs(Sr,{children:[p.jsx(Ua,{children:"Add a new connection to query your data database using Malloy."}),p.jsxs("form",{onSubmit:l,id:"connection-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Connection Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{margin:"dense",id:"type",name:"type",label:"Connection Type",fullWidth:!0,variant:"standard",value:o,select:!0,onChange:u=>a(u.target.value),children:Object.values(it.ConnectionTypeEnum).map(u=>p.jsx(aa,{value:u,children:u},u))}),Wl[o].map(u=>p.jsx(Rt,{margin:"dense",id:u.name,name:u.name,label:u.label,type:u.type,fullWidth:!0,variant:"standard"},u.name))]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:t,onClick:i,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"connection-form",loading:t,children:"Create Connection"})]})]})]})}function dU({connection:e,onCloseDialog:t,isMutating:n,onDelete:r}){const[o,a]=W.useState(!1),[s,i]=W.useState(""),l=()=>{a(!0)},u=()=>{a(!1),t()};return p.jsxs(W.Fragment,{children:[p.jsx(yr,{onClick:c=>{c.stopPropagation(),l()},children:p.jsx(An.Delete,{})}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:o,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Connection"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:c=>({position:"absolute",right:8,top:8,color:c.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',e.name,'"? This action cannot be undone.']})}),p.jsx(Tr,{children:p.jsx(Dt,{loading:n,variant:"contained",autoFocus:!0,onClick:()=>r(),color:"error",children:"Delete"})}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function pU({connection:e,onSubmit:t,isSubmitting:n}){const[r,o]=W.useState(!1),[a,s]=W.useState(e.type),i=()=>{o(!0)},l=()=>{o(!1)},u=async c=>{c.preventDefault();const d=new FormData(c.currentTarget),m=d.get("name")?.toString(),f=d.get("type")?.toString(),h=Wl[f];if(!m)throw new Error("Name is required");if(!f)throw new Error("Type is required");const b={name:m,type:f,[Lc[f]]:h.reduce((g,x)=>(g[x.name]=d.get(x.name)?.toString()??e[Lc[f]][x.name],g),{})};await t(b),l()};return p.jsxs(W.Fragment,{children:[p.jsx(I.IconButton,{onClick:c=>{c.preventDefault(),c.stopPropagation(),i()},children:p.jsx(An.Edit,{})}),p.jsxs(kr,{open:r,onClose:l,children:[p.jsx(Ur,{onClick:c=>{c.stopPropagation()},children:"Edit Connection"}),p.jsxs(Sr,{onClick:c=>{c.stopPropagation()},children:[p.jsx(Ua,{children:"Edit a connection to query your data database using Malloy."}),p.jsxs("form",{onSubmit:u,id:"connection-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Connection Name",type:"text",fullWidth:!0,variant:"standard",value:e.name,defaultValue:e.name}),p.jsx(Rt,{margin:"dense",id:"type",name:"type",label:"Connection Type",fullWidth:!0,variant:"standard",value:a,select:!0,onChange:c=>s(c.target.value),children:Object.values(it.ConnectionTypeEnum).map(c=>p.jsx(aa,{value:c,children:c},c))}),Wl[a].map(c=>p.jsx(Rt,{margin:"dense",id:c.name,name:c.name,label:c.label,type:c.type,fullWidth:!0,variant:"standard",defaultValue:e?.[Lc[a]??""]?.[c.name??""]??""},c.name))]})]}),p.jsxs(Tr,{onClick:c=>{c.stopPropagation()},children:[p.jsx(Dt,{disabled:n,onClick:l,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"connection-form",loading:n,children:"Edit Connection"})]})]})]})}function p2({connectionName:e,resourceUri:t,schema:n}){const{apiClients:r}=it.useServer(),{projectName:o}=Ct(t),[a,s]=W.useState(void 0),[i,l]=W.useState(n||null),[u,c]=W.useState(!1),{data:d,isError:m,isLoading:f,error:h}=Jt({queryKey:["schemas",o,e],queryFn:()=>r.connections.listSchemas(o,e)}),b=d?.data||[];return p.jsxs(I.Grid,{container:!0,spacing:1,children:[!n&&p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsxs(I.Paper,{sx:{p:1,m:0},children:[p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",justifyContent:"space-between",mb:0},children:[p.jsx(I.Typography,{variant:"overline",fontWeight:"bold",children:"Table Paths"}),p.jsx(I.FormControlLabel,{control:p.jsx(I.Switch,{checked:u,onChange:g=>c(g.target.checked)}),label:"Hidden Schemas"})]}),p.jsx(I.Divider,{sx:{mt:"2px"}}),p.jsxs(I.Box,{sx:{mt:"2px",maxHeight:"600px",overflowY:"auto"},children:[f&&p.jsx(on,{text:"Loading schemas..."}),m&&p.jsx(Zt,{error:h,context:`${o} > ${e} > Schemas`}),!f&&!m&&b.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Schemas"}),!f&&!m&&b.length>0&&p.jsx(I.List,{dense:!0,disablePadding:!0,children:b.map(g=>{const x=g.name;if(g.isHidden&&!u)return null;const C=i===x;return p.jsx(I.ListItemButton,{selected:C,onClick:()=>{l(x),s(void 0)},children:p.jsx(I.ListItemText,{primary:x})},x)})})]})]})}),p.jsx(I.Grid,{size:{xs:12,md:n?6:4},children:i&&p.jsx(I.Paper,{sx:{p:1,m:0},children:p.jsx(mU,{connectionName:e,schemaName:i,onTableClick:g=>{s(g)},resourceUri:t})})}),p.jsx(I.Grid,{size:{xs:12,md:n?6:4},children:a&&p.jsx(I.Paper,{sx:{p:1,m:0},children:p.jsx(fU,{table:a})})})]})}function fU({table:e}){return p.jsxs(p.Fragment,{children:[p.jsxs(I.Typography,{variant:"overline",fontWeight:"bold",children:["Schema: ",e.resource]}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{mt:"10px",maxHeight:"600px",overflowY:"auto"},children:p.jsx(I.TableContainer,{children:p.jsxs(I.Table,{size:"small",sx:{"& .MuiTableCell-root":{padding:"10px"}},children:[p.jsx(I.TableHead,{children:p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:"NAME"}),p.jsx(I.TableCell,{children:"TYPE"})]})}),p.jsx(I.TableBody,{children:e.columns?.sort((t,n)=>t.name.localeCompare(n.name))?.map(t=>p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:t.name}),p.jsx(I.TableCell,{children:t.type})]},t.name))})]})})})]})}function mU({connectionName:e,schemaName:t,onTableClick:n,resourceUri:r}){const{projectName:o}=Ct(r),{apiClients:a}=it.useServer(),[s,i]=W.useState(""),{data:l,isSuccess:u,isError:c,error:d,isLoading:m}=Jt({queryKey:["tablesInSchema",o,e,t],queryFn:()=>a.connections.listTables(o,e,t)}),f=u&&l?.data?l.data.filter(h=>(h.resource.split(".").pop()?.toLowerCase()||"").includes(s.toLowerCase())).sort((h,b)=>{const g=h.resource.split(".").pop()||h.resource,x=b.resource.split(".").pop()||b.resource;return g.localeCompare(x)}):[];return p.jsxs(p.Fragment,{children:[p.jsxs(I.Typography,{variant:"overline",fontWeight:"bold",children:["Tables in ",t]}),p.jsx(I.Divider,{}),p.jsx(I.Box,{sx:{mt:1,mb:1},children:p.jsx(I.TextField,{size:"small",fullWidth:!0,placeholder:"Search tables...",value:s,onChange:h=>i(h.target.value),variant:"outlined"})}),p.jsx(I.Divider,{}),p.jsxs(I.Box,{sx:{mt:"2px",maxHeight:"600px",overflowY:"auto"},children:[m&&p.jsx(on,{text:"Fetching Tables..."}),c&&p.jsx(Zt,{error:d,context:`${o} > ${e} > ${t}`}),u&&f.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Tables"}),u&&l?.data&&l.data.length>0&&p.jsx(I.List,{dense:!0,disablePadding:!0,children:f.map(h=>{const b=h.resource.split(".").pop()||h.resource;return p.jsx(I.ListItemButton,{onClick:()=>n(h),children:p.jsx(I.ListItemText,{primary:b,secondary:`${h.columns.length} columns`})},h.resource)})})]})]})}function hU({connection:e,onClick:t,onEdit:n,onDelete:r,isMutating:o,mutable:a}){return p.jsxs(I.TableRow,{sx:{"&:hover":{backgroundColor:"action.hover"}},children:[p.jsx(I.TableCell,{sx:{cursor:"pointer",flexGrow:1},onClick:t,children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[p.jsx(I.Typography,{variant:"body2",children:e.name}),p.jsx(Ia,{sx:{fontSize:"1rem",color:"action.active",opacity:.7}})]})}),p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",children:e.type})}),a&&p.jsxs(I.TableCell,{sx:{minWidth:"120px"},children:[p.jsx(pU,{connection:e,onSubmit:n,isSubmitting:o}),p.jsx(dU,{connection:e,onCloseDialog:()=>{},isMutating:o,onDelete:()=>r(e)})]})]},e.name)}function gU({resourceUri:e}){const{apiClients:t,mutable:n}=it.useServer(),r=$r.useQueryClient(),{projectName:o}=Ct(e),[a,s]=W.useState(""),[i,l]=W.useState(null),u=pi({projectName:o,connectionName:i}),{data:c,isSuccess:d,isError:m,error:f}=Jt({queryKey:["connections",o],queryFn:()=>t.connections.listConnections(o)}),h=C=>{l(C)},b=()=>{l(null)},g=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:[...c.data,C]}),onSuccess(){s("Connection added successfully"),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}}),x=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:c.data.map(T=>T.name===C.name?C:T)}),onSuccess(C,T){s(`Connection ${T.name} updated successfully`),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}}),E=hr({mutationFn:C=>t.projects.updateProject(o,{name:o,connections:c.data.filter(T=>T.name!==C.name)}),onSuccess(C,T){s(`Connection ${T.name} deleted successfully`),r.invalidateQueries({queryKey:["connections",o]})},onError(C){s(C.message)}});return p.jsxs(p.Fragment,{children:[p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Database Connections"}),p.jsxs(I.Box,{sx:{mb:1,maxHeight:"200px",overflowY:"auto"},children:[!d&&!m&&p.jsx(I.Typography,{variant:"body2",sx:{m:"auto"},children:"Fetching Connections..."}),d&&c.data.length>0&&p.jsx(I.Table,{size:"small",sx:{borderCollapse:"collapse","& .MuiTableRow-root":{display:"flex",width:"100%"},"& .MuiTableCell-root":{borderBottom:"1px solid #e0e0e0",display:"flex",alignItems:"center"},"& .MuiTableRow-root:last-child .MuiTableCell-root":{borderBottom:"none"}},children:p.jsxs(I.TableBody,{children:[p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{sx:{flexGrow:1},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Connection Name"})}),p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Type"})}),n&&p.jsx(I.TableCell,{sx:{minWidth:"120px"},children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",sx:{mx:"auto"},children:"Actions"})})]}),c.data.map(C=>p.jsx(hU,{connection:C,onClick:()=>h(C.name),onEdit:T=>x.mutateAsync(T),onDelete:T=>{C.resource?s("Cannot delete this connection"):E.mutateAsync(T)},isMutating:x.isPending||E.isPending,mutable:n},C.name))]})}),d&&c.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No Connections"}),m&&p.jsx(Zt,{error:f,context:`${o} > Connections`})]}),n&&p.jsx(I.Box,{sx:{display:"flex",justifyContent:"flex-end"},children:p.jsx(cU,{onSubmit:C=>g.mutateAsync(C),isSubmitting:g.isPending})})]})}),p.jsx(I.Snackbar,{open:a!=="",autoHideDuration:6e3,onClose:()=>s(""),message:a}),p.jsxs(I.Dialog,{open:i!==null,onClose:b,maxWidth:"lg",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{children:["Connection Explorer: ",i,p.jsx(I.IconButton,{"aria-label":"close",onClick:b,sx:{position:"absolute",right:8,top:8},children:p.jsx(I.Box,{sx:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center"},children:"X"})})]}),p.jsx(I.DialogContent,{children:i&&p.jsx(p2,{resourceUri:u,connectionName:i})})]})]})}function bU({resourceUri:e}){const{apiClients:t}=it.useServer(),{projectName:n,packageName:r,versionId:o}=Ct(e),[a,s]=W.useState(!1),[i,l]=W.useState(null),u=g=>{l(g),s(!0)},c=()=>{s(!1),l(null)},{data:d,isError:m,error:f,isSuccess:h}=Jt({queryKey:["databases",n,r,o],queryFn:()=>t.databases.listDatabases(n,r,o)}),b=g=>g>=1024*1024*1024*1024?`${(g/(1024*1024*1024)).toFixed(2)} T`:g>=1024*1024*1024?`${(g/(1024*1024*1024)).toFixed(2)} G`:g>=1024*1024?`${(g/(1024*1024)).toFixed(2)} M`:`${(g/1024).toFixed(2)} K`;return p.jsxs(p.Fragment,{children:[p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Embedded Databases"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!h&&!m&&p.jsx(on,{text:"Fetching Databases..."}),m&&p.jsx(Zt,{error:f,context:`${n} > ${r} > Databases`}),h&&d.data.length>0&&p.jsx(I.Table,{size:"small",sx:{borderCollapse:"collapse","& .MuiTableCell-root":{borderBottom:"1px solid #e0e0e0"},"& .MuiTableRow-root:last-child .MuiTableCell-root":{borderBottom:"none"}},children:p.jsxs(I.TableBody,{children:[p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Name"})}),p.jsx(I.TableCell,{align:"right",children:p.jsx(I.Typography,{variant:"body2",fontWeight:"500",color:"text.secondary",children:"Rows"})})]}),d.data.map(g=>p.jsxs(I.TableRow,{onClick:()=>u(g),sx:{cursor:"pointer","&:hover":{backgroundColor:"action.hover"}},children:[p.jsx(I.TableCell,{component:"th",scope:"row",children:p.jsxs(I.Box,{sx:{display:"flex",alignItems:"center",gap:1},children:[p.jsx(I.Typography,{variant:"body2",children:g.path}),p.jsx(Ia,{sx:{fontSize:"1rem",color:"action.active",opacity:.7}})]})}),p.jsx(I.TableCell,{align:"right",children:p.jsx(I.Typography,{variant:"body2",children:b(g.info.rowCount)})})]},g.path))]})}),h&&d.data.length===0&&p.jsx(I.Typography,{variant:"body2",sx:{m:"auto"},children:"No databases found"})]})]})}),p.jsxs(I.Dialog,{open:a,onClose:c,maxWidth:"sm",fullWidth:!0,children:[p.jsxs(I.DialogTitle,{children:[i?.path,p.jsx(I.IconButton,{"aria-label":"close",onClick:c,sx:{position:"absolute",right:8,top:8},children:p.jsx(I.Box,{sx:{width:24,height:24,display:"flex",alignItems:"center",justifyContent:"center"},children:"X"})})]}),p.jsx(I.DialogContent,{children:i?.info?.columns&&p.jsx(I.TableContainer,{children:p.jsxs(I.Table,{size:"small",children:[p.jsx(I.TableHead,{children:p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{children:"Column"}),p.jsx(I.TableCell,{children:"Type"})]})}),p.jsx(I.TableBody,{children:i.info.columns.map(g=>p.jsxs(I.TableRow,{children:[p.jsx(I.TableCell,{component:"th",scope:"row",children:g.name}),p.jsx(I.TableCell,{children:g.type})]},g.name))})]})})})]})]})}function yU(e){return Fe("MuiCollapse",e)}Re("MuiCollapse",["root","horizontal","vertical","entered","hidden","wrapper","wrapperInner"]);const xU=e=>{const{orientation:t,classes:n}=e,r={root:["root",`${t}`],entered:["entered"],hidden:["hidden"],wrapper:["wrapper",`${t}`],wrapperInner:["wrapperInner",`${t}`]};return Le(r,yU,n)},CU=ae("div",{name:"MuiCollapse",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,t[n.orientation],n.state==="entered"&&t.entered,n.state==="exited"&&!n.in&&n.collapsedSize==="0px"&&t.hidden]}})(Je(({theme:e})=>({height:0,overflow:"hidden",transition:e.transitions.create("height"),variants:[{props:{orientation:"horizontal"},style:{height:"auto",width:0,transition:e.transitions.create("width")}},{props:{state:"entered"},style:{height:"auto",overflow:"visible"}},{props:{state:"entered",orientation:"horizontal"},style:{width:"auto"}},{props:({ownerState:t})=>t.state==="exited"&&!t.in&&t.collapsedSize==="0px",style:{visibility:"hidden"}}]}))),EU=ae("div",{name:"MuiCollapse",slot:"Wrapper"})({display:"flex",width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),vU=ae("div",{name:"MuiCollapse",slot:"WrapperInner"})({width:"100%",variants:[{props:{orientation:"horizontal"},style:{width:"auto",height:"100%"}}]}),Qs=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiCollapse"}),{addEndListener:o,children:a,className:s,collapsedSize:i="0px",component:l,easing:u,in:c,onEnter:d,onEntered:m,onEntering:f,onExit:h,onExited:b,onExiting:g,orientation:x="vertical",style:E,timeout:C=x0.standard,TransitionComponent:T=Kn,...w}=r,S={...r,orientation:x,collapsedSize:i},O=xU(S),F=no(),B=Eu(),P=k.useRef(null),N=k.useRef(),v=typeof i=="number"?`${i}px`:i,M=x==="horizontal",A=M?"width":"height",D=k.useRef(null),R=nt(n,D),z=q=>te=>{if(q){const Z=D.current;te===void 0?q(Z):q(Z,te)}},U=()=>P.current?P.current[M?"clientWidth":"clientHeight"]:0,j=z((q,te)=>{P.current&&M&&(P.current.style.position="absolute"),q.style[A]=v,d&&d(q,te)}),_=z((q,te)=>{const Z=U();P.current&&M&&(P.current.style.position="");const{duration:re,easing:Q}=_a({style:E,timeout:C,easing:u},{mode:"enter"});if(C==="auto"){const G=F.transitions.getAutoHeightDuration(Z);q.style.transitionDuration=`${G}ms`,N.current=G}else q.style.transitionDuration=typeof re=="string"?re:`${re}ms`;q.style[A]=`${Z}px`,q.style.transitionTimingFunction=Q,f&&f(q,te)}),K=z((q,te)=>{q.style[A]="auto",m&&m(q,te)}),ne=z(q=>{q.style[A]=`${U()}px`,h&&h(q)}),L=z(b),fe=z(q=>{const te=U(),{duration:Z,easing:re}=_a({style:E,timeout:C,easing:u},{mode:"exit"});if(C==="auto"){const Q=F.transitions.getAutoHeightDuration(te);q.style.transitionDuration=`${Q}ms`,N.current=Q}else q.style.transitionDuration=typeof Z=="string"?Z:`${Z}ms`;q.style[A]=v,q.style.transitionTimingFunction=re,g&&g(q)}),X=q=>{C==="auto"&&B.start(N.current||0,q),o&&o(D.current,q)};return p.jsx(T,{in:c,onEnter:j,onEntered:K,onEntering:_,onExit:ne,onExited:L,onExiting:fe,addEndListener:X,nodeRef:D,timeout:C==="auto"?null:C,...w,children:(q,{ownerState:te,...Z})=>p.jsx(CU,{as:l,className:De(O.root,s,{entered:O.entered,exited:!c&&v==="0px"&&O.hidden}[q]),style:{[M?"minWidth":"minHeight"]:v,...E},ref:R,ownerState:{...S,state:q},...Z,children:p.jsx(EU,{ownerState:{...S,state:q},className:O.wrapper,ref:P,children:p.jsx(vU,{ownerState:{...S,state:q},className:O.wrapperInner,children:a})})})})});Qs&&(Qs.muiSupportAuto=!0);function TU(e){return Fe("PrivateSwitchBase",e)}Re("PrivateSwitchBase",["root","checked","disabled","input","edgeStart","edgeEnd"]);const SU=e=>{const{classes:t,checked:n,disabled:r,edge:o}=e,a={root:["root",n&&"checked",r&&"disabled",o&&`edge${ke(o)}`],input:["input"]};return Le(a,TU,t)},kU=ae(No,{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}}]}),wU=ae("input",{name:"MuiSwitchBase",shouldForwardProp:fn})({cursor:"inherit",position:"absolute",opacity:0,width:"100%",height:"100%",top:0,left:0,margin:0,padding:0,zIndex:1}),_U=k.forwardRef(function(t,n){const{autoFocus:r,checked:o,checkedIcon:a,defaultChecked:s,disabled:i,disableFocusRipple:l=!1,edge:u=!1,icon:c,id:d,inputProps:m,inputRef:f,name:h,onBlur:b,onChange:g,onFocus:x,readOnly:E,required:C=!1,tabIndex:T,type:w,value:S,slots:O={},slotProps:F={},...B}=t,[P,N]=_n({controlled:o,default:!!s,name:"SwitchBase",state:"checked"}),v=Qn(),M=X=>{x&&x(X),v&&v.onFocus&&v.onFocus(X)},A=X=>{b&&b(X),v&&v.onBlur&&v.onBlur(X)},D=X=>{if(X.nativeEvent.defaultPrevented)return;const q=X.target.checked;N(q),g&&g(X,q)};let R=i;v&&typeof R>"u"&&(R=v.disabled);const z=w==="checkbox"||w==="radio",U={...t,checked:P,disabled:R,disableFocusRipple:l,edge:u},j=SU(U),_={slots:O,slotProps:{input:m,...F}},[K,ne]=ct("root",{ref:n,elementType:kU,className:j.root,shouldForwardComponentProp:!0,externalForwardedProps:{..._,component:"span",...B},getSlotProps:X=>({...X,onFocus:q=>{X.onFocus?.(q),M(q)},onBlur:q=>{X.onBlur?.(q),A(q)}}),ownerState:U,additionalProps:{centerRipple:!0,focusRipple:!l,disabled:R,role:void 0,tabIndex:null}}),[L,fe]=ct("input",{ref:f,elementType:wU,className:j.input,externalForwardedProps:_,getSlotProps:X=>({...X,onChange:q=>{X.onChange?.(q),D(q)}}),ownerState:U,additionalProps:{autoFocus:r,checked:o,defaultChecked:s,disabled:R,id:z?d:void 0,name:h,readOnly:E,required:C,tabIndex:T,type:w,...w==="checkbox"&&S===void 0?{}:{value:S}}});return p.jsxs(K,{...ne,children:[p.jsx(L,{...fe}),P?a:c]})}),IU=rt(p.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"})),AU=rt(p.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"})),DU=rt(p.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"}));function PU(e){return Fe("MuiCheckbox",e)}const Fc=Re("MuiCheckbox",["root","checked","disabled","indeterminate","colorPrimary","colorSecondary","sizeSmall","sizeMedium"]),RU=e=>{const{classes:t,indeterminate:n,color:r,size:o}=e,a={root:["root",n&&"indeterminate",`color${ke(r)}`,`size${ke(o)}`]},s=Le(a,PU,t);return{...t,...s}},MU=ae(_U,{shouldForwardProp:e=>fn(e)||e==="classes",name:"MuiCheckbox",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${ke(n.size)}`],n.color!=="default"&&t[`color${ke(n.color)}`]]}})(Je(({theme:e})=>({color:(e.vars||e).palette.text.secondary,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(dn()).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(dn()).map(([t])=>({props:{color:t},style:{[`&.${Fc.checked}, &.${Fc.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Fc.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:"transparent"}}}}]}))),NU=p.jsx(AU,{}),OU=p.jsx(IU,{}),LU=p.jsx(DU,{}),f2=k.forwardRef(function(t,n){const r=Qe({props:t,name:"MuiCheckbox"}),{checkedIcon:o=NU,color:a="primary",icon:s=OU,indeterminate:i=!1,indeterminateIcon:l=LU,inputProps:u,size:c="medium",disableRipple:d=!1,className:m,slots:f={},slotProps:h={},...b}=r,g=i?l:s,x=i?l:o,E={...r,disableRipple:d,color:a,indeterminate:i,size:c},C=RU(E),T=h.input??u,[w,S]=ct("root",{ref:n,elementType:MU,className:De(C.root,m),shouldForwardComponentProp:!0,externalForwardedProps:{slots:f,slotProps:h,...b},ownerState:E,additionalProps:{type:"checkbox",icon:k.cloneElement(g,{fontSize:g.props.fontSize??c}),checkedIcon:k.cloneElement(x,{fontSize:x.props.fontSize??c}),disableRipple:d,slots:f,slotProps:{input:_0(typeof T=="function"?T(E):T,{"data-indeterminate":i})}}});return p.jsx(w,{...S,classes:C})});function m2(e){return St}const h2=k.createContext(null);function FU(e){const{value:t,children:n}=e;return p.jsx(h2.Provider,{value:t,children:t.wrapRoot({children:n,instance:t.instance})})}const zo=()=>{const e=k.useContext(h2);if(e==null)throw new Error(["MUI X: Could not find the Tree View context.","It looks like you rendered your component outside of a SimpleTreeView or RichTreeView parent component.","This can also happen if you are bundling multiple versions of the Tree View."].join(`
229
229
  `));return e},$U=({props:e})=>{const{instance:t}=zo(),{label:n,itemId:r}=e,[o,a]=k.useState(n),s=t.isItemBeingEdited(r);return k.useEffect(()=>{s||a(n)},[s,n]),{propsEnhancers:{labelInput:({externalEventHandlers:i,interactions:l})=>t.isItemEditable(r)?{value:o??"","data-element":"labelInput",onChange:f=>{i.onChange?.(f),a(f.target.value)},onKeyDown:f=>{if(i.onKeyDown?.(f),f.defaultMuiPrevented)return;const h=f.target;f.key==="Enter"&&h.value?l.handleSaveItemLabel(f,h.value):f.key==="Escape"&&l.handleCancelItemLabelEditing(f)},onBlur:f=>{i.onBlur?.(f),!f.defaultMuiPrevented&&f.target.value&&l.handleSaveItemLabel(f,f.target.value)},autoFocus:!0,type:"text"}:{}}}},Un=({instance:e,state:t,setState:n,params:r})=>{const o=k.useRef(t.editedItemId),a=d=>o.current===d,s=d=>{n(m=>H({},m,{editedItemId:d})),o.current=d},i=d=>d===t.editedItemId,l=!!r.isItemEditable,u=d=>{if(d==null||!l)return!1;const m=e.getItem(d);return m?typeof r.isItemEditable=="function"?r.isItemEditable(m):!!r.isItemEditable:!1},c=(d,m)=>{if(!m)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","The label of an item cannot be empty.",d].join(`
230
230
  `));n(f=>{const h=f.items.itemMetaMap[d];return h.label!==m?H({},f,{items:H({},f.items,{itemMetaMap:H({},f.items.itemMetaMap,{[d]:H({},h,{label:m})})})}):f}),r.onItemLabelChange&&r.onItemLabelChange(d,m)};return{instance:{setEditedItemId:s,isItemBeingEdited:i,updateItemLabel:c,isItemEditable:u,isTreeViewEditable:l,isItemBeingEditedRef:a},publicAPI:{updateItemLabel:c}}};Un.itemPlugin=$U;Un.getDefaultizedParams=({params:e,experimentalFeatures:t})=>{const n=t?.labelEditing;return H({},e,{isItemEditable:n?e.isItemEditable??!1:!1})};Un.getInitialState=()=>({editedItemId:null});Un.params={onItemLabelChange:!0,isItemEditable:!0};const Ao=(e,t)=>e.getAvailablePlugins().has(t),g2=e=>Array.isArray(e)?e.length>0&&e.some(g2):!!e,BU=({itemId:e,children:t})=>{const{instance:n,selection:{multiSelect:r},publicAPI:o}=zo(),a={expandable:g2(t),expanded:n.isItemExpanded(e),focused:n.isItemFocused(e),selected:n.isItemSelected(e),disabled:n.isItemDisabled(e),editing:n?.isItemBeingEdited?n?.isItemBeingEdited(e):!1,editable:n.isItemEditable?n.isItemEditable(e):!1},s=f=>{if(a.disabled)return;a.focused||n.focusItem(f,e);const h=r&&(f.shiftKey||f.ctrlKey||f.metaKey);a.expandable&&!(h&&n.isItemExpanded(e))&&n.toggleItemExpansion(f,e)},i=f=>{if(a.disabled)return;!a.focused&&!a.editing&&n.focusItem(f,e),r&&(f.shiftKey||f.ctrlKey||f.metaKey)?f.shiftKey?n.expandSelectionRange(f,e):n.selectItem({event:f,itemId:e,keepExistingSelection:!0}):n.selectItem({event:f,itemId:e,shouldBeSelected:!0})},l=f=>{const h=f.nativeEvent.shiftKey;r&&h?n.expandSelectionRange(f,e):n.selectItem({event:f,itemId:e,keepExistingSelection:r,shouldBeSelected:f.target.checked})},u=()=>{Ao(n,Un)&&n.isItemEditable(e)&&(n.isItemBeingEdited(e)?n.setEditedItemId(null):n.setEditedItemId(e))};return{interactions:{handleExpansion:s,handleSelection:i,handleCheckboxSelection:l,toggleItemEditing:u,handleSaveItemLabel:(f,h)=>{Ao(n,Un)&&n.isItemBeingEditedRef(e)&&(n.updateItemLabel(e,h),u(),n.focusItem(f,e))},handleCancelItemLabelEditing:f=>{Ao(n,Un)&&n.isItemBeingEditedRef(e)&&(u(),n.focusItem(f,e))}},status:a,publicAPI:o}},df=k.createContext(()=>-1),b2=(e,t)=>{let n=t.length-1;for(;n>=0&&!e.isItemNavigable(t[n]);)n-=1;if(n!==-1)return t[n]},y2=(e,t)=>{const n=e.getItemMeta(t),r=e.getItemOrderedChildrenIds(n.parentId),o=e.getItemIndex(t);if(o===0)return n.parentId;let a=o-1;for(;!e.isItemNavigable(r[a])&&a>=0;)a-=1;if(a===-1)return n.parentId==null?null:y2(e,n.parentId);let s=r[a],i=b2(e,e.getItemOrderedChildrenIds(s));for(;e.isItemExpanded(s)&&i!=null;)s=i,i=e.getItemOrderedChildrenIds(s).find(e.isItemNavigable);return s},ul=(e,t)=>{if(e.isItemExpanded(t)){const r=e.getItemOrderedChildrenIds(t).find(e.isItemNavigable);if(r!=null)return r}let n=e.getItemMeta(t);for(;n!=null;){const r=e.getItemOrderedChildrenIds(n.parentId),o=e.getItemIndex(n.id);if(o<r.length-1){let a=o+1;for(;!e.isItemNavigable(r[a])&&a<r.length-1;)a+=1;if(e.isItemNavigable(r[a]))return r[a]}n=e.getItemMeta(n.parentId)}return null},x2=e=>{let t=null;for(;t==null||e.isItemExpanded(t);){const n=e.getItemOrderedChildrenIds(t),r=b2(e,n);if(r==null)return t;t=r}return t},Xs=e=>e.getItemOrderedChildrenIds(null).find(e.isItemNavigable),C2=(e,t,n)=>{if(t===n)return[t,n];const r=e.getItemMeta(t),o=e.getItemMeta(n);if(r.parentId===o.id||o.parentId===r.id)return o.parentId===r.id?[r.id,o.id]:[o.id,r.id];const a=[r.id],s=[o.id];let i=r.parentId,l=o.parentId,u=s.indexOf(i)!==-1,c=a.indexOf(l)!==-1,d=!0,m=!0;for(;!c&&!u;)d&&(a.push(i),u=s.indexOf(i)!==-1,d=i!==null,!u&&d&&(i=e.getItemMeta(i).parentId)),m&&!u&&(s.push(l),c=a.indexOf(l)!==-1,m=l!==null,!c&&m&&(l=e.getItemMeta(l).parentId));const f=u?i:l,h=e.getItemOrderedChildrenIds(f),b=a[a.indexOf(f)-1],g=s[s.indexOf(f)-1];return h.indexOf(b)<h.indexOf(g)?[t,n]:[n,t]},jU=(e,t,n)=>{const r=l=>{if(e.isItemExpandable(l)&&e.isItemExpanded(l))return e.getItemOrderedChildrenIds(l)[0];let u=e.getItemMeta(l);for(;u!=null;){const c=e.getItemOrderedChildrenIds(u.parentId),d=e.getItemIndex(u.id);if(d<c.length-1)return c[d+1];u=e.getItemMeta(u.parentId)}throw new Error("Invalid range")},[o,a]=C2(e,t,n),s=[o];let i=o;for(;i!==a;)i=r(i),e.isItemDisabled(i)||s.push(i);return s},HU=e=>{let t=Xs(e);const n=[];for(;t!=null;)n.push(t),t=ul(e,t);return n},Zs=(e,t)=>t!==e.closest('*[role="treeitem"]');let o0=0;const UU=()=>(o0+=1,`mui-tree-view-${o0}`),pf=({id:e,treeId:t="",itemId:n})=>e??`${t}-${n}`,zU=e=>{const{runItemPlugins:t,items:{onItemClick:n,disabledItemsFocusable:r,indentationAtItemLevel:o},selection:{disableSelection:a,checkboxSelection:s},expansion:{expansionTrigger:i},treeId:l,instance:u,publicAPI:c}=zo(),d=k.useContext(df),{id:m,itemId:f,label:h,children:b,rootRef:g}=e,{rootRef:x,contentRef:E,propsEnhancers:C}=t(e),{interactions:T,status:w}=BU({itemId:f,children:b}),S=k.useRef(null),O=k.useRef(null),F=nt(g,x,S),B=nt(E,O),P=k.useRef(null),N=pf({itemId:f,treeId:l,id:m}),v=u.canItemBeTabbed(f)?0:-1,M={rootRefObject:S,contentRefObject:O,interactions:T},A=Q=>G=>{if(Q.onFocus?.(G),G.defaultMuiPrevented)return;const se=!w.disabled||r;!w.focused&&se&&G.currentTarget===G.target&&u.focusItem(G,f)},D=Q=>G=>{if(Q.onBlur?.(G),G.defaultMuiPrevented)return;const se=u.getItemDOMElement(f);w.editing||G.relatedTarget&&Zs(G.relatedTarget,se)&&(G.target&&G.target?.dataset?.element==="labelInput"&&Zs(G.target,se)||G.relatedTarget?.dataset?.element==="labelInput")||u.removeFocusedItem()},R=Q=>G=>{Q.onKeyDown?.(G),!(G.defaultMuiPrevented||G.target?.dataset?.element==="labelInput")&&u.handleItemKeyDown(G,f)},z=Q=>G=>{Q.onDoubleClick?.(G),!G.defaultMuiPrevented&&T.toggleItemEditing()},U=Q=>G=>{Q.onClick?.(G),n?.(G,f),!(G.defaultMuiPrevented||P.current?.contains(G.target))&&(i==="content"&&T.handleExpansion(G),s||T.handleSelection(G))},j=Q=>G=>{Q.onMouseDown?.(G),!G.defaultMuiPrevented&&(G.shiftKey||G.ctrlKey||G.metaKey||w.disabled)&&G.preventDefault()},_=Q=>G=>{Q.onChange?.(G),!G.defaultMuiPrevented&&(a||w.disabled||T.handleCheckboxSelection(G))},K=Q=>G=>{Q.onClick?.(G),!G.defaultMuiPrevented&&i==="iconContainer"&&T.handleExpansion(G)};return{getRootProps:(Q={})=>{const G=H({},ln(e),ln(Q));let se;w.selected?se=!0:a||w.disabled?se=void 0:se=!1;const J=H({},G,{ref:F,role:"treeitem",tabIndex:v,id:N,"aria-expanded":w.expandable?w.expanded:void 0,"aria-selected":se,"aria-disabled":w.disabled||void 0},Q,{onFocus:A(G),onBlur:D(G),onKeyDown:R(G)});o&&(J.style={"--TreeView-itemDepth":typeof d=="function"?d(f):d});const ee=C.root?.(H({},M,{externalEventHandlers:G}))??{};return H({},J,ee)},getContentProps:(Q={})=>{const G=ln(Q),se=H({},G,Q,{ref:B,onClick:U(G),onMouseDown:j(G),status:w});o&&(se.indentationAtItemLevel=!0);const J=C.content?.(H({},M,{externalEventHandlers:G}))??{};return H({},se,J)},getGroupTransitionProps:(Q={})=>{const G=ln(Q),se=H({},G,{unmountOnExit:!0,component:"ul",role:"group",in:w.expanded,children:b},Q);return o&&(se.indentationAtItemLevel=!0),se},getIconContainerProps:(Q={})=>{const G=ln(Q);return H({},G,Q,{onClick:K(G)})},getCheckboxProps:(Q={})=>{const G=ln(Q);return H({},G,{visible:s,ref:P,checked:w.selected,disabled:a||w.disabled,tabIndex:-1},Q,{onChange:_(G)})},getLabelProps:(Q={})=>{const G=H({},ln(Q)),se=H({},G,{children:h},Q,{onDoubleClick:z(G)});return u.isTreeViewEditable&&(se.editable=w.editable),se},getLabelInputProps:(Q={})=>{const G=ln(Q),se=C.labelInput?.({rootRefObject:S,contentRefObject:O,externalEventHandlers:G,interactions:T})??{};return H({},Q,se)},getDragAndDropOverlayProps:(Q={})=>{const G=ln(Q),se=C.dragAndDropOverlay?.(H({},M,{externalEventHandlers:G}))??{};return H({},Q,se)},rootRef:F,status:w,publicAPI:c}},VU=zU;function E2(e){const{instance:t,items:{onItemClick:n},selection:{multiSelect:r,checkboxSelection:o,disableSelection:a},expansion:{expansionTrigger:s}}=zo(),i=t.isItemExpandable(e),l=t.isItemExpanded(e),u=t.isItemFocused(e),c=t.isItemSelected(e),d=t.isItemDisabled(e),m=t?.isItemBeingEdited?t?.isItemBeingEdited(e):!1,f=t.isItemEditable?t.isItemEditable(e):!1,h=w=>{if(!d){u||t.focusItem(w,e);const S=r&&(w.shiftKey||w.ctrlKey||w.metaKey);i&&!(S&&t.isItemExpanded(e))&&t.toggleItemExpansion(w,e)}},b=w=>{d||(!u&&!m&&t.focusItem(w,e),r&&(w.shiftKey||w.ctrlKey||w.metaKey)?w.shiftKey?t.expandSelectionRange(w,e):t.selectItem({event:w,itemId:e,keepExistingSelection:!0}):t.selectItem({event:w,itemId:e,shouldBeSelected:!0}))},g=w=>{if(a||d)return;const S=w.nativeEvent.shiftKey;r&&S?t.expandSelectionRange(w,e):t.selectItem({event:w,itemId:e,keepExistingSelection:r,shouldBeSelected:w.target.checked})},x=w=>{(w.shiftKey||w.ctrlKey||w.metaKey||d)&&w.preventDefault()},E=()=>{Ao(t,Un)&&t.isItemEditable(e)&&(t.isItemBeingEdited(e)?t.setEditedItemId(null):t.setEditedItemId(e))};return{disabled:d,expanded:l,selected:c,focused:u,editable:f,editing:m,disableSelection:a,checkboxSelection:o,handleExpansion:h,handleSelection:b,handleCheckboxSelection:g,handleContentClick:n,preventSelection:x,expansionTrigger:s,toggleItemEditing:E,handleSaveItemLabel:(w,S)=>{Ao(t,Un)&&t.isItemBeingEditedRef(e)&&(t.updateItemLabel(e,S),E(),t.focusItem(w,e))},handleCancelItemLabelEditing:w=>{Ao(t,Un)&&t.isItemBeingEditedRef(e)&&(E(),t.focusItem(w,e))}}}const WU=ae("div",{name:"MuiTreeItem2DragAndDropOverlay",slot:"Root",overridesResolver:(e,t)=>t.root,shouldForwardProp:e=>ut.shouldForwardProp(e)&&e!=="action"})(({theme:e})=>({position:"absolute",left:0,display:"flex",top:0,bottom:0,right:0,pointerEvents:"none",variants:[{props:{action:"make-child"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderRadius:e.shape.borderRadius,backgroundColor:e.vars?`rgba(${e.vars.palette.primary.darkChannel} / ${e.vars.palette.action.focusOpacity})`:ut.alpha(e.palette.primary.dark,e.palette.action.focusOpacity)}},{props:{action:"reorder-above"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderTop:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"reorder-below"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * var(--TreeView-itemDepth))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}},{props:{action:"move-to-parent"},style:{marginLeft:"calc(var(--TreeView-indentMultiplier) * calc(var(--TreeView-itemDepth) - 1))",borderBottom:`1px solid ${(e.vars||e).palette.action.active}`}}]}));function qU(e){return e.action==null?null:p.jsx(WU,H({},e))}const YU=ae("input",{name:"MuiTreeItem2",slot:"LabelInput",overridesResolver:(e,t)=>t.labelInput})(({theme:e})=>H({},e.typography.body1,{width:"100%",backgroundColor:e.palette.background.paper,borderRadius:e.shape.borderRadius,border:"none",padding:"0 2px",boxSizing:"border-box","&:focus":{outline:`1px solid ${e.palette.primary.main}`}})),GU=["classes","className","displayIcon","expansionIcon","icon","label","itemId","onClick","onMouseDown","dragAndDropOverlayProps","labelInputProps"],v2=k.forwardRef(function(t,n){const{classes:r,className:o,displayIcon:a,expansionIcon:s,icon:i,label:l,itemId:u,onClick:c,onMouseDown:d,dragAndDropOverlayProps:m,labelInputProps:f}=t,h=je(t,GU),{disabled:b,expanded:g,selected:x,focused:E,editing:C,editable:T,disableSelection:w,checkboxSelection:S,handleExpansion:O,handleSelection:F,handleCheckboxSelection:B,handleContentClick:P,preventSelection:N,expansionTrigger:v,toggleItemEditing:M}=E2(u),A=i||s||a,D=k.useRef(null),R=j=>{N(j),d&&d(j)},z=j=>{P?.(j,u),!D.current?.contains(j.target)&&(v==="content"&&O(j),S||F(j),c&&c(j))},U=j=>{j.defaultMuiPrevented||M()};return p.jsxs("div",H({},h,{className:De(r.root,o,g&&r.expanded,x&&r.selected,E&&r.focused,b&&r.disabled,C&&r.editing,T&&r.editable),onClick:z,onMouseDown:R,ref:n,children:[p.jsx("div",{className:r.iconContainer,children:A}),S&&p.jsx(f2,{className:r.checkbox,checked:x,onChange:B,disabled:b||w,ref:D,tabIndex:-1}),C?p.jsx(YU,H({},f,{className:r.labelInput})):p.jsx("div",H({className:r.label},T&&{onDoubleClick:U},{children:l})),m&&p.jsx(qU,H({},m))]}))});function KU(e){return Fe("MuiTreeItem",e)}const Pr=Re("MuiTreeItem",["root","groupTransition","content","expanded","selected","focused","disabled","iconContainer","label","checkbox","labelInput","editable","editing","dragAndDropOverlay"]),T2=rt(p.jsx("path",{d:"M10 6 8.59 7.41 13.17 12l-4.58 4.59L10 18l6-6z"})),S2=rt(p.jsx("path",{d:"M16.59 8.59 12 13.17 7.41 8.59 6 10l6 6 6-6z"}));function ff(e){const{children:t,itemId:n}=e,{wrapItem:r,instance:o}=zo();return r({children:t,itemId:n,instance:o})}ff.propTypes={children:ce.node,itemId:ce.string.isRequired};const QU=["children","className","slots","slotProps","ContentComponent","ContentProps","itemId","id","label","onClick","onMouseDown","onFocus","onBlur","onKeyDown"],XU=["ownerState"],ZU=["ownerState"],JU=["ownerState"],ez=m2(),tz=e=>{const{classes:t}=e;return Le({root:["root"],content:["content"],expanded:["expanded"],selected:["selected"],focused:["focused"],disabled:["disabled"],iconContainer:["iconContainer"],checkbox:["checkbox"],label:["label"],labelInput:["labelInput"],editing:["editing"],editable:["editable"],groupTransition:["groupTransition"]},KU,t)},nz=ae("li",{name:"MuiTreeItem",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),rz=ae(v2,{name:"MuiTreeItem",slot:"Content",overridesResolver:(e,t)=>[t.content,t.iconContainer&&{[`& .${Pr.iconContainer}`]:t.iconContainer},t.label&&{[`& .${Pr.label}`]:t.label}],shouldForwardProp:e=>Jr(e)&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},[`&.${Pr.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"},[`&.${Pr.focused}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`&.${Pr.selected}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}},[`&.${Pr.focused}`]:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}},[`& .${Pr.iconContainer}`]:{width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}},[`& .${Pr.label}`]:H({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative"},e.typography.body1),[`& .${Pr.checkbox}`]:{padding:0},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}}]})),oz=ae(Qs,{name:"MuiTreeItem",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>Jr(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]}),az=k.forwardRef(function(t,n){const{icons:r,runItemPlugins:o,items:{disabledItemsFocusable:a,indentationAtItemLevel:s},selection:{disableSelection:i},expansion:{expansionTrigger:l},treeId:u,instance:c}=zo(),d=k.useContext(df),m=ez({props:t,name:"MuiTreeItem"}),{children:f,className:h,slots:b,slotProps:g,ContentComponent:x=v2,ContentProps:E,itemId:C,id:T,label:w,onClick:S,onMouseDown:O,onBlur:F,onKeyDown:B}=m,P=je(m,QU),{expanded:N,focused:v,selected:M,disabled:A,editing:D,handleExpansion:R,handleCancelItemLabelEditing:z,handleSaveItemLabel:U}=E2(C),{contentRef:j,rootRef:_,propsEnhancers:K}=o(m),ne=k.useRef(null),L=k.useRef(null),fe=nt(n,_,ne),X=nt(E?.ref,j,L),q={expandIcon:b?.expandIcon??r.slots.expandIcon??T2,collapseIcon:b?.collapseIcon??r.slots.collapseIcon??S2,endIcon:b?.endIcon??r.slots.endIcon,icon:b?.icon,groupTransition:b?.groupTransition},te=ve=>Array.isArray(ve)?ve.length>0&&ve.some(te):!!ve,Z=te(f),re=H({},m,{expanded:N,focused:v,selected:M,disabled:A,indentationAtItemLevel:s}),Q=tz(re),G=q.groupTransition??void 0,se=tt({elementType:G,ownerState:{},externalSlotProps:g?.groupTransition,additionalProps:H({unmountOnExit:!0,in:N,component:"ul",role:"group"},s?{indentationAtItemLevel:!0}:{}),className:Q.groupTransition}),J=ve=>{l==="iconContainer"&&R(ve)},ee=N?q.collapseIcon:q.expandIcon,xe=tt({elementType:ee,ownerState:{},externalSlotProps:ve=>N?H({},jn(r.slotProps.collapseIcon,ve),jn(g?.collapseIcon,ve)):H({},jn(r.slotProps.expandIcon,ve),jn(g?.expandIcon,ve)),additionalProps:{onClick:J}}),de=je(xe,XU),be=Z&&ee?p.jsx(ee,H({},de)):null,le=Z?void 0:q.endIcon,Pe=tt({elementType:le,ownerState:{},externalSlotProps:ve=>Z?{}:H({},jn(r.slotProps.endIcon,ve),jn(g?.endIcon,ve))}),Te=je(Pe,ZU),ze=le?p.jsx(le,H({},Te)):null,we=q.icon,Et=tt({elementType:we,ownerState:{},externalSlotProps:g?.icon}),st=je(Et,JU),qe=we?p.jsx(we,H({},st)):null;let ue;M?ue=!0:i||A?ue=void 0:ue=!1;function Ee(ve){!v&&(!A||a)&&ve.currentTarget===ve.target&&c.focusItem(ve,C)}function Me(ve){F?.(ve),!(D||ve.relatedTarget&&Zs(ve.relatedTarget,ne.current)&&(ve.target&&ve.target?.dataset?.element==="labelInput"&&Zs(ve.target,ne.current)||ve.relatedTarget?.dataset?.element==="labelInput"))&&c.removeFocusedItem()}const He=ve=>{B?.(ve),ve.target?.dataset?.element!=="labelInput"&&c.handleItemKeyDown(ve,C)},Be=pf({itemId:C,treeId:u,id:T}),Ne=c.canItemBeTabbed(C)?0:-1,Ze={rootRefObject:ne,contentRefObject:L,interactions:{handleSaveItemLabel:U,handleCancelItemLabelEditing:z}},ht=K.root?.(H({},Ze,{externalEventHandlers:ln(P)}))??{},pt=K.content?.(H({},Ze,{externalEventHandlers:ln(E)}))??{},ie=K.dragAndDropOverlay?.(H({},Ze,{externalEventHandlers:{}}))??{},ye=K.labelInput?.(H({},Ze,{externalEventHandlers:{}}))??{};return p.jsx(ff,{itemId:C,children:p.jsxs(nz,H({className:De(Q.root,h),role:"treeitem","aria-expanded":Z?N:void 0,"aria-selected":ue,"aria-disabled":A||void 0,id:Be,tabIndex:Ne},P,{ownerState:re,onFocus:Ee,onBlur:Me,onKeyDown:He,ref:fe,style:s?H({},P.style,{"--TreeView-itemDepth":typeof d=="function"?d(C):d}):P.style},ht,{children:[p.jsx(rz,H({as:x,classes:{root:Q.content,expanded:Q.expanded,selected:Q.selected,focused:Q.focused,disabled:Q.disabled,editable:Q.editable,editing:Q.editing,iconContainer:Q.iconContainer,label:Q.label,labelInput:Q.labelInput,checkbox:Q.checkbox},label:w,itemId:C,onClick:S,onMouseDown:O,icon:qe,expansionIcon:be,displayIcon:ze,ownerState:re},E,pt,ie.action==null?{}:{dragAndDropOverlayProps:ie},ye.value==null?{}:{labelInputProps:ye},{ref:X})),f&&p.jsx(oz,H({as:G},se,{children:f}))]}))})});function sz(e){const{slots:t,slotProps:n,status:r}=e,o=zo(),a=H({},o.icons.slots,{expandIcon:o.icons.slots.expandIcon??T2,collapseIcon:o.icons.slots.collapseIcon??S2}),s=o.icons.slotProps;let i;t?.icon?i="icon":r.expandable?r.expanded?i="collapseIcon":i="expandIcon":i="endIcon";const l=t?.[i]??a[i],u=tt({elementType:l,externalSlotProps:c=>H({},jn(s[i],c),jn(n?.[i],c)),ownerState:{}});return l?p.jsx(l,H({},u)):null}const iz=["visible"],lz=ae("li",{name:"MuiTreeItem2",slot:"Root",overridesResolver:(e,t)=>t.root})({listStyle:"none",margin:0,padding:0,outline:0}),uz=ae("div",{name:"MuiTreeItem2",slot:"Content",overridesResolver:(e,t)=>t.content,shouldForwardProp:e=>Jr(e)&&e!=="status"&&e!=="indentationAtItemLevel"})(({theme:e})=>({padding:e.spacing(.5,1),borderRadius:e.shape.borderRadius,width:"100%",boxSizing:"border-box",position:"relative",display:"flex",alignItems:"center",gap:e.spacing(1),cursor:"pointer",WebkitTapHighlightColor:"transparent","&:hover":{backgroundColor:(e.vars||e).palette.action.hover,"@media (hover: none)":{backgroundColor:"transparent"}},variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:`calc(${e.spacing(1)} + var(--TreeView-itemChildrenIndentation) * var(--TreeView-itemDepth))`}},{props:({status:t})=>t.disabled,style:{opacity:(e.vars||e).palette.action.disabledOpacity,backgroundColor:"transparent"}},{props:({status:t})=>t.focused,style:{backgroundColor:(e.vars||e).palette.action.focus}},{props:({status:t})=>t.selected,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity),"&:hover":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.hoverOpacity}))`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.hoverOpacity),"@media (hover: none)":{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / ${e.vars.palette.action.selectedOpacity})`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity)}}}},{props:({status:t})=>t.selected&&t.focused,style:{backgroundColor:e.vars?`rgba(${e.vars.palette.primary.mainChannel} / calc(${e.vars.palette.action.selectedOpacity} + ${e.vars.palette.action.focusOpacity}))`:ut.alpha(e.palette.primary.main,e.palette.action.selectedOpacity+e.palette.action.focusOpacity)}}]})),cz=ae("div",{name:"MuiTreeItem2",slot:"Label",overridesResolver:(e,t)=>t.label,shouldForwardProp:e=>Jr(e)&&e!=="editable"})(({theme:e})=>H({width:"100%",boxSizing:"border-box",minWidth:0,position:"relative",overflow:"hidden"},e.typography.body1,{variants:[{props:({editable:t})=>t,style:{paddingLeft:"2px"}}]})),dz=ae("div",{name:"MuiTreeItem2",slot:"IconContainer",overridesResolver:(e,t)=>t.iconContainer})({width:16,display:"flex",flexShrink:0,justifyContent:"center","& svg":{fontSize:18}});ae(Qs,{name:"MuiTreeItem2",slot:"GroupTransition",overridesResolver:(e,t)=>t.groupTransition,shouldForwardProp:e=>Jr(e)&&e!=="indentationAtItemLevel"})({margin:0,padding:0,paddingLeft:"var(--TreeView-itemChildrenIndentation)",variants:[{props:{indentationAtItemLevel:!0},style:{paddingLeft:0}}]});ae(k.forwardRef((e,t)=>{const{visible:n}=e,r=je(e,iz);return n?p.jsx(f2,H({},r,{ref:t})):null}),{name:"MuiTreeItem2",slot:"Checkbox",overridesResolver:(e,t)=>t.checkbox})({padding:0});function pz(e){return Fe("MuiRichTreeView",e)}Re("MuiRichTreeView",["root"]);const fz=(e,t)=>{const n=k.useRef({}),[r,o]=k.useState(()=>{const s={};return e.forEach(i=>{i.models&&Object.entries(i.models).forEach(([l,u])=>{n.current[l]={isControlled:t[l]!==void 0,getDefaultValue:u.getDefaultValue},s[l]=u.getDefaultValue(t)})}),s});return Object.fromEntries(Object.entries(n.current).map(([s,i])=>{const l=t[s]??r[s];return[s,{value:l,setControlledValue:u=>{i.isControlled||o(c=>H({},c,{[s]:u}))}}]}))};class mz{constructor(){this.maxListeners=20,this.warnOnce=!1,this.events={}}on(t,n,r={}){let o=this.events[t];o||(o={highPriority:new Map,regular:new Map},this.events[t]=o),r.isFirst?o.highPriority.set(n,!0):o.regular.set(n,!0)}removeListener(t,n){this.events[t]&&(this.events[t].regular.delete(n),this.events[t].highPriority.delete(n))}removeAllListeners(){this.events={}}emit(t,...n){const r=this.events[t];if(!r)return;const o=Array.from(r.highPriority.keys()),a=Array.from(r.regular.keys());for(let s=o.length-1;s>=0;s-=1){const i=o[s];r.highPriority.has(i)&&i.apply(this,n)}for(let s=0;s<a.length;s+=1){const i=a[s];r.regular.has(i)&&i.apply(this,n)}}once(t,n){const r=this;this.on(t,function o(...a){r.removeListener(t,o),n.apply(r,a)})}}const hz=e=>e.isPropagationStopped!==void 0,k2=()=>{const[e]=k.useState(()=>new mz),t=k.useCallback((...r)=>{const[o,a,s={}]=r;s.defaultMuiPrevented=!1,!(hz(s)&&s.isPropagationStopped())&&e.emit(o,a,s)},[e]),n=k.useCallback((r,o)=>(e.on(r,o),()=>{e.removeListener(r,o)}),[e]);return{instance:{$$publishEvent:t,$$subscribeEvent:n}}};k2.params={};const w2=({plugins:e})=>{const t=new Set(e);return{instance:{getAvailablePlugins:()=>t}}};w2.params={};const mf=({params:e,state:t,setState:n})=>{k.useEffect(()=>{n(o=>o.id.treeId===e.id&&o.id.treeId!==void 0?o:H({},o,{id:H({},o.id,{treeId:e.id??UU()})}))},[n,e.id]);const r=e.id??t.id.treeId;return{getRootProps:()=>({id:r}),contextValue:{treeId:r}}};mf.params={id:!0};mf.getInitialState=({id:e})=>({id:{treeId:e??void 0}});const gz=[k2,w2,mf],bz=["slots","slotProps","apiRef","experimentalFeatures"],yz=e=>{let{props:{slots:t,slotProps:n,apiRef:r,experimentalFeatures:o},plugins:a}=e,s=je(e.props,bz);const i={};a.forEach(m=>{Object.assign(i,m.params)});const l={},u={};Object.keys(s).forEach(m=>{const f=s[m];i[m]?l[m]=f:u[m]=f});const c=o??{},d=a.reduce((m,f)=>f.getDefaultizedParams?f.getDefaultizedParams({params:m,experimentalFeatures:c}):m,l);return{apiRef:r,forwardedProps:u,pluginParams:d,slots:t??{},slotProps:n??{},experimentalFeatures:c}},xz=({plugins:e,instance:t,publicAPI:n,rootRef:r})=>({runItemPlugins:i=>{let l=null,u=null;const c=[],d={};e.forEach(h=>{if(!h.itemPlugin)return;const b=h.itemPlugin({props:i,rootRef:l,contentRef:u});b?.rootRef&&(l=b.rootRef),b?.contentRef&&(u=b.contentRef),b?.propsEnhancers&&(c.push(b.propsEnhancers),Object.keys(b.propsEnhancers).forEach(g=>{d[g]=!0}))});const m=h=>b=>{const g={};return c.forEach(x=>{const E=x[h];E!=null&&Object.assign(g,E(b))}),g},f=Object.fromEntries(Object.keys(d).map(h=>[h,m(h)]));return{contentRef:u,rootRef:l,propsEnhancers:f}},wrapItem:({itemId:i,children:l})=>{let u=l;for(let c=e.length-1;c>=0;c-=1){const d=e[c];d.wrapItem&&(u=d.wrapItem({itemId:i,children:u,instance:t}))}return u},wrapRoot:({children:i})=>{let l=i;for(let u=e.length-1;u>=0;u-=1){const c=e[u];c.wrapRoot&&(l=c.wrapRoot({children:l,instance:t}))}return l},instance:t,rootRef:r,publicAPI:n});function Cz(e){const t=k.useRef({});return e?(e.current==null&&(e.current={}),e.current):t.current}const Ez=({plugins:e,rootRef:t,props:n})=>{const r=[...gz,...e],{pluginParams:o,forwardedProps:a,apiRef:s,experimentalFeatures:i,slots:l,slotProps:u}=yz({plugins:r,props:n}),c=fz(r,o),m=k.useRef({}).current,f=Cz(s),h=k.useRef(null),b=nt(h,t),g=xz({plugins:r,instance:m,publicAPI:f,rootRef:h}),[x,E]=k.useState(()=>{const S={};return r.forEach(O=>{O.getInitialState&&Object.assign(S,O.getInitialState(o))}),S}),C=[],T=S=>{const O=S({instance:m,params:o,slots:l,slotProps:u,experimentalFeatures:i,state:x,setState:E,rootRef:h,models:c,plugins:r});O.getRootProps&&C.push(O.getRootProps),O.publicAPI&&Object.assign(f,O.publicAPI),O.instance&&Object.assign(m,O.instance),O.contextValue&&Object.assign(g,O.contextValue)};return r.forEach(T),{getRootProps:(S={})=>{const O=H({role:"tree"},a,S,{ref:b});return C.forEach(F=>{Object.assign(O,F(S))}),O},rootRef:b,contextValue:g,instance:m}},vz=(e,t,n)=>{e.$$publishEvent(t,n)},ia="__TREE_VIEW_ROOT_PARENT_ID__",Tz=e=>{const t={};return e.forEach((n,r)=>{t[n]=r}),t},Sz=["children"],_2=({items:e,isItemDisabled:t,getItemLabel:n,getItemId:r})=>{const o={},a={},s={[ia]:[]},i=(u,c,d)=>{const m=r?r(u):u.id;if(m==null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.","An item was provided without id in the `items` prop:",JSON.stringify(u)].join(`
231
231
  `));if(o[m]!=null)throw new Error(["MUI X: The Tree View component requires all items to have a unique `id` property.","Alternatively, you can use the `getItemId` prop to specify a custom id for each item.",`Two items were provided with the same id in the \`items\` prop: "${m}"`].join(`
232
232
  `));const f=n?n(u):u.label;if(f==null)throw new Error(["MUI X: The Tree View component requires all items to have a `label` property.","Alternatively, you can use the `getItemLabel` prop to specify a custom label for each item.","An item was provided without label in the `items` prop:",JSON.stringify(u)].join(`
233
- `));o[m]={id:m,label:f,parentId:d,idAttribute:void 0,expandable:!!u.children?.length,disabled:t?t(u):!1,depth:c},a[m]=u;const h=d??ia;s[h]||(s[h]=[]),s[h].push(m),u.children?.forEach(b=>i(b,c+1,m))};e.forEach(u=>i(u,0,null));const l={};return Object.keys(s).forEach(u=>{l[u]=Tz(s[u])}),{itemMetaMap:o,itemMap:a,itemOrderedChildrenIds:s,itemChildrenIndexes:l}},xi=({instance:e,params:t,state:n,setState:r,experimentalFeatures:o})=>{const a=k.useCallback(x=>n.items.itemMetaMap[x],[n.items.itemMetaMap]),s=k.useCallback(x=>n.items.itemMap[x],[n.items.itemMap]),i=k.useCallback(()=>{const x=E=>{const C=n.items.itemMap[E],T=je(C,Sz),w=n.items.itemOrderedChildrenIds[E];return w&&(T.children=w.map(x)),T};return n.items.itemOrderedChildrenIds[ia].map(x)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),l=k.useCallback(x=>{if(x==null)return!1;let E=e.getItemMeta(x);if(!E)return!1;if(E.disabled)return!0;for(;E.parentId!=null;)if(E=e.getItemMeta(E.parentId),E.disabled)return!0;return!1},[e]),u=k.useCallback(x=>{const E=e.getItemMeta(x).parentId??ia;return n.items.itemChildrenIndexes[E][x]},[e,n.items.itemChildrenIndexes]),c=k.useCallback(x=>n.items.itemOrderedChildrenIds[x??ia]??[],[n.items.itemOrderedChildrenIds]),d=x=>{const E=e.getItemMeta(x);return E==null?null:document.getElementById(pf({treeId:n.id.treeId,itemId:x,id:E.idAttribute}))},m=x=>t.disabledItemsFocusable?!0:!e.isItemDisabled(x),f=k.useRef(!1),h=k.useCallback(()=>{f.current=!0},[]),b=k.useCallback(()=>f.current,[]);return k.useEffect(()=>{e.areItemUpdatesPrevented()||r(x=>{const E=_2({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(x.items.itemMetaMap).forEach(C=>{E.itemMetaMap[C.id]||vz(e,"removeItem",{id:C.id})}),H({},x,{items:E})})},[e,r,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:s,getItemDOMElement:d,getItemTree:i,getItemOrderedChildrenIds:c},instance:{getItemMeta:a,getItem:s,getItemTree:i,getItemsToRender:()=>{const x=E=>{const C=n.items.itemMetaMap[E];return{label:C.label,itemId:C.id,id:C.idAttribute,children:n.items.itemOrderedChildrenIds[E]?.map(x)}};return n.items.itemOrderedChildrenIds[ia].map(x)},getItemIndex:u,getItemDOMElement:d,getItemOrderedChildrenIds:c,isItemDisabled:l,isItemNavigable:m,preventItemUpdates:h,areItemUpdatesPrevented:b},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:o.indentationAtItemLevel??!1}}}};xi.getInitialState=e=>({items:_2({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});xi.getDefaultizedParams=({params:e})=>H({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});xi.wrapRoot=({children:e,instance:t})=>p.jsx(df.Provider,{value:n=>t.getItemMeta(n)?.depth??0,children:e});xi.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const Ru=({instance:e,params:t,models:n})=>{const r=k.useMemo(()=>{const d=new Map;return n.expandedItems.value.forEach(m=>{d.set(m,!0)}),d},[n.expandedItems.value]),o=(d,m)=>{t.onExpandedItemsChange?.(d,m),n.expandedItems.setControlledValue(m)},a=k.useCallback(d=>r.has(d),[r]),s=k.useCallback(d=>!!e.getItemMeta(d)?.expandable,[e]),i=Ae((d,m)=>{const f=e.isItemExpanded(m);e.setItemExpansion(d,m,!f)}),l=Ae((d,m,f)=>{if(e.isItemExpanded(m)===f)return;let b;f?b=[m].concat(n.expandedItems.value):b=n.expandedItems.value.filter(g=>g!==m),t.onItemExpansionToggle&&t.onItemExpansionToggle(d,m,f),o(d,b)}),u=(d,m)=>{const f=e.getItemMeta(m),b=e.getItemOrderedChildrenIds(f.parentId).filter(x=>e.isItemExpandable(x)&&!e.isItemExpanded(x)),g=n.expandedItems.value.concat(b);b.length>0&&(t.onItemExpansionToggle&&b.forEach(x=>{t.onItemExpansionToggle(d,x,!0)}),o(d,g))},c=k.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:l},instance:{isItemExpanded:a,isItemExpandable:s,setItemExpansion:l,toggleItemExpansion:i,expandAllSiblings:u},contextValue:{expansion:{expansionTrigger:c}}}};Ru.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const kz=[];Ru.getDefaultizedParams=({params:e})=>H({},e,{defaultExpandedItems:e.defaultExpandedItems??kz});Ru.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const cl=e=>Array.isArray(e)?e:e!=null?[e]:[],$c=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},Mu=({instance:e,params:t,models:n})=>{const r=k.useRef(null),o=k.useRef({}),a=k.useMemo(()=>{const b=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(g=>{b.set(g,!0)}):n.selectedItems.value!=null&&b.set(n.selectedItems.value,!0),b},[n.selectedItems.value]),s=(b,g)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const x=g.filter(C=>!e.isItemSelected(C)),E=n.selectedItems.value.filter(C=>!g.includes(C));x.forEach(C=>{t.onItemSelectionToggle(b,C,!0)}),E.forEach(C=>{t.onItemSelectionToggle(b,C,!1)})}else g!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(b,n.selectedItems.value,!1),g!=null&&t.onItemSelectionToggle(b,g,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(b,g),n.selectedItems.setControlledValue(g)},i=b=>a.has(b),l=({event:b,itemId:g,keepExistingSelection:x=!1,shouldBeSelected:E})=>{if(t.disableSelection)return;let C;if(x){const T=cl(n.selectedItems.value),w=e.isItemSelected(g);w&&(E===!1||E==null)?C=T.filter(S=>S!==g):!w&&(E===!0||E==null)?C=[g].concat(T):C=T}else E===!1||E==null&&e.isItemSelected(g)?C=t.multiSelect?[]:null:C=t.multiSelect?[g]:g;s(b,C),r.current=g,o.current={}},u=(b,[g,x])=>{if(t.disableSelection||!t.multiSelect)return;let E=cl(n.selectedItems.value).slice();Object.keys(o.current).length>0&&(E=E.filter(S=>!o.current[S]));const C=$c(E),T=jU(e,g,x),w=T.filter(S=>!C[S]);E=E.concat(w),s(b,E),o.current=$c(T)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:l},instance:{isItemSelected:i,selectItem:l,selectAllNavigableItems:b=>{if(t.disableSelection||!t.multiSelect)return;const g=HU(e);s(b,g),o.current=$c(g)},expandSelectionRange:(b,g)=>{if(r.current!=null){const[x,E]=C2(e,g,r.current);u(b,[x,E])}},selectRangeFromStartToItem:(b,g)=>{u(b,[Xs(e),g])},selectRangeFromItemToEnd:(b,g)=>{u(b,[g,x2(e)])},selectItemFromArrowNavigation:(b,g,x)=>{if(t.disableSelection||!t.multiSelect)return;let E=cl(n.selectedItems.value).slice();Object.keys(o.current).length===0?(E.push(x),o.current={[g]:!0,[x]:!0}):(o.current[g]||(o.current={}),o.current[x]?(E=E.filter(C=>C!==g),delete o.current[g]):(E.push(x),o.current[x]=!0)),s(b,E)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};Mu.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const wz=[];Mu.getDefaultizedParams=({params:e})=>H({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?wz:null)});Mu.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const a0=1e3;class _z{constructor(t=a0){this.timeouts=new Map,this.cleanupTimeout=a0,this.cleanupTimeout=t}register(t,n,r){this.timeouts||(this.timeouts=new Map);const o=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(r.cleanupToken)},this.cleanupTimeout);this.timeouts.set(r.cleanupToken,o)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class Iz{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,r){this.registry.register(t,n,r)}unregister(t){this.registry.unregister(t)}reset(){}}class Az{}function Dz(e){let t=0;return function(r,o,a){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new Iz:new _z);const[s]=k.useState(new Az),i=k.useRef(null),l=k.useRef(void 0);l.current=a;const u=k.useRef(null);if(!i.current&&l.current){const c=(d,m)=>{m.defaultMuiPrevented||l.current?.(d,m)};i.current=r.$$subscribeEvent(o,c),t+=1,u.current={cleanupToken:t},e.registry.register(s,()=>{i.current?.(),i.current=null,u.current=null},u.current)}else!l.current&&i.current&&(i.current(),i.current=null,u.current&&(e.registry.unregister(u.current),u.current=null));k.useEffect(()=>{if(!i.current&&l.current){const c=(d,m)=>{m.defaultMuiPrevented||l.current?.(d,m)};i.current=r.$$subscribeEvent(o,c)}return u.current&&e.registry&&(e.registry.unregister(u.current),u.current=null),()=>{i.current?.(),i.current=null}},[r,o])}}const Pz={registry:null},Rz=Dz(Pz),I2=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?I2(t.shadowRoot):t:null},Mz=(e,t)=>{let n=cl(t).find(r=>{if(!e.isItemNavigable(r))return!1;const o=e.getItemMeta(r);return o&&(o.parentId==null||e.isItemExpanded(o.parentId))});return n==null&&(n=Xs(e)),n},hf=({instance:e,params:t,state:n,setState:r,models:o,rootRef:a})=>{const s=Mz(e,o.selectedItems.value),i=Ae(g=>{const x=typeof g=="function"?g(n.focusedItemId):g;n.focusedItemId!==x&&r(E=>H({},E,{focusedItemId:x}))}),l=k.useCallback(()=>!!a.current&&a.current.contains(I2(jt(a.current))),[a]),u=k.useCallback(g=>n.focusedItemId===g&&l(),[n.focusedItemId,l]),c=g=>{const x=e.getItemMeta(g);return x&&(x.parentId==null||e.isItemExpanded(x.parentId))},d=(g,x)=>{const E=e.getItemDOMElement(x);E&&E.focus(),i(x),t.onItemFocus&&t.onItemFocus(g,x)},m=Ae((g,x)=>{c(x)&&d(g,x)}),f=Ae(()=>{if(n.focusedItemId==null)return;if(e.getItemMeta(n.focusedItemId)){const x=e.getItemDOMElement(n.focusedItemId);x&&x.blur()}i(null)}),h=g=>g===s;Rz(e,"removeItem",({id:g})=>{n.focusedItemId===g&&d(null,s)});const b=g=>x=>{g.onFocus?.(x),!x.defaultMuiPrevented&&x.target===x.currentTarget&&d(x,s)};return{getRootProps:g=>({onFocus:b(g)}),publicAPI:{focusItem:m},instance:{isItemFocused:u,canItemBeTabbed:h,focusItem:m,removeFocusedItem:f}}};hf.getInitialState=()=>({focusedItemId:null});hf.params={onItemFocus:!0};function Nz(e){return!!e&&e.length===1&&!!e.match(/\S/)}const A2=({instance:e,params:t,state:n})=>{const r=Yn(),o=k.useRef({}),a=Ae(c=>{o.current=c(o.current)});k.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const c={},d=m=>{c[m.id]=m.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(d),o.current=c},[n.items.itemMetaMap,t.getItemId,e]);const s=(c,d)=>{const m=d.toLowerCase(),f=x=>{const E=ul(e,x);return E===null?Xs(e):E};let h=null,b=f(c);const g={};for(;h==null&&!g[b];)o.current[b]===m?h=b:(g[b]=!0,b=f(b));return h},i=c=>!t.disableSelection&&!e.isItemDisabled(c),l=c=>!e.isItemDisabled(c)&&e.isItemExpandable(c);return{instance:{updateFirstCharMap:a,handleItemKeyDown:(c,d)=>{if(c.defaultMuiPrevented||c.altKey||Zs(c.target,c.currentTarget))return;const m=c.ctrlKey||c.metaKey,f=c.key;switch(!0){case(f===" "&&i(d)):{c.preventDefault(),t.multiSelect&&c.shiftKey?e.expandSelectionRange(c,d):e.selectItem({event:c,itemId:d,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case f==="Enter":{Ao(e,Un)&&e.isItemEditable(d)&&!e.isItemBeingEdited(d)?e.setEditedItemId(d):l(d)?(e.toggleItemExpansion(c,d),c.preventDefault()):i(d)&&(t.multiSelect?(c.preventDefault(),e.selectItem({event:c,itemId:d,keepExistingSelection:!0})):e.isItemSelected(d)||(e.selectItem({event:c,itemId:d}),c.preventDefault()));break}case f==="ArrowDown":{const h=ul(e,d);h&&(c.preventDefault(),e.focusItem(c,h),t.multiSelect&&c.shiftKey&&i(h)&&e.selectItemFromArrowNavigation(c,d,h));break}case f==="ArrowUp":{const h=y2(e,d);h&&(c.preventDefault(),e.focusItem(c,h),t.multiSelect&&c.shiftKey&&i(h)&&e.selectItemFromArrowNavigation(c,d,h));break}case(f==="ArrowRight"&&!r||f==="ArrowLeft"&&r):{if(m)return;if(e.isItemExpanded(d)){const h=ul(e,d);h&&(e.focusItem(c,h),c.preventDefault())}else l(d)&&(e.toggleItemExpansion(c,d),c.preventDefault());break}case(f==="ArrowLeft"&&!r||f==="ArrowRight"&&r):{if(m)return;if(l(d)&&e.isItemExpanded(d))e.toggleItemExpansion(c,d),c.preventDefault();else{const h=e.getItemMeta(d).parentId;h&&(e.focusItem(c,h),c.preventDefault())}break}case f==="Home":{i(d)&&t.multiSelect&&m&&c.shiftKey?e.selectRangeFromStartToItem(c,d):e.focusItem(c,Xs(e)),c.preventDefault();break}case f==="End":{i(d)&&t.multiSelect&&m&&c.shiftKey?e.selectRangeFromItemToEnd(c,d):e.focusItem(c,x2(e)),c.preventDefault();break}case f==="*":{e.expandAllSiblings(c,d),c.preventDefault();break}case(String.fromCharCode(c.keyCode)==="A"&&m&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(c),c.preventDefault();break}case(!m&&!c.shiftKey&&Nz(f)):{const h=s(d,f);h!=null&&(e.focusItem(c,h),c.preventDefault());break}}}}}};A2.params={};const D2=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});D2.params={};const Oz=[xi,Ru,Mu,hf,A2,D2,Un],Lz=["ownerState"];function Fz({slots:e,slotProps:t,label:n,id:r,itemId:o,itemsToRender:a}){const s=e?.item??az,i=tt({elementType:s,externalSlotProps:t?.item,additionalProps:{itemId:o,id:r,label:n},ownerState:{itemId:o,label:n}}),l=je(i,Lz),u=k.useMemo(()=>a?p.jsx(P2,{itemsToRender:a,slots:e,slotProps:t}):null,[a,e,t]);return p.jsx(s,H({},l,{children:u}))}function P2(e){const{itemsToRender:t,slots:n,slotProps:r}=e;return p.jsx(k.Fragment,{children:t.map(o=>p.jsx(Fz,{slots:n,slotProps:r,label:o.label,id:o.id,itemId:o.itemId,itemsToRender:o.children},o.itemId))})}const $z=m2(),Bz=e=>{const{classes:t}=e;return Le({root:["root"]},pz,t)},jz=ae("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),Hz=k.forwardRef(function(t,n){const r=$z({props:t,name:"MuiRichTreeView"}),{getRootProps:o,contextValue:a,instance:s}=Ez({plugins:Oz,rootRef:n,props:r}),{slots:i,slotProps:l}=r,u=Bz(r),c=i?.root??jz,d=tt({elementType:c,externalSlotProps:l?.root,className:u.root,getSlotProps:o,ownerState:r});return p.jsx(FU,{value:a,children:p.jsx(c,H({},d,{children:p.jsx(P2,{slots:i,slotProps:l,itemsToRender:s.getItemsToRender()})}))})}),Uz=rt(p.jsx("path",{d:"m9.17 6 2 2H20v10H4V6zM10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"})),zz=rt([p.jsx("path",{d:"M19 5v14H5V5zm0-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-2"},"0"),p.jsx("path",{d:"M14 17H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"},"1")]),Vz=rt(p.jsx("path",{d:"M19 15v4H5v-4zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1M7 18.5c-.82 0-1.5-.67-1.5-1.5s.68-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5M19 5v4H5V5zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1M7 8.5c-.82 0-1.5-.67-1.5-1.5S6.18 5.5 7 5.5s1.5.68 1.5 1.5S7.83 8.5 7 8.5"})),Wz=rt(p.jsx("path",{d:"M15 4v2h3v12h-3v2h5V4zM4 20h5v-2H6V6h3V4H4z"}));function R2({items:e,defaultExpandedItems:t,onClickTreeNode:n}){return p.jsx(Hz,{items:Qz(e,n),defaultExpandedItems:t,slots:{item:Kz}})}const qz=s0.animated(Qs);function Yz(e){const t=s0.useSpring({to:{opacity:e.in?1:0,transform:`translate3d(0,${e.in?0:20}px,0)`}});return p.jsx(qz,{style:t,...e})}function Gz({item:e,...t}){const n=p.jsxs(cz,{...t,sx:{display:"flex",alignItems:"center",color:e.error?"error.main":"grey.600"},children:[e.fileType==="directory"&&p.jsx(Uz,{})||e.fileType==="notebook"&&p.jsx(zz,{})||e.fileType==="model"&&p.jsx(Wz,{})||e.fileType=="database"&&p.jsx(Vz,{})||p.jsx(d2,{}),p.jsx(I.Typography,{variant:"body2",sx:{marginLeft:"5px"},color:e.error?"error.main":e.link?"primary.main":"grey.600",children:e.label})]});return e.error?p.jsx(I.Tooltip,{title:e.error,placement:"right",children:n}):n}const Kz=k.forwardRef(function(t,n){const{id:r,itemId:o,label:a,children:s,disabled:i,...l}=t,{getRootProps:u,getContentProps:c,getLabelProps:d,getIconContainerProps:m,getGroupTransitionProps:f,status:h,publicAPI:b}=VU({id:r,itemId:o,children:s,label:a,disabled:i,rootRef:n}),g=b.getItem(o);return h.selected=!1,h.focused=!1,p.jsx(ff,{itemId:o,children:p.jsxs(lz,{...u(l),children:[p.jsxs(uz,{...c(),...g.link&&{onClick:x=>g.link(x)},sx:{pointerEvents:!g.selectable&&"none"},children:[p.jsx(dz,{...m(),children:p.jsx(sz,{status:h})}),p.jsx(Gz,{...d({item:g})})]}),s&&p.jsx(Yz,{...f()})]})})});function Qz(e,t){const n=new Map;return e.map(r=>{let o=n;const a=r.path.split("/");a.forEach((s,i)=>{i===a.length-1?o.set(s,r):(o.has(s)||o.set(s,new Map),o=o.get(s))})}),M2(n,"",t)}function M2(e,t,n){const r=[];return e.forEach((o,a)=>{const s=a.endsWith(".malloy")&&"model"||a.endsWith(".malloynb")&&"notebook"||a.endsWith(".parquet")&&"database"||"unknown";if(s!=="unknown"){const i=o;r.push({id:t+a,label:a,fileType:s,link:s==="model"||s==="notebook"?l=>n(t+a,l):void 0,selectable:s==="model"||s==="notebook",error:"error"in i?i.error:void 0})}else{const i=t+a+"/";r.push({id:i,label:a,fileType:"directory",selectable:!0,link:void 0,children:M2(o,i,n)})}}),r}const Xz=["notebooks/","models/"];function N2({onClickModelFile:e,resourceUri:t}){const{projectName:n,packageName:r,versionId:o}=Ct(t),{apiClients:a}=it.useServer(),{data:s,isError:i,error:l,isSuccess:u}=Jt({queryKey:["models",n,r,o],queryFn:()=>a.models.listModels(n,r,o)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Semantic Models"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&p.jsx(on,{text:"Fetching Models..."}),i&&p.jsx(Zt,{error:l,context:`${n} > ${r} > Models`}),u&&s.data.length>0&&p.jsx(R2,{items:s.data.sort((c,d)=>c.path.localeCompare(d.path)),onClickTreeNode:e,defaultExpandedItems:Xz}),u&&s.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No models found"})]})]})})}const Zz=["notebooks/"];function Jz({onClickNotebookFile:e,resourceUri:t}){const{apiClients:n}=it.useServer(),{projectName:r,packageName:o,versionId:a}=Ct(t),{data:s,isError:i,error:l,isSuccess:u}=Jt({queryKey:["notebooks",r,o,a],queryFn:()=>n.notebooks.listNotebooks(r,o,a)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Notebooks"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&p.jsx(on,{text:"Fetching Notebooks..."}),i&&p.jsx(Zt,{error:l,context:`${r} > ${o} > Notebooks`}),u&&s.data.length>0&&p.jsx(R2,{items:s.data.sort((c,d)=>c.path.localeCompare(d.path)),defaultExpandedItems:Zz,onClickTreeNode:e}),u&&s.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No notebooks found"})]})]})})}const eV="README.malloynb";function tV({onClickPackageFile:e,resourceUri:t}){e||(e=r=>{window.location.href=r});const n=pi({...Ct(t),modelPath:eV});return p.jsx(p.Fragment,{children:p.jsxs(I.Grid,{container:!0,spacing:3,columns:12,children:[p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(uU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(Jz,{onClickNotebookFile:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(N2,{onClickModelFile:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:6},children:p.jsx(bU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:6},children:p.jsx(gU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"README"}),p.jsx(I.Box,{sx:{mt:1},children:p.jsx(c2,{resourceUri:n})})]})})})]})})}function nV({resourceUri:e}){const{projectName:t}=Ct(e),{apiClients:n}=it.useServer(),[r,o]=W.useState(!1),a=90,{data:s,isSuccess:i,isError:l,error:u}=Jt({queryKey:["about",t],queryFn:()=>n.projects.getProject(t,!1)}),c=s?.data?.readme||"",d=c.split(/\s+/),m=d.length>a,f=d.slice(0,a).join(" ");return p.jsxs(p.Fragment,{children:[!i&&!l&&p.jsx(on,{text:"Fetching About..."}),i&&c&&p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Readme"}),p.jsxs(I.Box,{sx:{mt:1,fontSize:"0.875rem",lineHeight:1.6},children:[p.jsx(dl,{options:{overrides:{h1:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h2:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h3:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}}}},children:r||!m?c:f}),m&&p.jsxs(I.Box,{sx:{mt:1},children:[" ",p.jsx(I.Button,{variant:"text",size:"small",onClick:()=>o(!r),children:r?"Read less":"Read more"})]})]})]})}),l&&p.jsx(Zt,{error:u,context:`${t} > About`})]})}function rV({resourceUri:e}){const[t,n]=W.useState(!1),{apiClients:r}=it.useServer(),o=$r.useQueryClient(),[a,s]=W.useState(""),i=()=>{n(!0)},l=()=>{n(!1)},{projectName:u}=Ct(e),c=hr({async mutationFn(m){return r.packages.createPackage(u,{name:m.name,description:m.description,location:m.location})},onSuccess(){l(),s("Package created successfully"),o.invalidateQueries({queryKey:["packages",u]})},onError(m){s(m instanceof Error?m.message:"An unknown error occurred")}}),d=m=>{m.preventDefault();const f=new FormData(m.currentTarget),h=f.get("name")?.toString(),b=f.get("description")?.toString(),g=f.get("location")?.toString();c.mutate({name:h,description:b,location:g})};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{onClick:i,variant:"contained",color:"primary",startIcon:p.jsx(An.Add,{}),sx:{color:"white"},children:"Add Package"}),p.jsxs(kr,{open:t,onClose:l,children:[p.jsx(Ur,{children:"Create New Package"}),p.jsxs(Sr,{children:[p.jsxs(Ua,{children:["Create a new malloy package to start exploring your data.",p.jsx("br",{}),p.jsx("br",{}),"The location can be a GitHub/S3/GCP URL containing a package (Zipped or unzipped), or an absolute path to a directory that the publisher server has access to.",p.jsx("br",{}),p.jsx("br",{}),"Make sure to conform the"," ",p.jsx("a",{href:"https://github.com/malloydata/publisher/blob/main/README.md#architecture-overview",target:"_blank",rel:"noopener noreferrer",children:"Malloy Package Format"}),"."]}),p.jsxs("form",{onSubmit:d,id:"package-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,variant:"standard"}),p.jsx(Rt,{id:"location",name:"location",label:"Location",type:"text",placeholder:"E.g. s3://my-bucket/my-package.zip",fullWidth:!0,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:c.isPending,onClick:l,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"package-form",loading:c.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:a!=="",autoHideDuration:6e3,onClose:()=>s(""),message:a})]})}function oV({resourceUri:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},{projectName:c,packageName:d}=Ct(e),m=hr({mutationFn:()=>o.packages.deletePackage(c,d),onSuccess(){u(),a.invalidateQueries({queryKey:["packages"]}),i("Package deleted successfully")},onError(f){i(f instanceof Error?f.message:"An unknown error occurred")}});return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Delete,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Delete"})]}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Package"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:f=>({position:"absolute",right:8,top:8,color:f.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',d,'"? This action cannot be undone.']})}),p.jsxs(Tr,{children:[p.jsx(Dt,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),p.jsx(Dt,{variant:"contained",autoFocus:!0,onClick:()=>m.mutate(),color:"error",loading:m.isPending,children:"Delete"})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function aV({package:e,resourceUri:t,onCloseDialog:n}){const[r,o]=W.useState(!1),{apiClients:a}=it.useServer(),s=$r.useQueryClient(),[i,l]=W.useState(""),u=()=>{o(!0)},c=()=>{o(!1),n()},{packageName:d,projectName:m}=Ct(t),f=hr({async mutationFn(b){return a.packages.updatePackage(m,d,{name:d,description:b.description})},onSuccess(){c(),l("Package updated successfully"),s.invalidateQueries({queryKey:["packages",m]})},onError(b){l(b instanceof Error?b.message:"An unknown error occurred")}}),h=b=>{b.preventDefault();const x=new FormData(b.currentTarget).get("description")?.toString();f.mutate({description:x})};return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:u,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Edit,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Edit"})]}),p.jsxs(kr,{open:r,onClose:c,children:[p.jsx(Ur,{children:"Edit Package"}),p.jsxs(Sr,{children:[p.jsxs(Ua,{children:['Update the details for "',e.name,'".']}),p.jsxs("form",{onSubmit:h,id:"package-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),p.jsx(Rt,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,defaultValue:e.description,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:f.isPending,onClick:c,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"package-form",loading:f.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:i!=="",autoHideDuration:6e3,onClose:()=>l(""),message:i})]})}const sV=({package:e,resourceUri:t})=>{const{mutable:n}=it.useServer(),[r,o]=W.useState(null),a=!!r,s=l=>{o(l.currentTarget)},i=()=>{o(null)};return p.jsx(p.Fragment,{children:n&&p.jsxs(p.Fragment,{children:[p.jsx(I.IconButton,{onClick:l=>{l.stopPropagation(),s(l)},"aria-controls":a?"package-menu":void 0,"aria-haspopup":"true","aria-expanded":a?"true":void 0,children:p.jsx(An.MoreVert,{fontSize:"small"})}),p.jsxs(I.Menu,{id:"package-menu","aria-haspopup":"true","aria-expanded":a?"true":void 0,open:a,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},onClick:l=>{l.stopPropagation()},children:[p.jsx(aV,{package:e,resourceUri:t,onCloseDialog:i}),p.jsx(oV,{resourceUri:t,onCloseDialog:i})]})]})})};function O2({onSelectPackage:e,resourceUri:t}){const{apiClients:n}=it.useServer(),{projectName:r}=Ct(t),{data:o,isSuccess:a,isError:s,error:i}=Jt({queryKey:["packages",r],queryFn:()=>n.packages.listPackages(r)});return p.jsxs(p.Fragment,{children:[!a&&!s&&p.jsx(on,{text:"Fetching Packages..."}),a&&p.jsx(I.Grid,{container:!0,spacing:3,columns:12,children:o.data.sort((l,u)=>l.name.localeCompare(u.name)).map(l=>{const u=pi({projectName:r,packageName:l.name});return p.jsx(I.Grid,{size:{xs:12,sm:12,md:12,lg:4},children:p.jsx(ro,{sx:{cursor:"pointer",transition:"all 0.2s ease-in-out",paddingTop:"8px","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)",transform:"translateY(-1px)"}},onClick:c=>{e(l.name,c)},children:p.jsxs(oo,{children:[p.jsxs(I.Box,{display:"flex",alignItems:"center",justifyContent:"space-between",sx:{marginBottom:"8px"},children:[p.jsx(I.Typography,{variant:"overline",sx:{fontSize:"12px",fontWeight:"600",color:"primary.main",textTransform:"uppercase",letterSpacing:"0.5px"},children:l.name}),p.jsx(sV,{package:l,resourceUri:u})]}),p.jsx(I.Divider,{sx:{mb:2}}),p.jsx(I.Box,{sx:{maxHeight:"120px",overflowY:"auto",mt:2},children:p.jsx(I.Typography,{variant:"body2",children:l.description})})]})})},l.name)})}),s&&p.jsx(Zt,{error:i,context:`${r} > Packages`})]})}function iV({onSelectPackage:e,resourceUri:t}){const{mutable:n}=it.useServer(),{projectName:r}=Ct(t);return W.useEffect(()=>{window.scrollTo({top:0,behavior:"auto"})},[]),p.jsx(p.Fragment,{children:p.jsxs(wv,{children:[p.jsxs(I.Box,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[p.jsxs(I.Typography,{variant:"h6",children:[r," packages"]}),n&&p.jsx(rV,{resourceUri:t})]}),p.jsxs(I.Grid,{container:!0,spacing:3,columns:12,children:[p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(O2,{onSelectPackage:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(nV,{resourceUri:t})})]})]})})}const lV=async e=>{if(typeof window>"u")throw new Error("MalloyRenderer can only be used in browser environment");const{MalloyRenderer:t}=await import("@malloydata/render");return new t({onClick:e,onError:r=>{console.error("Error rendering visualization:",typeof r,r)}}).createViz()};function uV({result:e,height:t,onDrill:n,onSizeChange:r}){const o=W.useRef(null);return W.useLayoutEffect(()=>{if(!o.current||!e)return;let a=!0;const s=o.current;for(;s.firstChild;)s.removeChild(s.firstChild);let i=null,l=null;const u=()=>{if(!a||!s.firstElementChild)return;const d=s.firstElementChild.firstElementChild;if(!d)return;const m=d.scrollHeight||d.offsetHeight||0;m>0&&r&&r(m)};return lV(n).then(c=>{if(a){i=new MutationObserver(()=>{l&&clearTimeout(l),l=setTimeout(()=>{u(),i?.disconnect()},100)}),i.observe(s,{childList:!0,subtree:!0,attributes:!0});try{c.setResult(JSON.parse(e)),c.render(s)}catch(d){console.error("Error rendering visualization:",d),i?.disconnect()}}}).catch(c=>{console.error("Failed to create renderer:",c)}),()=>{a=!1,i?.disconnect(),l&&clearTimeout(l)}},[e,n,r]),p.jsx("div",{ref:o,style:{width:"100%",height:t?`${t}px`:"100%"}})}function L2(e){return typeof window>"u"?p.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading..."}):p.jsx(W.Suspense,{fallback:p.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading visualization..."}),children:p.jsx(uV,{...e})})}const F2=Object.freeze(Object.defineProperty({__proto__:null,default:L2},Symbol.toStringTag,{value:"Module"}));function $2(e){return e.replace(/'/g,"\\'").replace(/\\/g,"\\\\")}function lr(e,t=!1){return e==null?"null":t?e instanceof Date?`@${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:`@${e}`:typeof e=="string"?`'${$2(e)}'`:typeof e=="number"?String(e):typeof e=="boolean"?e?"true":"false":String(e)}function cV(e){const{dimensionName:t,matchType:n,value:r,value2:o}=e,a=`\`${t}\``,s=r instanceof Date;switch(n){case"Equals":case"Semantic Search":return Array.isArray(r)&&r.length>0?`(${r.map(l=>`${a} = ${lr(l,s)}`).join(" or ")})`:Array.isArray(r)?"":`${a} = ${lr(r,s)}`;case"Contains":return typeof r=="string"?`${a} ~ f'%${$2(r)}%'`:Array.isArray(r)?"":`${a} = ${lr(r)}`;case"After":return Array.isArray(r)?"":`${a} > ${lr(r,s)}`;case"Before":return Array.isArray(r)?"":`${a} < ${lr(r,s)}`;case"Greater Than":return Array.isArray(r)?"":`${a} > ${lr(r)}`;case"Less Than":return Array.isArray(r)?"":`${a} < ${lr(r)}`;case"Between":return Array.isArray(r)?"":o!==void 0?`${a} >= ${lr(r,s)} and ${a} <= ${lr(o,s)}`:`${a} >= ${lr(r,s)}`;default:return""}}function dV(e){if(e.length===0)return"";const t=e.map(n=>cV(n)).filter(n=>n.length>0);return t.length===0?"":t.join(" and ")}function pV(e,t,n,r=1e3){const o=dV(t),s=n&&n.length>0?`group_by: ${n.map(i=>`\`${i}\``).join(", ")}`:"select: *";return o?`
233
+ `));o[m]={id:m,label:f,parentId:d,idAttribute:void 0,expandable:!!u.children?.length,disabled:t?t(u):!1,depth:c},a[m]=u;const h=d??ia;s[h]||(s[h]=[]),s[h].push(m),u.children?.forEach(b=>i(b,c+1,m))};e.forEach(u=>i(u,0,null));const l={};return Object.keys(s).forEach(u=>{l[u]=Tz(s[u])}),{itemMetaMap:o,itemMap:a,itemOrderedChildrenIds:s,itemChildrenIndexes:l}},xi=({instance:e,params:t,state:n,setState:r,experimentalFeatures:o})=>{const a=k.useCallback(x=>n.items.itemMetaMap[x],[n.items.itemMetaMap]),s=k.useCallback(x=>n.items.itemMap[x],[n.items.itemMap]),i=k.useCallback(()=>{const x=E=>{const C=n.items.itemMap[E],T=je(C,Sz),w=n.items.itemOrderedChildrenIds[E];return w&&(T.children=w.map(x)),T};return n.items.itemOrderedChildrenIds[ia].map(x)},[n.items.itemMap,n.items.itemOrderedChildrenIds]),l=k.useCallback(x=>{if(x==null)return!1;let E=e.getItemMeta(x);if(!E)return!1;if(E.disabled)return!0;for(;E.parentId!=null;)if(E=e.getItemMeta(E.parentId),E.disabled)return!0;return!1},[e]),u=k.useCallback(x=>{const E=e.getItemMeta(x).parentId??ia;return n.items.itemChildrenIndexes[E][x]},[e,n.items.itemChildrenIndexes]),c=k.useCallback(x=>n.items.itemOrderedChildrenIds[x??ia]??[],[n.items.itemOrderedChildrenIds]),d=x=>{const E=e.getItemMeta(x);return E==null?null:document.getElementById(pf({treeId:n.id.treeId,itemId:x,id:E.idAttribute}))},m=x=>t.disabledItemsFocusable?!0:!e.isItemDisabled(x),f=k.useRef(!1),h=k.useCallback(()=>{f.current=!0},[]),b=k.useCallback(()=>f.current,[]);return k.useEffect(()=>{e.areItemUpdatesPrevented()||r(x=>{const E=_2({items:t.items,isItemDisabled:t.isItemDisabled,getItemId:t.getItemId,getItemLabel:t.getItemLabel});return Object.values(x.items.itemMetaMap).forEach(C=>{E.itemMetaMap[C.id]||vz(e,"removeItem",{id:C.id})}),H({},x,{items:E})})},[e,r,t.items,t.isItemDisabled,t.getItemId,t.getItemLabel]),{getRootProps:()=>({style:{"--TreeView-itemChildrenIndentation":typeof t.itemChildrenIndentation=="number"?`${t.itemChildrenIndentation}px`:t.itemChildrenIndentation}}),publicAPI:{getItem:s,getItemDOMElement:d,getItemTree:i,getItemOrderedChildrenIds:c},instance:{getItemMeta:a,getItem:s,getItemTree:i,getItemsToRender:()=>{const x=E=>{const C=n.items.itemMetaMap[E];return{label:C.label,itemId:C.id,id:C.idAttribute,children:n.items.itemOrderedChildrenIds[E]?.map(x)}};return n.items.itemOrderedChildrenIds[ia].map(x)},getItemIndex:u,getItemDOMElement:d,getItemOrderedChildrenIds:c,isItemDisabled:l,isItemNavigable:m,preventItemUpdates:h,areItemUpdatesPrevented:b},contextValue:{items:{onItemClick:t.onItemClick,disabledItemsFocusable:t.disabledItemsFocusable,indentationAtItemLevel:o.indentationAtItemLevel??!1}}}};xi.getInitialState=e=>({items:_2({items:e.items,isItemDisabled:e.isItemDisabled,getItemId:e.getItemId,getItemLabel:e.getItemLabel})});xi.getDefaultizedParams=({params:e})=>H({},e,{disabledItemsFocusable:e.disabledItemsFocusable??!1,itemChildrenIndentation:e.itemChildrenIndentation??"12px"});xi.wrapRoot=({children:e,instance:t})=>p.jsx(df.Provider,{value:n=>t.getItemMeta(n)?.depth??0,children:e});xi.params={disabledItemsFocusable:!0,items:!0,isItemDisabled:!0,getItemLabel:!0,getItemId:!0,onItemClick:!0,itemChildrenIndentation:!0};const Ru=({instance:e,params:t,models:n})=>{const r=k.useMemo(()=>{const d=new Map;return n.expandedItems.value.forEach(m=>{d.set(m,!0)}),d},[n.expandedItems.value]),o=(d,m)=>{t.onExpandedItemsChange?.(d,m),n.expandedItems.setControlledValue(m)},a=k.useCallback(d=>r.has(d),[r]),s=k.useCallback(d=>!!e.getItemMeta(d)?.expandable,[e]),i=Ae((d,m)=>{const f=e.isItemExpanded(m);e.setItemExpansion(d,m,!f)}),l=Ae((d,m,f)=>{if(e.isItemExpanded(m)===f)return;let b;f?b=[m].concat(n.expandedItems.value):b=n.expandedItems.value.filter(g=>g!==m),t.onItemExpansionToggle&&t.onItemExpansionToggle(d,m,f),o(d,b)}),u=(d,m)=>{const f=e.getItemMeta(m),b=e.getItemOrderedChildrenIds(f.parentId).filter(x=>e.isItemExpandable(x)&&!e.isItemExpanded(x)),g=n.expandedItems.value.concat(b);b.length>0&&(t.onItemExpansionToggle&&b.forEach(x=>{t.onItemExpansionToggle(d,x,!0)}),o(d,g))},c=k.useMemo(()=>t.expansionTrigger?t.expansionTrigger:e.isTreeViewEditable?"iconContainer":"content",[t.expansionTrigger,e.isTreeViewEditable]);return{publicAPI:{setItemExpansion:l},instance:{isItemExpanded:a,isItemExpandable:s,setItemExpansion:l,toggleItemExpansion:i,expandAllSiblings:u},contextValue:{expansion:{expansionTrigger:c}}}};Ru.models={expandedItems:{getDefaultValue:e=>e.defaultExpandedItems}};const kz=[];Ru.getDefaultizedParams=({params:e})=>H({},e,{defaultExpandedItems:e.defaultExpandedItems??kz});Ru.params={expandedItems:!0,defaultExpandedItems:!0,onExpandedItemsChange:!0,onItemExpansionToggle:!0,expansionTrigger:!0};const cl=e=>Array.isArray(e)?e:e!=null?[e]:[],$c=e=>{const t={};return e.forEach(n=>{t[n]=!0}),t},Mu=({instance:e,params:t,models:n})=>{const r=k.useRef(null),o=k.useRef({}),a=k.useMemo(()=>{const b=new Map;return Array.isArray(n.selectedItems.value)?n.selectedItems.value.forEach(g=>{b.set(g,!0)}):n.selectedItems.value!=null&&b.set(n.selectedItems.value,!0),b},[n.selectedItems.value]),s=(b,g)=>{if(t.onItemSelectionToggle)if(t.multiSelect){const x=g.filter(C=>!e.isItemSelected(C)),E=n.selectedItems.value.filter(C=>!g.includes(C));x.forEach(C=>{t.onItemSelectionToggle(b,C,!0)}),E.forEach(C=>{t.onItemSelectionToggle(b,C,!1)})}else g!==n.selectedItems.value&&(n.selectedItems.value!=null&&t.onItemSelectionToggle(b,n.selectedItems.value,!1),g!=null&&t.onItemSelectionToggle(b,g,!0));t.onSelectedItemsChange&&t.onSelectedItemsChange(b,g),n.selectedItems.setControlledValue(g)},i=b=>a.has(b),l=({event:b,itemId:g,keepExistingSelection:x=!1,shouldBeSelected:E})=>{if(t.disableSelection)return;let C;if(x){const T=cl(n.selectedItems.value),w=e.isItemSelected(g);w&&(E===!1||E==null)?C=T.filter(S=>S!==g):!w&&(E===!0||E==null)?C=[g].concat(T):C=T}else E===!1||E==null&&e.isItemSelected(g)?C=t.multiSelect?[]:null:C=t.multiSelect?[g]:g;s(b,C),r.current=g,o.current={}},u=(b,[g,x])=>{if(t.disableSelection||!t.multiSelect)return;let E=cl(n.selectedItems.value).slice();Object.keys(o.current).length>0&&(E=E.filter(S=>!o.current[S]));const C=$c(E),T=jU(e,g,x),w=T.filter(S=>!C[S]);E=E.concat(w),s(b,E),o.current=$c(T)};return{getRootProps:()=>({"aria-multiselectable":t.multiSelect}),publicAPI:{selectItem:l},instance:{isItemSelected:i,selectItem:l,selectAllNavigableItems:b=>{if(t.disableSelection||!t.multiSelect)return;const g=HU(e);s(b,g),o.current=$c(g)},expandSelectionRange:(b,g)=>{if(r.current!=null){const[x,E]=C2(e,g,r.current);u(b,[x,E])}},selectRangeFromStartToItem:(b,g)=>{u(b,[Xs(e),g])},selectRangeFromItemToEnd:(b,g)=>{u(b,[g,x2(e)])},selectItemFromArrowNavigation:(b,g,x)=>{if(t.disableSelection||!t.multiSelect)return;let E=cl(n.selectedItems.value).slice();Object.keys(o.current).length===0?(E.push(x),o.current={[g]:!0,[x]:!0}):(o.current[g]||(o.current={}),o.current[x]?(E=E.filter(C=>C!==g),delete o.current[g]):(E.push(x),o.current[x]=!0)),s(b,E)}},contextValue:{selection:{multiSelect:t.multiSelect,checkboxSelection:t.checkboxSelection,disableSelection:t.disableSelection}}}};Mu.models={selectedItems:{getDefaultValue:e=>e.defaultSelectedItems}};const wz=[];Mu.getDefaultizedParams=({params:e})=>H({},e,{disableSelection:e.disableSelection??!1,multiSelect:e.multiSelect??!1,checkboxSelection:e.checkboxSelection??!1,defaultSelectedItems:e.defaultSelectedItems??(e.multiSelect?wz:null)});Mu.params={disableSelection:!0,multiSelect:!0,checkboxSelection:!0,defaultSelectedItems:!0,selectedItems:!0,onSelectedItemsChange:!0,onItemSelectionToggle:!0};const a0=1e3;class _z{constructor(t=a0){this.timeouts=new Map,this.cleanupTimeout=a0,this.cleanupTimeout=t}register(t,n,r){this.timeouts||(this.timeouts=new Map);const o=setTimeout(()=>{typeof n=="function"&&n(),this.timeouts.delete(r.cleanupToken)},this.cleanupTimeout);this.timeouts.set(r.cleanupToken,o)}unregister(t){const n=this.timeouts.get(t.cleanupToken);n&&(this.timeouts.delete(t.cleanupToken),clearTimeout(n))}reset(){this.timeouts&&(this.timeouts.forEach((t,n)=>{this.unregister({cleanupToken:n})}),this.timeouts=void 0)}}class Iz{constructor(){this.registry=new FinalizationRegistry(t=>{typeof t=="function"&&t()})}register(t,n,r){this.registry.register(t,n,r)}unregister(t){this.registry.unregister(t)}reset(){}}class Az{}function Dz(e){let t=0;return function(r,o,a){e.registry===null&&(e.registry=typeof FinalizationRegistry<"u"?new Iz:new _z);const[s]=k.useState(new Az),i=k.useRef(null),l=k.useRef(void 0);l.current=a;const u=k.useRef(null);if(!i.current&&l.current){const c=(d,m)=>{m.defaultMuiPrevented||l.current?.(d,m)};i.current=r.$$subscribeEvent(o,c),t+=1,u.current={cleanupToken:t},e.registry.register(s,()=>{i.current?.(),i.current=null,u.current=null},u.current)}else!l.current&&i.current&&(i.current(),i.current=null,u.current&&(e.registry.unregister(u.current),u.current=null));k.useEffect(()=>{if(!i.current&&l.current){const c=(d,m)=>{m.defaultMuiPrevented||l.current?.(d,m)};i.current=r.$$subscribeEvent(o,c)}return u.current&&e.registry&&(e.registry.unregister(u.current),u.current=null),()=>{i.current?.(),i.current=null}},[r,o])}}const Pz={registry:null},Rz=Dz(Pz),I2=(e=document)=>{const t=e.activeElement;return t?t.shadowRoot?I2(t.shadowRoot):t:null},Mz=(e,t)=>{let n=cl(t).find(r=>{if(!e.isItemNavigable(r))return!1;const o=e.getItemMeta(r);return o&&(o.parentId==null||e.isItemExpanded(o.parentId))});return n==null&&(n=Xs(e)),n},hf=({instance:e,params:t,state:n,setState:r,models:o,rootRef:a})=>{const s=Mz(e,o.selectedItems.value),i=Ae(g=>{const x=typeof g=="function"?g(n.focusedItemId):g;n.focusedItemId!==x&&r(E=>H({},E,{focusedItemId:x}))}),l=k.useCallback(()=>!!a.current&&a.current.contains(I2(jt(a.current))),[a]),u=k.useCallback(g=>n.focusedItemId===g&&l(),[n.focusedItemId,l]),c=g=>{const x=e.getItemMeta(g);return x&&(x.parentId==null||e.isItemExpanded(x.parentId))},d=(g,x)=>{const E=e.getItemDOMElement(x);E&&E.focus(),i(x),t.onItemFocus&&t.onItemFocus(g,x)},m=Ae((g,x)=>{c(x)&&d(g,x)}),f=Ae(()=>{if(n.focusedItemId==null)return;if(e.getItemMeta(n.focusedItemId)){const x=e.getItemDOMElement(n.focusedItemId);x&&x.blur()}i(null)}),h=g=>g===s;Rz(e,"removeItem",({id:g})=>{n.focusedItemId===g&&d(null,s)});const b=g=>x=>{g.onFocus?.(x),!x.defaultMuiPrevented&&x.target===x.currentTarget&&d(x,s)};return{getRootProps:g=>({onFocus:b(g)}),publicAPI:{focusItem:m},instance:{isItemFocused:u,canItemBeTabbed:h,focusItem:m,removeFocusedItem:f}}};hf.getInitialState=()=>({focusedItemId:null});hf.params={onItemFocus:!0};function Nz(e){return!!e&&e.length===1&&!!e.match(/\S/)}const A2=({instance:e,params:t,state:n})=>{const r=Yn(),o=k.useRef({}),a=Ae(c=>{o.current=c(o.current)});k.useEffect(()=>{if(e.areItemUpdatesPrevented())return;const c={},d=m=>{c[m.id]=m.label.substring(0,1).toLowerCase()};Object.values(n.items.itemMetaMap).forEach(d),o.current=c},[n.items.itemMetaMap,t.getItemId,e]);const s=(c,d)=>{const m=d.toLowerCase(),f=x=>{const E=ul(e,x);return E===null?Xs(e):E};let h=null,b=f(c);const g={};for(;h==null&&!g[b];)o.current[b]===m?h=b:(g[b]=!0,b=f(b));return h},i=c=>!t.disableSelection&&!e.isItemDisabled(c),l=c=>!e.isItemDisabled(c)&&e.isItemExpandable(c);return{instance:{updateFirstCharMap:a,handleItemKeyDown:(c,d)=>{if(c.defaultMuiPrevented||c.altKey||Zs(c.target,c.currentTarget))return;const m=c.ctrlKey||c.metaKey,f=c.key;switch(!0){case(f===" "&&i(d)):{c.preventDefault(),t.multiSelect&&c.shiftKey?e.expandSelectionRange(c,d):e.selectItem({event:c,itemId:d,keepExistingSelection:t.multiSelect,shouldBeSelected:t.multiSelect?void 0:!0});break}case f==="Enter":{Ao(e,Un)&&e.isItemEditable(d)&&!e.isItemBeingEdited(d)?e.setEditedItemId(d):l(d)?(e.toggleItemExpansion(c,d),c.preventDefault()):i(d)&&(t.multiSelect?(c.preventDefault(),e.selectItem({event:c,itemId:d,keepExistingSelection:!0})):e.isItemSelected(d)||(e.selectItem({event:c,itemId:d}),c.preventDefault()));break}case f==="ArrowDown":{const h=ul(e,d);h&&(c.preventDefault(),e.focusItem(c,h),t.multiSelect&&c.shiftKey&&i(h)&&e.selectItemFromArrowNavigation(c,d,h));break}case f==="ArrowUp":{const h=y2(e,d);h&&(c.preventDefault(),e.focusItem(c,h),t.multiSelect&&c.shiftKey&&i(h)&&e.selectItemFromArrowNavigation(c,d,h));break}case(f==="ArrowRight"&&!r||f==="ArrowLeft"&&r):{if(m)return;if(e.isItemExpanded(d)){const h=ul(e,d);h&&(e.focusItem(c,h),c.preventDefault())}else l(d)&&(e.toggleItemExpansion(c,d),c.preventDefault());break}case(f==="ArrowLeft"&&!r||f==="ArrowRight"&&r):{if(m)return;if(l(d)&&e.isItemExpanded(d))e.toggleItemExpansion(c,d),c.preventDefault();else{const h=e.getItemMeta(d).parentId;h&&(e.focusItem(c,h),c.preventDefault())}break}case f==="Home":{i(d)&&t.multiSelect&&m&&c.shiftKey?e.selectRangeFromStartToItem(c,d):e.focusItem(c,Xs(e)),c.preventDefault();break}case f==="End":{i(d)&&t.multiSelect&&m&&c.shiftKey?e.selectRangeFromItemToEnd(c,d):e.focusItem(c,x2(e)),c.preventDefault();break}case f==="*":{e.expandAllSiblings(c,d),c.preventDefault();break}case(String.fromCharCode(c.keyCode)==="A"&&m&&t.multiSelect&&!t.disableSelection):{e.selectAllNavigableItems(c),c.preventDefault();break}case(!m&&!c.shiftKey&&Nz(f)):{const h=s(d,f);h!=null&&(e.focusItem(c,h),c.preventDefault());break}}}}}};A2.params={};const D2=({slots:e,slotProps:t})=>({contextValue:{icons:{slots:{collapseIcon:e.collapseIcon,expandIcon:e.expandIcon,endIcon:e.endIcon},slotProps:{collapseIcon:t.collapseIcon,expandIcon:t.expandIcon,endIcon:t.endIcon}}}});D2.params={};const Oz=[xi,Ru,Mu,hf,A2,D2,Un],Lz=["ownerState"];function Fz({slots:e,slotProps:t,label:n,id:r,itemId:o,itemsToRender:a}){const s=e?.item??az,i=tt({elementType:s,externalSlotProps:t?.item,additionalProps:{itemId:o,id:r,label:n},ownerState:{itemId:o,label:n}}),l=je(i,Lz),u=k.useMemo(()=>a?p.jsx(P2,{itemsToRender:a,slots:e,slotProps:t}):null,[a,e,t]);return p.jsx(s,H({},l,{children:u}))}function P2(e){const{itemsToRender:t,slots:n,slotProps:r}=e;return p.jsx(k.Fragment,{children:t.map(o=>p.jsx(Fz,{slots:n,slotProps:r,label:o.label,id:o.id,itemId:o.itemId,itemsToRender:o.children},o.itemId))})}const $z=m2(),Bz=e=>{const{classes:t}=e;return Le({root:["root"]},pz,t)},jz=ae("ul",{name:"MuiRichTreeView",slot:"Root",overridesResolver:(e,t)=>t.root})({padding:0,margin:0,listStyle:"none",outline:0,position:"relative"}),Hz=k.forwardRef(function(t,n){const r=$z({props:t,name:"MuiRichTreeView"}),{getRootProps:o,contextValue:a,instance:s}=Ez({plugins:Oz,rootRef:n,props:r}),{slots:i,slotProps:l}=r,u=Bz(r),c=i?.root??jz,d=tt({elementType:c,externalSlotProps:l?.root,className:u.root,getSlotProps:o,ownerState:r});return p.jsx(FU,{value:a,children:p.jsx(c,H({},d,{children:p.jsx(P2,{slots:i,slotProps:l,itemsToRender:s.getItemsToRender()})}))})}),Uz=rt(p.jsx("path",{d:"m9.17 6 2 2H20v10H4V6zM10 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2h-8z"})),zz=rt([p.jsx("path",{d:"M19 5v14H5V5zm0-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-2"},"0"),p.jsx("path",{d:"M14 17H7v-2h7zm3-4H7v-2h10zm0-4H7V7h10z"},"1")]),Vz=rt(p.jsx("path",{d:"M19 15v4H5v-4zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1v-6c0-.55-.45-1-1-1M7 18.5c-.82 0-1.5-.67-1.5-1.5s.68-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5M19 5v4H5V5zm1-2H4c-.55 0-1 .45-1 1v6c0 .55.45 1 1 1h16c.55 0 1-.45 1-1V4c0-.55-.45-1-1-1M7 8.5c-.82 0-1.5-.67-1.5-1.5S6.18 5.5 7 5.5s1.5.68 1.5 1.5S7.83 8.5 7 8.5"})),Wz=rt(p.jsx("path",{d:"M15 4v2h3v12h-3v2h5V4zM4 20h5v-2H6V6h3V4H4z"}));function R2({items:e,defaultExpandedItems:t,onClickTreeNode:n}){return p.jsx(Hz,{items:Qz(e,n),defaultExpandedItems:t,slots:{item:Kz}})}const qz=s0.animated(Qs);function Yz(e){const t=s0.useSpring({to:{opacity:e.in?1:0,transform:`translate3d(0,${e.in?0:20}px,0)`}});return p.jsx(qz,{style:t,...e})}function Gz({item:e,...t}){const n=p.jsxs(cz,{...t,sx:{display:"flex",alignItems:"center",color:e.error?"error.main":"grey.600"},children:[e.fileType==="directory"&&p.jsx(Uz,{})||e.fileType==="notebook"&&p.jsx(zz,{})||e.fileType==="model"&&p.jsx(Wz,{})||e.fileType=="database"&&p.jsx(Vz,{})||p.jsx(d2,{}),p.jsx(I.Typography,{variant:"body2",sx:{marginLeft:"5px"},color:e.error?"error.main":e.link?"primary.main":"grey.600",children:e.label})]});return e.error?p.jsx(I.Tooltip,{title:e.error,placement:"right",children:n}):n}const Kz=k.forwardRef(function(t,n){const{id:r,itemId:o,label:a,children:s,disabled:i,...l}=t,{getRootProps:u,getContentProps:c,getLabelProps:d,getIconContainerProps:m,getGroupTransitionProps:f,status:h,publicAPI:b}=VU({id:r,itemId:o,children:s,label:a,disabled:i,rootRef:n}),g=b.getItem(o);return h.selected=!1,h.focused=!1,p.jsx(ff,{itemId:o,children:p.jsxs(lz,{...u(l),children:[p.jsxs(uz,{...c(),...g.link&&{onClick:x=>g.link(x)},sx:{pointerEvents:!g.selectable&&"none"},children:[p.jsx(dz,{...m(),children:p.jsx(sz,{status:h})}),p.jsx(Gz,{...d({item:g})})]}),s&&p.jsx(Yz,{...f()})]})})});function Qz(e,t){const n=new Map;return e.map(r=>{let o=n;const a=r.path.split("/");a.forEach((s,i)=>{i===a.length-1?o.set(s,r):(o.has(s)||o.set(s,new Map),o=o.get(s))})}),M2(n,"",t)}function M2(e,t,n){const r=[];return e.forEach((o,a)=>{const s=a.endsWith(".malloy")&&"model"||a.endsWith(".malloynb")&&"notebook"||a.endsWith(".parquet")&&"database"||"unknown";if(s!=="unknown"){const i=o;r.push({id:t+a,label:a,fileType:s,link:s==="model"||s==="notebook"?l=>n(t+a,l):void 0,selectable:s==="model"||s==="notebook",error:"error"in i?i.error:void 0})}else{const i=t+a+"/";r.push({id:i,label:a,fileType:"directory",selectable:!0,link:void 0,children:M2(o,i,n)})}}),r}const Xz=["notebooks/","models/"];function N2({onClickModelFile:e,resourceUri:t}){const{projectName:n,packageName:r,versionId:o}=Ct(t),{apiClients:a}=it.useServer(),{data:s,isError:i,error:l,isSuccess:u}=Jt({queryKey:["models",n,r,o],queryFn:()=>a.models.listModels(n,r,o)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Semantic Models"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&p.jsx(on,{text:"Fetching Models..."}),i&&p.jsx(Zt,{error:l,context:`${n} > ${r} > Models`}),u&&s.data.length>0&&p.jsx(R2,{items:s.data.sort((c,d)=>c.path.localeCompare(d.path)),onClickTreeNode:e,defaultExpandedItems:Xz}),u&&s.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No models found"})]})]})})}const Zz=["notebooks/"];function Jz({onClickNotebookFile:e,resourceUri:t}){const{apiClients:n}=it.useServer(),{projectName:r,packageName:o,versionId:a}=Ct(t),{data:s,isError:i,error:l,isSuccess:u}=Jt({queryKey:["notebooks",r,o,a],queryFn:()=>n.notebooks.listNotebooks(r,o,a)});return p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Notebooks"}),p.jsxs(I.Box,{sx:{maxHeight:"200px",overflowY:"auto"},children:[!u&&!i&&p.jsx(on,{text:"Fetching Notebooks..."}),i&&p.jsx(Zt,{error:l,context:`${r} > ${o} > Notebooks`}),u&&s.data.length>0&&p.jsx(R2,{items:s.data.sort((c,d)=>c.path.localeCompare(d.path)),defaultExpandedItems:Zz,onClickTreeNode:e}),u&&s.data.length===0&&p.jsx(I.Typography,{variant:"body2",children:"No notebooks found"})]})]})})}const eV="README.malloynb";function tV({onClickPackageFile:e,resourceUri:t}){e||(e=r=>{window.location.href=r});const n=pi({...Ct(t),modelPath:eV});return p.jsx(p.Fragment,{children:p.jsxs(I.Grid,{container:!0,spacing:3,columns:12,children:[p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(uU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(Jz,{onClickNotebookFile:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:4},children:p.jsx(N2,{onClickModelFile:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:6},children:p.jsx(bU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:6},children:p.jsx(gU,{resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"README"}),p.jsx(I.Box,{sx:{mt:1},children:p.jsx(c2,{resourceUri:n})})]})})})]})})}function nV({resourceUri:e}){const{projectName:t}=Ct(e),{apiClients:n}=it.useServer(),[r,o]=W.useState(!1),a=90,{data:s,isSuccess:i,isError:l,error:u}=Jt({queryKey:["about",t],queryFn:()=>n.projects.getProject(t,!1)}),c=s?.data?.readme||"",d=c.split(/\s+/),m=d.length>a,f=d.slice(0,a).join(" ");return p.jsxs(p.Fragment,{children:[!i&&!l&&p.jsx(on,{text:"Fetching About..."}),i&&c&&p.jsx(ro,{children:p.jsxs(oo,{children:[p.jsx(Fo,{children:"Readme"}),p.jsxs(I.Box,{sx:{mt:1,fontSize:"0.875rem",lineHeight:1.6},children:[p.jsx(dl,{options:{overrides:{h1:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h2:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}},h3:{component:"p",props:{style:{fontSize:"inherit",fontWeight:"italic"}}}}},children:r||!m?c:f}),m&&p.jsxs(I.Box,{sx:{mt:1},children:[" ",p.jsx(I.Button,{variant:"text",size:"small",onClick:()=>o(!r),children:r?"Read less":"Read more"})]})]})]})}),l&&p.jsx(Zt,{error:u,context:`${t} > About`})]})}function rV({resourceUri:e}){const[t,n]=W.useState(!1),{apiClients:r}=it.useServer(),o=$r.useQueryClient(),[a,s]=W.useState(""),i=()=>{n(!0)},l=()=>{n(!1)},{projectName:u}=Ct(e),c=hr({async mutationFn(m){return r.packages.createPackage(u,{name:m.name,description:m.description,location:m.location})},onSuccess(){l(),s("Package created successfully"),o.invalidateQueries({queryKey:["packages",u]})},onError(m){s(m instanceof Error?m.message:"An unknown error occurred")}}),d=m=>{m.preventDefault();const f=new FormData(m.currentTarget),h=f.get("name")?.toString(),b=f.get("description")?.toString(),g=f.get("location")?.toString();c.mutate({name:h,description:b,location:g})};return p.jsxs(W.Fragment,{children:[p.jsx(Dt,{onClick:i,variant:"contained",color:"primary",startIcon:p.jsx(An.Add,{}),sx:{color:"white"},children:"Add Package"}),p.jsxs(kr,{open:t,onClose:l,children:[p.jsx(Ur,{children:"Create New Package"}),p.jsxs(Sr,{children:[p.jsxs(Ua,{children:["Create a new malloy package to start exploring your data.",p.jsx("br",{}),p.jsx("br",{}),"The location can be a GitHub/S3/GCP URL containing a package (Zipped or unzipped), or an absolute path to a directory that the publisher server has access to.",p.jsx("br",{}),p.jsx("br",{}),"Make sure to conform the"," ",p.jsx("a",{href:"https://github.com/malloydata/publisher/blob/main/README.md#architecture-overview",target:"_blank",rel:"noopener noreferrer",children:"Malloy Package Format"}),"."]}),p.jsxs("form",{onSubmit:d,id:"package-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",type:"text",fullWidth:!0,variant:"standard"}),p.jsx(Rt,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,variant:"standard"}),p.jsx(Rt,{id:"location",name:"location",label:"Location",type:"text",placeholder:"E.g. s3://my-bucket/my-package.zip",fullWidth:!0,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:c.isPending,onClick:l,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"package-form",loading:c.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:a!=="",autoHideDuration:6e3,onClose:()=>s(""),message:a})]})}function oV({resourceUri:e,onCloseDialog:t}){const[n,r]=W.useState(!1),{apiClients:o}=it.useServer(),a=$r.useQueryClient(),[s,i]=W.useState(""),l=()=>{r(!0)},u=()=>{r(!1),t()},{projectName:c,packageName:d}=Ct(e),m=hr({mutationFn:()=>o.packages.deletePackage(c,d),onSuccess(){u(),a.invalidateQueries({queryKey:["packages"]}),i("Package deleted successfully")},onError(f){i(f instanceof Error?f.message:"An unknown error occurred")}});return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:l,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Delete,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Delete"})]}),p.jsxs(kr,{onClose:u,"aria-labelledby":"customized-dialog-title",open:n,children:[p.jsx(Ur,{sx:{m:0,p:2},id:"customized-dialog-title",children:"Delete Package"}),p.jsx(yr,{"aria-label":"close",onClick:u,sx:f=>({position:"absolute",right:8,top:8,color:f.palette.grey[500]}),children:p.jsx(to,{})}),p.jsx(Sr,{dividers:!0,children:p.jsxs(Cn,{gutterBottom:!0,children:['Are you sure you want to delete "',d,'"? This action cannot be undone.']})}),p.jsxs(Tr,{children:[p.jsx(Dt,{variant:"outlined",onClick:u,style:{borderColor:"#14b3cb",color:"#14b3cb"},children:"Cancel"}),p.jsx(Dt,{variant:"contained",autoFocus:!0,onClick:()=>m.mutate(),color:"error",loading:m.isPending,children:"Delete"})]}),p.jsx(I.Snackbar,{open:s!=="",autoHideDuration:6e3,onClose:()=>i(""),message:s})]})]})}function aV({package:e,resourceUri:t,onCloseDialog:n}){const[r,o]=W.useState(!1),{apiClients:a}=it.useServer(),s=$r.useQueryClient(),[i,l]=W.useState(""),u=()=>{o(!0)},c=()=>{o(!1),n()},{packageName:d,projectName:m}=Ct(t),f=hr({async mutationFn(b){return a.packages.updatePackage(m,d,{name:d,description:b.description})},onSuccess(){c(),l("Package updated successfully"),s.invalidateQueries({queryKey:["packages",m]})},onError(b){l(b instanceof Error?b.message:"An unknown error occurred")}}),h=b=>{b.preventDefault();const x=new FormData(b.currentTarget).get("description")?.toString();f.mutate({description:x})};return p.jsxs(W.Fragment,{children:[p.jsxs(I.MenuItem,{onClick:u,children:[p.jsx(I.ListItemIcon,{children:p.jsx(An.Edit,{fontSize:"small"})}),p.jsx(I.ListItemText,{children:"Edit"})]}),p.jsxs(kr,{open:r,onClose:c,children:[p.jsx(Ur,{children:"Edit Package"}),p.jsxs(Sr,{children:[p.jsxs(Ua,{children:['Update the details for "',e.name,'".']}),p.jsxs("form",{onSubmit:h,id:"package-form",children:[p.jsx(Rt,{autoFocus:!0,required:!0,margin:"dense",id:"name",name:"name",label:"Package Name",disabled:!0,type:"text",fullWidth:!0,variant:"standard",defaultValue:e.name}),p.jsx(Rt,{id:"description",name:"description",label:"Description",multiline:!0,fullWidth:!0,rows:4,defaultValue:e.description,variant:"standard"})]})]}),p.jsxs(Tr,{children:[p.jsx(Dt,{disabled:f.isPending,onClick:c,children:"Cancel"}),p.jsx(Dt,{type:"submit",form:"package-form",loading:f.isPending,children:"Save Changes"})]})]}),p.jsx(I.Snackbar,{open:i!=="",autoHideDuration:6e3,onClose:()=>l(""),message:i})]})}const sV=({package:e,resourceUri:t})=>{const{mutable:n}=it.useServer(),[r,o]=W.useState(null),a=!!r,s=l=>{o(l.currentTarget)},i=()=>{o(null)};return p.jsx(p.Fragment,{children:n&&p.jsxs(p.Fragment,{children:[p.jsx(I.IconButton,{onClick:l=>{l.stopPropagation(),s(l)},"aria-controls":a?"package-menu":void 0,"aria-haspopup":"true","aria-expanded":a?"true":void 0,children:p.jsx(An.MoreVert,{fontSize:"small"})}),p.jsxs(I.Menu,{id:"package-menu","aria-haspopup":"true","aria-expanded":a?"true":void 0,open:a,anchorEl:r,onClose:i,disableRestoreFocus:!0,anchorOrigin:{vertical:"top",horizontal:"left"},transformOrigin:{vertical:"top",horizontal:"right"},onClick:l=>{l.stopPropagation()},children:[p.jsx(aV,{package:e,resourceUri:t,onCloseDialog:i}),p.jsx(oV,{resourceUri:t,onCloseDialog:i})]})]})})};function O2({onSelectPackage:e,resourceUri:t}){const{apiClients:n}=it.useServer(),{projectName:r}=Ct(t),{data:o,isSuccess:a,isError:s,error:i}=Jt({queryKey:["packages",r],queryFn:()=>n.packages.listPackages(r)});return p.jsxs(p.Fragment,{children:[!a&&!s&&p.jsx(on,{text:"Fetching Packages..."}),a&&p.jsx(I.Grid,{container:!0,spacing:3,columns:12,children:o.data.sort((l,u)=>l.name.localeCompare(u.name)).map(l=>{const u=pi({projectName:r,packageName:l.name});return p.jsx(I.Grid,{size:{xs:12,sm:12,md:12,lg:4},children:p.jsx(ro,{sx:{cursor:"pointer",transition:"all 0.2s ease-in-out",paddingTop:"8px","&:hover":{boxShadow:"0 2px 6px rgba(0, 0, 0, 0.08)",transform:"translateY(-1px)"}},onClick:c=>{e(l.name,c)},children:p.jsxs(oo,{children:[p.jsxs(I.Box,{display:"flex",alignItems:"center",justifyContent:"space-between",sx:{marginBottom:"8px"},children:[p.jsx(I.Typography,{variant:"overline",sx:{fontSize:"12px",fontWeight:"600",color:"primary.main",textTransform:"uppercase",letterSpacing:"0.5px"},children:l.name}),p.jsx(sV,{package:l,resourceUri:u})]}),p.jsx(I.Divider,{sx:{mb:2}}),p.jsx(I.Box,{sx:{maxHeight:"120px",overflowY:"auto",mt:2},children:p.jsx(I.Typography,{variant:"body2",children:l.description})})]})})},l.name)})}),s&&p.jsx(Zt,{error:i,context:`${r} > Packages`})]})}function iV({onSelectPackage:e,resourceUri:t}){const{mutable:n}=it.useServer(),{projectName:r}=Ct(t);return W.useEffect(()=>{window.scrollTo({top:0,behavior:"auto"})},[]),p.jsx(p.Fragment,{children:p.jsxs(wv,{children:[p.jsxs(I.Box,{display:"flex",justifyContent:"space-between",alignItems:"center",mb:2,children:[p.jsxs(I.Typography,{variant:"h6",children:[r," packages"]}),n&&p.jsx(rV,{resourceUri:t})]}),p.jsxs(I.Grid,{container:!0,spacing:3,columns:12,children:[p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(O2,{onSelectPackage:e,resourceUri:t})}),p.jsx(I.Grid,{size:{xs:12,md:12},children:p.jsx(nV,{resourceUri:t})})]})]})})}const lV=async e=>{if(typeof window>"u")throw new Error("MalloyRenderer can only be used in browser environment");const{MalloyRenderer:t}=await import("@malloydata/render");return new t({onClick:e,onError:r=>{console.error("Error rendering visualization:",typeof r,r)}}).createViz()};function uV({result:e,height:t,onDrill:n,onSizeChange:r}){const o=W.useRef(null),a=W.useRef(!1);return W.useLayoutEffect(()=>{if(!o.current||!e)return;let s=!0;const i=o.current;for(;i.firstChild;)i.removeChild(i.firstChild);a.current=!1;let l=null,u=null;const c=()=>{if(a.current||!s||!i.firstElementChild)return;const m=i.firstElementChild.firstElementChild;if(!m)return;const f=m.firstElementChild;let h=m.scrollHeight||m.offsetHeight||0;f&&m.classList.contains("malloy-dashboard")&&(h=f.scrollHeight||f.offsetHeight||0),h>0&&(a.current=!0,r&&r(h))};return lV(n).then(d=>{if(s){l=new MutationObserver(()=>{u&&clearTimeout(u),u=setTimeout(()=>{c(),l?.disconnect()},100)}),l.observe(i,{childList:!0,subtree:!0,attributes:!0});try{d.setResult(JSON.parse(e)),d.render(i)}catch(m){console.error("Error rendering visualization:",m),l?.disconnect()}}}).catch(d=>{console.error("Failed to create renderer:",d)}),()=>{s=!1,l?.disconnect(),u&&clearTimeout(u)}},[e,n,r]),p.jsx("div",{ref:o,style:{width:"100%",height:t?`${t}px`:"400px"}})}function L2(e){return typeof window>"u"?p.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading..."}):p.jsx(W.Suspense,{fallback:p.jsx("div",{style:{width:"100%",height:e.height?`${e.height}px`:"100%",display:"flex",alignItems:"center",justifyContent:"center",color:"#666"},children:"Loading visualization..."}),children:p.jsx(uV,{...e})})}const F2=Object.freeze(Object.defineProperty({__proto__:null,default:L2},Symbol.toStringTag,{value:"Module"}));function $2(e){return e.replace(/'/g,"\\'").replace(/\\/g,"\\\\")}function lr(e,t=!1){return e==null?"null":t?e instanceof Date?`@${e.getFullYear()}-${String(e.getMonth()+1).padStart(2,"0")}-${String(e.getDate()).padStart(2,"0")}`:`@${e}`:typeof e=="string"?`'${$2(e)}'`:typeof e=="number"?String(e):typeof e=="boolean"?e?"true":"false":String(e)}function cV(e){const{dimensionName:t,matchType:n,value:r,value2:o}=e,a=`\`${t}\``,s=r instanceof Date;switch(n){case"Equals":case"Semantic Search":return Array.isArray(r)&&r.length>0?`(${r.map(l=>`${a} = ${lr(l,s)}`).join(" or ")})`:Array.isArray(r)?"":`${a} = ${lr(r,s)}`;case"Contains":return typeof r=="string"?`${a} ~ f'%${$2(r)}%'`:Array.isArray(r)?"":`${a} = ${lr(r)}`;case"After":return Array.isArray(r)?"":`${a} > ${lr(r,s)}`;case"Before":return Array.isArray(r)?"":`${a} < ${lr(r,s)}`;case"Greater Than":return Array.isArray(r)?"":`${a} > ${lr(r)}`;case"Less Than":return Array.isArray(r)?"":`${a} < ${lr(r)}`;case"Between":return Array.isArray(r)?"":o!==void 0?`${a} >= ${lr(r,s)} and ${a} <= ${lr(o,s)}`:`${a} >= ${lr(r,s)}`;default:return""}}function dV(e){if(e.length===0)return"";const t=e.map(n=>cV(n)).filter(n=>n.length>0);return t.length===0?"":t.join(" and ")}function pV(e,t,n,r=1e3){const o=dV(t),s=n&&n.length>0?`group_by: ${n.map(i=>`\`${i}\``).join(", ")}`:"select: *";return o?`
234
234
  run: ${e} -> {
235
235
  where: ${o}
236
236
  ${s}