@agentmark-ai/cli 0.10.0 → 0.10.1
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/README.md +143 -1
- package/dist/.next/BUILD_ID +1 -1
- package/dist/.next/app-build-manifest.json +3 -3
- package/dist/.next/build-manifest.json +2 -2
- package/dist/.next/cache/.previewinfo +1 -1
- package/dist/.next/cache/.rscinfo +1 -1
- package/dist/.next/cache/.tsbuildinfo +1 -1
- package/dist/.next/cache/config.json +3 -3
- package/dist/.next/cache/webpack/client-production/0.pack +0 -0
- package/dist/.next/cache/webpack/client-production/index.pack +0 -0
- package/dist/.next/cache/webpack/edge-server-production/index.pack +0 -0
- package/dist/.next/cache/webpack/server-production/0.pack +0 -0
- package/dist/.next/cache/webpack/server-production/index.pack +0 -0
- package/dist/.next/prerender-manifest.json +10 -10
- package/dist/.next/server/app/_not-found.html +1 -1
- package/dist/.next/server/app/_not-found.rsc +1 -1
- package/dist/.next/server/app/experiments/compare.html +1 -1
- package/dist/.next/server/app/experiments/compare.rsc +1 -1
- package/dist/.next/server/app/experiments.html +1 -1
- package/dist/.next/server/app/experiments.rsc +1 -1
- package/dist/.next/server/app/index.html +1 -1
- package/dist/.next/server/app/index.rsc +1 -1
- package/dist/.next/server/app/requests/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/requests.html +1 -1
- package/dist/.next/server/app/requests.rsc +2 -2
- package/dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/sessions.html +1 -1
- package/dist/.next/server/app/sessions.rsc +2 -2
- package/dist/.next/server/app/traces/page_client-reference-manifest.js +1 -1
- package/dist/.next/server/app/traces.html +1 -1
- package/dist/.next/server/app/traces.rsc +2 -2
- package/dist/.next/server/chunks/478.js +2 -2
- package/dist/.next/server/pages/404.html +1 -1
- package/dist/.next/server/pages/500.html +1 -1
- package/dist/.next/server/server-reference-manifest.json +1 -1
- package/dist/.next/static/chunks/{41-8ba62a009d80b6dc.js → 41-f512c46d7ea943f6.js} +1 -1
- package/dist/.next/trace +56 -56
- package/dist/api-server.js +0 -1
- package/dist/api-server.js.map +1 -1
- package/dist/commands/deploy.d.ts +27 -0
- package/dist/commands/deploy.js +223 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/dev.d.ts +0 -1
- package/dist/commands/dev.js +79 -66
- package/dist/commands/dev.js.map +1 -1
- package/dist/commands/run-experiment.js +7 -28
- package/dist/commands/run-experiment.js.map +1 -1
- package/dist/commands/run-prompt.js +6 -27
- package/dist/commands/run-prompt.js.map +1 -1
- package/dist/config.d.ts +2 -12
- package/dist/config.js +4 -44
- package/dist/config.js.map +1 -1
- package/dist/connect/job-handler.d.ts +23 -0
- package/dist/connect/job-handler.js +187 -0
- package/dist/connect/job-handler.js.map +1 -0
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/runner-server.d.ts +0 -6
- package/dist/runner-server.js +3 -39
- package/dist/runner-server.js.map +1 -1
- package/package.json +3 -2
- package/dist/cloudflared/download.d.ts +0 -12
- package/dist/cloudflared/download.js +0 -130
- package/dist/cloudflared/download.js.map +0 -1
- package/dist/cloudflared/index.d.ts +0 -9
- package/dist/cloudflared/index.js +0 -20
- package/dist/cloudflared/index.js.map +0 -1
- package/dist/cloudflared/platform.d.ts +0 -20
- package/dist/cloudflared/platform.js +0 -79
- package/dist/cloudflared/platform.js.map +0 -1
- package/dist/cloudflared/tunnel.d.ts +0 -16
- package/dist/cloudflared/tunnel.js +0 -129
- package/dist/cloudflared/tunnel.js.map +0 -1
- package/dist/cloudflared/types.d.ts +0 -53
- package/dist/cloudflared/types.js +0 -8
- package/dist/cloudflared/types.js.map +0 -1
- package/dist/runner-server/middleware/signature-verification.d.ts +0 -37
- package/dist/runner-server/middleware/signature-verification.js +0 -55
- package/dist/runner-server/middleware/signature-verification.js.map +0 -1
- package/dist/tunnel.d.ts +0 -6
- package/dist/tunnel.js +0 -11
- package/dist/tunnel.js.map +0 -1
- /package/dist/.next/static/{p7ZqHwMUDueov4RV9Be-X → 2NZm040KzCzDPOX6MqoKG}/_buildManifest.js +0 -0
- /package/dist/.next/static/{p7ZqHwMUDueov4RV9Be-X → 2NZm040KzCzDPOX6MqoKG}/_ssgManifest.js +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
exports.id=478,exports.ids=[478],exports.modules={3395:(a,b,c)=>{"use strict";c.d(b,{BK:()=>hM,Ds:()=>iF,Eh:()=>hH,Ek:()=>hN,FQ:()=>iz,IO:()=>iN,K2:()=>ca,L8:()=>hx,LE:()=>hJ,Lh:()=>iM,Ow:()=>hv,Q$:()=>iy,QK:()=>hK,V5:()=>iT,Zc:()=>it,_B:()=>hW,_h:()=>h2,eP:()=>iu,ep:()=>hP,gF:()=>iw,lv:()=>ht,qx:()=>hz,rr:()=>hO,sK:()=>hL,t3:()=>hG,uz:()=>iR,vG:()=>hI});var d,e,f,g,h,i=c(72396),j=c(86670),k=c(31768),l=c(78157),m=c(89508),n=c(86841),o=c(77438),p=c(26743),q=c(90410),r=c(28669),s=c(17692),t=c(98770),u=c(13666),v=c(33372),w=c(21127),x=c(73517),y=c(18236),z=c(21335),A=c(84155),B=c(40053),C=c(66075),D=c(74034),E=c(50339),F=c(37217),G=c(79103),H=c(39880),I=c(81008),J=c(7502),K=c(20776),L=c(13621),M=c(37703),N=c(5955),O=c(77986),P=c(53678),Q=c(51701),R=c(80945),S=c(93474),T=c(13647),U=c(48244),V=c(48128),W=c(85506),X=c(54862),Y=c(39553),Z=c(87598),$=c(2952),_=c(53480);c(41973);var aa=c(31933),ab=c(24672),ac=c(73995),ad=c(48756),ae=c(96262),af=c(50392),ag=c(36473),ah=c(52830),ai=c(22749),aj=c(80142),ak=c(27132),al=c(40975),am=c(20969);c(13395);var an=Object.create,ao=Object.defineProperty,ap=Object.getOwnPropertyDescriptor,aq=Object.getOwnPropertyNames,ar=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,at=(a,b)=>function(){return b||(0,a[aq(a)[0]])((b={exports:{}}).exports,b),b.exports},au=(a,b,c)=>(c=null!=a?an(ar(a)):{},((a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let e of aq(b))as.call(a,e)||e===c||ao(a,e,{get:()=>b[e],enumerable:!(d=ap(b,e))||d.enumerable});return a})(!b&&a&&a.__esModule?c:ao(c,"default",{value:a,enumerable:!0}),a)),av=at({"../../node_modules/react-is/cjs/react-is.production.min.js"(a){var b="function"==typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,i=b?Symbol.for("react.context"):60110,j=b?Symbol.for("react.async_mode"):60111,k=b?Symbol.for("react.concurrent_mode"):60111,l=b?Symbol.for("react.forward_ref"):60112,m=b?Symbol.for("react.suspense"):60113,n=b?Symbol.for("react.suspense_list"):60120,o=b?Symbol.for("react.memo"):60115,p=b?Symbol.for("react.lazy"):60116,q=b?Symbol.for("react.block"):60121,r=b?Symbol.for("react.fundamental"):60117,s=b?Symbol.for("react.responder"):60118,t=b?Symbol.for("react.scope"):60119;function u(a){if("object"==typeof a&&null!==a){var b=a.$$typeof;switch(b){case c:switch(a=a.type){case j:case k:case e:case g:case f:case m:return a;default:switch(a=a&&a.$$typeof){case i:case l:case p:case o:case h:return a;default:return b}}case d:return b}}}function v(a){return u(a)===k}a.AsyncMode=j,a.ConcurrentMode=k,a.ContextConsumer=i,a.ContextProvider=h,a.Element=c,a.ForwardRef=l,a.Fragment=e,a.Lazy=p,a.Memo=o,a.Portal=d,a.Profiler=g,a.StrictMode=f,a.Suspense=m,a.isAsyncMode=function(a){return v(a)||u(a)===j},a.isConcurrentMode=v,a.isContextConsumer=function(a){return u(a)===i},a.isContextProvider=function(a){return u(a)===h},a.isElement=function(a){return"object"==typeof a&&null!==a&&a.$$typeof===c},a.isForwardRef=function(a){return u(a)===l},a.isFragment=function(a){return u(a)===e},a.isLazy=function(a){return u(a)===p},a.isMemo=function(a){return u(a)===o},a.isPortal=function(a){return u(a)===d},a.isProfiler=function(a){return u(a)===g},a.isStrictMode=function(a){return u(a)===f},a.isSuspense=function(a){return u(a)===m},a.isValidElementType=function(a){return"string"==typeof a||"function"==typeof a||a===e||a===k||a===g||a===f||a===m||a===n||"object"==typeof a&&null!==a&&(a.$$typeof===p||a.$$typeof===o||a.$$typeof===h||a.$$typeof===i||a.$$typeof===l||a.$$typeof===r||a.$$typeof===s||a.$$typeof===t||a.$$typeof===q)},a.typeOf=u}});at({"../../node_modules/react-is/cjs/react-is.development.js"(a){}});var aw=at({"../../node_modules/react-is/index.js"(a,b){b.exports=av()}}),ax=at({"../../node_modules/object-assign/index.js"(a,b){var c=Object.getOwnPropertySymbols,d=Object.prototype.hasOwnProperty,e=Object.prototype.propertyIsEnumerable;b.exports=!function(){try{if(!Object.assign)return!1;var a=new String("abc");if(a[5]="de","5"===Object.getOwnPropertyNames(a)[0])return!1;for(var b={},c=0;c<10;c++)b["_"+String.fromCharCode(c)]=c;var d=Object.getOwnPropertyNames(b).map(function(a){return b[a]});if("0123456789"!==d.join(""))return!1;var e={};if("abcdefghijklmnopqrst".split("").forEach(function(a){e[a]=a}),"abcdefghijklmnopqrst"!==Object.keys(Object.assign({},e)).join(""))return!1;return!0}catch(a){return!1}}()?function(a,b){for(var f,g,h=function(a){if(null==a)throw TypeError("Object.assign cannot be called with null or undefined");return Object(a)}(a),i=1;i<arguments.length;i++){for(var j in f=Object(arguments[i]))d.call(f,j)&&(h[j]=f[j]);if(c){g=c(f);for(var k=0;k<g.length;k++)e.call(f,g[k])&&(h[g[k]]=f[g[k]])}}return h}:Object.assign}}),ay=at({"../../node_modules/prop-types/lib/ReactPropTypesSecret.js"(a,b){b.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}}),az=at({"../../node_modules/prop-types/lib/has.js"(a,b){b.exports=Function.call.bind(Object.prototype.hasOwnProperty)}}),aA=at({"../../node_modules/prop-types/checkPropTypes.js"(a,b){function c(a,b,c,d,e){}c.resetWarningCache=function(){},b.exports=c}});at({"../../node_modules/prop-types/factoryWithTypeCheckers.js"(a,b){var c=aw(),d=ax(),e=ay(),f=az(),g=aA(),h=function(){};function i(){return null}b.exports=function(a,b){var j="function"==typeof Symbol&&Symbol.iterator,k="<<anonymous>>",l={array:o("array"),bigint:o("bigint"),bool:o("boolean"),func:o("function"),number:o("number"),object:o("object"),string:o("string"),symbol:o("symbol"),any:n(i),arrayOf:function(a){return n(function(b,c,d,f,g){if("function"!=typeof a)return new m("Property `"+g+"` of component `"+d+"` has invalid PropType notation inside arrayOf.");var h=b[c];if(!Array.isArray(h))return new m("Invalid "+f+" `"+g+"` of type "+("`"+q(h)+"` supplied to `")+d+"`, expected an array.");for(var i=0;i<h.length;i++){var j=a(h,i,d,f,g+"["+i+"]",e);if(j instanceof Error)return j}return null})},element:n(function(b,c,d,e,f){var g=b[c];return a(g)?null:new m("Invalid "+e+" `"+f+"` of type "+("`"+q(g)+"` supplied to `")+d+"`, expected a single ReactElement.")}),elementType:n(function(a,b,d,e,f){var g=a[b];return c.isValidElementType(g)?null:new m("Invalid "+e+" `"+f+"` of type "+("`"+q(g)+"` supplied to `")+d+"`, expected a single ReactElement type.")}),instanceOf:function(a){return n(function(b,c,d,e,f){if(!(b[c]instanceof a)){var g,h=a.name||k;return new m("Invalid "+e+" `"+f+"` of type "+("`"+((g=b[c]).constructor&&g.constructor.name?g.constructor.name:k)+"` supplied to `")+d+"`, expected instance of `"+h+"`.")}return null})},node:n(function(b,c,d,e,f){return!function b(c){switch(typeof c){case"number":case"string":case"undefined":return!0;case"boolean":return!c;case"object":if(Array.isArray(c))return c.every(b);if(null===c||a(c))return!0;var d=function(a){var b=a&&(j&&a[j]||a["@@iterator"]);if("function"==typeof b)return b}(c);if(!d)return!1;var e,f=d.call(c);if(d!==c.entries){for(;!(e=f.next()).done;)if(!b(e.value))return!1}else for(;!(e=f.next()).done;){var g=e.value;if(g&&!b(g[1]))return!1}return!0;default:return!1}}(b[c])?new m("Invalid "+e+" `"+f+"` supplied to `"+d+"`, expected a ReactNode."):null}),objectOf:function(a){return n(function(b,c,d,g,h){if("function"!=typeof a)return new m("Property `"+h+"` of component `"+d+"` has invalid PropType notation inside objectOf.");var i=b[c],j=q(i);if("object"!==j)return new m("Invalid "+g+" `"+h+"` of type "+("`"+j+"` supplied to `")+d+"`, expected an object.");for(var k in i)if(f(i,k)){var l=a(i,k,d,g,h+"."+k,e);if(l instanceof Error)return l}return null})},oneOf:function(a){return Array.isArray(a)?n(function(b,c,d,e,f){for(var g,h=b[c],i=0;i<a.length;i++)if(h===(g=a[i])?0!==h||1/h==1/g:h!=h&&g!=g)return null;var j=JSON.stringify(a,function(a,b){return"symbol"===r(b)?String(b):b});return new m("Invalid "+e+" `"+f+"` of value `"+String(h)+"` "+("supplied to `"+d+"`, expected one of ")+j+".")}):i},oneOfType:function(a){if(!Array.isArray(a))return i;for(var b=0;b<a.length;b++){var c=a[b];if("function"!=typeof c)return h("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+function(a){var b=r(a);switch(b){case"array":case"object":return"an "+b;case"boolean":case"date":case"regexp":return"a "+b;default:return b}}(c)+" at index "+b+"."),i}return n(function(b,c,d,g,h){for(var i=[],j=0;j<a.length;j++){var k=(0,a[j])(b,c,d,g,h,e);if(null==k)return null;k.data&&f(k.data,"expectedType")&&i.push(k.data.expectedType)}return new m("Invalid "+g+" `"+h+"` supplied to "+("`"+d+"`")+(i.length>0?", expected one of type ["+i.join(", ")+"]":"")+".")})},shape:function(a){return n(function(b,c,d,f,g){var h=b[c],i=q(h);if("object"!==i)return new m("Invalid "+f+" `"+g+"` of type `"+i+"` supplied to `"+d+"`, expected `object`.");for(var j in a){var k=a[j];if("function"!=typeof k)return p(d,f,g,j,r(k));var l=k(h,j,d,f,g+"."+j,e);if(l)return l}return null})},exact:function(a){return n(function(b,c,g,h,i){var j=b[c],k=q(j);if("object"!==k)return new m("Invalid "+h+" `"+i+"` of type `"+k+"` supplied to `"+g+"`, expected `object`.");var l=d({},b[c],a);for(var n in l){var o=a[n];if(f(a,n)&&"function"!=typeof o)return p(g,h,i,n,r(o));if(!o)return new m("Invalid "+h+" `"+i+"` key `"+n+"` supplied to `"+g+"`.\nBad object: "+JSON.stringify(b[c],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(a),null," "));var s=o(j,n,g,h,i+"."+n,e);if(s)return s}return null})}};function m(a,b){this.message=a,this.data=b&&"object"==typeof b?b:{},this.stack=""}function n(a){function c(c,d,f,g,h,i,j){if((g=g||k,i=i||f,j!==e)&&b){var l=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}return null!=d[f]?a(d,f,g,h,i):c?new m(null===d[f]?"The "+h+" `"+i+"` is marked as required in `"+g+"`, but its value is `null`.":"The "+h+" `"+i+"` is marked as required in `"+g+"`, but its value is `undefined`."):null}var d=c.bind(null,!1);return d.isRequired=c.bind(null,!0),d}function o(a){return n(function(b,c,d,e,f,g){var h=b[c];return q(h)!==a?new m("Invalid "+e+" `"+f+"` of type "+("`"+r(h)+"` supplied to `")+d+"`, expected `"+a+"`.",{expectedType:a}):null})}function p(a,b,c,d,e){return new m((a||"React class")+": "+b+" type `"+c+"."+d+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+e+"`.")}function q(a){var b=typeof a;return Array.isArray(a)?"array":a instanceof RegExp?"object":"symbol"===b||a&&("Symbol"===a["@@toStringTag"]||"function"==typeof Symbol&&a instanceof Symbol)?"symbol":b}function r(a){if(null==a)return""+a;var b=q(a);if("object"===b){if(a instanceof Date)return"date";else if(a instanceof RegExp)return"regexp"}return b}return m.prototype=Error.prototype,l.checkPropTypes=g,l.resetWarningCache=g.resetWarningCache,l.PropTypes=l,l}}});var aB=at({"../../node_modules/prop-types/factoryWithThrowingShims.js"(a,b){var c=ay();function d(){}function e(){}e.resetWarningCache=d,b.exports=function(){function a(a,b,d,e,f,g){if(g!==c){var h=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}function b(){return a}a.isRequired=a;var f={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:b,element:a,elementType:a,instanceOf:b,node:a,objectOf:b,oneOf:b,oneOfType:b,shape:b,exact:b,checkPropTypes:e,resetWarningCache:d};return f.PropTypes=f,f}}}),aC=at({"../../node_modules/prop-types/index.js"(a,b){b.exports=aB()()}}),aD=at({"../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.production.js"(a){var b=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),d=Symbol.for("react.fragment"),e=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),g=Symbol.for("react.consumer"),h=Symbol.for("react.context"),i=Symbol.for("react.forward_ref"),j=Symbol.for("react.suspense"),k=Symbol.for("react.suspense_list"),l=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),n=Symbol.for("react.view_transition"),o=Symbol.for("react.client.reference");function p(a){if("object"==typeof a&&null!==a){var o=a.$$typeof;switch(o){case b:switch(a=a.type){case d:case f:case e:case j:case k:case n:return a;default:switch(a=a&&a.$$typeof){case h:case i:case m:case l:case g:return a;default:return o}}case c:return o}}}a.ContextConsumer=g,a.ContextProvider=h,a.Element=b,a.ForwardRef=i,a.Fragment=d,a.Lazy=m,a.Memo=l,a.Portal=c,a.Profiler=f,a.StrictMode=e,a.Suspense=j,a.SuspenseList=k,a.isContextConsumer=function(a){return p(a)===g},a.isContextProvider=function(a){return p(a)===h},a.isElement=function(a){return"object"==typeof a&&null!==a&&a.$$typeof===b},a.isForwardRef=function(a){return p(a)===i},a.isFragment=function(a){return p(a)===d},a.isLazy=function(a){return p(a)===m},a.isMemo=function(a){return p(a)===l},a.isPortal=function(a){return p(a)===c},a.isProfiler=function(a){return p(a)===f},a.isStrictMode=function(a){return p(a)===e},a.isSuspense=function(a){return p(a)===j},a.isSuspenseList=function(a){return p(a)===k},a.isValidElementType=function(a){return"string"==typeof a||"function"==typeof a||a===d||a===f||a===e||a===j||a===k||"object"==typeof a&&null!==a&&(a.$$typeof===m||a.$$typeof===l||a.$$typeof===h||a.$$typeof===g||a.$$typeof===i||a.$$typeof===o||void 0!==a.getModuleId)||!1},a.typeOf=p}});at({"../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js"(a){}});var aE=at({"../../node_modules/@mui/utils/node_modules/react-is/index.js"(a,b){b.exports=aD()}}),aF={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},aG=/[A-Z]|^ms/g,aH=/_EMO_([^_]+?)_([^]*?)_EMO_/g,aI=function(a){return 45===a.charCodeAt(1)},aJ=function(a){return null!=a&&"boolean"!=typeof a},aK=function(a){var b=Object.create(null);return function(c){return void 0===b[c]&&(b[c]=a(c)),b[c]}}(function(a){return aI(a)?a:a.replace(aG,"-$&").toLowerCase()}),aL=function(a,b){switch(a){case"animation":case"animationName":if("string"==typeof b)return b.replace(aH,function(a,b,c){return d={name:b,styles:c,next:d},b})}return 1===aF[a]||aI(a)||"number"!=typeof b||0===b?b:b+"px"};function aM(a,b,c){if(null==c)return"";if(void 0!==c.__emotion_styles)return c;switch(typeof c){case"boolean":return"";case"object":if(1===c.anim)return d={name:c.name,styles:c.styles,next:d},c.name;if(void 0!==c.styles){var e=c.next;if(void 0!==e)for(;void 0!==e;)d={name:e.name,styles:e.styles,next:d},e=e.next;return c.styles+";"}return function(a,b,c){var d="";if(Array.isArray(c))for(var e=0;e<c.length;e++)d+=aM(a,b,c[e])+";";else for(var f in c){var g=c[f];if("object"!=typeof g)null!=b&&void 0!==b[g]?d+=f+"{"+b[g]+"}":aJ(g)&&(d+=aK(f)+":"+aL(f,g)+";");else if(Array.isArray(g)&&"string"==typeof g[0]&&(null==b||void 0===b[g[0]]))for(var h=0;h<g.length;h++)aJ(g[h])&&(d+=aK(f)+":"+aL(f,g[h])+";");else{var i=aM(a,b,g);switch(f){case"animation":case"animationName":d+=aK(f)+":"+i+";";break;default:d+=f+"{"+i+"}"}}}return d}(a,b,c);case"function":if(void 0!==a){var f=d,g=c(a);return d=f,aM(a,b,g)}}if(null==b)return c;var h=b[c];return void 0!==h?h:c}var aN=/label:\s*([^\s;{]+)\s*(;|$)/g,aO=[];function aP(a){return aO[0]=a,function(a,b,c){if(1===a.length&&"object"==typeof a[0]&&null!==a[0]&&void 0!==a[0].styles)return a[0];var e,f=!0,g="";d=void 0;var h=a[0];null==h||void 0===h.raw?(f=!1,g+=aM(void 0,void 0,h)):g+=h[0];for(var i=1;i<a.length;i++)g+=aM(void 0,void 0,a[i]),f&&(g+=h[i]);aN.lastIndex=0;for(var j="";null!==(e=aN.exec(g));)j+="-"+e[1];return{name:function(a){for(var b,c=0,d=0,e=a.length;e>=4;++d,e-=4)b=(65535&(b=255&a.charCodeAt(d)|(255&a.charCodeAt(++d))<<8|(255&a.charCodeAt(++d))<<16|(255&a.charCodeAt(++d))<<24))*0x5bd1e995+((b>>>16)*59797<<16),b^=b>>>24,c=(65535&b)*0x5bd1e995+((b>>>16)*59797<<16)^(65535&c)*0x5bd1e995+((c>>>16)*59797<<16);switch(e){case 3:c^=(255&a.charCodeAt(d+2))<<16;case 2:c^=(255&a.charCodeAt(d+1))<<8;case 1:c^=255&a.charCodeAt(d),c=(65535&c)*0x5bd1e995+((c>>>16)*59797<<16)}return c^=c>>>13,(((c=(65535&c)*0x5bd1e995+((c>>>16)*59797<<16))^c>>>15)>>>0).toString(36)}(g)+j,styles:g,next:d}}(aO)}var aQ=au(aE(),1);function aR(a){if("object"!=typeof a||null===a)return!1;let b=Object.getPrototypeOf(a);return(null===b||b===Object.prototype||null===Object.getPrototypeOf(b))&&!(Symbol.toStringTag in a)&&!(Symbol.iterator in a)}function aS(a,b,c={clone:!0}){let d=c.clone?{...a}:a;return aR(a)&&aR(b)&&Object.keys(b).forEach(e=>{k.isValidElement(b[e])||(0,aQ.isValidElementType)(b[e])?d[e]=b[e]:aR(b[e])&&Object.prototype.hasOwnProperty.call(a,e)&&aR(a[e])?d[e]=aS(a[e],b[e],c):c.clone?d[e]=aR(b[e])?function a(b){if(k.isValidElement(b)||(0,aQ.isValidElementType)(b)||!aR(b))return b;let c={};return Object.keys(b).forEach(d=>{c[d]=a(b[d])}),c}(b[e]):b[e]:d[e]=b[e]}),d}function aT(a,b){if(!a.containerQueries)return b;let c=Object.keys(b).filter(a=>a.startsWith("@container")).sort((a,b)=>{let c=/min-width:\s*([0-9.]+)/;return(a.match(c)?.[1]||0)-(b.match(c)?.[1]||0)});return c.length?c.reduce((a,c)=>{let d=b[c];return delete a[c],a[c]=d,a},{...b}):b}var aU={borderRadius:4};au(aC(),1);var aV=function(a,b){return b?aS(a,b,{clone:!1}):a},aW={xs:0,sm:600,md:900,lg:1200,xl:1536},aX={keys:["xs","sm","md","lg","xl"],up:a=>`@media (min-width:${aW[a]}px)`},aY={containerQueries:a=>({up:b=>{let c="number"==typeof b?b:aW[b]||b;return"number"==typeof c&&(c=`${c}px`),a?`@container ${a} (min-width:${c})`:`@container (min-width:${c})`}})};function aZ(a,b,c){let d=a.theme||{};if(Array.isArray(b)){let a=d.breakpoints||aX;return b.reduce((d,e,f)=>(d[a.up(a.keys[f])]=c(b[f]),d),{})}if("object"==typeof b){let a=d.breakpoints||aX;return Object.keys(b).reduce((e,f)=>{var g;if(g=a.keys,"@"===f||f.startsWith("@")&&(g.some(a=>f.startsWith(`@${a}`))||f.match(/^@\d/))){let a=function(a,b){let c=b.match(/^@([^/]+)?\/?(.+)?$/);if(!c)return null;let[,d,e]=c,f=Number.isNaN(+d)?d||0:+d;return a.containerQueries(e).up(f)}(d.containerQueries?d:aY,f);a&&(e[a]=c(b[f],f))}else Object.keys(a.values||aW).includes(f)?e[a.up(f)]=c(b[f],f):e[f]=b[f];return e},{})}return c(b)}function a$(a={}){return a.keys?.reduce((b,c)=>(b[a.up(c)]={},b),{})||{}}function a_(a,b){return a.reduce((a,b)=>{let c=a[b];return c&&0!==Object.keys(c).length||delete a[b],a},b)}function a0({values:a,breakpoints:b,base:c}){let d,e=Object.keys(c||function(a,b){if("object"!=typeof a)return{};let c={},d=Object.keys(b);return Array.isArray(a)?d.forEach((b,d)=>{d<a.length&&(c[b]=!0)}):d.forEach(b=>{null!=a[b]&&(c[b]=!0)}),c}(a,b));return 0===e.length?a:e.reduce((b,c,e)=>(Array.isArray(a)?(b[c]=null!=a[e]?a[e]:a[d],d=e):"object"==typeof a?(b[c]=null!=a[c]?a[c]:a[d],d=c):b[c]=a,b),{})}function a1(a){if("string"!=typeof a)throw Error(function(a){let b=new URL("https://mui.com/production-error/?code=7");return[].forEach(a=>b.searchParams.append("args[]",a)),`Minified MUI error #${7}; visit ${b} for the full message.`}(7));return a.charAt(0).toUpperCase()+a.slice(1)}function a2(a,b,c=!0){if(!b||"string"!=typeof b)return null;if(a&&a.vars&&c){let c=`vars.${b}`.split(".").reduce((a,b)=>a&&a[b]?a[b]:null,a);if(null!=c)return c}return b.split(".").reduce((a,b)=>a&&null!=a[b]?a[b]:null,a)}function a3(a,b,c,d=c){let e;return e="function"==typeof a?a(c):Array.isArray(a)?a[c]||d:a2(a,c)||d,b&&(e=b(e,d,a)),e}var a4=function(a){let{prop:b,cssProperty:c=a.prop,themeKey:d,transform:e}=a,f=a=>{if(null==a[b])return null;let f=a[b],g=a2(a.theme,d)||{};return aZ(a,f,a=>{let d=a3(g,e,a);return(a===d&&"string"==typeof a&&(d=a3(g,e,`${b}${"default"===a?"":a1(a)}`,a)),!1===c)?d:{[c]:d}})};return f.propTypes={},f.filterProps=[b],f},a5={m:"margin",p:"padding"},a6={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},a7={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},a8=function(a){let b={};return c=>(void 0===b[c]&&(b[c]=a(c)),b[c])}(a=>{if(a.length>2)if(!a7[a])return[a];else a=a7[a];let[b,c]=a.split(""),d=a5[b],e=a6[c]||"";return Array.isArray(e)?e.map(a=>d+a):[d+e]}),a9=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],ba=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],bb=[...a9,...ba];function bc(a,b,c,d){let e=a2(a,b,!0)??c;return"number"==typeof e||"string"==typeof e?a=>"string"==typeof a?a:"string"==typeof e?e.startsWith("var(")&&0===a?0:e.startsWith("var(")&&1===a?e:`calc(${a} * ${e})`:e*a:Array.isArray(e)?a=>{if("string"==typeof a)return a;let b=e[Math.abs(a)];return a>=0?b:"number"==typeof b?-b:"string"==typeof b&&b.startsWith("var(")?`calc(-1 * ${b})`:`-${b}`}:"function"==typeof e?e:()=>void 0}function bd(a){return bc(a,"spacing",8,"spacing")}function be(a,b){return"string"==typeof b||null==b?b:a(b)}function bf(a,b){let c=bd(a.theme);return Object.keys(a).map(d=>(function(a,b,c,d){var e;if(!b.includes(c))return null;let f=(e=a8(c),a=>e.reduce((b,c)=>(b[c]=be(d,a),b),{})),g=a[c];return aZ(a,g,f)})(a,b,d,c)).reduce(aV,{})}function bg(a){return bf(a,a9)}function bh(a){return bf(a,ba)}function bi(a){return bf(a,bb)}bg.propTypes={},bg.filterProps=a9,bh.propTypes={},bh.filterProps=ba,bi.propTypes={},bi.filterProps=bb;var bj=function(...a){let b=a.reduce((a,b)=>(b.filterProps.forEach(c=>{a[c]=b}),a),{}),c=a=>Object.keys(a).reduce((c,d)=>b[d]?aV(c,b[d](a)):c,{});return c.propTypes={},c.filterProps=a.reduce((a,b)=>a.concat(b.filterProps),[]),c};function bk(a){return"number"!=typeof a?a:`${a}px solid`}function bl(a,b){return a4({prop:a,themeKey:"borders",transform:b})}var bm=bl("border",bk),bn=bl("borderTop",bk),bo=bl("borderRight",bk),bp=bl("borderBottom",bk),bq=bl("borderLeft",bk),br=bl("borderColor"),bs=bl("borderTopColor"),bt=bl("borderRightColor"),bu=bl("borderBottomColor"),bv=bl("borderLeftColor"),bw=bl("outline",bk),bx=bl("outlineColor"),by=a=>{if(void 0!==a.borderRadius&&null!==a.borderRadius){let b=bc(a.theme,"shape.borderRadius",4,"borderRadius");return aZ(a,a.borderRadius,a=>({borderRadius:be(b,a)}))}return null};by.propTypes={},by.filterProps=["borderRadius"],bj(bm,bn,bo,bp,bq,br,bs,bt,bu,bv,by,bw,bx);var bz=a=>{if(void 0!==a.gap&&null!==a.gap){let b=bc(a.theme,"spacing",8,"gap");return aZ(a,a.gap,a=>({gap:be(b,a)}))}return null};bz.propTypes={},bz.filterProps=["gap"];var bA=a=>{if(void 0!==a.columnGap&&null!==a.columnGap){let b=bc(a.theme,"spacing",8,"columnGap");return aZ(a,a.columnGap,a=>({columnGap:be(b,a)}))}return null};bA.propTypes={},bA.filterProps=["columnGap"];var bB=a=>{if(void 0!==a.rowGap&&null!==a.rowGap){let b=bc(a.theme,"spacing",8,"rowGap");return aZ(a,a.rowGap,a=>({rowGap:be(b,a)}))}return null};function bC(a,b){return"grey"===b?b:a}function bD(a){return a<=1&&0!==a?`${100*a}%`:a}bB.propTypes={},bB.filterProps=["rowGap"],bj(bz,bA,bB,a4({prop:"gridColumn"}),a4({prop:"gridRow"}),a4({prop:"gridAutoFlow"}),a4({prop:"gridAutoColumns"}),a4({prop:"gridAutoRows"}),a4({prop:"gridTemplateColumns"}),a4({prop:"gridTemplateRows"}),a4({prop:"gridTemplateAreas"}),a4({prop:"gridArea"})),bj(a4({prop:"color",themeKey:"palette",transform:bC}),a4({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:bC}),a4({prop:"backgroundColor",themeKey:"palette",transform:bC}));var bE=a4({prop:"width",transform:bD}),bF=a=>void 0!==a.maxWidth&&null!==a.maxWidth?aZ(a,a.maxWidth,b=>{let c=a.theme?.breakpoints?.values?.[b]||aW[b];return c?a.theme?.breakpoints?.unit!=="px"?{maxWidth:`${c}${a.theme.breakpoints.unit}`}:{maxWidth:c}:{maxWidth:bD(b)}}):null;bF.filterProps=["maxWidth"];var bG=a4({prop:"minWidth",transform:bD}),bH=a4({prop:"height",transform:bD}),bI=a4({prop:"maxHeight",transform:bD}),bJ=a4({prop:"minHeight",transform:bD});a4({prop:"size",cssProperty:"width",transform:bD}),a4({prop:"size",cssProperty:"height",transform:bD}),bj(bE,bF,bG,bH,bI,bJ,a4({prop:"boxSizing"}));var bK={border:{themeKey:"borders",transform:bk},borderTop:{themeKey:"borders",transform:bk},borderRight:{themeKey:"borders",transform:bk},borderBottom:{themeKey:"borders",transform:bk},borderLeft:{themeKey:"borders",transform:bk},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:bk},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:by},color:{themeKey:"palette",transform:bC},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:bC},backgroundColor:{themeKey:"palette",transform:bC},p:{style:bh},pt:{style:bh},pr:{style:bh},pb:{style:bh},pl:{style:bh},px:{style:bh},py:{style:bh},padding:{style:bh},paddingTop:{style:bh},paddingRight:{style:bh},paddingBottom:{style:bh},paddingLeft:{style:bh},paddingX:{style:bh},paddingY:{style:bh},paddingInline:{style:bh},paddingInlineStart:{style:bh},paddingInlineEnd:{style:bh},paddingBlock:{style:bh},paddingBlockStart:{style:bh},paddingBlockEnd:{style:bh},m:{style:bg},mt:{style:bg},mr:{style:bg},mb:{style:bg},ml:{style:bg},mx:{style:bg},my:{style:bg},margin:{style:bg},marginTop:{style:bg},marginRight:{style:bg},marginBottom:{style:bg},marginLeft:{style:bg},marginX:{style:bg},marginY:{style:bg},marginInline:{style:bg},marginInlineStart:{style:bg},marginInlineEnd:{style:bg},marginBlock:{style:bg},marginBlockStart:{style:bg},marginBlockEnd:{style:bg},displayPrint:{cssProperty:!1,transform:a=>({"@media print":{display:a}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:bz},rowGap:{style:bB},columnGap:{style:bA},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:bD},maxWidth:{style:bF},minWidth:{transform:bD},height:{transform:bD},maxHeight:{transform:bD},minHeight:{transform:bD},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}},bL=function(){function a(a,b,c,d){let e={[a]:b,theme:c},f=d[a];if(!f)return{[a]:b};let{cssProperty:g=a,themeKey:h,transform:i,style:j}=f;if(null==b)return null;if("typography"===h&&"inherit"===b)return{[a]:b};let k=a2(c,h)||{};return j?j(e):aZ(e,b,b=>{let c=a3(k,i,b);return(b===c&&"string"==typeof b&&(c=a3(k,i,`${a}${"default"===b?"":a1(b)}`,b)),!1===g)?c:{[g]:c}})}return function b(c){let{sx:d,theme:e={},nested:f}=c||{};if(!d)return null;let g=e.unstable_sxConfig??bK;function h(c){let d=c;if("function"==typeof c)d=c(e);else if("object"!=typeof c)return c;if(!d)return null;let h=a$(e.breakpoints),i=Object.keys(h),j=h;return(Object.keys(d).forEach(c=>{var f;let h=(f=d[c],"function"==typeof f?f(e):f);if(null!=h)if("object"==typeof h)if(g[c])j=aV(j,a(c,h,e,g));else{let a=aZ({theme:e},h,a=>({[c]:a}));!function(...a){let b=new Set(a.reduce((a,b)=>a.concat(Object.keys(b)),[]));return a.every(a=>b.size===Object.keys(a).length)}(a,h)?j=aV(j,a):j[c]=b({sx:h,theme:e,nested:!0})}else j=aV(j,a(c,h,e,g))}),!f&&e.modularCssLayers)?{"@layer sx":aT(e,a_(i,j))}:aT(e,a_(i,j))}return Array.isArray(d)?d.map(h):h(d)}}();function bM(a,b){if(this.vars){if(!this.colorSchemes?.[a]||"function"!=typeof this.getColorSchemeSelector)return{};let c=this.getColorSchemeSelector(a);return"&"===c?b:((c.includes("data-")||c.includes("."))&&(c=`*:where(${c.replace(/\s*&$/,"")}) &`),{[c]:b})}return this.palette.mode===a?b:{}}bL.filterProps=["sx"];var bN=function(a={},...b){let{breakpoints:c={},palette:d={},spacing:e,shape:f={},...g}=a,h=function(a){let{values:b={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:c="px",step:d=5,...e}=a,f=(a=>{let b=Object.keys(a).map(b=>({key:b,val:a[b]}))||[];return b.sort((a,b)=>a.val-b.val),b.reduce((a,b)=>({...a,[b.key]:b.val}),{})})(b),g=Object.keys(f);function h(a){let d="number"==typeof b[a]?b[a]:a;return`@media (min-width:${d}${c})`}function i(a){let e="number"==typeof b[a]?b[a]:a;return`@media (max-width:${e-d/100}${c})`}function j(a,e){let f=g.indexOf(e);return`@media (min-width:${"number"==typeof b[a]?b[a]:a}${c}) and (max-width:${(-1!==f&&"number"==typeof b[g[f]]?b[g[f]]:e)-d/100}${c})`}return{keys:g,values:f,up:h,down:i,between:j,only:function(a){return g.indexOf(a)+1<g.length?j(a,g[g.indexOf(a)+1]):h(a)},not:function(a){let b=g.indexOf(a);return 0===b?h(g[1]):b===g.length-1?i(g[b]):j(a,g[g.indexOf(a)+1]).replace("@media","@media not all and")},unit:c,...e}}(c),i=function(a=8,b=bd({spacing:a})){if(a.mui)return a;let c=(...a)=>(0===a.length?[1]:a).map(a=>{let c=b(a);return"number"==typeof c?`${c}px`:c}).join(" ");return c.mui=!0,c}(e),j=aS({breakpoints:h,direction:"ltr",components:{},palette:{mode:"light",...d},spacing:i,shape:{...aU,...f}},g);return(j=function(a){let b=(a,b)=>a.replace("@media",b?`@container ${b}`:"@container");function c(c,d){c.up=(...c)=>b(a.breakpoints.up(...c),d),c.down=(...c)=>b(a.breakpoints.down(...c),d),c.between=(...c)=>b(a.breakpoints.between(...c),d),c.only=(...c)=>b(a.breakpoints.only(...c),d),c.not=(...c)=>{let e=b(a.breakpoints.not(...c),d);return e.includes("not all and")?e.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):e}}let d={},e=a=>(c(d,a),d);return c(e),{...a,containerQueries:e}}(j)).applyStyles=bM,(j=b.reduce((a,b)=>aS(a,b),j)).unstable_sxConfig={...bK,...g?.unstable_sxConfig},j.unstable_sx=function(a){return bL({sx:a,theme:this})},j},bO=function(a=null){let b=k.useContext(j.T);return b&&0!==Object.keys(b).length?b:a},bP=bN();au(aC(),1);var bQ=a=>a,bR=(()=>{let a=bQ;return{configure(b){a=b},generate:b=>a(b),reset(){a=bQ}}})(),bS=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d},bT={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};!function(a={}){var b,c;let{themeId:d,defaultTheme:e,defaultClassName:f="MuiBox-root",generateClassName:g}=a;(b="div",c={shouldForwardProp:a=>"theme"!==a&&"sx"!==a&&"as"!==a},(0,i.A)("div",c))(bL)}({defaultClassName:function(a,b,c="Mui"){let d={};return b.forEach(b=>{d[b]=function(a,b,c="Mui"){let d=bT[b];return d?`${c}-${d}`:`${bR.generate(a)}-${b}`}(a,b,c)}),d}("MuiBox",["root"]).root,generateClassName:bR.generate}),au(aE(),1);var bU=bN();function bV(a){return"ownerState"!==a&&"theme"!==a&&"sx"!==a&&"as"!==a}function bW(a,b){return b&&a&&"object"==typeof a&&a.styles&&!a.styles.startsWith("@layer")&&(a.styles=`@layer ${b}{${String(a.styles)}}`),a}function bX(a,b,c){let d="function"==typeof b?b(a):b;if(Array.isArray(d))return d.flatMap(b=>bX(a,b,c));if(Array.isArray(d?.variants)){let b;if(d.isProcessed)b=c?bW(d.style,c):d.style;else{let{variants:a,...e}=d;b=c?bW(aP(e),c):e}return bY(a,d.variants,[b],c)}return d?.isProcessed?c?bW(aP(d.style),c):d.style:c?bW(aP(d),c):d}function bY(a,b,c=[],d){let e;a:for(let f=0;f<b.length;f+=1){let g=b[f];if("function"==typeof g.props){if(e??={...a,...a.ownerState,ownerState:a.ownerState},!g.props(e))continue}else for(let b in g.props)if(a[b]!==g.props[b]&&a.ownerState?.[b]!==g.props[b])continue a;"function"==typeof g.style?(e??={...a,...a.ownerState,ownerState:a.ownerState},c.push(d?bW(aP(g.style(e)),d):g.style(e))):c.push(d?bW(aP(g.style),d):g.style)}return c}var bZ=function(a={}){let{themeId:b,defaultTheme:c=bU,rootShouldForwardProp:d=bV,slotShouldForwardProp:e=bV}=a;function f(a){a.theme=!function(a){for(let b in a)return!1;return!0}(a.theme)?a.theme[b]||a.theme:c}return(a,b={})=>{var c,g,h,j,k,l,m;Array.isArray(a.__emotion_styles)&&(a.__emotion_styles=(a=>a.filter(a=>a!==bL))(a.__emotion_styles));let{name:n,slot:o,skipVariantsResolver:p,skipSx:q,overridesResolver:r=!(c=(g=o)?g.charAt(0).toLowerCase()+g.slice(1):g)?null:(a,b)=>b[c],...s}=b,t=n&&n.startsWith("Mui")||o?"components":"custom",u=void 0!==p?p:o&&"Root"!==o&&"root"!==o||!1,v=q||!1,w=bV;"Root"===o||"root"===o?w=d:o?w=e:"string"==typeof(h=a)&&h.charCodeAt(0)>96&&(w=void 0);let x=(l=a,m={shouldForwardProp:w,label:(j=0,void(k=0)),...s},(0,i.A)(l,m)),y=a=>{if(a.__emotion_real===a)return a;if("function"==typeof a)return function(b){return bX(b,a,b.theme.modularCssLayers?t:void 0)};if(aR(a)){let b=function(a){let{variants:b,...c}=a,d={variants:b,style:aP(c),isProcessed:!0};return d.style===c||b&&b.forEach(a=>{"function"!=typeof a.style&&(a.style=aP(a.style))}),d}(a);return function(a){return b.variants?bX(a,b,a.theme.modularCssLayers?t:void 0):a.theme.modularCssLayers?bW(b.style,t):b.style}}return a},z=(...b)=>{let c=[],d=b.map(y),e=[];if(c.push(f),n&&r&&e.push(function(a){let b=a.theme,c=b.components?.[n]?.styleOverrides;if(!c)return null;let d={};for(let b in c)d[b]=bX(a,c[b],a.theme.modularCssLayers?"theme":void 0);return r(a,d)}),n&&!u&&e.push(function(a){let b=a.theme,c=b?.components?.[n]?.variants;return c?bY(a,c,[],a.theme.modularCssLayers?"theme":void 0):null}),v||e.push(bL),Array.isArray(d[0])){let a,b=d.shift(),f=Array(c.length).fill(""),g=Array(e.length).fill("");(a=[...f,...b,...g]).raw=[...f,...b.raw,...g],c.unshift(a)}let g=x(...c,...d,...e);return a.muiName&&(g.muiName=a.muiName),g};return x.withConfig&&(z.withConfig=x.withConfig),z}}();au(aC(),1),au(aC(),1);var b$=bN(),b_=bZ("div",{name:"MuiStack",slot:"Root"});function b0(a){return function({props:a,name:b,defaultTheme:c,themeId:d}){let e=function(a=bP){return bO(a)}(c);d&&(e=e[d]||e);let{theme:f,name:g,props:h}={theme:e,name:b,props:a};return f&&f.components&&f.components[g]&&f.components[g].defaultProps?function a(b,c,d=!1){let e={...c};for(let f in b)if(Object.prototype.hasOwnProperty.call(b,f))if("components"===f||"slots"===f)e[f]={...b[f],...e[f]};else if("componentsProps"===f||"slotProps"===f){let g=b[f],h=c[f];if(h)if(g)for(let b in e[f]={...h},g)Object.prototype.hasOwnProperty.call(g,b)&&(e[f][b]=a(g[b],h[b],d));else e[f]=h;else e[f]=g||{}}else"className"===f&&d&&c.className?e.className=bS(b?.className,c?.className):"style"===f&&d&&c.style?e.style={...b?.style,...c?.style}:void 0===e[f]&&(e[f]=b[f]);return e}(f.components[g].defaultProps,h):h}({props:a,name:"MuiStack",defaultTheme:b$})}var b1=({ownerState:a,theme:b})=>{let c={display:"flex",flexDirection:"column",...aZ({theme:b},a0({values:a.direction,breakpoints:b.breakpoints.values}),a=>({flexDirection:a}))};if(a.spacing){let d=bd(b),e=Object.keys(b.breakpoints.values).reduce((b,c)=>(("object"==typeof a.spacing&&null!=a.spacing[c]||"object"==typeof a.direction&&null!=a.direction[c])&&(b[c]=!0),b),{}),f=a0({values:a.direction,base:e}),g=a0({values:a.spacing,base:e});"object"==typeof f&&Object.keys(f).forEach((a,b,c)=>{if(!f[a]){let d=b>0?f[c[b-1]]:"column";f[a]=d}}),c=aS(c,aZ({theme:b},g,(b,c)=>a.useFlexGap?{gap:be(d,b)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${({row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"})[c?f[c]:a.direction]}`]:be(d,b)}}))}return function(a,...b){let c=a$(a),d=[c,...b].reduce((a,b)=>aS(a,b),{});return a_(Object.keys(c),d)}(b.breakpoints,c)};function b2(a){return null!=a&&""!==a}function b3(a,b=!1){return b?b5(b2(a)?m(a).format("0,0.[00]"):"",".[00]"):b2(a)?m(a).format():""}function b4(a,b=2){let c=`.${"0".repeat(b)}`;return b5(b2(a)?m(a).format(`$0,0${c}`):"",c)}function b5(a,b=".00"){return a.includes(b)?a.replace(b,""):a}!function(a={}){let{createStyledComponent:b=b_,useThemeProps:c=b0,componentName:d="MuiStack"}=a;b(b1)}();var b6=(0,k.forwardRef)(({icon:a,width:b=20,sx:c,...d},e)=>(0,l.jsx)(o.default,{ref:e,component:n.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...d}));function b7({title:a,imgUrl:b,action:c,filled:d=!0,description:e,sx:f,...g}){return(0,l.jsxs)(r.A,{flexGrow:1,alignItems:"center",justifyContent:"center",sx:{px:3,height:500,...d&&{borderRadius:2,bgcolor:a=>(0,p.X4)(a.palette.grey[500],.04),border:a=>`dashed 1px ${(0,p.X4)(a.palette.grey[500],.08)}`},...f},...g,children:[b?(0,l.jsx)(o.default,{component:"img",alt:"empty content",src:b||"/assets/icons/empty/ic_content.svg",sx:{width:1,maxWidth:160}}):(0,l.jsx)(b6,{sx:{color:"text.disabled"},icon:"fluent:collections-empty-20-filled",width:160}),a&&(0,l.jsx)(q.A,{variant:"h6",component:"span",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:a}),e&&(0,l.jsx)(q.A,{variant:"caption",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:e}),c&&c]})}var b8=(0,k.memo)(function(){return(0,l.jsxs)(s.M,{children:[(0,l.jsx)(t.U,{startIcon:(0,l.jsx)(b6,{icon:"solar:eye-bold"}),children:"Columns"}),(0,l.jsx)(u.P,{startIcon:(0,l.jsx)(b6,{icon:"solar:filter-bold"}),children:"Filters"})]})}),b9=({t:a,emptyContentImgUrl:b,...c})=>{let d=(0,k.useMemo)(()=>({toolbar:b8,noRowsOverlay:()=>(0,l.jsx)(b7,{sx:{margin:2},title:a("noResults"),imgUrl:b}),noResultsOverlay:()=>(0,l.jsx)(b7,{title:a("noResults"),sx:{py:10},imgUrl:b})}),[a,b]);return(0,l.jsx)(v.z,{sx:{"--DataGrid-overlayHeight":"530px"},...c,slots:d,slotProps:{loadingOverlay:{sx:{padding:5}},filterPanel:{sx:{maxWidth:"100vw"}},columnsPanel:{sx:{maxWidth:"100vw"}}}})};function ca(a){let[b,c]=(0,k.useState)(!!a?.defaultDense),[d,e]=(0,k.useState)(a?.defaultCurrentPage||0),[f,g]=(0,k.useState)(a?.defaultOrderBy||"name"),[h,i]=(0,k.useState)(a?.defaultRowsPerPage||10),[j,l]=(0,k.useState)(a?.defaultOrder||"asc"),[m,n]=(0,k.useState)(a?.defaultSelected||[]),o=(0,k.useCallback)(a=>{let b=f===a&&"asc"===j;""!==a&&(l(b?"desc":"asc"),g(a))},[j,f]),p=(0,k.useCallback)(a=>{n(m.includes(a)?m.filter(b=>b!==a):[...m,a])},[m]),q=(0,k.useCallback)(a=>{e(0),i(parseInt(a.target.value,10))},[]),r=(0,k.useCallback)(a=>{c(a.target.checked)},[]),s=(0,k.useCallback)((a,b)=>{if(a)return void n(b);n([])},[]),t=(0,k.useCallback)((a,b)=>{e(b)},[]),u=(0,k.useCallback)(()=>{e(0)},[]),v=(0,k.useCallback)(a=>{n([]),d&&a<2&&e(d-1)},[d]),w=(0,k.useCallback)(({totalRows:a,totalRowsInPage:b,totalRowsFiltered:c})=>{let f=m.length;n([]),d&&(f===b?e(d-1):f===c?e(0):f>b&&e(Math.ceil((a-f)/h)-1))},[d,h,m.length]);return{dense:b,order:j,page:d,orderBy:f,rowsPerPage:h,selected:m,onSelectRow:p,onSelectAllRows:s,onSort:o,onChangePage:t,onChangeDense:r,onResetPage:u,onChangeRowsPerPage:q,onUpdatePageDeleteRow:v,onUpdatePageDeleteRows:w,setPage:e,setDense:c,setOrder:l,setOrderBy:g,setSelected:n,setRowsPerPage:i}}function cb({...a}){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})})]})}var cc={border:0,margin:-1,padding:0,width:"1px",height:"1px",overflow:"hidden",position:"absolute",whiteSpace:"nowrap",clip:"rect(0 0 0 0)"};function cd({order:a,orderBy:b,rowCount:c=0,headLabel:d,numSelected:e=0,onSort:f,onSelectAllRows:g,sx:h}){return(0,l.jsx)(A.A,{sx:h,children:(0,l.jsxs)(y.A,{children:[g&&(0,l.jsx)(x.A,{padding:"checkbox",children:(0,l.jsx)(z.A,{indeterminate:!!e&&e<c,checked:!!c&&e===c,onChange:a=>g(a.target.checked)})}),d.map(c=>(0,l.jsx)(x.A,{align:c.align||"left",sortDirection:b===c.id&&a,sx:{width:c.width,minWidth:c.minWidth},children:f?(0,l.jsxs)(B.A,{hideSortIcon:!0,active:b===c.id,direction:b===c.id?a:"asc",onClick:()=>f(c.id),children:[c.label,b===c.id?(0,l.jsx)(o.default,{sx:{...cc},children:"desc"===a?"sorted descending":"sorted ascending"}):null]}):c.label},c.id))]})})}function ce({dense:a,onChangeDense:b,rowsPerPageOptions:c=[5,10,25],sx:d,...e}){return(0,l.jsxs)(o.default,{sx:{position:"relative",...d},children:[(0,l.jsx)(E.A,{rowsPerPageOptions:c,component:"div",...e,sx:{borderTopColor:"transparent"}}),b&&(0,l.jsx)(D.A,{label:"Dense",control:(0,l.jsx)(C.A,{checked:a,onChange:b}),sx:{pl:2,py:1.5,top:0,position:{sm:"absolute"}}})]})}var cf=(0,F.Ay)(o.default)(({theme:a,ownerState:b})=>{let c="light"===a.palette.mode,d="filled"===b.variant,e="outlined"===b.variant,f="soft"===b.variant,g={..."default"===b.color&&{...d&&{color:c?a.palette.common.white:a.palette.grey[800],backgroundColor:a.palette.text.primary},...e&&{backgroundColor:"transparent",color:a.palette.text.primary,border:`2px solid ${a.palette.text.primary}`},...f&&{color:a.palette.text.secondary,backgroundColor:(0,p.X4)(a.palette.grey[500],.16)}}},h={..."default"!==b.color&&{...d&&{color:a.palette[b.color].contrastText,backgroundColor:a.palette[b.color].main},...e&&{backgroundColor:"transparent",color:a.palette[b.color].main,border:`2px solid ${a.palette[b.color].main}`},...f&&{color:a.palette[b.color][c?"dark":"light"],backgroundColor:(0,p.X4)(a.palette[b.color].main,.16)}}};return{height:24,minWidth:24,lineHeight:0,borderRadius:6,cursor:"default",alignItems:"center",whiteSpace:"nowrap",display:"inline-flex",justifyContent:"center",textTransform:"capitalize",padding:a.spacing(0,.75),fontSize:a.typography.pxToRem(12),fontWeight:a.typography.fontWeightBold,transition:a.transitions.create("all",{duration:a.transitions.duration.shorter}),...g,...h}}),cg=(0,k.forwardRef)(({children:a,color:b="default",variant:c="soft",startIcon:d,endIcon:e,sx:f,...g},h)=>{let i={width:16,height:16,"& svg, img":{width:1,height:1,objectFit:"cover"}};return(0,l.jsxs)(cf,{ref:h,component:"span",ownerState:{color:b,variant:c},sx:{...d&&{pl:.75},...e&&{pr:.75},...f},...g,children:[d&&(0,l.jsxs)(o.default,{sx:{mr:.75,...i},children:[" ",d," "]}),a,e&&(0,l.jsxs)(o.default,{sx:{ml:.75,...i},children:[" ",e," "]})]})}),ch=[],ci=[];function cj(a){return a>=127462&&a<=127487}function ck(a,b,c){if(b==a.length)return b;b&&cm(a.charCodeAt(b))&&cn(a.charCodeAt(b-1))&&b--;let d=cl(a,b);for(b+=co(d);b<a.length;){let e=cl(a,b);if(8205==d||8205==e||c&&function(a){if(a<768)return!1;for(let b=0,c=ch.length;;){let d=b+c>>1;if(a<ch[d])c=d;else{if(!(a>=ci[d]))return!0;b=d+1}if(b==c)return!1}}(e))b+=co(e),d=e;else if(cj(e)){let c=0,d=b-2;for(;d>=0&&cj(cl(a,d));)c++,d-=2;if(c%2==0)break;b+=2}else break}return b}function cl(a,b){let c=a.charCodeAt(b);if(!cn(c)||b+1==a.length)return c;let d=a.charCodeAt(b+1);return cm(d)?(c-55296<<10)+(d-56320)+65536:c}function cm(a){return a>=56320&&a<57344}function cn(a){return a>=55296&&a<56320}function co(a){return a<65536?1:2}(()=>{let a="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(a=>a?parseInt(a,36):1);for(let b=0,c=0;b<a.length;b++)(b%2?ci:ch).push(c+=a[b])})();var cp=class a{lineAt(a){if(a<0||a>this.length)throw RangeError(`Invalid position ${a} in document of length ${this.length}`);return this.lineInner(a,!1,1,0)}line(a){if(a<1||a>this.lines)throw RangeError(`Invalid line number ${a} in ${this.lines}-line document`);return this.lineInner(a,!0,1,0)}replace(a,b,c){[a,b]=cx(this,a,b);let d=[];return this.decompose(0,a,d,2),c.length&&c.decompose(0,c.length,d,3),this.decompose(b,this.length,d,1),cr.from(d,this.length-(b-a)+c.length)}append(a){return this.replace(this.length,this.length,a)}slice(a,b=this.length){[a,b]=cx(this,a,b);let c=[];return this.decompose(a,b,c,0),cr.from(c,b-a)}eq(a){if(a==this)return!0;if(a.length!=this.length||a.lines!=this.lines)return!1;let b=this.scanIdentical(a,1),c=this.length-this.scanIdentical(a,-1),d=new ct(this),e=new ct(a);for(let a=b,f=b;;){if(d.next(a),e.next(a),a=0,d.lineBreak!=e.lineBreak||d.done!=e.done||d.value!=e.value)return!1;if(f+=d.value.length,d.done||f>=c)return!0}}iter(a=1){return new ct(this,a)}iterRange(a,b=this.length){return new cu(this,a,b)}iterLines(a,b){let c;if(null==a)c=this.iter();else{null==b&&(b=this.lines+1);let d=this.line(a).from;c=this.iterRange(d,Math.max(d,b==this.lines+1?this.length:b<=1?0:this.line(b-1).to))}return new cv(c)}toString(){return this.sliceString(0)}toJSON(){let a=[];return this.flatten(a),a}constructor(){}static of(b){if(0==b.length)throw RangeError("A document must have at least one line");return 1!=b.length||b[0]?b.length<=32?new cq(b):cr.from(cq.split(b,[])):a.empty}},cq=class a extends cp{constructor(a,b=function(a){let b=-1;for(let c of a)b+=c.length+1;return b}(a)){super(),this.text=a,this.length=b}get lines(){return this.text.length}get children(){return null}lineInner(a,b,c,d){for(let e=0;;e++){let f=this.text[e],g=d+f.length;if((b?c:g)>=a)return new cw(d,g,c,f);d=g+1,c++}}decompose(b,c,d,e){var f;let g=b<=0&&c>=this.length?this:new a((f=this.text,cs(f,[""],b,c)),Math.min(c,this.length)-Math.max(0,b));if(1&e){let b=d.pop(),c=cs(g.text,b.text.slice(),0,g.length);if(c.length<=32)d.push(new a(c,b.length+g.length));else{let b=c.length>>1;d.push(new a(c.slice(0,b)),new a(c.slice(b)))}}else d.push(g)}replace(b,c,d){var e,f;if(!(d instanceof a))return super.replace(b,c,d);[b,c]=cx(this,b,c);let g=cs(this.text,cs(d.text,(e=this.text,f=0,cs(e,[""],0,b))),c),h=this.length+d.length-(c-b);return g.length<=32?new a(g,h):cr.from(a.split(g,[]),h)}sliceString(a,b=this.length,c="\n"){[a,b]=cx(this,a,b);let d="";for(let e=0,f=0;e<=b&&f<this.text.length;f++){let g=this.text[f],h=e+g.length;e>a&&f&&(d+=c),a<h&&b>e&&(d+=g.slice(Math.max(0,a-e),b-e)),e=h+1}return d}flatten(a){for(let b of this.text)a.push(b)}scanIdentical(){return 0}static split(b,c){let d=[],e=-1;for(let f of b)d.push(f),e+=f.length+1,32==d.length&&(c.push(new a(d,e)),d=[],e=-1);return e>-1&&c.push(new a(d,e)),c}},cr=class a extends cp{constructor(a,b){for(let c of(super(),this.children=a,this.length=b,this.lines=0,a))this.lines+=c.lines}lineInner(a,b,c,d){for(let e=0;;e++){let f=this.children[e],g=d+f.length,h=c+f.lines-1;if((b?h:g)>=a)return f.lineInner(a,b,c,d);d=g+1,c=h+1}}decompose(a,b,c,d){for(let e=0,f=0;f<=b&&e<this.children.length;e++){let g=this.children[e],h=f+g.length;if(a<=h&&b>=f){let e=d&(f<=a|2*(h>=b));f>=a&&h<=b&&!e?c.push(g):g.decompose(a-f,b-f,c,e)}f=h+1}}replace(b,c,d){if([b,c]=cx(this,b,c),d.lines<this.lines)for(let e=0,f=0;e<this.children.length;e++){let g=this.children[e],h=f+g.length;if(b>=f&&c<=h){let i=g.replace(b-f,c-f,d),j=this.lines-g.lines+i.lines;if(i.lines<j>>4&&i.lines>j>>6){let f=this.children.slice();return f[e]=i,new a(f,this.length-(c-b)+d.length)}return super.replace(f,h,i)}f=h+1}return super.replace(b,c,d)}sliceString(a,b=this.length,c="\n"){[a,b]=cx(this,a,b);let d="";for(let e=0,f=0;e<this.children.length&&f<=b;e++){let g=this.children[e],h=f+g.length;f>a&&e&&(d+=c),a<h&&b>f&&(d+=g.sliceString(a-f,b-f,c)),f=h+1}return d}flatten(a){for(let b of this.children)b.flatten(a)}scanIdentical(b,c){if(!(b instanceof a))return 0;let d=0,[e,f,g,h]=c>0?[0,0,this.children.length,b.children.length]:[this.children.length-1,b.children.length-1,-1,-1];for(;;e+=c,f+=c){if(e==g||f==h)return d;let a=this.children[e],i=b.children[f];if(a!=i)return d+a.scanIdentical(i,c);d+=a.length+1}}static from(b,c=b.reduce((a,b)=>a+b.length+1,-1)){let d=0;for(let a of b)d+=a.lines;if(d<32){let a=[];for(let c of b)c.flatten(a);return new cq(a,c)}let e=Math.max(32,d>>5),f=e<<1,g=e>>1,h=[],i=0,j=-1,k=[];function l(){0!=i&&(h.push(1==k.length?k[0]:a.from(k,j)),j=-1,i=k.length=0)}for(let c of b)!function b(c){let d;if(c.lines>f&&c instanceof a)for(let a of c.children)b(a);else c.lines>g&&(i>g||!i)?(l(),h.push(c)):c instanceof cq&&i&&(d=k[k.length-1])instanceof cq&&c.lines+d.lines<=32?(i+=c.lines,j+=c.length+1,k[k.length-1]=new cq(d.text.concat(c.text),d.length+1+c.length)):(i+c.lines>e&&l(),i+=c.lines,j+=c.length+1,k.push(c))}(c);return l(),1==h.length?h[0]:new a(h,c)}};function cs(a,b,c=0,d=1e9){for(let e=0,f=0,g=!0;f<a.length&&e<=d;f++){let h=a[f],i=e+h.length;i>=c&&(i>d&&(h=h.slice(0,d-e)),e<c&&(h=h.slice(c-e)),g?(b[b.length-1]+=h,g=!1):b.push(h)),e=i+1}return b}cp.empty=new cq([""],0);var ct=class{constructor(a,b=1){this.dir=b,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[a],this.offsets=[b>0?1:(a instanceof cq?a.text.length:a.children.length)<<1]}nextInner(a,b){for(this.done=this.lineBreak=!1;;){let c=this.nodes.length-1,d=this.nodes[c],e=this.offsets[c],f=e>>1,g=d instanceof cq?d.text.length:d.children.length;if(f==(b>0?g:0)){if(0==c)return this.done=!0,this.value="",this;b>0&&this.offsets[c-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&e)==(b>0?0:1)){if(this.offsets[c]+=b,0==a)return this.lineBreak=!0,this.value="\n",this;a--}else if(d instanceof cq){let e=d.text[f+(b<0?-1:0)];if(this.offsets[c]+=b,e.length>Math.max(0,a))return this.value=0==a?e:b>0?e.slice(a):e.slice(0,e.length-a),this;a-=e.length}else{let e=d.children[f+(b<0?-1:0)];a>e.length?(a-=e.length,this.offsets[c]+=b):(b<0&&this.offsets[c]--,this.nodes.push(e),this.offsets.push(b>0?1:(e instanceof cq?e.text.length:e.children.length)<<1))}}}next(a=0){return a<0&&(this.nextInner(-a,-this.dir),a=this.value.length),this.nextInner(a,this.dir)}},cu=class{constructor(a,b,c){this.value="",this.done=!1,this.cursor=new ct(a,b>c?-1:1),this.pos=b>c?a.length:0,this.from=Math.min(b,c),this.to=Math.max(b,c)}nextInner(a,b){if(b<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;a+=Math.max(0,b<0?this.pos-this.to:this.from-this.pos);let c=b<0?this.pos-this.from:this.to-this.pos;a>c&&(a=c),c-=a;let{value:d}=this.cursor.next(a);return this.pos+=(d.length+a)*b,this.value=d.length<=c?d:b<0?d.slice(d.length-c):d.slice(0,c),this.done=!this.value,this}next(a=0){return a<0?a=Math.max(a,this.from-this.pos):a>0&&(a=Math.min(a,this.to-this.pos)),this.nextInner(a,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}},cv=class{constructor(a){this.inner=a,this.afterBreak=!0,this.value="",this.done=!1}next(a=0){let{done:b,lineBreak:c,value:d}=this.inner.next(a);return b&&this.afterBreak?(this.value="",this.afterBreak=!1):b?(this.done=!0,this.value=""):c?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=d,this.afterBreak=!1),this}get lineBreak(){return!1}};"undefined"!=typeof Symbol&&(cp.prototype[Symbol.iterator]=function(){return this.iter()},ct.prototype[Symbol.iterator]=cu.prototype[Symbol.iterator]=cv.prototype[Symbol.iterator]=function(){return this});var cw=class{constructor(a,b,c,d){this.from=a,this.to=b,this.number=c,this.text=d}get length(){return this.to-this.from}};function cx(a,b,c){return[b=Math.max(0,Math.min(a.length,b)),Math.max(b,Math.min(a.length,c))]}function cy(a,b,c=!0,d=!0){return function(a,b,c=!0,d=!0){return(c?ck:function(a,b,c){for(;b>0;){let d=ck(a,b-2,c);if(d<b)return d;b--}return 0})(a,b,d)}(a,b,c,d)}var cz=/\r\n?|\n/,cA=function(a){return a[a.Simple=0]="Simple",a[a.TrackDel=1]="TrackDel",a[a.TrackBefore=2]="TrackBefore",a[a.TrackAfter=3]="TrackAfter",a}(cA||(cA={})),cB=class a{constructor(a){this.sections=a}get length(){let a=0;for(let b=0;b<this.sections.length;b+=2)a+=this.sections[b];return a}get newLength(){let a=0;for(let b=0;b<this.sections.length;b+=2){let c=this.sections[b+1];a+=c<0?this.sections[b]:c}return a}get empty(){return 0==this.sections.length||2==this.sections.length&&this.sections[1]<0}iterGaps(a){for(let b=0,c=0,d=0;b<this.sections.length;){let e=this.sections[b++],f=this.sections[b++];f<0?(a(c,d,e),d+=e):d+=f,c+=e}}iterChangedRanges(a,b=!1){cF(this,a,b)}get invertedDesc(){let b=[];for(let a=0;a<this.sections.length;){let c=this.sections[a++],d=this.sections[a++];d<0?b.push(c,d):b.push(d,c)}return new a(b)}composeDesc(a){return this.empty?a:a.empty?this:cH(this,a)}mapDesc(a,b=!1){return a.empty?this:cG(this,a,b)}mapPos(a,b=-1,c=cA.Simple){let d=0,e=0;for(let f=0;f<this.sections.length;){let g=this.sections[f++],h=this.sections[f++],i=d+g;if(h<0){if(i>a)return e+(a-d);e+=g}else{if(c!=cA.Simple&&i>=a&&(c==cA.TrackDel&&d<a&&i>a||c==cA.TrackBefore&&d<a||c==cA.TrackAfter&&i>a))return null;if(i>a||i==a&&b<0&&!g)return a==d||b<0?e:e+h;e+=h}d=i}if(a>d)throw RangeError(`Position ${a} is out of range for changeset of length ${d}`);return e}touchesRange(a,b=a){for(let c=0,d=0;c<this.sections.length&&d<=b;){let e=this.sections[c++],f=this.sections[c++],g=d+e;if(f>=0&&d<=b&&g>=a)return!(d<a)||!(g>b)||"cover";d=g}return!1}toString(){let a="";for(let b=0;b<this.sections.length;){let c=this.sections[b++],d=this.sections[b++];a+=(a?" ":"")+c+(d>=0?":"+d:"")}return a}toJSON(){return this.sections}static fromJSON(b){if(!Array.isArray(b)||b.length%2||b.some(a=>"number"!=typeof a))throw RangeError("Invalid JSON representation of ChangeDesc");return new a(b)}static create(b){return new a(b)}},cC=class a extends cB{constructor(a,b){super(a),this.inserted=b}apply(a){if(this.length!=a.length)throw RangeError("Applying change set to a document with the wrong length");return cF(this,(b,c,d,e,f)=>a=a.replace(d,d+(c-b),f),!1),a}mapDesc(a,b=!1){return cG(this,a,b,!0)}invert(b){let c=this.sections.slice(),d=[];for(let a=0,e=0;a<c.length;a+=2){let f=c[a],g=c[a+1];if(g>=0){c[a]=g,c[a+1]=f;let h=a>>1;for(;d.length<h;)d.push(cp.empty);d.push(f?b.slice(e,e+f):cp.empty)}e+=f}return new a(c,d)}compose(a){return this.empty?a:a.empty?this:cH(this,a,!0)}map(a,b=!1){return a.empty?this:cG(this,a,b,!0)}iterChanges(a,b=!1){cF(this,a,b)}get desc(){return cB.create(this.sections)}filter(b){let c=[],d=[],e=[],f=new cI(this);b:for(let a=0,g=0;;){let h=a==b.length?1e9:b[a++];for(;g<h||g==h&&0==f.len;){if(f.done)break b;let a=Math.min(f.len,h-g);cD(e,a,-1);let b=-1==f.ins?-1:0==f.off?f.ins:0;cD(c,a,b),b>0&&cE(d,c,f.text),f.forward(a),g+=a}let i=b[a++];for(;g<i;){if(f.done)break b;let a=Math.min(f.len,i-g);cD(c,a,-1),cD(e,a,-1==f.ins?-1:0==f.off?f.ins:0),f.forward(a),g+=a}}return{changes:new a(c,d),filtered:cB.create(e)}}toJSON(){let a=[];for(let b=0;b<this.sections.length;b+=2){let c=this.sections[b],d=this.sections[b+1];d<0?a.push(c):0==d?a.push([c]):a.push([c].concat(this.inserted[b>>1].toJSON()))}return a}static of(b,c,d){let e=[],f=[],g=0,h=null;function i(b=!1){if(!b&&!e.length)return;g<c&&cD(e,c-g,-1);let d=new a(e,f);h=h?h.compose(d.map(h)):d,e=[],f=[],g=0}return!function b(j){if(Array.isArray(j))for(let a of j)b(a);else if(j instanceof a){if(j.length!=c)throw RangeError(`Mismatched change set length (got ${j.length}, expected ${c})`);i(),h=h?h.compose(j.map(h)):j}else{let{from:a,to:b=a,insert:h}=j;if(a>b||a<0||b>c)throw RangeError(`Invalid change range ${a} to ${b} (in doc of length ${c})`);let k=h?"string"==typeof h?cp.of(h.split(d||cz)):h:cp.empty,l=k.length;if(a==b&&0==l)return;a<g&&i(),a>g&&cD(e,a-g,-1),cD(e,b-a,l),cE(f,e,k),g=b}}(b),i(!h),h}static empty(b){return new a(b?[b,-1]:[],[])}static fromJSON(b){if(!Array.isArray(b))throw RangeError("Invalid JSON representation of ChangeSet");let c=[],d=[];for(let a=0;a<b.length;a++){let e=b[a];if("number"==typeof e)c.push(e,-1);else if(!Array.isArray(e)||"number"!=typeof e[0]||e.some((a,b)=>b&&"string"!=typeof a))throw RangeError("Invalid JSON representation of ChangeSet");else if(1==e.length)c.push(e[0],0);else{for(;d.length<a;)d.push(cp.empty);d[a]=cp.of(e.slice(1)),c.push(e[0],d[a].length)}}return new a(c,d)}static createSet(b,c){return new a(b,c)}};function cD(a,b,c,d=!1){if(0==b&&c<=0)return;let e=a.length-2;e>=0&&c<=0&&c==a[e+1]?a[e]+=b:e>=0&&0==b&&0==a[e]?a[e+1]+=c:d?(a[e]+=b,a[e+1]+=c):a.push(b,c)}function cE(a,b,c){if(0==c.length)return;let d=b.length-2>>1;if(d<a.length)a[a.length-1]=a[a.length-1].append(c);else{for(;a.length<d;)a.push(cp.empty);a.push(c)}}function cF(a,b,c){let d=a.inserted;for(let e=0,f=0,g=0;g<a.sections.length;){let h=a.sections[g++],i=a.sections[g++];if(i<0)e+=h,f+=h;else{let j=e,k=f,l=cp.empty;for(;j+=h,k+=i,i&&d&&(l=l.append(d[g-2>>1])),!c&&g!=a.sections.length&&!(a.sections[g+1]<0);)h=a.sections[g++],i=a.sections[g++];b(e,j,f,k,l),e=j,f=k}}}function cG(a,b,c,d=!1){let e=[],f=d?[]:null,g=new cI(a),h=new cI(b);for(let a=-1;;)if(g.done&&h.len||h.done&&g.len)throw Error("Mismatched change set lengths");else if(-1==g.ins&&-1==h.ins){let a=Math.min(g.len,h.len);cD(e,a,-1),g.forward(a),h.forward(a)}else if(h.ins>=0&&(g.ins<0||a==g.i||0==g.off&&(h.len<g.len||h.len==g.len&&!c))){let b=h.len;for(cD(e,h.ins,-1);b;){let c=Math.min(g.len,b);g.ins>=0&&a<g.i&&g.len<=c&&(cD(e,0,g.ins),f&&cE(f,e,g.text),a=g.i),g.forward(c),b-=c}h.next()}else if(g.ins>=0){let b=0,c=g.len;for(;c;)if(-1==h.ins){let a=Math.min(c,h.len);b+=a,c-=a,h.forward(a)}else if(0==h.ins&&h.len<c)c-=h.len,h.next();else break;cD(e,b,a<g.i?g.ins:0),f&&a<g.i&&cE(f,e,g.text),a=g.i,g.forward(g.len-c)}else if(g.done&&h.done)return f?cC.createSet(e,f):cB.create(e);else throw Error("Mismatched change set lengths")}function cH(a,b,c=!1){let d=[],e=c?[]:null,f=new cI(a),g=new cI(b);for(let a=!1;;)if(f.done&&g.done)return e?cC.createSet(d,e):cB.create(d);else if(0==f.ins)cD(d,f.len,0,a),f.next();else if(0!=g.len||g.done)if(f.done||g.done)throw Error("Mismatched change set lengths");else{let b=Math.min(f.len2,g.len),c=d.length;if(-1==f.ins){let c=-1==g.ins?-1:g.off?0:g.ins;cD(d,b,c,a),e&&c&&cE(e,d,g.text)}else -1==g.ins?(cD(d,f.off?0:f.len,b,a),e&&cE(e,d,f.textBit(b))):(cD(d,f.off?0:f.len,g.off?0:g.ins,a),e&&!g.off&&cE(e,d,g.text));a=(f.ins>b||g.ins>=0&&g.len>b)&&(a||d.length>c),f.forward2(b),g.forward(b)}else cD(d,0,g.ins,a),e&&cE(e,d,g.text),g.next()}var cI=class{constructor(a){this.set=a,this.i=0,this.next()}next(){let{sections:a}=this.set;this.i<a.length?(this.len=a[this.i++],this.ins=a[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return -2==this.ins}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:a}=this.set,b=this.i-2>>1;return b>=a.length?cp.empty:a[b]}textBit(a){let{inserted:b}=this.set,c=this.i-2>>1;return c>=b.length&&!a?cp.empty:b[c].slice(this.off,null==a?void 0:this.off+a)}forward(a){a==this.len?this.next():(this.len-=a,this.off+=a)}forward2(a){-1==this.ins?this.forward(a):a==this.ins?this.next():(this.ins-=a,this.off+=a)}},cJ=class a{constructor(a,b,c){this.from=a,this.to=b,this.flags=c}get anchor(){return 32&this.flags?this.to:this.from}get head(){return 32&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 8&this.flags?-1:16&this.flags?1:0}get bidiLevel(){let a=7&this.flags;return 7==a?null:a}get goalColumn(){let a=this.flags>>6;return 0xffffff==a?void 0:a}map(b,c=-1){let d,e;return this.empty?d=e=b.mapPos(this.from,c):(d=b.mapPos(this.from,1),e=b.mapPos(this.to,-1)),d==this.from&&e==this.to?this:new a(d,e,this.flags)}extend(a,b=a){if(a<=this.anchor&&b>=this.anchor)return cK.range(a,b);let c=Math.abs(a-this.anchor)>Math.abs(b-this.anchor)?a:b;return cK.range(this.anchor,c)}eq(a,b=!1){return this.anchor==a.anchor&&this.head==a.head&&this.goalColumn==a.goalColumn&&(!b||!this.empty||this.assoc==a.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(a){if(!a||"number"!=typeof a.anchor||"number"!=typeof a.head)throw RangeError("Invalid JSON representation for SelectionRange");return cK.range(a.anchor,a.head)}static create(b,c,d){return new a(b,c,d)}},cK=class a{constructor(a,b){this.ranges=a,this.mainIndex=b}map(b,c=-1){return b.empty?this:a.create(this.ranges.map(a=>a.map(b,c)),this.mainIndex)}eq(a,b=!1){if(this.ranges.length!=a.ranges.length||this.mainIndex!=a.mainIndex)return!1;for(let c=0;c<this.ranges.length;c++)if(!this.ranges[c].eq(a.ranges[c],b))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return 1==this.ranges.length?this:new a([this.main],0)}addRange(b,c=!0){return a.create([b].concat(this.ranges),c?0:this.mainIndex+1)}replaceRange(b,c=this.mainIndex){let d=this.ranges.slice();return d[c]=b,a.create(d,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(a=>a.toJSON()),main:this.mainIndex}}static fromJSON(b){if(!b||!Array.isArray(b.ranges)||"number"!=typeof b.main||b.main>=b.ranges.length)throw RangeError("Invalid JSON representation for EditorSelection");return new a(b.ranges.map(a=>cJ.fromJSON(a)),b.main)}static single(b,c=b){return new a([a.range(b,c)],0)}static create(b,c=0){if(0==b.length)throw RangeError("A selection needs at least one range");for(let d=0,e=0;e<b.length;e++){let f=b[e];if(f.empty?f.from<=d:f.from<d)return a.normalized(b.slice(),c);d=f.to}return new a(b,c)}static cursor(a,b=0,c,d){return cJ.create(a,a,(0==b?0:b<0?8:16)|(null==c?7:Math.min(6,c))|(null!=d?d:0xffffff)<<6)}static range(a,b,c,d){let e=(null!=c?c:0xffffff)<<6|(null==d?7:Math.min(6,d));return b<a?cJ.create(b,a,48|e):cJ.create(a,b,8*(b>a)|e)}static normalized(b,c=0){let d=b[c];b.sort((a,b)=>a.from-b.from),c=b.indexOf(d);for(let d=1;d<b.length;d++){let e=b[d],f=b[d-1];if(e.empty?e.from<=f.to:e.from<f.to){let g=f.from,h=Math.max(e.to,f.to);d<=c&&c--,b.splice(--d,2,e.anchor>e.head?a.range(h,g):a.range(g,h))}}return new a(b,c)}};function cL(a,b){for(let c of a.ranges)if(c.to>b)throw RangeError("Selection points outside of document")}var cM=0,cN=class a{constructor(a,b,c,d,e){this.combine=a,this.compareInput=b,this.compare=c,this.isStatic=d,this.id=cM++,this.default=a([]),this.extensions="function"==typeof e?e(this):e}get reader(){return this}static define(b={}){return new a(b.combine||(a=>a),b.compareInput||((a,b)=>a===b),b.compare||(!b.combine?cO:(a,b)=>a===b),!!b.static,b.enables)}of(a){return new cP([],this,0,a)}compute(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cP(a,this,1,b)}computeN(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cP(a,this,2,b)}from(a,b){return b||(b=a=>a),this.compute([a],c=>b(c.field(a)))}};function cO(a,b){return a==b||a.length==b.length&&a.every((a,c)=>a===b[c])}var cP=class{constructor(a,b,c,d){this.dependencies=a,this.facet=b,this.type=c,this.value=d,this.id=cM++}dynamicSlot(a){var b;let c=this.value,d=this.facet.compareInput,e=this.id,f=a[e]>>1,g=2==this.type,h=!1,i=!1,j=[];for(let c of this.dependencies)"doc"==c?h=!0:"selection"==c?i=!0:((null!=(b=a[c.id])?b:1)&1)==0&&j.push(a[c.id]);return{create:a=>(a.values[f]=c(a),1),update(a,b){if(h&&b.docChanged||i&&(b.docChanged||b.selection)||cR(a,j)){let b=c(a);if(g?!cQ(b,a.values[f],d):!d(b,a.values[f]))return a.values[f]=b,1}return 0},reconfigure:(a,b)=>{let h,i=b.config.address[e];if(null!=i){let e=c0(b,i);if(this.dependencies.every(c=>c instanceof cN?b.facet(c)===a.facet(c):!(c instanceof cT)||b.field(c,!1)==a.field(c,!1))||(g?cQ(h=c(a),e,d):d(h=c(a),e)))return a.values[f]=e,0}else h=c(a);return a.values[f]=h,1}}}};function cQ(a,b,c){if(a.length!=b.length)return!1;for(let d=0;d<a.length;d++)if(!c(a[d],b[d]))return!1;return!0}function cR(a,b){let c=!1;for(let d of b)1&c_(a,d)&&(c=!0);return c}var cS=cN.define({static:!0}),cT=class a{constructor(a,b,c,d,e){this.id=a,this.createF=b,this.updateF=c,this.compareF=d,this.spec=e,this.provides=void 0}static define(b){let c=new a(cM++,b.create,b.update,b.compare||((a,b)=>a===b),b);return b.provide&&(c.provides=b.provide(c)),c}create(a){let b=a.facet(cS).find(a=>a.field==this);return((null==b?void 0:b.create)||this.createF)(a)}slot(a){let b=a[this.id]>>1;return{create:a=>(a.values[b]=this.create(a),1),update:(a,c)=>{let d=a.values[b],e=this.updateF(d,c);return this.compareF(d,e)?0:(a.values[b]=e,1)},reconfigure:(a,c)=>{let d=a.facet(cS),e=c.facet(cS),f;return(f=d.find(a=>a.field==this))&&f!=e.find(a=>a.field==this)?(a.values[b]=f.create(a),1):null!=c.config.address[this.id]?(a.values[b]=c.field(this),0):(a.values[b]=this.create(a),1)}}}init(a){return[this,cS.of({field:this,create:a})]}get extension(){return this}},cU={lowest:4,low:3,default:2,high:1,highest:0};function cV(a){return b=>new cX(b,a)}var cW={highest:cV(cU.highest),high:cV(cU.high),default:cV(cU.default),low:cV(cU.low),lowest:cV(cU.lowest)},cX=class{constructor(a,b){this.inner=a,this.prec=b}},cY=class a{of(a){return new cZ(this,a)}reconfigure(b){return a.reconfigure.of({compartment:this,extension:b})}get(a){return a.config.compartments.get(this)}},cZ=class{constructor(a,b){this.compartment=a,this.inner=b}},c$=class a{constructor(a,b,c,d,e,f){for(this.base=a,this.compartments=b,this.dynamicSlots=c,this.address=d,this.staticValues=e,this.facets=f,this.statusTemplate=[];this.statusTemplate.length<c.length;)this.statusTemplate.push(0)}staticFacet(a){let b=this.address[a.id];return null==b?a.default:this.staticValues[b>>1]}static resolve(b,c,d){var e,f,g;let h,i,j=[],k=Object.create(null),l=new Map;for(let a of(e=b,f=c,g=l,h=[[],[],[],[],[]],i=new Map,!function a(b,c){let d=i.get(b);if(null!=d){if(d<=c)return;let a=h[d].indexOf(b);a>-1&&h[d].splice(a,1),b instanceof cZ&&g.delete(b.compartment)}if(i.set(b,c),Array.isArray(b))for(let d of b)a(d,c);else if(b instanceof cZ){if(g.has(b.compartment))throw RangeError("Duplicate use of compartment in extensions");let d=f.get(b.compartment)||b.inner;g.set(b.compartment,d),a(d,c)}else if(b instanceof cX)a(b.inner,b.prec);else if(b instanceof cT)h[c].push(b),b.provides&&a(b.provides,c);else if(b instanceof cP)h[c].push(b),b.facet.extensions&&a(b.facet.extensions,cU.default);else{let d=b.extension;if(!d)throw Error(`Unrecognized extension value in extension set (${b}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(d,c)}}(e,cU.default),h.reduce((a,b)=>a.concat(b))))a instanceof cT?j.push(a):(k[a.facet.id]||(k[a.facet.id]=[])).push(a);let m=Object.create(null),n=[],o=[];for(let a of j)m[a.id]=o.length<<1,o.push(b=>a.slot(b));let p=null==d?void 0:d.config.facets;for(let a in k){let b=k[a],c=b[0].facet,e=p&&p[a]||[];if(b.every(a=>0==a.type))if(m[c.id]=n.length<<1|1,cO(e,b))n.push(d.facet(c));else{let a=c.combine(b.map(a=>a.value));n.push(d&&c.compare(a,d.facet(c))?d.facet(c):a)}else{for(let a of b)0==a.type?(m[a.id]=n.length<<1|1,n.push(a.value)):(m[a.id]=o.length<<1,o.push(b=>a.dynamicSlot(b)));m[c.id]=o.length<<1,o.push(a=>(function(a,b,c){let d=c.map(b=>a[b.id]),e=c.map(a=>a.type),f=d.filter(a=>!(1&a)),g=a[b.id]>>1;function h(a){let c=[];for(let b=0;b<d.length;b++){let f=c0(a,d[b]);if(2==e[b])for(let a of f)c.push(a);else c.push(f)}return b.combine(c)}return{create(a){for(let b of d)c_(a,b);return a.values[g]=h(a),1},update(a,c){if(!cR(a,f))return 0;let d=h(a);return b.compare(d,a.values[g])?0:(a.values[g]=d,1)},reconfigure(a,e){let f=cR(a,d),i=e.config.facets[b.id],j=e.facet(b);if(i&&!f&&cO(c,i))return a.values[g]=j,0;let k=h(a);return b.compare(k,j)?(a.values[g]=j,0):(a.values[g]=k,1)}}})(a,c,b))}}return new a(b,l,o.map(a=>a(m)),m,n,k)}};function c_(a,b){if(1&b)return 2;let c=b>>1,d=a.status[c];if(4==d)throw Error("Cyclic dependency between fields and/or facets");if(2&d)return d;a.status[c]=4;let e=a.computeSlot(a,a.config.dynamicSlots[c]);return a.status[c]=2|e}function c0(a,b){return 1&b?a.config.staticValues[b>>1]:a.values[b>>1]}var c1=cN.define(),c2=cN.define({combine:a=>a.some(a=>a),static:!0}),c3=cN.define({combine:a=>a.length?a[0]:void 0,static:!0}),c4=cN.define(),c5=cN.define(),c6=cN.define(),c7=cN.define({combine:a=>!!a.length&&a[0]}),c8=class{constructor(a,b){this.type=a,this.value=b}static define(){return new c9}},c9=class{of(a){return new c8(this,a)}},da=class{constructor(a){this.map=a}of(a){return new db(this,a)}},db=class a{constructor(a,b){this.type=a,this.value=b}map(b){let c=this.type.map(this.value,b);return void 0===c?void 0:c==this.value?this:new a(this.type,c)}is(a){return this.type==a}static define(a={}){return new da(a.map||(a=>a))}static mapEffects(a,b){if(!a.length)return a;let c=[];for(let d of a){let a=d.map(b);a&&c.push(a)}return c}};db.reconfigure=db.define(),db.appendConfig=db.define();var dc=class a{constructor(b,c,d,e,f,g){this.startState=b,this.changes=c,this.selection=d,this.effects=e,this.annotations=f,this.scrollIntoView=g,this._doc=null,this._state=null,d&&cL(d,c.newLength),f.some(b=>b.type==a.time)||(this.annotations=f.concat(a.time.of(Date.now())))}static create(b,c,d,e,f,g){return new a(b,c,d,e,f,g)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(a){for(let b of this.annotations)if(b.type==a)return b.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(b){let c=this.annotation(a.userEvent);return!!(c&&(c==b||c.length>b.length&&c.slice(0,b.length)==b&&"."==c[b.length]))}};function dd(a,b,c){var d;let e,f,g;return c?(e=b.changes,f=cC.empty(b.changes.length),g=a.changes.compose(b.changes)):(e=b.changes.map(a.changes),f=a.changes.mapDesc(b.changes,!0),g=a.changes.compose(e)),{changes:g,selection:b.selection?b.selection.map(f):null==(d=a.selection)?void 0:d.map(e),effects:db.mapEffects(a.effects,e).concat(db.mapEffects(b.effects,f)),annotations:a.annotations.length?a.annotations.concat(b.annotations):b.annotations,scrollIntoView:a.scrollIntoView||b.scrollIntoView}}function de(a,b,c){let d=b.selection,e=dg(b.annotations);return b.userEvent&&(e=e.concat(dc.userEvent.of(b.userEvent))),{changes:b.changes instanceof cC?b.changes:cC.of(b.changes||[],c,a.facet(c3)),selection:d&&(d instanceof cK?d:cK.single(d.anchor,d.head)),effects:dg(b.effects),annotations:e,scrollIntoView:!!b.scrollIntoView}}dc.time=c8.define(),dc.userEvent=c8.define(),dc.addToHistory=c8.define(),dc.remote=c8.define();var df=[];function dg(a){return null==a?df:Array.isArray(a)?a:[a]}var dh=function(a){return a[a.Word=0]="Word",a[a.Space=1]="Space",a[a.Other=2]="Other",a}(dh||(dh={})),di=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;try{e=RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(a){}var dj=class a{constructor(a,b,c,d,e,f){this.config=a,this.doc=b,this.selection=c,this.values=d,this.status=a.statusTemplate.slice(),this.computeSlot=e,f&&(f._state=this);for(let a=0;a<this.config.dynamicSlots.length;a++)c_(this,a<<1);this.computeSlot=null}field(a,b=!0){let c=this.config.address[a.id];if(null==c){if(b)throw RangeError("Field is not present in this state");return}return c_(this,c),c0(this,c)}update(...a){return function a(b,c,d){let e=de(b,c.length?c[0]:{},b.doc.length);c.length&&!1===c[0].filter&&(d=!1);for(let a=1;a<c.length;a++){!1===c[a].filter&&(d=!1);let f=!!c[a].sequential;e=dd(e,de(b,c[a],f?e.changes.newLength:b.doc.length),f)}let f=dc.create(b,e.changes,e.selection,e.effects,e.annotations,e.scrollIntoView);return function(a){let b=a.startState,c=b.facet(c6),d=a;for(let e=c.length-1;e>=0;e--){let f=c[e](a);f&&Object.keys(f).length&&(d=dd(d,de(b,f,a.changes.newLength),!0))}return d==a?a:dc.create(b,a.changes,a.selection,d.effects,d.annotations,d.scrollIntoView)}(d?function(b){let c=b.startState,d=!0;for(let a of c.facet(c4)){let c=a(b);if(!1===c){d=!1;break}Array.isArray(c)&&(d=!0===d?c:function(a,b){let c=[];for(let d=0,e=0;;){let f,g;if(d<a.length&&(e==b.length||b[e]>=a[d]))f=a[d++],g=a[d++];else{if(!(e<b.length))return c;f=b[e++],g=b[e++]}!c.length||c[c.length-1]<f?c.push(f,g):c[c.length-1]<g&&(c[c.length-1]=g)}}(d,c))}if(!0!==d){let a,e;if(!1===d)e=b.changes.invertedDesc,a=cC.empty(c.doc.length);else{let c=b.changes.filter(d);a=c.changes,e=c.filtered.mapDesc(c.changes).invertedDesc}b=dc.create(c,a,b.selection&&b.selection.map(e),db.mapEffects(b.effects,e),b.annotations,b.scrollIntoView)}let e=c.facet(c5);for(let d=e.length-1;d>=0;d--){let f=e[d](b);b=f instanceof dc?f:Array.isArray(f)&&1==f.length&&f[0]instanceof dc?f[0]:a(c,dg(f),!1)}return b}(f):f)}(this,a,!0)}applyTransaction(b){let c,d=this.config,{base:e,compartments:f}=d;for(let a of b.effects)a.is(cY.reconfigure)?(d&&(f=new Map,d.compartments.forEach((a,b)=>f.set(b,a)),d=null),f.set(a.value.compartment,a.value.extension)):a.is(db.reconfigure)?(d=null,e=a.value):a.is(db.appendConfig)&&(d=null,e=dg(e).concat(a.value));c=d?b.startState.values.slice():new a(d=c$.resolve(e,f,this),this.doc,this.selection,d.dynamicSlots.map(()=>null),(a,b)=>b.reconfigure(a,this),null).values;let g=b.startState.facet(c2)?b.newSelection:b.newSelection.asSingle();new a(d,b.newDoc,g,c,(a,c)=>c.update(a,b),b)}replaceSelection(a){return"string"==typeof a&&(a=this.toText(a)),this.changeByRange(b=>({changes:{from:b.from,to:b.to,insert:a},range:cK.cursor(b.from+a.length)}))}changeByRange(a){let b=this.selection,c=a(b.ranges[0]),d=this.changes(c.changes),e=[c.range],f=dg(c.effects);for(let c=1;c<b.ranges.length;c++){let g=a(b.ranges[c]),h=this.changes(g.changes),i=h.map(d);for(let a=0;a<c;a++)e[a]=e[a].map(i);let j=d.mapDesc(h,!0);e.push(g.range.map(j)),d=d.compose(i),f=db.mapEffects(f,i).concat(db.mapEffects(dg(g.effects),j))}return{changes:d,selection:cK.create(e,b.mainIndex),effects:f}}changes(b=[]){return b instanceof cC?b:cC.of(b,this.doc.length,this.facet(a.lineSeparator))}toText(b){return cp.of(b.split(this.facet(a.lineSeparator)||cz))}sliceDoc(a=0,b=this.doc.length){return this.doc.sliceString(a,b,this.lineBreak)}facet(a){let b=this.config.address[a.id];return null==b?a.default:(c_(this,b),c0(this,b))}toJSON(a){let b={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(a)for(let c in a){let d=a[c];d instanceof cT&&null!=this.config.address[d.id]&&(b[c]=d.spec.toJSON(this.field(a[c]),this))}return b}static fromJSON(b,c={},d){if(!b||"string"!=typeof b.doc)throw RangeError("Invalid JSON representation for EditorState");let e=[];if(d){for(let a in d)if(Object.prototype.hasOwnProperty.call(b,a)){let c=d[a],f=b[a];e.push(c.init(a=>c.spec.fromJSON(f,a)))}}return a.create({doc:b.doc,selection:cK.fromJSON(b.selection),extensions:c.extensions?e.concat([c.extensions]):e})}static create(b={}){let c=c$.resolve(b.extensions||[],new Map),d=b.doc instanceof cp?b.doc:cp.of((b.doc||"").split(c.staticFacet(a.lineSeparator)||cz)),e=b.selection?b.selection instanceof cK?b.selection:cK.single(b.selection.anchor,b.selection.head):cK.single(0);return cL(e,d.length),c.staticFacet(c2)||(e=e.asSingle()),new a(c,d,e,c.dynamicSlots.map(()=>null),(a,b)=>b.create(a),null)}get tabSize(){return this.facet(a.tabSize)}get lineBreak(){return this.facet(a.lineSeparator)||"\n"}get readOnly(){return this.facet(c7)}phrase(b,...c){for(let c of this.facet(a.phrases))if(Object.prototype.hasOwnProperty.call(c,b)){b=c[b];break}return c.length&&(b=b.replace(/\$(\$|\d*)/g,(a,b)=>{if("$"==b)return"$";let d=+(b||1);return!d||d>c.length?a:c[d-1]})),b}languageDataAt(a,b,c=-1){let d=[];for(let e of this.facet(c1))for(let f of e(this,b,c))Object.prototype.hasOwnProperty.call(f,a)&&d.push(f[a]);return d}charCategorizer(a){var b;let c=this.languageDataAt("wordChars",a);return b=c.length?c[0]:"",a=>{if(!/\S/.test(a))return dh.Space;if(function(a){if(e)return e.test(a);for(let b=0;b<a.length;b++){let c=a[b];if(/\w/.test(c)||c>"\x80"&&(c.toUpperCase()!=c.toLowerCase()||di.test(c)))return!0}return!1}(a))return dh.Word;for(let c=0;c<b.length;c++)if(a.indexOf(b[c])>-1)return dh.Word;return dh.Other}}wordAt(a){let{text:b,from:c,length:d}=this.doc.lineAt(a),e=this.charCategorizer(a),f=a-c,g=a-c;for(;f>0;){let a=cy(b,f,!1);if(e(b.slice(a,f))!=dh.Word)break;f=a}for(;g<d;){let a=cy(b,g);if(e(b.slice(g,a))!=dh.Word)break;g=a}return f==g?null:cK.range(f+c,g+c)}};dj.allowMultipleSelections=c2,dj.tabSize=cN.define({combine:a=>a.length?a[0]:4}),dj.lineSeparator=c3,dj.readOnly=c7,dj.phrases=cN.define({compare(a,b){let c=Object.keys(a),d=Object.keys(b);return c.length==d.length&&c.every(c=>a[c]==b[c])}}),dj.languageData=c1,dj.changeFilter=c4,dj.transactionFilter=c5,dj.transactionExtender=c6,cY.reconfigure=db.define();var dk=class{eq(a){return this==a}range(a,b=a){return dm.create(a,b,this)}};function dl(a,b){return a==b||a.constructor==b.constructor&&a.eq(b)}dk.prototype.startSide=dk.prototype.endSide=0,dk.prototype.point=!1,dk.prototype.mapMode=cA.TrackDel;var dm=class a{constructor(a,b,c){this.from=a,this.to=b,this.value=c}static create(b,c,d){return new a(b,c,d)}};function dn(a,b){return a.from-b.from||a.value.startSide-b.value.startSide}var dp=class a{constructor(a,b,c,d){this.from=a,this.to=b,this.value=c,this.maxPoint=d}get length(){return this.to[this.to.length-1]}findIndex(a,b,c,d=0){let e=c?this.to:this.from;for(let f=d,g=e.length;;){if(f==g)return f;let d=f+g>>1,h=e[d]-a||(c?this.value[d].endSide:this.value[d].startSide)-b;if(d==f)return h>=0?f:g;h>=0?g=d:f=d+1}}between(a,b,c,d){for(let e=this.findIndex(b,-1e9,!0),f=this.findIndex(c,1e9,!1,e);e<f;e++)if(!1===d(this.from[e]+a,this.to[e]+a,this.value[e]))return!1}map(b,c){let d=[],e=[],f=[],g=-1,h=-1;for(let a=0;a<this.value.length;a++){let i=this.value[a],j=this.from[a]+b,k=this.to[a]+b,l,m;if(j==k){let a=c.mapPos(j,i.startSide,i.mapMode);if(null==a||(l=m=a,i.startSide!=i.endSide&&(m=c.mapPos(j,i.endSide))<l))continue}else if((l=c.mapPos(j,i.startSide))>(m=c.mapPos(k,i.endSide))||l==m&&i.startSide>0&&i.endSide<=0)continue;0>(m-l||i.endSide-i.startSide)||(g<0&&(g=l),i.point&&(h=Math.max(h,m-l)),d.push(i),e.push(l-g),f.push(m-g))}return{mapped:d.length?new a(e,f,d,h):null,pos:g}}},dq=class a{constructor(a,b,c,d){this.chunkPos=a,this.chunk=b,this.nextLayer=c,this.maxPoint=d}static create(b,c,d,e){return new a(b,c,d,e)}get length(){let a=this.chunk.length-1;return a<0?0:Math.max(this.chunkEnd(a),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let a=this.nextLayer.size;for(let b of this.chunk)a+=b.value.length;return a}chunkEnd(a){return this.chunkPos[a]+this.chunk[a].length}update(b){let{add:c=[],sort:d=!1,filterFrom:e=0,filterTo:f=this.length}=b,g=b.filter;if(0==c.length&&!g)return this;if(d&&(c=c.slice().sort(dn)),this.isEmpty)return c.length?a.of(c):this;let h=new dt(this,null,-1).goto(0),i=0,j=[],k=new dr;for(;h.value||i<c.length;)if(i<c.length&&(h.from-c[i].from||h.startSide-c[i].value.startSide)>=0){let a=c[i++];k.addInner(a.from,a.to,a.value)||j.push(a)}else 1==h.rangeIndex&&h.chunkIndex<this.chunk.length&&(i==c.length||this.chunkEnd(h.chunkIndex)<c[i].from)&&(!g||e>this.chunkEnd(h.chunkIndex)||f<this.chunkPos[h.chunkIndex])&&k.addChunk(this.chunkPos[h.chunkIndex],this.chunk[h.chunkIndex])?h.nextChunk():((!g||e>h.to||f<h.from||g(h.from,h.to,h.value))&&!k.addInner(h.from,h.to,h.value)&&j.push(dm.create(h.from,h.to,h.value)),h.next());return k.finishInner(this.nextLayer.isEmpty&&!j.length?a.empty:this.nextLayer.update({add:j,filter:g,filterFrom:e,filterTo:f}))}map(b){if(b.empty||this.isEmpty)return this;let c=[],d=[],e=-1;for(let a=0;a<this.chunk.length;a++){let f=this.chunkPos[a],g=this.chunk[a],h=b.touchesRange(f,f+g.length);if(!1===h)e=Math.max(e,g.maxPoint),c.push(g),d.push(b.mapPos(f));else if(!0===h){let{mapped:a,pos:h}=g.map(f,b);a&&(e=Math.max(e,a.maxPoint),c.push(a),d.push(h))}}let f=this.nextLayer.map(b);return 0==c.length?f:new a(d,c,f||a.empty,e)}between(a,b,c){if(!this.isEmpty){for(let d=0;d<this.chunk.length;d++){let e=this.chunkPos[d],f=this.chunk[d];if(b>=e&&a<=e+f.length&&!1===f.between(e,a-e,b-e,c))return}this.nextLayer.between(a,b,c)}}iter(a=0){return du.from([this]).goto(a)}get isEmpty(){return this.nextLayer==this}static iter(a,b=0){return du.from(a).goto(b)}static compare(a,b,c,d,e=-1){let f=a.filter(a=>a.maxPoint>0||!a.isEmpty&&a.maxPoint>=e),g=b.filter(a=>a.maxPoint>0||!a.isEmpty&&a.maxPoint>=e),h=ds(f,g,c),i=new dw(f,h,e),j=new dw(g,h,e);c.iterGaps((a,b,c)=>dx(i,a,j,b,c,d)),c.empty&&0==c.length&&dx(i,0,j,0,0,d)}static eq(a,b,c=0,d){null==d&&(d=1e9-1);let e=a.filter(a=>!a.isEmpty&&0>b.indexOf(a)),f=b.filter(b=>!b.isEmpty&&0>a.indexOf(b));if(e.length!=f.length)return!1;if(!e.length)return!0;let g=ds(e,f),h=new dw(e,g,0).goto(c),i=new dw(f,g,0).goto(c);for(;;){if(h.to!=i.to||!dy(h.active,i.active)||h.point&&(!i.point||!dl(h.point,i.point)))return!1;if(h.to>d)return!0;h.next(),i.next()}}static spans(a,b,c,d,e=-1){let f=new dw(a,null,e).goto(b),g=b,h=f.openStart;for(;;){let a=Math.min(f.to,c);if(f.point){let c=f.activeForPoint(f.to),e=f.pointFrom<b?c.length+1:f.point.startSide<0?c.length:Math.min(c.length,h);d.point(g,a,f.point,c,e,f.pointRank),h=Math.min(f.openEnd(a),c.length)}else a>g&&(d.span(g,a,f.active,h),h=f.openEnd(a));if(f.to>c)return h+(f.point&&f.to>c?1:0);g=f.to,f.next()}}static of(a,b=!1){let c=new dr;for(let d of a instanceof dm?[a]:b?function(a){if(a.length>1)for(let b=a[0],c=1;c<a.length;c++){let d=a[c];if(dn(b,d)>0)return a.slice().sort(dn);b=d}return a}(a):a)c.add(d.from,d.to,d.value);return c.finish()}static join(b){if(!b.length)return a.empty;let c=b[b.length-1];for(let d=b.length-2;d>=0;d--)for(let e=b[d];e!=a.empty;e=e.nextLayer)c=new a(e.chunkPos,e.chunk,c,Math.max(e.maxPoint,c.maxPoint));return c}};dq.empty=new dq([],[],null,-1),dq.empty.nextLayer=dq.empty;var dr=class a{finishChunk(a){this.chunks.push(new dp(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,a&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(b,c,d){this.addInner(b,c,d)||(this.nextLayer||(this.nextLayer=new a)).add(b,c,d)}addInner(a,b,c){let d=a-this.lastTo||c.startSide-this.last.endSide;if(d<=0&&0>(a-this.lastFrom||c.startSide-this.last.startSide))throw Error("Ranges must be added sorted by `from` position and `startSide`");return!(d<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=a),this.from.push(a-this.chunkStart),this.to.push(b-this.chunkStart),this.last=c,this.lastFrom=a,this.lastTo=b,this.value.push(c),c.point&&(this.maxPoint=Math.max(this.maxPoint,b-a)),!0)}addChunk(a,b){if(0>(a-this.lastTo||b.value[0].startSide-this.last.endSide))return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,b.maxPoint),this.chunks.push(b),this.chunkPos.push(a);let c=b.value.length-1;return this.last=b.value[c],this.lastFrom=b.from[c]+a,this.lastTo=b.to[c]+a,!0}finish(){return this.finishInner(dq.empty)}finishInner(a){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return a;let b=dq.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(a):a,this.setMaxPoint);return this.from=null,b}};function ds(a,b,c){let d=new Map;for(let b of a)for(let a=0;a<b.chunk.length;a++)b.chunk[a].maxPoint<=0&&d.set(b.chunk[a],b.chunkPos[a]);let e=new Set;for(let a of b)for(let b=0;b<a.chunk.length;b++){let f=d.get(a.chunk[b]);null==f||(c?c.mapPos(f):f)!=a.chunkPos[b]||(null==c?void 0:c.touchesRange(f,f+a.chunk[b].length))||e.add(a.chunk[b])}return e}var dt=class{constructor(a,b,c,d=0){this.layer=a,this.skip=b,this.minPoint=c,this.rank=d}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(a,b=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(a,b,!1),this}gotoInner(a,b,c){for(;this.chunkIndex<this.layer.chunk.length;){let b=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(b)||this.layer.chunkEnd(this.chunkIndex)<a||b.maxPoint<this.minPoint))break;this.chunkIndex++,c=!1}if(this.chunkIndex<this.layer.chunk.length){let d=this.layer.chunk[this.chunkIndex].findIndex(a-this.layer.chunkPos[this.chunkIndex],b,!0);(!c||this.rangeIndex<d)&&this.setRangeIndex(d)}this.next()}forward(a,b){0>(this.to-a||this.endSide-b)&&this.gotoInner(a,b,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let a=this.layer.chunkPos[this.chunkIndex],b=this.layer.chunk[this.chunkIndex],c=a+b.from[this.rangeIndex];if(this.from=c,this.to=a+b.to[this.rangeIndex],this.value=b.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(a){if(a==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=a}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(a){return this.from-a.from||this.startSide-a.startSide||this.rank-a.rank||this.to-a.to||this.endSide-a.endSide}},du=class a{constructor(a){this.heap=a}static from(b,c=null,d=-1){let e=[];for(let a=0;a<b.length;a++)for(let f=b[a];!f.isEmpty;f=f.nextLayer)f.maxPoint>=d&&e.push(new dt(f,c,d,a));return 1==e.length?e[0]:new a(e)}get startSide(){return this.value?this.value.startSide:0}goto(a,b=-1e9){for(let c of this.heap)c.goto(a,b);for(let a=this.heap.length>>1;a>=0;a--)dv(this.heap,a);return this.next(),this}forward(a,b){for(let c of this.heap)c.forward(a,b);for(let a=this.heap.length>>1;a>=0;a--)dv(this.heap,a);0>(this.to-a||this.value.endSide-b)&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let a=this.heap[0];this.from=a.from,this.to=a.to,this.value=a.value,this.rank=a.rank,a.value&&a.next(),dv(this.heap,0)}}};function dv(a,b){for(let c=a[b];;){let d=(b<<1)+1;if(d>=a.length)break;let e=a[d];if(d+1<a.length&&e.compare(a[d+1])>=0&&(e=a[d+1],d++),0>c.compare(e))break;a[d]=c,a[b]=e,b=d}}var dw=class{constructor(a,b,c){this.minPoint=c,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=du.from(a,b,c)}goto(a,b=-1e9){return this.cursor.goto(a,b),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=a,this.endSide=b,this.openStart=-1,this.next(),this}forward(a,b){for(;this.minActive>-1&&0>(this.activeTo[this.minActive]-a||this.active[this.minActive].endSide-b);)this.removeActive(this.minActive);this.cursor.forward(a,b)}removeActive(a){dz(this.active,a),dz(this.activeTo,a),dz(this.activeRank,a),this.minActive=dB(this.active,this.activeTo)}addActive(a){let b=0,{value:c,to:d,rank:e}=this.cursor;for(;b<this.activeRank.length&&(e-this.activeRank[b]||d-this.activeTo[b])>0;)b++;dA(this.active,b,c),dA(this.activeTo,b,d),dA(this.activeRank,b,e),a&&dA(a,b,this.cursor.from),this.minActive=dB(this.active,this.activeTo)}next(){let a=this.to,b=this.point;this.point=null;let c=this.openStart<0?[]:null;for(;;){let d=this.minActive;if(d>-1&&0>(this.activeTo[d]-this.cursor.from||this.active[d].endSide-this.cursor.startSide)){if(this.activeTo[d]>a){this.to=this.activeTo[d],this.endSide=this.active[d].endSide;break}this.removeActive(d),c&&dz(c,d)}else if(this.cursor.value)if(this.cursor.from>a){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let a=this.cursor.value;if(a.point)if(b&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=a,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=a.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}else this.addActive(c),this.cursor.next()}else{this.to=this.endSide=1e9;break}}if(c){this.openStart=0;for(let b=c.length-1;b>=0&&c[b]<a;b--)this.openStart++}}activeForPoint(a){if(!this.active.length)return this.active;let b=[];for(let c=this.active.length-1;c>=0&&!(this.activeRank[c]<this.pointRank);c--)(this.activeTo[c]>a||this.activeTo[c]==a&&this.active[c].endSide>=this.point.endSide)&&b.push(this.active[c]);return b.reverse()}openEnd(a){let b=0;for(let c=this.activeTo.length-1;c>=0&&this.activeTo[c]>a;c--)b++;return b}};function dx(a,b,c,d,e,f){a.goto(b),c.goto(d);let g=d+e,h=d,i=d-b,j=!!f.boundChange;for(let b=!1;;){let d=a.to+i-c.to,e=d||a.endSide-c.endSide,k=e<0?a.to+i:c.to,l=Math.min(k,g);if(a.point||c.point?(a.point&&c.point&&dl(a.point,c.point)&&dy(a.activeForPoint(a.to),c.activeForPoint(c.to))||f.comparePoint(h,l,a.point,c.point),b=!1):(b&&f.boundChange(h),l>h&&!dy(a.active,c.active)&&f.compareRange(h,l,a.active,c.active),j&&l<g&&(d||a.openEnd(k)!=c.openEnd(k))&&(b=!0)),k>g)break;h=k,e<=0&&a.next(),e>=0&&c.next()}}function dy(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c]&&!dl(a[c],b[c]))return!1;return!0}function dz(a,b){for(let c=b,d=a.length-1;c<d;c++)a[c]=a[c+1];a.pop()}function dA(a,b,c){for(let c=a.length-1;c>=b;c--)a[c+1]=a[c];a[b]=c}function dB(a,b){let c=-1,d=1e9;for(let e=0;e<b.length;e++)0>(b[e]-d||a[e].endSide-a[c].endSide)&&(c=e,d=b[e]);return c}var dC="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),dD="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),dE="undefined"!=typeof globalThis?globalThis:{},dF=class{constructor(a,b){this.rules=[];let{finish:c}=b||{};function d(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}for(let b in a)!function a(b,e,f,g){let h=[],i=/^@(\w+)\b/.exec(b[0]),j=i&&"keyframes"==i[1];if(i&&null==e)return f.push(b[0]+";");for(let c in e){let g=e[c];if(/&/.test(c))a(c.split(/,\s*/).map(a=>b.map(b=>a.replace(/&/,b))).reduce((a,b)=>a.concat(b)),g,f);else if(g&&"object"==typeof g){if(!i)throw RangeError("The value of a property ("+c+") should be a primitive value.");a(d(c),g,h,j)}else null!=g&&h.push(c.replace(/_.*/,"").replace(/[A-Z]/g,a=>"-"+a.toLowerCase())+": "+g+";")}(h.length||j)&&f.push((c&&!i&&!g?b.map(c):b).join(", ")+" {"+h.join(" ")+"}")}(d(b),a[b],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let a=dE[dC]||1;return dE[dC]=a+1,"ͼ"+a.toString(36)}static mount(a,b,c){let d=a[dD],e=c&&c.nonce;d?e&&d.setNonce(e):d=new dH(a,e),d.mount(Array.isArray(b)?b:[b],a)}},dG=new Map,dH=class{constructor(a,b){let c=a.ownerDocument||a,d=c.defaultView;if(!a.head&&a.adoptedStyleSheets&&d.CSSStyleSheet){let b=dG.get(c);if(b)return a[dD]=b;this.sheet=new d.CSSStyleSheet,dG.set(c,this)}else this.styleTag=c.createElement("style"),b&&this.styleTag.setAttribute("nonce",b);this.modules=[],a[dD]=this}mount(a,b){let c=this.sheet,d=0,e=0;for(let b=0;b<a.length;b++){let f=a[b],g=this.modules.indexOf(f);if(g<e&&g>-1&&(this.modules.splice(g,1),e--,g=-1),-1==g){if(this.modules.splice(e++,0,f),c)for(let a=0;a<f.rules.length;a++)c.insertRule(f.rules[a],d++)}else{for(;e<g;)d+=this.modules[e++].rules.length;d+=f.rules.length,e++}}if(c)0>b.adoptedStyleSheets.indexOf(this.sheet)&&(b.adoptedStyleSheets=[this.sheet,...b.adoptedStyleSheets]);else{let a="";for(let b=0;b<this.modules.length;b++)a+=this.modules[b].getRules()+"\n";this.styleTag.textContent=a;let c=b.head||b;this.styleTag.parentNode!=c&&c.insertBefore(this.styleTag,c.firstChild)}}setNonce(a){this.styleTag&&this.styleTag.getAttribute("nonce")!=a&&this.styleTag.setAttribute("nonce",a)}},dI={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},dJ={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'};for("undefined"!=typeof navigator&&/Mac/.test(navigator.platform),"undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),f=0;f<10;f++)dI[48+f]=dI[96+f]=String(f);for(f=1;f<=24;f++)dI[f+111]="F"+f;for(f=65;f<=90;f++)dI[f]=String.fromCharCode(f+32),dJ[f]=String.fromCharCode(f);for(g in dI)dJ.hasOwnProperty(g)||(dJ[g]=dI[g]);function dK(){var a=arguments[0];"string"==typeof a&&(a=document.createElement(a));var b=1,c=arguments[1];if(c&&"object"==typeof c&&null==c.nodeType&&!Array.isArray(c)){for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];"string"==typeof e?a.setAttribute(d,e):null!=e&&(a[d]=e)}b++}for(;b<arguments.length;b++)!function a(b,c){if("string"==typeof c)b.appendChild(document.createTextNode(c));else if(null==c);else if(null!=c.nodeType)b.appendChild(c);else if(Array.isArray(c))for(var d=0;d<c.length;d++)a(b,c[d]);else throw RangeError("Unsupported child node: "+c)}(a,arguments[b]);return a}var dL="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},dM="undefined"!=typeof document?document:{documentElement:{style:{}}},dN=/Edge\/(\d+)/.exec(dL.userAgent),dO=/MSIE \d/.test(dL.userAgent),dP=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(dL.userAgent),dQ=!!(dO||dP||dN),dR=!dQ&&/gecko\/(\d+)/i.test(dL.userAgent),dS=!dQ&&/Chrome\/(\d+)/.exec(dL.userAgent),dT="webkitFontSmoothing"in dM.documentElement.style,dU=!dQ&&/Apple Computer/.test(dL.vendor),dV=dU&&(/Mobile\/\w+/.test(dL.userAgent)||dL.maxTouchPoints>2),dW={mac:dV||/Mac/.test(dL.platform),windows:/Win/.test(dL.platform),linux:/Linux|X11/.test(dL.platform),ie:dQ,ie_version:dO?dM.documentMode||6:dP?+dP[1]:dN?+dN[1]:0,gecko:dR,gecko_version:dR?+(/Firefox\/(\d+)/.exec(dL.userAgent)||[0,0])[1]:0,chrome:!!dS,chrome_version:dS?+dS[1]:0,ios:dV,android:/Android\b/.test(dL.userAgent),webkit:dT,webkit_version:dT?+(/\bAppleWebKit\/(\d+)/.exec(dL.userAgent)||[0,0])[1]:0,safari:dU,safari_version:dU?+(/\bVersion\/(\d+(\.\d+)?)/.exec(dL.userAgent)||[0,0])[1]:0,tabSize:null!=dM.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};function dX(a,b){for(let c in a)"class"==c&&b.class?b.class+=" "+a.class:"style"==c&&b.style?b.style+=";"+a.style:b[c]=a[c];return b}var dY=Object.create(null);function dZ(a,b,c){if(a==b)return!0;a||(a=dY),b||(b=dY);let d=Object.keys(a),e=Object.keys(b);if(d.length-(c&&d.indexOf(c)>-1?1:0)!=e.length-(c&&e.indexOf(c)>-1?1:0))return!1;for(let f of d)if(f!=c&&(-1==e.indexOf(f)||a[f]!==b[f]))return!1;return!0}function d$(a,b,c){let d=!1;if(b)for(let e in b)c&&e in c||(d=!0,"style"==e?a.style.cssText="":a.removeAttribute(e));if(c)for(let e in c)b&&b[e]==c[e]||(d=!0,"style"==e?a.style.cssText=c[e]:a.setAttribute(e,c[e]));return d}var d_=class{eq(a){return!1}updateDOM(a,b){return!1}compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}get estimatedHeight(){return -1}get lineBreaks(){return 0}ignoreEvent(a){return!0}coordsAt(a,b,c){return null}get isHidden(){return!1}get editable(){return!1}destroy(a){}},d0=function(a){return a[a.Text=0]="Text",a[a.WidgetBefore=1]="WidgetBefore",a[a.WidgetAfter=2]="WidgetAfter",a[a.WidgetRange=3]="WidgetRange",a}(d0||(d0={})),d1=class extends dk{constructor(a,b,c,d){super(),this.startSide=a,this.endSide=b,this.widget=c,this.spec=d}get heightRelevant(){return!1}static mark(a){return new d2(a)}static widget(a){let b=Math.max(-1e4,Math.min(1e4,a.side||0)),c=!!a.block;return b+=c&&!a.inlineOrder?b>0?3e8:-4e8:b>0?1e8:-1e8,new d4(a,b,b,c,a.widget||null,!1)}static replace(a){let b=!!a.block,c,d;if(a.isBlockGap)c=-5e8,d=4e8;else{let{start:e,end:f}=d5(a,b);c=(e?b?-3e8:-1:5e8)-1,d=(f?b?2e8:1:-6e8)+1}return new d4(a,c,d,b,a.widget||null,!0)}static line(a){return new d3(a)}static set(a,b=!1){return dq.of(a,b)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}};d1.none=dq.empty;var d2=class a extends d1{constructor(a){let{start:b,end:c}=d5(a);super(b?-1:5e8,c?1:-6e8,null,a),this.tagName=a.tagName||"span",this.attrs=a.class&&a.attributes?dX(a.attributes,{class:a.class}):a.class?{class:a.class}:a.attributes||dY}eq(b){return this==b||b instanceof a&&this.tagName==b.tagName&&dZ(this.attrs,b.attrs)}range(a,b=a){if(a>=b)throw RangeError("Mark decorations may not be empty");return super.range(a,b)}};d2.prototype.point=!1;var d3=class a extends d1{constructor(a){super(-2e8,-2e8,null,a)}eq(b){return b instanceof a&&this.spec.class==b.spec.class&&dZ(this.spec.attributes,b.spec.attributes)}range(a,b=a){if(b!=a)throw RangeError("Line decoration ranges must be zero-length");return super.range(a,b)}};d3.prototype.mapMode=cA.TrackBefore,d3.prototype.point=!0;var d4=class a extends d1{constructor(a,b,c,d,e,f){super(b,c,e,a),this.block=d,this.isReplace=f,this.mapMode=d?b<=0?cA.TrackBefore:cA.TrackAfter:cA.TrackDel}get type(){return this.startSide!=this.endSide?d0.WidgetRange:this.startSide<=0?d0.WidgetBefore:d0.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(b){var c,d;return b instanceof a&&(c=this.widget,c==(d=b.widget)||!!(c&&d&&c.compare(d)))&&this.block==b.block&&this.startSide==b.startSide&&this.endSide==b.endSide}range(a,b=a){if(this.isReplace&&(a>b||a==b&&this.startSide>0&&this.endSide<=0))throw RangeError("Invalid range for replacement decoration");if(!this.isReplace&&b!=a)throw RangeError("Widget decorations can only have zero-length ranges");return super.range(a,b)}};function d5(a,b=!1){let{inclusiveStart:c,inclusiveEnd:d}=a;return null==c&&(c=a.inclusive),null==d&&(d=a.inclusive),{start:null!=c?c:b,end:null!=d?d:b}}function d6(a,b,c,d=0){let e=c.length-1;e>=0&&c[e]+d>=a?c[e]=Math.max(c[e],b):c.push(a,b)}d4.prototype.point=!0;var d7=class a extends dk{constructor(a,b){super(),this.tagName=a,this.attributes=b}eq(b){return b==this||b instanceof a&&this.tagName==b.tagName&&dZ(this.attributes,b.attributes)}static create(b){return new a(b.tagName,b.attributes||dY)}static set(a,b=!1){return dq.of(a,b)}};function d8(a){return(11==a.nodeType?a.getSelection?a:a.ownerDocument:a).getSelection()}function d9(a,b){return!!b&&(a==b||a.contains(1!=b.nodeType?b.parentNode:b))}function ea(a,b){if(!b.anchorNode)return!1;try{return d9(a,b.anchorNode)}catch(a){return!1}}function eb(a){return 3==a.nodeType?em(a,0,a.nodeValue.length).getClientRects():1==a.nodeType?a.getClientRects():[]}function ec(a,b,c,d){return!!c&&(ef(a,b,c,d,-1)||ef(a,b,c,d,1))}function ed(a){for(var b=0;;b++)if(!(a=a.previousSibling))return b}function ee(a){return 1==a.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(a.nodeName)}function ef(a,b,c,d,e){for(;;){if(a==c&&b==d)return!0;if(b==(e<0?0:eg(a))){if("DIV"==a.nodeName)return!1;let c=a.parentNode;if(!c||1!=c.nodeType)return!1;b=ed(a)+(e<0?0:1),a=c}else{if(1!=a.nodeType||1==(a=a.childNodes[b+(e<0?-1:0)]).nodeType&&"false"==a.contentEditable)return!1;b=e<0?eg(a):0}}}function eg(a){return 3==a.nodeType?a.nodeValue.length:a.childNodes.length}function eh(a,b){let c=b?a.left:a.right;return{left:c,right:c,top:a.top,bottom:a.bottom}}function ei(a,b){let c=b.width/a.offsetWidth,d=b.height/a.offsetHeight;return(c>.995&&c<1.005||!isFinite(c)||1>Math.abs(b.width-a.offsetWidth))&&(c=1),(d>.995&&d<1.005||!isFinite(d)||1>Math.abs(b.height-a.offsetHeight))&&(d=1),{scaleX:c,scaleY:d}}d7.prototype.startSide=d7.prototype.endSide=-1;var ej=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(a){return this.anchorNode==a.anchorNode&&this.anchorOffset==a.anchorOffset&&this.focusNode==a.focusNode&&this.focusOffset==a.focusOffset}setRange(a){let{anchorNode:b,focusNode:c}=a;this.set(b,Math.min(a.anchorOffset,b?eg(b):0),c,Math.min(a.focusOffset,c?eg(c):0))}set(a,b,c,d){this.anchorNode=a,this.anchorOffset=b,this.focusNode=c,this.focusOffset=d}},ek=null;function el(a){if(a.setActive)return a.setActive();if(ek)return a.focus(ek);let b=[];for(let c=a;c&&(b.push(c,c.scrollTop,c.scrollLeft),c!=c.ownerDocument);c=c.parentNode);if(a.focus(null==ek?{get preventScroll(){return ek={preventScroll:!0},!0}}:void 0),!ek){ek=!1;for(let a=0;a<b.length;){let c=b[a++],d=b[a++],e=b[a++];c.scrollTop!=d&&(c.scrollTop=d),c.scrollLeft!=e&&(c.scrollLeft=e)}}}function em(a,b,c=b){let d=h||(h=document.createRange());return d.setEnd(a,c),d.setStart(a,b),d}function en(a,b,c,d){let e={key:b,code:b,keyCode:c,which:c,cancelable:!0};d&&({altKey:e.altKey,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,metaKey:e.metaKey}=d);let f=new KeyboardEvent("keydown",e);f.synthetic=!0,a.dispatchEvent(f);let g=new KeyboardEvent("keyup",e);return g.synthetic=!0,a.dispatchEvent(g),f.defaultPrevented||g.defaultPrevented}function eo(a){return a.scrollTop>Math.max(1,a.scrollHeight-a.clientHeight-4)}function ep(a,b){for(let c=a,d=b;;)if(3==c.nodeType&&d>0)return{node:c,offset:d};else if(1==c.nodeType&&d>0){if("false"==c.contentEditable)return null;d=eg(c=c.childNodes[d-1])}else{if(!c.parentNode||ee(c))return null;d=ed(c),c=c.parentNode}}function eq(a,b){for(let c=a,d=b;;)if(3==c.nodeType&&d<c.nodeValue.length)return{node:c,offset:d};else if(1==c.nodeType&&d<c.childNodes.length){if("false"==c.contentEditable)return null;c=c.childNodes[d],d=0}else{if(!c.parentNode||ee(c))return null;d=ed(c)+1,c=c.parentNode}}dW.safari&&dW.safari_version>=26&&(ek=!1);var er=class a{constructor(a,b,c=!0){this.node=a,this.offset=b,this.precise=c}static before(b,c){return new a(b.parentNode,ed(b),c)}static after(b,c){return new a(b.parentNode,ed(b)+1,c)}},es=function(a){return a[a.LTR=0]="LTR",a[a.RTL=1]="RTL",a}(es||(es={})),et=es.LTR,eu=es.RTL;function ev(a){let b=[];for(let c=0;c<a.length;c++)b.push(1<<a[c]);return b}var ew=ev("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),ex=ev("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),ey=Object.create(null),ez=[];for(let a of["()","[]","{}"]){let b=a.charCodeAt(0),c=a.charCodeAt(1);ey[b]=c,ey[c]=-b}function eA(a){return a<=247?ew[a]:1424<=a&&a<=1524?2:1536<=a&&a<=1785?ex[a-1536]:1774<=a&&a<=2220?4:8192<=a&&a<=8204?256:64336<=a&&a<=65023?4:1}var eB=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,eC=class{get dir(){return this.level%2?eu:et}constructor(a,b,c){this.from=a,this.to=b,this.level=c}side(a,b){return this.dir==b==a?this.to:this.from}forward(a,b){return a==(this.dir==b)}static find(a,b,c,d){let e=-1;for(let f=0;f<a.length;f++){let g=a[f];if(g.from<=b&&g.to>=b){if(g.level==c)return f;(e<0||(0!=d?d<0?g.from<b:g.to>b:a[e].level>g.level))&&(e=f)}}if(e<0)throw RangeError("Index out of range");return e}},eD=[];function eE(a){return[new eC(0,a,0)]}var eF="",eG=cN.define(),eH=cN.define(),eI=cN.define(),eJ=cN.define(),eK=cN.define(),eL=cN.define(),eM=cN.define(),eN=cN.define(),eO=cN.define(),eP=cN.define({combine:a=>a.some(a=>a)}),eQ=cN.define({combine:a=>a.some(a=>a)}),eR=cN.define(),eS=class a{constructor(a,b="nearest",c="nearest",d=5,e=5,f=!1){this.range=a,this.y=b,this.x=c,this.yMargin=d,this.xMargin=e,this.isSnapshot=f}map(b){return b.empty?this:new a(this.range.map(b),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(b){return this.range.to<=b.doc.length?this:new a(cK.cursor(b.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},eT=db.define({map:(a,b)=>a.map(b)}),eU=db.define();function eV(a,b,c){let d=a.facet(eJ);d.length?d[0](b):window.onerror&&window.onerror(String(b),c,void 0,void 0,b)||(c?console.error(c+":",b):console.error(b))}var eW=cN.define({combine:a=>!a.length||a[0]}),eX=0,eY=cN.define({combine:a=>a.filter((b,c)=>{for(let d=0;d<c;d++)if(a[d].plugin==b.plugin)return!1;return!0})}),eZ=class a{constructor(a,b,c,d,e){this.id=a,this.create=b,this.domEventHandlers=c,this.domEventObservers=d,this.baseExtensions=e(this),this.extension=this.baseExtensions.concat(eY.of({plugin:this,arg:void 0}))}of(a){return this.baseExtensions.concat(eY.of({plugin:this,arg:a}))}static define(b,c){let{eventHandlers:d,eventObservers:e,provide:f,decorations:g}=c||{};return new a(eX++,b,d,e,a=>{let b=[];return g&&b.push(e1.of(b=>{let c=b.plugin(a);return c?g(c):d1.none})),f&&b.push(f(a)),b})}static fromClass(b,c){return a.define((a,c)=>new b(a,c),c)}},e$=class{constructor(a){this.spec=a,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(a){if(this.value){if(this.mustUpdate){let a=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(a)}catch(b){if(eV(a.state,b,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(a){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(a,this.spec.arg)}catch(b){eV(a.state,b,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(a){var b;if(null==(b=this.value)?void 0:b.destroy)try{this.value.destroy()}catch(b){eV(a.state,b,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},e_=cN.define(),e0=cN.define(),e1=cN.define(),e2=cN.define(),e3=cN.define(),e4=cN.define(),e5=cN.define();function e6(a,b){let c=a.state.facet(e5);if(!c.length)return c;let d=c.map(b=>b instanceof Function?b(a):b),e=[];return dq.spans(d,b.from,b.to,{point(){},span(a,c,d,f){let g=a-b.from,h=c-b.from,i=e;for(let a=d.length-1;a>=0;a--,f--){let c=d[a].spec.bidiIsolate,e;if(null==c&&(c=function(a,b,c){for(let d=b;d<c;d++){let b=eA(a.charCodeAt(d));if(1==b)break;if(2==b||4==b)return eu}return et}(b.text,g,h)),f>0&&i.length&&(e=i[i.length-1]).to==g&&e.direction==c)e.to=h,i=e.inner;else{let a={from:g,to:h,direction:c,inner:[]};i.push(a),i=a.inner}}}}),e}var e7=cN.define();function e8(a){let b=0,c=0,d=0,e=0;for(let f of a.state.facet(e7)){let g=f(a);g&&(null!=g.left&&(b=Math.max(b,g.left)),null!=g.right&&(c=Math.max(c,g.right)),null!=g.top&&(d=Math.max(d,g.top)),null!=g.bottom&&(e=Math.max(e,g.bottom)))}return{left:b,right:c,top:d,bottom:e}}var e9=cN.define(),fa=class a{constructor(a,b,c,d){this.fromA=a,this.toA=b,this.fromB=c,this.toB=d}join(b){return new a(Math.min(this.fromA,b.fromA),Math.max(this.toA,b.toA),Math.min(this.fromB,b.fromB),Math.max(this.toB,b.toB))}addToSet(a){let b=a.length,c=this;for(;b>0;b--){let d=a[b-1];if(!(d.fromA>c.toA)){if(d.toA<c.fromA)break;c=c.join(d),a.splice(b-1,1)}}return a.splice(b,0,c),a}static extendWithRanges(b,c){if(0==c.length)return b;let d=[];for(let e=0,f=0,g=0;;){let h=Math.min(e<b.length?b[e].fromB:1e9,f<c.length?c[f]:1e9);if(1e9==h)break;let i=h+g,j=h,k=i;for(;;)if(f<c.length&&c[f]<=j){let a=c[f+1];f+=2,j=Math.max(j,a);for(let a=e;a<b.length&&b[a].fromB<=j;a++)g=b[a].toA-b[a].toB;k=Math.max(k,a+g)}else if(e<b.length&&b[e].fromB<=j){let a=b[e++];j=Math.max(j,a.toB),k=Math.max(k,a.toA),g=a.toA-a.toB}else break;d.push(new a(i,k,h,j))}return d}},fb=class a{constructor(a,b,c){for(let d of(this.view=a,this.state=b,this.transactions=c,this.flags=0,this.startState=a.state,this.changes=cC.empty(this.startState.doc.length),c))this.changes=this.changes.compose(d.changes);let d=[];this.changes.iterChangedRanges((a,b,c,e)=>d.push(new fa(a,b,c,e))),this.changedRanges=d}static create(b,c,d){return new a(b,c,d)}get viewportChanged(){return(4&this.flags)>0}get viewportMoved(){return(8&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(18&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(a=>a.selection)}get empty(){return 0==this.flags&&0==this.transactions.length}},fc=[],fd=class{constructor(a,b,c=0){this.dom=a,this.length=b,this.flags=c,this.parent=null,a.cmTile=this}get breakAfter(){return 1&this.flags}get children(){return fc}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(a){if(this.flags|=2,4&this.flags){this.flags&=-5;let a=this.domAttrs;a&&function(a,b){for(let c=a.attributes.length-1;c>=0;c--){let d=a.attributes[c].name;null==b[d]&&a.removeAttribute(d)}for(let c in b){let d=b[c];"style"==c?a.style.cssText=d:a.getAttribute(c)!=d&&a.setAttribute(c,d)}}(this.dom,a)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(a){this.dom=a,a.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(a,b=this.posAtStart){let c=b;for(let b of this.children){if(b==a)return c;c+=b.length+b.breakAfter}throw RangeError("Invalid child in posBefore")}posAfter(a){return this.posBefore(a)+a.length}covers(a){return!0}coordsIn(a,b){return null}domPosFor(a,b){let c=ed(this.dom),d=this.length?a>0:b>0;return new er(this.parent.dom,c+ +!!d,0==a||a==this.length)}markDirty(a){this.flags&=-3,a&&(this.flags|=4),this.parent&&2&this.parent.flags&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let a=this;a;a=a.parent)if(a instanceof fg)return a;return null}static get(a){return a.cmTile}},fe=class extends fd{constructor(a){super(a,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(a){this.children.push(a),a.parent=this}sync(a){if(2&this.flags)return;super.sync(a);let b=this.dom,c=null,d,e=(null==a?void 0:a.node)==b?a:null,f=0;for(let g of this.children){if(g.sync(a),f+=g.length+g.breakAfter,d=c?c.nextSibling:b.firstChild,e&&d!=g.dom&&(e.written=!0),g.dom.parentNode==b)for(;d&&d!=g.dom;)d=ff(d);else b.insertBefore(g.dom,d);c=g.dom}for(d=c?c.nextSibling:b.firstChild,e&&d&&(e.written=!0);d;)d=ff(d);this.length=f}};function ff(a){let b=a.nextSibling;return a.parentNode.removeChild(a),b}var fg=class extends fe{constructor(a,b){super(b),this.view=a}owns(a){for(;a;a=a.parent)if(a==this)return!0;return!1}isBlock(){return!0}nearest(a){for(;;){if(!a)return null;let b=fd.get(a);if(b&&this.owns(b))return b;a=a.parentNode}}blockTiles(a){for(let b=[],c=this,d=0,e=0;;)if(d==c.children.length){if(!b.length)return;(c=c.parent).breakAfter&&e++,d=b.pop()}else{let f=c.children[d++];if(f instanceof fh)b.push(d),c=f,d=0;else{let b=e+f.length,c=a(f,e);if(void 0!==c)return c;e=b+f.breakAfter}}}resolveBlock(a,b){let c,d=-1,e,f=-1;if(this.blockTiles((g,h)=>{let i=h+g.length;if(a>=h&&a<=i){if(g.isWidget()&&b>=-1&&b<=1){if(32&g.flags)return!0;16&g.flags&&(c=void 0)}(h<a||a==i&&(b<-1?g.length:g.covers(1)))&&(!c||!g.isWidget()&&c.isWidget())&&(c=g,d=a-h),(i>a||a==h&&(b>1?g.length:g.covers(-1)))&&(!e||!g.isWidget()&&e.isWidget())&&(e=g,f=a-h)}}),!c&&!e)throw Error("No tile at position "+a);return c&&b<0||!e?{tile:c,offset:d}:{tile:e,offset:f}}},fh=class a extends fe{constructor(a,b){super(a),this.wrapper=b}isBlock(){return!0}covers(a){return!!this.children.length&&(a<0?this.children[0].covers(-1):this.lastChild.covers(1))}get domAttrs(){return this.wrapper.attributes}static of(b,c){let d=new a(c||document.createElement(b.tagName),b);return c||(d.flags|=4),d}},fi=class a extends fe{constructor(a,b){super(a),this.attrs=b}isLine(){return!0}static start(b,c,d){let e=new a(c||document.createElement("div"),b);return c&&d||(e.flags|=4),e}get domAttrs(){return this.attrs}resolveInline(a,b,c){let d=null,e=-1,f=null,g=-1;!function a(h,i){for(let j=0,k=0;j<h.children.length&&k<=i;j++){let l=h.children[j],m=k+l.length;m>=i&&(l.isComposite()?a(l,i-k):(!f||f.isHidden&&(b>0||c&&function(a,b){let c=a.coordsIn(0,1),d=b.coordsIn(0,1);return c&&d&&d.top<c.bottom}(f,l)))&&(m>i||32&l.flags)?(f=l,g=i-k):(k<i||16&l.flags&&!l.isHidden)&&(d=l,e=i-k)),k=m}}(this,a);let h=(b<0?d:f)||d||f;return h?{tile:h,offset:h==d?e:g}:null}coordsIn(a,b){let c=this.resolveInline(a,b,!0);return c?c.tile.coordsIn(Math.max(0,c.offset),b):function(a){let b=a.dom.lastChild;if(!b)return a.dom.getBoundingClientRect();let c=eb(b);return c[c.length-1]||null}(this)}domIn(a,b){let c=this.resolveInline(a,b);if(c){let{tile:a,offset:d}=c;if(this.dom.contains(a.dom))return a.isText()?new er(a.dom,Math.min(a.dom.nodeValue.length,d)):a.domPosFor(d,16&a.flags?1:32&a.flags?-1:b);let e=c.tile.parent,f=!1;for(let a of e.children){if(f)return new er(a.dom,0);a==c.tile&&(f=!0)}}return new er(this.dom,0)}},fj=class a extends fe{constructor(a,b){super(a),this.mark=b}get domAttrs(){return this.mark.attrs}static of(b,c){let d=new a(c||document.createElement(b.tagName),b);return c||(d.flags|=4),d}},fk=class a extends fd{constructor(a,b){super(a,b.length),this.text=b}sync(a){2&this.flags||(super.sync(a),this.dom.nodeValue!=this.text&&(a&&a.node==this.dom&&(a.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(a,b){let c=this.dom.nodeValue.length;a>c&&(a=c);let d=a,e=a,f=0;0==a&&b<0||a==c&&b>=0?!(dW.chrome||dW.gecko)&&(a?(d--,f=1):e<c&&(e++,f=-1)):b<0?d--:e<c&&e++;let g=em(this.dom,d,e).getClientRects();if(!g.length)return null;let h=g[(f?f<0:b>=0)?0:g.length-1];return dW.safari&&!f&&0==h.width&&(h=Array.prototype.find.call(g,a=>a.width)||h),f?eh(h,f<0):h||null}static of(b,c){let d=new a(c||document.createTextNode(b),b);return c||(d.flags|=2),d}},fl=class a extends fd{constructor(a,b,c,d){super(a,b,d),this.widget=c}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(a){return!(48&this.flags)&&(this.flags&(a<0?64:128))>0}coordsIn(a,b){return this.coordsInWidget(a,b,!1)}coordsInWidget(a,b,c){let d=this.widget.coordsAt(this.dom,a,b);if(d)return d;if(c)return eh(this.dom.getBoundingClientRect(),this.length?0==a:b<=0);{let b=this.dom.getClientRects(),c=null;if(!b.length)return null;let d=!!(16&this.flags)||!(32&this.flags)&&a>0;for(let e=d?b.length-1:0;c=b[e],a>0?0!=e:e!=b.length-1&&!(c.top<c.bottom);e+=d?-1:1);return eh(c,!d)}}get overrideDOMText(){if(!this.length)return cp.empty;let{root:a}=this;if(!a)return cp.empty;let b=this.posAtStart;return a.view.state.doc.slice(b,b+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(b,c,d,e,f){return!f&&(f=b.toDOM(c),b.editable||(f.contentEditable="false")),new a(f,d,b,e)}},fm=class extends fd{constructor(a){let b=document.createElement("img");b.className="cm-widgetBuffer",b.setAttribute("aria-hidden","true"),super(b,0,a)}get isHidden(){return!0}get overrideDOMText(){return cp.empty}coordsIn(a){return this.dom.getBoundingClientRect()}},fn=class{constructor(a){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=a}advance(a,b,c){let{tile:d,index:e,beforeBreak:f,parents:g}=this;for(;a||b>0;)if(d.isComposite())if(f){if(!a)break;c&&c.break(),a--,f=!1}else if(e==d.children.length){if(!a&&!g.length)break;c&&c.leave(d),f=!!d.breakAfter,({tile:d,index:e}=g.pop()),e++}else{let h=d.children[e],i=h.breakAfter;(b>0?h.length<=a:h.length<a)&&(!c||!1!==c.skip(h,0,h.length)||!h.isComposite)?(f=!!i,e++,a-=h.length):(g.push({tile:d,index:e}),d=h,e=0,c&&h.isComposite()&&c.enter(h))}else if(e==d.length)f=!!d.breakAfter,({tile:d,index:e}=g.pop()),e++;else if(a){let b=Math.min(a,d.length-e);c&&c.skip(d,e,e+b),a-=b,e+=b}else break;return this.tile=d,this.index=e,this.beforeBreak=f,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}},fo=class{constructor(a,b,c,d){this.from=a,this.to=b,this.wrapper=c,this.rank=d}},fp=class{constructor(a,b,c){this.cache=a,this.root=b,this.blockWrappers=c,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(a,b,c,d){var e;this.flushBuffer();let f=this.ensureMarks(b,c),g=f.lastChild;g&&g.isText()&&!(8&g.flags)&&g.length+a.length<512?(this.cache.reused.set(g,2),(f.children[f.children.length-1]=new fk(g.dom,g.text+a)).parent=f):f.append(d||fk.of(a,null==(e=this.cache.find(fk))?void 0:e.dom)),this.pos+=a.length,this.afterWidget=null}addComposition(a,b){let c=this.curLine;c.dom!=b.line.dom&&(c.setDOM(this.cache.reused.has(b.line)?fw(b.line.dom):b.line.dom),this.cache.reused.set(b.line,2));let d=c;for(let a=b.marks.length-1;a>=0;a--){let c=b.marks[a],e=d.lastChild;if(e instanceof fj&&e.mark.eq(c.mark))e.dom!=c.dom&&e.setDOM(fw(c.dom)),d=e;else{if(this.cache.reused.get(c)){let a=fd.get(c.dom);a&&a.setDOM(fw(c.dom))}let a=fj.of(c.mark,c.dom);d.append(a),d=a}this.cache.reused.set(c,2)}let e=fd.get(a.text);e&&this.cache.reused.set(e,2);let f=new fk(a.text,a.text.nodeValue);f.flags|=8,d.append(f)}addInlineWidget(a,b,c){let d=this.afterWidget&&48&a.flags&&(48&this.afterWidget.flags)==(48&a.flags);d||this.flushBuffer();let e=this.ensureMarks(b,c);d||16&a.flags||e.append(this.getBuffer(1)),e.append(a),this.pos+=a.length,this.afterWidget=a}addMark(a,b,c){this.flushBuffer(),this.ensureMarks(b,c).append(a),this.pos+=a.length,this.afterWidget=null}addBlockWidget(a){this.getBlockPos().append(a),this.pos+=a.length,this.lastBlock=a,this.endLine()}continueWidget(a){let b=this.afterWidget||this.lastBlock;b.length+=a,this.pos+=a}addLineStart(a,b){var c;a||(a=fv);let d=fi.start(a,b||(null==(c=this.cache.find(fi))?void 0:c.dom),!!b);this.getBlockPos().append(this.lastBlock=this.curLine=d)}addLine(a){this.getBlockPos().append(a),this.pos+=a.length,this.lastBlock=a,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(a){this.blockPosCovered()||this.addLineStart(a)}ensureLine(a){this.curLine||this.addLineStart(a)}ensureMarks(a,b){var c;let d=this.curLine;for(let e=a.length-1;e>=0;e--){let f=a[e],g;if(b>0&&(g=d.lastChild)&&g instanceof fj&&g.mark.eq(f))d=g,b--;else{let a=fj.of(f,null==(c=this.cache.find(fj,a=>a.mark.eq(f)))?void 0:c.dom);d.append(a),d=a,b=0}}return d}endLine(){if(this.curLine){this.flushBuffer();let a=this.curLine.lastChild;(!a||!fu(this.curLine,!1)||"BR"!=a.dom.nodeName&&a.isWidget()&&!(dW.ios&&fu(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(fy,0,32)||new fl(fy.toDOM(),0,fy,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let a=this.wrappers.length-1;a>=0;a--)this.wrappers[a].to<this.pos&&this.wrappers.splice(a,1);for(let a=this.blockWrappers;a.value&&a.from<=this.pos;a.next())if(a.to>=this.pos){let b=new fo(a.from,a.to,a.value,a.rank),c=this.wrappers.length;for(;c>0&&0>(this.wrappers[c-1].rank-b.rank||this.wrappers[c-1].to-b.to);)c--;this.wrappers.splice(c,0,b)}this.wrapperPos=this.pos}getBlockPos(){var a;this.updateBlockWrappers();let b=this.root;for(let c of this.wrappers){let d=b.lastChild;if(c.from<this.pos&&d instanceof fh&&d.wrapper.eq(c.wrapper))b=d;else{let d=fh.of(c.wrapper,null==(a=this.cache.find(fh,a=>a.wrapper.eq(c.wrapper)))?void 0:a.dom);b.append(d),b=d}}return b}blockPosCovered(){let a=this.lastBlock;return null!=a&&!a.breakAfter&&(!a.isWidget()||(160&a.flags)>0)}getBuffer(a){let b=2|(a<0?16:32),c=this.cache.find(fm,void 0,1);return c&&(c.flags=b),c||new fm(b)}flushBuffer(){this.afterWidget&&!(32&this.afterWidget.flags)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},fq=class{constructor(a){this.skipCount=0,this.text="",this.textOff=0,this.cursor=a.iter()}skip(a){this.textOff+a<=this.text.length?this.textOff+=a:(this.skipCount+=a-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(a){if(this.textOff==this.text.length){let{value:b,lineBreak:c,done:d}=this.cursor.next(this.skipCount);if(this.skipCount=0,d)throw Error("Ran out of text content when drawing inline views");this.text=b;let e=this.textOff=Math.min(a,b.length);return c?null:b.slice(0,e)}let b=Math.min(this.text.length,this.textOff+a),c=this.text.slice(this.textOff,b);return this.textOff=b,c}},fr=[fl,fi,fk,fj,fm,fh,fg];for(let a=0;a<fr.length;a++)fr[a].bucket=a;var fs=class{constructor(a){this.view=a,this.buckets=fr.map(()=>[]),this.index=fr.map(()=>0),this.reused=new Map}add(a){let b=a.constructor.bucket,c=this.buckets[b];c.length<6?c.push(a):c[this.index[b]=(this.index[b]+1)%6]=a}find(a,b,c=2){let d=a.bucket,e=this.buckets[d],f=this.index[d];for(let a=e.length-1;a>=0;a--){let g=(a+f)%e.length,h=e[g];if((!b||b(h))&&!this.reused.has(h))return e.splice(g,1),g<f&&this.index[d]--,this.reused.set(h,c),h}return null}findWidget(a,b,c){let d=this.buckets[0];if(d.length)for(let e=0,f=0;;e++){if(e==d.length){if(f)return null;f=1,e=0}let g=d[e];if(!this.reused.has(g)&&(0==f?g.widget.compare(a):g.widget.constructor==a.constructor&&a.updateDOM(g.dom,this.view))){if(d.splice(e,1),e<this.index[0]&&this.index[0]--,g.widget==a&&g.length==b&&(497&g.flags)==c)return this.reused.set(g,1),g;return this.reused.set(g,2),new fl(g.dom,b,a,-498&g.flags|c)}}}reuse(a){return this.reused.set(a,1),a}maybeReuse(a,b=2){if(!this.reused.has(a))return this.reused.set(a,b),a.dom}clear(){for(let a=0;a<this.buckets.length;a++)this.buckets[a].length=this.index[a]=0}},ft=class{constructor(a,b,c,d,e){this.view=a,this.decorations=d,this.disallowBlockEffectsFor=e,this.openWidget=!1,this.openMarks=0,this.cache=new fs(a),this.text=new fq(a.state.doc),this.builder=new fp(this.cache,new fg(a,a.contentDOM),dq.iter(c)),this.cache.reused.set(b,2),this.old=new fn(b),this.reuseWalker={skip:(a,b,c)=>{if(this.cache.add(a),a.isComposite())return!1},enter:a=>this.cache.add(a),leave:()=>{},break:()=>{}}}run(a,b){let c=b&&this.getCompositionContext(b.text);for(let d=0,e=0,f=0;;){let g=f<a.length?a[f++]:null,h=g?g.fromA:this.old.root.length;if(h>d){let a=h-d;this.preserve(a,!f,!g),d=h,e+=a}if(!g)break;b&&g.fromA<=b.range.fromA&&g.toA>=b.range.toA?(this.forward(g.fromA,b.range.fromA,b.range.fromA<b.range.toA?1:-1),this.emit(e,b.range.fromB),this.cache.clear(),this.builder.addComposition(b,c),this.text.skip(b.range.toB-b.range.fromB),this.forward(b.range.fromA,g.toA),this.emit(b.range.toB,g.toB)):(this.forward(g.fromA,g.toA),this.emit(e,g.toB)),e=g.toB,d=g.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(a,b,c){let d=function(a){let b=[];for(let c=a.parents.length;c>1;c--){let d=c==a.parents.length?a.tile:a.parents[c].tile;d instanceof fj&&b.push(d.mark)}return b}(this.old),e=this.openMarks;this.old.advance(a,c?1:-1,{skip:(a,b,c)=>{if(a.isWidget())if(this.openWidget)this.builder.continueWidget(c-b);else{let f=c>0||b<a.length?fl.of(a.widget,this.view,c-b,496&a.flags,this.cache.maybeReuse(a)):this.cache.reuse(a);256&f.flags?(f.flags&=-2,this.builder.addBlockWidget(f)):(this.builder.ensureLine(null),this.builder.addInlineWidget(f,d,e),e=d.length)}else if(a.isText())this.builder.ensureLine(null),b||c!=a.length?(this.cache.add(a),this.builder.addText(a.text.slice(b,c),d,e)):this.builder.addText(a.text,d,e,this.cache.reuse(a)),e=d.length;else if(a.isLine())a.flags&=-2,this.cache.reused.set(a,1),this.builder.addLine(a);else if(a instanceof fm)this.cache.add(a);else{if(!(a instanceof fj))return!1;this.builder.ensureLine(null),this.builder.addMark(a,d,e),this.cache.reused.set(a,1),e=d.length}this.openWidget=!1},enter:a=>{a.isLine()?this.builder.addLineStart(a.attrs,this.cache.maybeReuse(a)):(this.cache.add(a),a instanceof fj&&d.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?d.length&&(d.length=e=0):a instanceof fj&&(d.shift(),e=Math.min(e,d.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(a)}emit(a,b){let c=null,d=this.builder,e=0,f=dq.spans(this.decorations,a,b,{point:(a,b,f,g,h,i)=>{var j,k,l;if(f instanceof d4){if(this.disallowBlockEffectsFor[i]){if(f.block)throw RangeError("Block decorations may not be specified via plugins");if(b>this.view.state.doc.lineAt(a).to)throw RangeError("Decorations that replace line breaks may not be specified via plugins")}if(e=g.length,h>g.length)d.continueWidget(b-a);else{let e,i=f.widget||(f.block?fx.block:fx.inline),k=(e=(j=f).isReplace?64*(j.startSide<0)|128*(j.endSide>0):j.startSide>0?32:16,j.block&&(e|=256),e),l=this.cache.findWidget(i,b-a,k)||fl.of(i,this.view,b-a,k);f.block?(f.startSide>0&&d.addLineStartIfNotCovered(c),d.addBlockWidget(l)):(d.ensureLine(c),d.addInlineWidget(l,g,h))}c=null}else{let a,b;k=c,a=(l=f).spec.attributes,b=l.spec.class,(a||b)&&(k||(k={class:"cm-line"}),a&&dX(a,k),b&&(k.class+=" "+b)),c=k}b>a&&this.text.skip(b-a)},span:(a,b,e,f)=>{for(let g=a;g<b;){let h=this.text.next(Math.min(512,b-g));null==h?(d.addLineStartIfNotCovered(c),d.addBreak(),g++):(d.ensureLine(c),d.addText(h,e,g==a?f:e.length),g+=h.length),c=null}}});d.addLineStartIfNotCovered(c),this.openWidget=f>e,this.openMarks=f}forward(a,b,c=1){b-a<=10?this.old.advance(b-a,c,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(b-a-10,-1),this.old.advance(5,c,this.reuseWalker))}getCompositionContext(a){let b=[],c=null;for(let d=a.parentNode;;d=d.parentNode){let a=fd.get(d);if(d==this.view.contentDOM)break;a instanceof fj?b.push(a):(null==a?void 0:a.isLine())?c=a:"DIV"!=d.nodeName||c||d==this.view.contentDOM?b.push(fj.of(new d2({tagName:d.nodeName.toLowerCase(),attributes:function(a){let b=Object.create(null);for(let c=0;c<a.attributes.length;c++){let d=a.attributes[c];b[d.name]=d.value}return b}(d)}),d)):c=new fi(d,fv)}return{line:c,marks:b}}};function fu(a,b){let c=a=>{for(let d of a.children)if((b?d.isText():d.length)||c(d))return!0;return!1};return c(a)}var fv={class:"cm-line"};function fw(a){let b=fd.get(a);return b&&b.setDOM(a.cloneNode()),a}var fx=class extends d_{constructor(a){super(),this.tag=a}eq(a){return a.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(a){return a.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}};fx.inline=new fx("span"),fx.block=new fx("div");var fy=new class extends d_{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},fz=class{constructor(a){this.view=a,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=d1.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new fg(a,a.contentDOM),this.updateInner([new fa(0,0,0,a.state.doc.length)],null)}update(a){var b,c,d,e,f,g,h,i,j;let k,l,m,n=a.changedRanges;this.minWidth>0&&n.length&&(n.every(({fromA:a,toA:b})=>b<this.minWidthFrom||a>this.minWidthTo)?(this.minWidthFrom=a.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=a.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(a);let o=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&((null==(b=this.domChanged)?void 0:b.newSel)?o=this.domChanged.newSel.head:(c=a.changes,d=this.hasComposition,k=!1,d&&c.iterChangedRanges((a,b)=>{a<d.to&&b>d.from&&(k=!0)}),k||a.selectionSet||(o=a.state.selection.main.head)));let p=o>-1?function(a,b,c){let d=fB(a,c);if(!d)return null;let{node:e,from:f,to:g}=d,h=e.nodeValue;if(/[\n\r]/.test(h)||a.state.doc.sliceString(d.from,d.to)!=h)return null;let i=b.invertedDesc;return{range:new fa(i.mapPos(f),i.mapPos(g),f,g),text:e}}(this.view,a.changes,o):null;if(this.domChanged=null,this.hasComposition){let{from:b,to:c}=this.hasComposition;n=new fa(b,c,a.changes.mapPos(b,-1),a.changes.mapPos(c,1)).addToSet(n.slice())}this.hasComposition=p?{from:p.range.fromB,to:p.range.toB}:null,(dW.ie||dW.chrome)&&!p&&a&&a.state.doc.lines!=a.startState.doc.lines&&(this.forceSelection=!0);let q=this.decorations,r=this.blockWrappers;this.updateDeco();let s=(e=q,f=this.decorations,g=a.changes,l=new fC,dq.compare(e,f,g,l),l.changes);s.length&&(n=fa.extendWithRanges(n,s));let t=(h=r,i=this.blockWrappers,j=a.changes,m=new fD,dq.compare(h,i,j,m),m.changes);return t.length&&(n=fa.extendWithRanges(n,t)),p&&!n.some(a=>a.fromA<=p.range.fromA&&a.toA>=p.range.toA)&&(n=p.range.addToSet(n.slice())),(!(2&this.tile.flags)||0!=n.length)&&(this.updateInner(n,p),a.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(a,b){this.view.viewState.mustMeasureContent=!0;let{observer:c}=this.view;c.ignore(()=>{if(b||a.length){let c=this.tile,d=new ft(this.view,c,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=d.run(a,b),fA(c,d.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let d=dW.chrome||dW.ios?{node:c.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(d),d&&(d.written||c.selectionRange.focusNode!=d.node||!this.tile.dom.contains(d.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let d=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let a of this.tile.children)a.isWidget()&&a.widget instanceof fE&&d.push(a.dom);c.updateGaps(d)}updateEditContextFormatting(a){for(let b of(this.editContextFormatting=this.editContextFormatting.map(a.changes),a.transactions))for(let a of b.effects)a.is(eU)&&(this.editContextFormatting=a.value)}updateSelection(a=!1,b=!1){var c;(a||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:d}=this.tile,e=this.view.root.activeElement,f=e==d,g=!f&&!(this.view.state.facet(eW)||d.tabIndex>-1)&&ea(d,this.view.observer.selectionRange)&&!(e&&d.contains(e));if(!(f||b||g))return;let h=this.forceSelection;this.forceSelection=!1;let i=this.view.state.selection.main,j,k;if(i.empty?k=j=this.inlineDOMNearPos(i.anchor,i.assoc||1):(k=this.inlineDOMNearPos(i.head,i.head==i.from?1:-1),j=this.inlineDOMNearPos(i.anchor,i.anchor==i.from?1:-1)),dW.gecko&&i.empty&&!this.hasComposition&&1==(c=j).node.nodeType&&c.node.firstChild&&(0==c.offset||"false"==c.node.childNodes[c.offset-1].contentEditable)&&(c.offset==c.node.childNodes.length||"false"==c.node.childNodes[c.offset].contentEditable)){let a=document.createTextNode("");this.view.observer.ignore(()=>j.node.insertBefore(a,j.node.childNodes[j.offset]||null)),j=k=new er(a,0),h=!0}let l=this.view.observer.selectionRange;!h&&l.focusNode&&(ec(j.node,j.offset,l.anchorNode,l.anchorOffset)&&ec(k.node,k.offset,l.focusNode,l.focusOffset)||this.suppressWidgetCursorChange(l,i))||(this.view.observer.ignore(()=>{dW.android&&dW.chrome&&d.contains(l.focusNode)&&function(a,b){for(let c=a;c&&c!=b;c=c.assignedSlot||c.parentNode)if(1==c.nodeType&&"false"==c.contentEditable)return!0;return!1}(l.focusNode,d)&&(d.blur(),d.focus({preventScroll:!0}));let a=d8(this.view.root);if(a)if(i.empty){if(dW.gecko){var b,c;let a=(b=j.node,c=j.offset,1!=b.nodeType?0:(c&&"false"==b.childNodes[c-1].contentEditable?1:0)|2*(c<b.childNodes.length&&"false"==b.childNodes[c].contentEditable));if(a&&3!=a){let b=(1==a?ep:eq)(j.node,j.offset);b&&(j=new er(b.node,b.offset))}}a.collapse(j.node,j.offset),null!=i.bidiLevel&&void 0!==a.caretBidiLevel&&(a.caretBidiLevel=i.bidiLevel)}else if(a.extend){a.collapse(j.node,j.offset);try{a.extend(k.node,k.offset)}catch(a){}}else{let b=document.createRange();i.anchor>i.head&&([j,k]=[k,j]),b.setEnd(k.node,k.offset),b.setStart(j.node,j.offset),a.removeAllRanges(),a.addRange(b)}g&&this.view.root.activeElement==d&&(d.blur(),e&&e.focus())}),this.view.observer.setSelectionRange(j,k)),this.impreciseAnchor=j.precise?null:new er(l.anchorNode,l.anchorOffset),this.impreciseHead=k.precise?null:new er(l.focusNode,l.focusOffset)}suppressWidgetCursorChange(a,b){return this.hasComposition&&b.empty&&ec(a.focusNode,a.focusOffset,a.anchorNode,a.anchorOffset)&&this.posFromDOM(a.focusNode,a.focusOffset)==b.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:a}=this,b=a.state.selection.main,c=d8(a.root),{anchorNode:d,anchorOffset:e}=a.observer.selectionRange;if(!c||!b.empty||!b.assoc||!c.modify)return;let f=this.lineAt(b.head,b.assoc);if(!f)return;let g=f.posAtStart;if(b.head==g||b.head==g+f.length)return;let h=this.coordsAt(b.head,-1),i=this.coordsAt(b.head,1);if(!h||!i||h.bottom>i.top)return;let j=this.domAtPos(b.head+b.assoc,b.assoc);c.collapse(j.node,j.offset),c.modify("move",b.assoc<0?"forward":"backward","lineboundary"),a.observer.readSelectionRange();let k=a.observer.selectionRange;a.docView.posFromDOM(k.anchorNode,k.anchorOffset)!=b.from&&c.collapse(d,e)}posFromDOM(a,b){let c=this.tile.nearest(a);if(!c)return 2&this.tile.dom.compareDocumentPosition(a)?0:this.view.state.doc.length;let d=c.posAtStart;if(c.isComposite()){let e;if(a==c.dom)e=c.dom.childNodes[b];else{let d=0==eg(a)?0:0==b?-1:1;for(;;){let b=a.parentNode;if(b==c.dom)break;0==d&&b.firstChild!=b.lastChild&&(d=a==b.firstChild?-1:1),a=b}e=d<0?a:a.nextSibling}if(e==c.dom.firstChild)return d;for(;e&&!fd.get(e);)e=e.nextSibling;if(!e)return d+c.length;for(let a=0,b=d;;a++){let d=c.children[a];if(d.dom==e)return b;b+=d.length+d.breakAfter}}else if(c.isText())return a==c.dom?d+b:d+(b?c.length:0);else return d}domAtPos(a,b){let{tile:c,offset:d}=this.tile.resolveBlock(a,b);return c.isWidget()?c.domPosFor(a,b):c.domIn(d,b)}inlineDOMNearPos(a,b){let c,d=-1,e=!1,f,g=-1,h=!1;return(this.tile.blockTiles((b,i)=>{if(b.isWidget()){if(32&b.flags&&i>=a)return!0;16&b.flags&&(e=!0)}else{let j=i+b.length;if(i<=a&&(c=b,d=a-i,e=j<a),j>=a&&!f&&(f=b,g=a-i,h=i>a),i>a&&f)return!0}}),c||f)?(e&&f?c=null:h&&c&&(f=null),c&&b<0||!f?c.domIn(d,b):f.domIn(g,b)):this.domAtPos(a,b)}coordsAt(a,b){let{tile:c,offset:d}=this.tile.resolveBlock(a,b);return c.isWidget()?c.widget instanceof fE?null:c.coordsInWidget(d,b,!0):c.coordsIn(d,b)}lineAt(a,b){let{tile:c}=this.tile.resolveBlock(a,b);return c.isLine()?c:null}coordsForChar(a){let{tile:b,offset:c}=this.tile.resolveBlock(a,1);return b.isLine()?function a(b,c){if(b.isComposite())for(let d of b.children){if(d.length>=c){let b=a(d,c);if(b)return b}if((c-=d.length)<0)break}else if(b.isText()&&c<b.length){let a=cy(b.text,c);if(a==c)return null;let d=em(b.dom,c,a).getClientRects();for(let a=0;a<d.length;a++){let b=d[a];if(a==d.length-1||b.top<b.bottom&&b.left<b.right)return b}}return null}(b,c):null}measureVisibleLineHeights(a){let b=[],{from:c,to:d}=a,e=this.view.contentDOM.clientWidth,f=e>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,g=-1,h=this.view.textDirection==es.LTR,i=0,j=(a,k,l)=>{for(let m=0;m<a.children.length&&!(k>d);m++){let d=a.children[m],n=k+d.length,o=d.dom.getBoundingClientRect(),{height:p}=o;if(l&&!m&&(i+=o.top-l.top),d instanceof fh)n>c&&j(d,k,o);else if(k>=c&&(i>0&&b.push(-i),b.push(p+i),i=0,f)){let a=d.dom.lastChild,b=a?eb(a):[];if(b.length){let a=b[b.length-1],c=h?a.right-o.left:o.right-a.left;c>g&&(g=c,this.minWidth=e,this.minWidthFrom=k,this.minWidthTo=n)}}l&&m==a.children.length-1&&(i+=l.bottom-o.bottom),k=n+d.breakAfter}};return j(this.tile,0,null),b}textDirectionAt(a){let{tile:b}=this.tile.resolveBlock(a,1);return"rtl"==getComputedStyle(b.dom).direction?es.RTL:es.LTR}measureTextSize(){let a=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let b=0,c;for(let d of a.children){if(!d.isText()||/[^ -~]/.test(d.text))return;let a=eb(d.dom);if(1!=a.length)return;b+=a[0].width,c=a[0].height}if(b)return{lineHeight:a.dom.getBoundingClientRect().height,charWidth:b/a.length,textHeight:c}}});if(a)return a;let b=document.createElement("div"),c,d,e;return b.className="cm-line",b.style.width="99999px",b.style.position="absolute",b.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(b);let a=eb(b.firstChild)[0];c=b.getBoundingClientRect().height,d=a&&a.width?a.width/27:7,e=a&&a.height?a.height:c,b.remove()}),{lineHeight:c,charWidth:d,textHeight:e}}computeBlockGapDeco(){let a=[],b=this.view.viewState;for(let c=0,d=0;;d++){let e=d==b.viewports.length?null:b.viewports[d],f=e?e.from-1:this.view.state.doc.length;if(f>c){let d=(b.lineBlockAt(f).bottom-b.lineBlockAt(c).top)/this.view.scaleY;a.push(d1.replace({widget:new fE(d),block:!0,inclusive:!0,isBlockGap:!0}).range(c,f))}if(!e)break;c=e.to+1}return d1.set(a)}updateDeco(){let a=1,b=this.view.state.facet(e1).map(b=>(this.dynamicDecorationMap[a++]="function"==typeof b)?b(this.view):b),c=!1,d=this.view.state.facet(e3).map((a,b)=>{let d="function"==typeof a;return d&&(c=!0),d?a(this.view):a});for(d.length&&(this.dynamicDecorationMap[a++]=c,b.push(dq.join(d))),this.decorations=[this.editContextFormatting,...b,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];a<this.decorations.length;)this.dynamicDecorationMap[a++]=!1;this.blockWrappers=this.view.state.facet(e2).map(a=>"function"==typeof a?a(this.view):a)}scrollIntoView(a){if(a.isSnapshot){let b=this.view.viewState.lineBlockAt(a.range.head);this.view.scrollDOM.scrollTop=b.top-a.yMargin,this.view.scrollDOM.scrollLeft=a.xMargin;return}for(let b of this.view.state.facet(eR))try{if(b(this.view,a.range,a))return!0}catch(a){eV(this.view.state,a,"scroll handler")}let{range:b}=a,c=this.coordsAt(b.head,b.empty?b.assoc:b.head>b.anchor?-1:1),d;if(!c)return;!b.empty&&(d=this.coordsAt(b.anchor,b.anchor>b.head?-1:1))&&(c={left:Math.min(c.left,d.left),top:Math.min(c.top,d.top),right:Math.max(c.right,d.right),bottom:Math.max(c.bottom,d.bottom)});let e=e8(this.view),f={left:c.left-e.left,top:c.top-e.top,right:c.right+e.right,bottom:c.bottom+e.bottom},{offsetWidth:g,offsetHeight:h}=this.view.scrollDOM;!function(a,b,c,d,e,f,g,h){let i=a.ownerDocument,j=i.defaultView||window;for(let k=a,l=!1;k&&!l;)if(1==k.nodeType){let a,m=k==i.body,n=1,o=1;if(m)a=function(a){let b=a.visualViewport;return b?{left:0,right:b.width,top:0,bottom:b.height}:{left:0,right:a.innerWidth,top:0,bottom:a.innerHeight}}(j);else{if(/^(fixed|sticky)$/.test(getComputedStyle(k).position)&&(l=!0),k.scrollHeight<=k.clientHeight&&k.scrollWidth<=k.clientWidth){k=k.assignedSlot||k.parentNode;continue}let b=k.getBoundingClientRect();({scaleX:n,scaleY:o}=ei(k,b)),a={left:b.left,right:b.left+k.clientWidth*n,top:b.top,bottom:b.top+k.clientHeight*o}}let p=0,q=0;if("nearest"==e)b.top<a.top?(q=b.top-(a.top+g),c>0&&b.bottom>a.bottom+q&&(q=b.bottom-a.bottom+g)):b.bottom>a.bottom&&(q=b.bottom-a.bottom+g,c<0&&b.top-q<a.top&&(q=b.top-(a.top+g)));else{let d=b.bottom-b.top,f=a.bottom-a.top;q=("center"==e&&d<=f?b.top+d/2-f/2:"start"==e||"center"==e&&c<0?b.top-g:b.bottom-f+g)-a.top}if("nearest"==d?b.left<a.left?(p=b.left-(a.left+f),c>0&&b.right>a.right+p&&(p=b.right-a.right+f)):b.right>a.right&&(p=b.right-a.right+f,c<0&&b.left<a.left+p&&(p=b.left-(a.left+f))):p=("center"==d?b.left+(b.right-b.left)/2-(a.right-a.left)/2:"start"==d==h?b.left-f:b.right-(a.right-a.left)+f)-a.left,p||q)if(m)j.scrollBy(p,q);else{let a=0,c=0;if(q){let a=k.scrollTop;k.scrollTop+=q/o,c=(k.scrollTop-a)*o}if(p){let b=k.scrollLeft;k.scrollLeft+=p/n,a=(k.scrollLeft-b)*n}b={left:b.left-a,top:b.top-c,right:b.right-a,bottom:b.bottom-c},a&&1>Math.abs(a-p)&&(d="nearest"),c&&1>Math.abs(c-q)&&(e="nearest")}if(m)break;(b.top<a.top||b.bottom>a.bottom||b.left<a.left||b.right>a.right)&&(b={left:Math.max(b.left,a.left),right:Math.min(b.right,a.right),top:Math.max(b.top,a.top),bottom:Math.min(b.bottom,a.bottom)}),k=k.assignedSlot||k.parentNode}else if(11==k.nodeType)k=k.host;else break}(this.view.scrollDOM,f,b.head<b.anchor?-1:1,a.x,a.y,Math.max(Math.min(a.xMargin,g),-g),Math.max(Math.min(a.yMargin,h),-h),this.view.textDirection==es.LTR)}lineHasWidget(a){let b=a=>a.isWidget()||a.children.some(b);return b(this.tile.resolveBlock(a,1).tile)}destroy(){fA(this.tile)}};function fA(a,b){let c=null==b?void 0:b.get(a);if(1!=c)for(let d of(null==c&&a.destroy(),a.children))fA(d,b)}function fB(a,b){let c=a.observer.selectionRange;if(!c.focusNode)return null;let d=ep(c.focusNode,c.focusOffset),e=eq(c.focusNode,c.focusOffset),f=d||e;if(e&&d&&e.node!=d.node){let b=fd.get(e.node);if(!b||b.isText()&&b.text!=e.node.nodeValue)f=e;else if(a.docView.lastCompositionAfterCursor){let a=fd.get(d.node);!a||a.isText()&&a.text!=d.node.nodeValue||(f=e)}}if(a.docView.lastCompositionAfterCursor=f!=d,!f)return null;let g=b-f.offset;return{from:g,to:g+f.node.nodeValue.length,node:f.node}}var fC=class{constructor(){this.changes=[]}compareRange(a,b){d6(a,b,this.changes)}comparePoint(a,b){d6(a,b,this.changes)}boundChange(a){d6(a,a,this.changes)}},fD=class{constructor(){this.changes=[]}compareRange(a,b){d6(a,b,this.changes)}comparePoint(){}boundChange(a){d6(a,a,this.changes)}},fE=class extends d_{constructor(a){super(),this.height=a}toDOM(){let a=document.createElement("div");return a.className="cm-gap",this.updateDOM(a),a}eq(a){return a.height==this.height}updateDOM(a){return a.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function fF(a,b,c,d){let e=a.state.doc.lineAt(b.head),f=a.bidiSpans(e),g=a.textDirectionAt(e.from);for(let h=b,i=null;;){let b=function(a,b,c,d,e){var f;let g=d.head-a.from,h=eC.find(b,g,null!=(f=d.bidiLevel)?f:-1,d.assoc),i=b[h],j=i.side(e,c);if(g==j){let a=h+=e?1:-1;if(a<0||a>=b.length)return null;g=(i=b[h=a]).side(!e,c),j=i.side(e,c)}let k=cy(a.text,g,i.forward(e,c));(k<i.from||k>i.to)&&(k=j),eF=a.text.slice(Math.min(g,k),Math.max(g,k));let l=h==(e?b.length-1:0)?null:b[h+(e?1:-1)];return l&&k==j&&l.level+ +!e<i.level?cK.cursor(l.side(!e,c)+a.from,l.forward(e,c)?1:-1,l.level):cK.cursor(k+a.from,i.forward(e,c)?-1:1,i.level)}(e,f,g,h,c),j=eF;if(!b){if(e.number==(c?a.state.doc.lines:1))return h;j="\n",e=a.state.doc.line(e.number+(c?1:-1)),f=a.bidiSpans(e),b=a.visualLineSide(e,!c)}if(i){if(!i(j))return h}else{if(!d)return b;i=d(j)}h=b}}function fG(a,b,c){for(;;){let d=0;for(let e of a)e.between(b-1,b+1,(a,e,f)=>{if(b>a&&b<e){let f=d||c||(b-a<e-b?-1:1);b=f<0?a:e,d=f}});if(!d)return b}}function fH(a,b){let c=null;for(let d=0;d<b.ranges.length;d++){let e=b.ranges[d],f=null;if(e.empty){let b=fG(a,e.from,0);b!=e.from&&(f=cK.cursor(b,-1))}else{let b=fG(a,e.from,-1),c=fG(a,e.to,1);(b!=e.from||c!=e.to)&&(f=cK.range(e.from==e.anchor?b:c,e.from==e.head?b:c))}f&&(c||(c=b.ranges.slice()),c[d]=f)}return c?cK.create(c,b.mainIndex):b}function fI(a,b,c){let d=fG(a.state.facet(e4).map(b=>b(a)),c.from,b.head>c.from?-1:1);return d==c.from?c:cK.cursor(d,d<c.from?1:-1)}var fJ=class{constructor(a,b){this.pos=a,this.assoc=b}};function fK(a,b,c,d){let e=a.contentDOM.getBoundingClientRect(),f=e.top+a.viewState.paddingTop,{x:g,y:h}=b,i=h-f,j;for(;;){if(i<0)return new fJ(0,1);if(i>a.viewState.docHeight)return new fJ(a.state.doc.length,-1);if(j=a.elementAtHeight(i),null==d)break;if(j.type==d0.Text){if(d<0?j.to<a.viewport.from:j.from>a.viewport.to)break;let b=a.docView.coordsAt(d<0?j.from:j.to,d>0?-1:1);if(b&&(d<0?b.top<=i+f:b.bottom>=i+f))break}let b=a.viewState.heightOracle.textHeight/2;i=d>0?j.bottom+b:j.top-b}if(a.viewport.from>=j.to||a.viewport.to<=j.from){if(c)return null;if(j.type==d0.Text){let b=function(a,b,c,d,e){let f=Math.round((d-b.left)*a.defaultCharacterWidth);if(a.lineWrapping&&c.height>1.5*a.defaultLineHeight){let b=a.viewState.heightOracle.textHeight;f+=Math.floor((e-c.top-(a.defaultLineHeight-b)*.5)/b)*a.viewState.heightOracle.lineLength}let g=a.state.sliceDoc(c.from,c.to);return c.from+function(a,b,c,d){for(let d=0,e=0;;){if(e>=b)return d;if(d==a.length)break;e+=9==a.charCodeAt(d)?c-e%c:1,d=cy(a,d)}return a.length}(g,f,a.state.tabSize)}(a,e,j,g,h);return new fJ(b,b==j.from?1:-1)}}if(j.type!=d0.Text)return i<(j.top+j.bottom)/2?new fJ(j.from,1):new fJ(j.to,-1);let k=a.docView.lineAt(j.from,2);return k&&k.length==j.length||(k=a.docView.lineAt(j.from,-2)),new fL(a,g,h,a.textDirectionAt(j.from)).scanTile(k,j.from)}var fL=class{constructor(a,b,c,d){this.view=a,this.x=b,this.y=c,this.baseDir=d,this.line=null,this.spans=null}bidiSpansAt(a){return(!this.line||this.line.from>a||this.line.to<a)&&(this.line=this.view.state.doc.lineAt(a),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[eC.find(d,a-c.from,-1,b)].level==this.baseDir}dirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[eC.find(d,a-c.from,-1,b)].dir}bidiIn(a,b){let{spans:c,line:d}=this.bidiSpansAt(a);return c.length>1||c.length&&(c[0].level!=this.baseDir||c[0].to+d.from<b)}scan(a,b){let c,d,e=0,f=a.length-1,g=new Set,h=this.bidiIn(a[0],a[f]),i=-1,j=1e9,k;for(;e<f;){let l=f-e,m=e+f>>1;c:if(g.has(m)){let a=e+Math.floor(Math.random()*l);for(let b=0;b<l;b++){if(!g.has(a)){m=a;break c}++a==f&&(a=e)}break}g.add(m);let n=b(m);if(n)for(let b=0;b<n.length;b++){let g=n[b],l=0;if(g.bottom<this.y)(!c||c.bottom<g.bottom)&&(c=g),l=1;else if(g.top>this.y)(!d||d.top>g.top)&&(d=g),l=-1;else{let a=g.left>this.x?this.x-g.left:g.right<this.x?this.x-g.right:0,b=Math.abs(a);b<j&&(i=m,j=b,k=g),a&&(l=a<0==(this.baseDir==es.LTR)?-1:1)}-1==l&&(!h||this.baseDirAt(a[m],1))?f=m:1==l&&(!h||this.baseDirAt(a[m+1],-1))&&(e=m+1)}}if(!k){let e=c&&(!d||this.y-c.bottom<d.top-this.y)?c:d;return this.y=(e.top+e.bottom)/2,this.scan(a,b)}let l=(h?this.dirAt(a[i],1):this.baseDir)==es.LTR;return{i:i,after:this.x>(k.left+k.right)/2==l}}scanText(a,b){let c=[];for(let d=0;d<a.length;d=cy(a.text,d))c.push(b+d);c.push(b+a.length);let d=this.scan(c,d=>{let e=c[d]-b,f=c[d+1]-b;return em(a.dom,e,f).getClientRects()});return d.after?new fJ(c[d.i+1],-1):new fJ(c[d.i],1)}scanTile(a,b){if(!a.length)return new fJ(b,1);if(1==a.children.length){let c=a.children[0];if(c.isText())return this.scanText(c,b);if(c.isComposite())return this.scanTile(c,b)}let c=[b];for(let d=0,e=b;d<a.children.length;d++)c.push(e+=a.children[d].length);let d=this.scan(c,b=>{let c=a.children[b];return 48&c.flags?null:(1==c.dom.nodeType?c.dom:em(c.dom,0,c.length)).getClientRects()}),e=a.children[d.i],f=c[d.i];return e.isText()?this.scanText(e,f):e.isComposite()?this.scanTile(e,f):d.after?new fJ(c[d.i+1],-1):new fJ(f,1)}},fM=class{constructor(a,b){this.points=a,this.view=b,this.text="",this.lineSeparator=b.state.facet(dj.lineSeparator)}append(a){this.text+=a}lineBreak(){this.text+=""}readRange(a,b){if(!a)return this;let c=a.parentNode;for(let d=a;;){this.findPointBefore(c,d);let a=this.text.length;this.readNode(d);let e=fd.get(d),f=d.nextSibling;if(f==b){(null==e?void 0:e.breakAfter)&&!f&&c!=this.view.contentDOM&&this.lineBreak();break}let g=fd.get(f);(e&&g?e.breakAfter:(e?e.breakAfter:ee(d))||ee(f)&&("BR"!=d.nodeName||(null==e?void 0:e.isWidget()))&&this.text.length>a)&&!function(a,b){let c;for(;a!=b&&a;a=a.nextSibling){let b=fd.get(a);if(!(null==b?void 0:b.isWidget()))return!1;b&&(c||(c=[])).push(b)}if(c)for(let a of c){let b=a.overrideDOMText;if(null==b?void 0:b.length)return!1}return!0}(f,b)&&this.lineBreak(),d=f}return this.findPointBefore(c,b),this}readTextNode(a){let b=a.nodeValue;for(let c of this.points)c.node==a&&(c.pos=this.text.length+Math.min(c.offset,b.length));for(let c=0,d=this.lineSeparator?null:/\r\n?|\n/g;;){let e=-1,f=1,g;if(this.lineSeparator?(e=b.indexOf(this.lineSeparator,c),f=this.lineSeparator.length):(g=d.exec(b))&&(e=g.index,f=g[0].length),this.append(b.slice(c,e<0?b.length:e)),e<0)break;if(this.lineBreak(),f>1)for(let b of this.points)b.node==a&&b.pos>this.text.length&&(b.pos-=f-1);c=e+f}}readNode(a){let b=fd.get(a),c=b&&b.overrideDOMText;if(null!=c){this.findPointInside(a,c.length);for(let a=c.iter();!a.next().done;)a.lineBreak?this.lineBreak():this.append(a.value)}else 3==a.nodeType?this.readTextNode(a):"BR"==a.nodeName?a.nextSibling&&this.lineBreak():1==a.nodeType&&this.readRange(a.firstChild,null)}findPointBefore(a,b){for(let c of this.points)c.node==a&&a.childNodes[c.offset]==b&&(c.pos=this.text.length)}findPointInside(a,b){for(let c of this.points)(3==a.nodeType?c.node==a:a.contains(c.node))&&(c.pos=this.text.length+(!function(a,b,c){for(;;){if(!b||c<eg(b))return!1;if(b==a)return!0;c=ed(b)+1,b=b.parentNode}}(a,c.node,c.offset)?0:b))}},fN=class{constructor(a,b){this.node=a,this.offset=b,this.pos=-1}},fO=class{constructor(a,b,c,d){this.typeOver=d,this.bounds=null,this.text="",this.domChanged=b>-1;let{impreciseHead:e,impreciseAnchor:f}=a.docView;if(a.state.readOnly&&b>-1)this.newSel=null;else if(b>-1&&(this.bounds=function a(b,c,d,e){if(b.isComposite()){let f=-1,g=-1,h=-1,i=-1;for(let j=0,k=e,l=e;j<b.children.length;j++){let e=b.children[j],m=k+e.length;if(k<c&&m>d)return a(e,c,d,k);if(m>=c&&-1==f&&(f=j,g=k),k>d&&e.dom.parentNode==b.dom){h=j,i=l;break}l=m,k=m+e.breakAfter}return{from:g,to:i<0?e+b.length:i,startDOM:(f?b.children[f-1].dom.nextSibling:null)||b.dom.firstChild,endDOM:h<b.children.length&&h>=0?b.children[h].dom:null}}return b.isText()?{from:e,to:e+b.length,startDOM:b.dom,endDOM:b.dom.nextSibling}:null}(a.docView.tile,b,c,0))){let b=e||f?[]:function(a){let b=[];if(a.root.activeElement!=a.contentDOM)return b;let{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}=a.observer.selectionRange;return c&&(b.push(new fN(c,d)),(e!=c||f!=d)&&b.push(new fN(e,f))),b}(a),c=new fM(b,a);c.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=c.text,this.newSel=function(a,b){if(0==a.length)return null;let c=a[0].pos,d=2==a.length?a[1].pos:c;return c>-1&&d>-1?cK.single(c+b,d+b):null}(b,this.bounds.from)}else{let b=a.observer.selectionRange,c=e&&e.node==b.focusNode&&e.offset==b.focusOffset||!d9(a.contentDOM,b.focusNode)?a.state.selection.main.head:a.docView.posFromDOM(b.focusNode,b.focusOffset),d=f&&f.node==b.anchorNode&&f.offset==b.anchorOffset||!d9(a.contentDOM,b.anchorNode)?a.state.selection.main.anchor:a.docView.posFromDOM(b.anchorNode,b.anchorOffset),g=a.viewport;if((dW.ios||dW.chrome)&&a.state.selection.main.empty&&c!=d&&(g.from>0||g.to<a.state.doc.length)){let b=Math.min(c,d),e=Math.max(c,d),f=g.from-b,h=g.to-e;(0==f||1==f||0==b)&&(0==h||-1==h||e==a.state.doc.length)&&(c=0,d=a.state.doc.length)}a.inputState.composing>-1&&a.state.selection.ranges.length>1?this.newSel=a.state.selection.replaceRange(cK.range(d,c)):this.newSel=cK.single(d,c)}}};function fP(a,b){let c,{newSel:d}=b,e=a.state.selection.main,f=a.inputState.lastKeyTime>Date.now()-100?a.inputState.lastKeyCode:-1;if(b.bounds){let{from:d,to:g}=b.bounds,h=e.from,i=null;(8===f||dW.android&&b.text.length<g-d)&&(h=e.to,i="end");let j=fR(a.state.doc.sliceString(d,g,""),b.text,h-d,i);j&&(dW.chrome&&13==f&&j.toB==j.from+2&&""==b.text.slice(j.from,j.toB)&&j.toB--,c={from:d+j.from,to:d+j.toA,insert:cp.of(b.text.slice(j.from,j.toB).split(""))})}else d&&(!a.hasFocus&&a.state.facet(eW)||fS(d,e))&&(d=null);if(!c&&!d)return!1;if(!c&&b.typeOver&&!e.empty&&d&&d.main.empty?c={from:e.from,to:e.to,insert:a.state.doc.slice(e.from,e.to)}:(dW.mac||dW.android)&&c&&c.from==c.to&&c.from==e.head-1&&/^\. ?$/.test(c.insert.toString())&&"off"==a.contentDOM.getAttribute("autocorrect")?(d&&2==c.insert.length&&(d=cK.single(d.main.anchor-1,d.main.head-1)),c={from:c.from,to:c.to,insert:cp.of([c.insert.toString().replace("."," ")])}):c&&c.from>=e.from&&c.to<=e.to&&(c.from!=e.from||c.to!=e.to)&&e.to-e.from-(c.to-c.from)<=4?c={from:e.from,to:e.to,insert:a.state.doc.slice(e.from,c.from).append(c.insert).append(a.state.doc.slice(c.to,e.to))}:a.state.doc.lineAt(e.from).to<e.to&&a.docView.lineHasWidget(e.to)&&a.inputState.insertingTextAt>Date.now()-50?c={from:e.from,to:e.to,insert:a.state.toText(a.inputState.insertingText)}:dW.chrome&&c&&c.from==c.to&&c.from==e.head&&"\n "==c.insert.toString()&&a.lineWrapping&&(d&&(d=cK.single(d.main.anchor-1,d.main.head-1)),c={from:e.from,to:e.to,insert:cp.of([" "])}),c)return fQ(a,c,d,f);if(!d||fS(d,e))return!1;{let b=!1,c="select";return a.inputState.lastSelectionTime>Date.now()-50&&("select"==a.inputState.lastSelectionOrigin&&(b=!0),"select.pointer"==(c=a.inputState.lastSelectionOrigin)&&(d=fH(a.state.facet(e4).map(b=>b(a)),d))),a.dispatch({selection:d,scrollIntoView:b,userEvent:c}),!0}}function fQ(a,b,c,d=-1){let e;if(dW.ios&&a.inputState.flushIOSKey(b))return!0;let f=a.state.selection.main;if(dW.android&&(b.to==f.to&&(b.from==f.from||b.from==f.from-1&&" "==a.state.sliceDoc(b.from,f.from))&&1==b.insert.length&&2==b.insert.lines&&en(a.contentDOM,"Enter",13)||(b.from==f.from-1&&b.to==f.to&&0==b.insert.length||8==d&&b.insert.length<b.to-b.from&&b.to>f.head)&&en(a.contentDOM,"Backspace",8)||b.from==f.from&&b.to==f.to+1&&0==b.insert.length&&en(a.contentDOM,"Delete",46)))return!0;let g=b.insert.toString();a.inputState.composing>=0&&a.inputState.composing++;let h=()=>e||(e=function(a,b,c){let d,e=a.state,f=e.selection.main,g=-1;if(b.from==b.to&&b.from<f.from||b.from>f.to){let c=b.from<f.from?-1:1,d=c<0?f.from:f.to,h=fG(e.facet(e4).map(b=>b(a)),d,c);b.from==h&&(g=h)}if(g>-1)d={changes:b,selection:cK.cursor(b.from+b.insert.length,-1)};else if(b.from>=f.from&&b.to<=f.to&&b.to-b.from>=(f.to-f.from)/3&&(!c||c.main.empty&&c.main.from==b.from+b.insert.length)&&a.inputState.composing<0){let c=f.from<b.from?e.sliceDoc(f.from,b.from):"",g=f.to>b.to?e.sliceDoc(b.to,f.to):"";d=e.replaceSelection(a.state.toText(c+b.insert.sliceString(0,void 0,a.state.lineBreak)+g))}else{let g=e.changes(b),h=c&&c.main.to<=g.newLength?c.main:void 0;if(e.selection.ranges.length>1&&(a.inputState.composing>=0||a.inputState.compositionPendingChange)&&b.to<=f.to+10&&b.to>=f.to-10){let i=a.state.sliceDoc(b.from,b.to),j,k=c&&fB(a,c.main.head);if(k){let a=b.insert.length-(b.to-b.from);j={from:k.from,to:k.to-a}}else j=a.state.doc.lineAt(f.head);let l=f.to-b.to;d=e.changeByRange(c=>{if(c.from==f.from&&c.to==f.to)return{changes:g,range:h||c.map(g)};let d=c.to-l,k=d-i.length;if(a.state.sliceDoc(k,d)!=i||d>=j.from&&k<=j.to)return{range:c};let m=e.changes({from:k,to:d,insert:b.insert}),n=c.to-f.to;return{changes:m,range:h?cK.range(Math.max(0,h.anchor+n),Math.max(0,h.head+n)):c.map(m)}})}else d={changes:g,selection:h&&e.selection.replaceRange(h)}}let h="input.type";return(a.composing||a.inputState.compositionPendingChange&&a.inputState.compositionEndedAt>Date.now()-50)&&(a.inputState.compositionPendingChange=!1,h+=".compose",a.inputState.compositionFirstChange&&(h+=".start",a.inputState.compositionFirstChange=!1)),e.update(d,{userEvent:h,scrollIntoView:!0})}(a,b,c));return a.state.facet(eL).some(c=>c(a,b.from,b.to,g,h))||a.dispatch(h()),!0}function fR(a,b,c,d){let e=Math.min(a.length,b.length),f=0;for(;f<e&&a.charCodeAt(f)==b.charCodeAt(f);)f++;if(f==e&&a.length==b.length)return null;let g=a.length,h=b.length;for(;g>0&&h>0&&a.charCodeAt(g-1)==b.charCodeAt(h-1);)g--,h--;if("end"==d){let a=Math.max(0,f-Math.min(g,h));c-=g+a-f}if(g<f&&a.length<b.length){let a=c<=f&&c>=g?f-c:0;f-=a,h=f+(h-g),g=f}else if(h<f){let a=c<=f&&c>=h?f-c:0;f-=a,g=f+(g-h),h=f}return{from:f,toA:g,toB:h}}function fS(a,b){return b.head==a.main.head&&b.anchor==a.main.anchor}var fT=class{setSelectionOrigin(a){this.lastSelectionOrigin=a,this.lastSelectionTime=Date.now()}constructor(a){this.view=a,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=a.hasFocus,dW.safari&&a.contentDOM.addEventListener("input",()=>null),dW.gecko&&function(a){ge.has(a)||(ge.add(a),a.addEventListener("copy",()=>{}),a.addEventListener("cut",()=>{}))}(a.contentDOM.ownerDocument)}handleEvent(a){!(!function(a,b){if(!b.bubbles)return!0;if(b.defaultPrevented)return!1;for(let c=b.target,d;c!=a.contentDOM;c=c.parentNode)if(!c||11==c.nodeType||(d=fd.get(c))&&d.isWidget()&&!d.isHidden&&d.widget.ignoreEvent(b))return!1;return!0}(this.view,a)||this.ignoreDuringComposition(a))&&("keydown"==a.type&&this.keydown(a)||(0!=this.view.updateState?Promise.resolve().then(()=>this.runHandlers(a.type,a)):this.runHandlers(a.type,a)))}runHandlers(a,b){let c=this.handlers[a];if(c){for(let a of c.observers)a(this.view,b);for(let a of c.handlers){if(b.defaultPrevented)break;if(a(this.view,b)){b.preventDefault();break}}}}ensureHandlers(a){let b=function(a){let b=Object.create(null);function c(a){return b[a]||(b[a]={observers:[],handlers:[]})}for(let b of a){let a=b.spec,d=a&&a.plugin.domEventHandlers,e=a&&a.plugin.domEventObservers;if(d)for(let a in d){let e=d[a];e&&c(a).handlers.push(fU(b.value,e))}if(e)for(let a in e){let d=e[a];d&&c(a).observers.push(fU(b.value,d))}}for(let a in f$)c(a).handlers.push(f$[a]);for(let a in f_)c(a).observers.push(f_[a]);return b}(a),c=this.handlers,d=this.view.contentDOM;for(let a in b)if("scroll"!=a){let e=!b[a].handlers.length,f=c[a];f&&!f.handlers.length!=e&&(d.removeEventListener(a,this.handleEvent),f=null),f||d.addEventListener(a,this.handleEvent,{passive:e})}for(let a in c)"scroll"==a||b[a]||d.removeEventListener(a,this.handleEvent);this.handlers=b}keydown(a){let b;return this.lastKeyCode=a.keyCode,this.lastKeyTime=Date.now(),!!(9==a.keyCode&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))||((this.tabFocusMode>0&&27!=a.keyCode&&0>fX.indexOf(a.keyCode)&&(this.tabFocusMode=-1),dW.android&&dW.chrome&&!a.synthetic&&(13==a.keyCode||8==a.keyCode))?(this.view.observer.delayAndroidKey(a.key,a.keyCode),!0):dW.ios&&!a.synthetic&&!a.altKey&&!a.metaKey&&((b=fV.find(b=>b.keyCode==a.keyCode))&&!a.ctrlKey||fW.indexOf(a.key)>-1&&a.ctrlKey&&!a.shiftKey)?(this.pendingIOSKey=b||a,setTimeout(()=>this.flushIOSKey(),250),!0):(229!=a.keyCode&&this.view.observer.forceFlush(),!1))}flushIOSKey(a){let b=this.pendingIOSKey;return!(!b||"Enter"==b.key&&a&&a.from<a.to&&/^\S+$/.test(a.insert.toString()))&&(this.pendingIOSKey=void 0,en(this.view.contentDOM,b.key,b.keyCode,b instanceof KeyboardEvent?b:void 0))}ignoreDuringComposition(a){return!!/^key/.test(a.type)&&!a.synthetic&&(this.composing>0||!!(dW.safari&&!dW.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100)&&(this.compositionPendingKey=!1,!0))}startMouseSelection(a){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=a}update(a){this.view.observer.update(a),this.mouseSelection&&this.mouseSelection.update(a),this.draggedContent&&a.docChanged&&(this.draggedContent=this.draggedContent.map(a.changes)),a.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function fU(a,b){return(c,d)=>{try{return b.call(a,d,c)}catch(a){eV(c.state,a)}}}var fV=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],fW="dthko",fX=[16,17,18,20,91,92,224,225];function fY(a){return .7*Math.max(0,a)+8}var fZ=class{constructor(a,b,c,d){this.view=a,this.startEvent=b,this.style=c,this.mustSelect=d,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=b,this.scrollParents=function(a){let b=a.ownerDocument,c,d;for(let e=a.parentNode;e;)if(e==b.body||c&&d)break;else if(1==e.nodeType)!d&&e.scrollHeight>e.clientHeight&&(d=e),!c&&e.scrollWidth>e.clientWidth&&(c=e),e=e.assignedSlot||e.parentNode;else if(11==e.nodeType)e=e.host;else break;return{x:c,y:d}}(a.contentDOM),this.atoms=a.state.facet(e4).map(b=>b(a));let e=a.contentDOM.ownerDocument;e.addEventListener("mousemove",this.move=this.move.bind(this)),e.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=b.shiftKey,this.multiple=a.state.facet(dj.allowMultipleSelections)&&function(a,b){let c=a.state.facet(eG);return c.length?c[0](b):dW.mac?b.metaKey:b.ctrlKey}(a,b),this.dragging=!!function(a,b){let{main:c}=a.state.selection;if(c.empty)return!1;let d=d8(a.root);if(!d||0==d.rangeCount)return!0;let e=d.getRangeAt(0).getClientRects();for(let a=0;a<e.length;a++){let c=e[a];if(c.left<=b.clientX&&c.right>=b.clientX&&c.top<=b.clientY&&c.bottom>=b.clientY)return!0}return!1}(a,b)&&1==f8(b)&&null}start(a){!1===this.dragging&&this.select(a)}move(a){var b;if(0==a.buttons)return this.destroy();if(this.dragging||null==this.dragging&&10>(b=this.startEvent,Math.max(Math.abs(b.clientX-a.clientX),Math.abs(b.clientY-a.clientY))))return;this.select(this.lastEvent=a);let c=0,d=0,e=0,f=0,g=this.view.win.innerWidth,h=this.view.win.innerHeight;this.scrollParents.x&&({left:e,right:g}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:f,bottom:h}=this.scrollParents.y.getBoundingClientRect());let i=e8(this.view);a.clientX-i.left<=e+6?c=-fY(e-a.clientX):a.clientX+i.right>=g-6&&(c=fY(a.clientX-g)),a.clientY-i.top<=f+6?d=-fY(f-a.clientY):a.clientY+i.bottom>=h-6&&(d=fY(a.clientY-h)),this.setScrollSpeed(c,d)}up(a){null==this.dragging&&this.select(this.lastEvent),this.dragging||a.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let a=this.view.contentDOM.ownerDocument;a.removeEventListener("mousemove",this.move),a.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(a,b){this.scrollSpeed={x:a,y:b},a||b?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:a,y:b}=this.scrollSpeed;a&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=a,a=0),b&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=b,b=0),(a||b)&&this.view.win.scrollBy(a,b),!1===this.dragging&&this.select(this.lastEvent)}select(a){let{view:b}=this,c=fH(this.atoms,this.style.get(a,this.extend,this.multiple));(this.mustSelect||!c.eq(b.state.selection,!1===this.dragging))&&this.view.dispatch({selection:c,userEvent:"select.pointer"}),this.mustSelect=!1}update(a){a.transactions.some(a=>a.isUserEvent("input.type"))?this.destroy():this.style.update(a)&&setTimeout(()=>this.select(this.lastEvent),20)}},f$=Object.create(null),f_=Object.create(null),f0=dW.ie&&dW.ie_version<15||dW.ios&&dW.webkit_version<604;function f1(a,b,c){for(let d of a.facet(b))c=d(c,a);return c}function f2(a,b){b=f1(a.state,eN,b);let{state:c}=a,d,e=1,f=c.toText(b),g=f.lines==c.selection.ranges.length;if(null!=ga&&c.selection.ranges.every(a=>a.empty)&&ga==f.toString()){let a=-1;d=c.changeByRange(d=>{let h=c.doc.lineAt(d.from);if(h.from==a)return{range:d};a=h.from;let i=c.toText((g?f.line(e++).text:b)+c.lineBreak);return{changes:{from:h.from,insert:i},range:cK.cursor(d.from+i.length)}})}else d=g?c.changeByRange(a=>{let b=f.line(e++);return{changes:{from:a.from,to:a.to,insert:b.text},range:cK.cursor(a.from+b.length)}}):c.replaceSelection(f);a.dispatch(d,{userEvent:"input.paste",scrollIntoView:!0})}function f3(a,b,c,d){if(1==d)return cK.cursor(b,c);{if(2==d)return function(a,b,c=1){let d=a.charCategorizer(b),e=a.doc.lineAt(b),f=b-e.from;if(0==e.length)return cK.cursor(b);0==f?c=1:f==e.length&&(c=-1);let g=f,h=f;c<0?g=cy(e.text,f,!1):h=cy(e.text,f);let i=d(e.text.slice(g,h));for(;g>0;){let a=cy(e.text,g,!1);if(d(e.text.slice(a,g))!=i)break;g=a}for(;h<e.length;){let a=cy(e.text,h);if(d(e.text.slice(h,a))!=i)break;h=a}return cK.range(g+e.from,h+e.from)}(a.state,b,c);let e=a.docView.lineAt(b,c),f=a.state.doc.lineAt(e?e.posAtEnd:b),g=e?e.posAtStart:f.from,h=e?e.posAtEnd:f.to;return h<a.state.doc.length&&h==f.to&&h++,cK.range(g,h)}}f_.scroll=a=>{a.inputState.lastScrollTop=a.scrollDOM.scrollTop,a.inputState.lastScrollLeft=a.scrollDOM.scrollLeft},f$.keydown=(a,b)=>(a.inputState.setSelectionOrigin("select"),27==b.keyCode&&0!=a.inputState.tabFocusMode&&(a.inputState.tabFocusMode=Date.now()+2e3),!1),f_.touchstart=(a,b)=>{a.inputState.lastTouchTime=Date.now(),a.inputState.setSelectionOrigin("select.pointer")},f_.touchmove=a=>{a.inputState.setSelectionOrigin("select.pointer")},f$.mousedown=(a,b)=>{if(a.observer.flush(),a.inputState.lastTouchTime>Date.now()-2e3)return!1;let c=null;for(let d of a.state.facet(eI))if(c=d(a,b))break;if(c||0!=b.button||(c=function(a,b){let c=a.posAndSideAtCoords({x:b.clientX,y:b.clientY},!1),d=f8(b),e=a.state.selection;return{update(a){a.docChanged&&(c.pos=a.changes.mapPos(c.pos),e=e.map(a.changes))},get(b,f,g){let h=a.posAndSideAtCoords({x:b.clientX,y:b.clientY},!1),i,j=f3(a,h.pos,h.assoc,d);if(c.pos!=h.pos&&!f){let b=f3(a,c.pos,c.assoc,d),e=Math.min(b.from,j.from),f=Math.max(b.to,j.to);j=e<j.from?cK.range(e,f):cK.range(f,e)}return f?e.replaceRange(e.main.extend(j.from,j.to)):g&&1==d&&e.ranges.length>1&&(i=function(a,b){for(let c=0;c<a.ranges.length;c++){let{from:d,to:e}=a.ranges[c];if(d<=b&&e>=b)return cK.create(a.ranges.slice(0,c).concat(a.ranges.slice(c+1)),a.mainIndex==c?0:a.mainIndex-(a.mainIndex>c))}return null}(e,h.pos))?i:g?e.addRange(j):cK.create([j])}}}(a,b)),c){let d=!a.hasFocus;a.inputState.startMouseSelection(new fZ(a,b,c,d)),d&&a.observer.ignore(()=>{el(a.contentDOM);let b=a.root.activeElement;b&&!b.contains(a.contentDOM)&&b.blur()});let e=a.inputState.mouseSelection;if(e)return e.start(b),!1===e.dragging}else a.inputState.setSelectionOrigin("select.pointer");return!1};var f4=dW.ie&&dW.ie_version<=11,f5=null,f6=0,f7=0;function f8(a){if(!f4)return a.detail;let b=f5,c=f7;return f5=a,f7=Date.now(),f6=!b||c>Date.now()-400&&2>Math.abs(b.clientX-a.clientX)&&2>Math.abs(b.clientY-a.clientY)?(f6+1)%3:1}function f9(a,b,c,d){let e;if(!(c=f1(a.state,eN,c)))return;let f=a.posAtCoords({x:b.clientX,y:b.clientY},!1),{draggedContent:g}=a.inputState,h=d&&g&&((e=a.state.facet(eH)).length?e[0](b):dW.mac?!b.altKey:!b.ctrlKey)?{from:g.from,to:g.to}:null,i={from:f,insert:c},j=a.state.changes(h?[h,i]:i);a.focus(),a.dispatch({changes:j,selection:{anchor:j.mapPos(f,-1),head:j.mapPos(f,1)},userEvent:h?"move.drop":"input.drop"}),a.inputState.draggedContent=null}f$.dragstart=(a,b)=>{let{selection:{main:c}}=a.state;if(b.target.draggable){let d=a.docView.tile.nearest(b.target);if(d&&d.isWidget()){let a=d.posAtStart,b=a+d.length;(a>=c.to||b<=c.from)&&(c=cK.range(a,b))}}let{inputState:d}=a;return d.mouseSelection&&(d.mouseSelection.dragging=!0),d.draggedContent=c,b.dataTransfer&&(b.dataTransfer.setData("Text",f1(a.state,eO,a.state.sliceDoc(c.from,c.to))),b.dataTransfer.effectAllowed="copyMove"),!1},f$.dragend=a=>(a.inputState.draggedContent=null,!1),f$.drop=(a,b)=>{if(!b.dataTransfer)return!1;if(a.state.readOnly)return!0;let c=b.dataTransfer.files;if(c&&c.length){let d=Array(c.length),e=0,f=()=>{++e==c.length&&f9(a,b,d.filter(a=>null!=a).join(a.state.lineBreak),!1)};for(let a=0;a<c.length;a++){let b=new FileReader;b.onerror=f,b.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(b.result)||(d[a]=b.result),f()},b.readAsText(c[a])}return!0}{let c=b.dataTransfer.getData("Text");if(c)return f9(a,b,c,!0),!0}return!1},f$.paste=(a,b)=>{if(a.state.readOnly)return!0;a.observer.flush();let c=f0?null:b.clipboardData;return c?(f2(a,c.getData("text/plain")||c.getData("text/uri-list")),!0):(!function(a){let b=a.dom.parentNode;if(!b)return;let c=b.appendChild(document.createElement("textarea"));c.style.cssText="position: fixed; left: -10000px; top: 10px",c.focus(),setTimeout(()=>{a.focus(),c.remove(),f2(a,c.value)},50)}(a),!1)};var ga=null;f$.copy=f$.cut=(a,b)=>{if(!ea(a.contentDOM,a.observer.selectionRange))return!1;let{text:c,ranges:d,linewise:e}=function(a){let b=[],c=[],d=!1;for(let d of a.selection.ranges)d.empty||(b.push(a.sliceDoc(d.from,d.to)),c.push(d));if(!b.length){let e=-1;for(let{from:d}of a.selection.ranges){let f=a.doc.lineAt(d);f.number>e&&(b.push(f.text),c.push({from:f.from,to:Math.min(a.doc.length,f.to+1)})),e=f.number}d=!0}return{text:f1(a,eO,b.join(a.lineBreak)),ranges:c,linewise:d}}(a.state);if(!c&&!e)return!1;ga=e?c:null,"cut"!=b.type||a.state.readOnly||a.dispatch({changes:d,scrollIntoView:!0,userEvent:"delete.cut"});let f=f0?null:b.clipboardData;return f?(f.clearData(),f.setData("text/plain",c),!0):(!function(a,b){let c=a.dom.parentNode;if(!c)return;let d=c.appendChild(document.createElement("textarea"));d.style.cssText="position: fixed; left: -10000px; top: 10px",d.value=b,d.focus(),d.selectionEnd=b.length,d.selectionStart=0,setTimeout(()=>{d.remove(),a.focus()},50)}(a,c),!1)};var gb=c8.define();function gc(a,b){let c=[];for(let d of a.facet(eM)){let e=d(a,b);e&&c.push(e)}return c.length?a.update({effects:c,annotations:gb.of(!0)}):null}function gd(a){setTimeout(()=>{let b=a.hasFocus;if(b!=a.inputState.notifiedFocused){let c=gc(a.state,b);c?a.dispatch(c):a.update([])}},10)}f_.focus=a=>{a.inputState.lastFocusTime=Date.now(),!a.scrollDOM.scrollTop&&(a.inputState.lastScrollTop||a.inputState.lastScrollLeft)&&(a.scrollDOM.scrollTop=a.inputState.lastScrollTop,a.scrollDOM.scrollLeft=a.inputState.lastScrollLeft),gd(a)},f_.blur=a=>{a.observer.clearSelectionRange(),gd(a)},f_.compositionstart=f_.compositionupdate=a=>{!a.observer.editContext&&(null==a.inputState.compositionFirstChange&&(a.inputState.compositionFirstChange=!0),a.inputState.composing<0&&(a.inputState.composing=0))},f_.compositionend=a=>{a.observer.editContext||(a.inputState.composing=-1,a.inputState.compositionEndedAt=Date.now(),a.inputState.compositionPendingKey=!0,a.inputState.compositionPendingChange=a.observer.pendingRecords().length>0,a.inputState.compositionFirstChange=null,dW.chrome&&dW.android?a.observer.flushSoon():a.inputState.compositionPendingChange?Promise.resolve().then(()=>a.observer.flush()):setTimeout(()=>{a.inputState.composing<0&&a.docView.hasComposition&&a.update([])},50))},f_.contextmenu=a=>{a.inputState.lastContextMenu=Date.now()},f$.beforeinput=(a,b)=>{var c,d;let e;if(("insertText"==b.inputType||"insertCompositionText"==b.inputType)&&(a.inputState.insertingText=b.data,a.inputState.insertingTextAt=Date.now()),"insertReplacementText"==b.inputType&&a.observer.editContext){let d=null==(c=b.dataTransfer)?void 0:c.getData("text/plain"),e=b.getTargetRanges();if(d&&e.length){let b=e[0],c=a.posAtDOM(b.startContainer,b.startOffset),f=a.posAtDOM(b.endContainer,b.endOffset);return fQ(a,{from:c,to:f,insert:a.state.toText(d)},null),!0}}if(dW.chrome&&dW.android&&(e=fV.find(a=>a.inputType==b.inputType))&&(a.observer.delayAndroidKey(e.key,e.keyCode),"Backspace"==e.key||"Delete"==e.key)){let b=(null==(d=window.visualViewport)?void 0:d.height)||0;setTimeout(()=>{var c;((null==(c=window.visualViewport)?void 0:c.height)||0)>b+10&&a.hasFocus&&(a.contentDOM.blur(),a.focus())},100)}return dW.ios&&"deleteContentForward"==b.inputType&&a.observer.flushSoon(),dW.safari&&"insertText"==b.inputType&&a.inputState.composing>=0&&setTimeout(()=>f_.compositionend(a,b),20),!1};var ge=new Set,gf=["pre-wrap","normal","pre-line","break-spaces"],gg=!1,gh=class{constructor(a){this.lineWrapping=a,this.doc=cp.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(a,b){let c=this.doc.lineAt(b).number-this.doc.lineAt(a).number+1;return this.lineWrapping&&(c+=Math.max(0,Math.ceil((b-a-c*this.lineLength*.5)/this.lineLength))),this.lineHeight*c}heightForLine(a){return this.lineWrapping?(1+Math.max(0,Math.ceil((a-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(a){return this.doc=a,this}mustRefreshForWrapping(a){return gf.indexOf(a)>-1!=this.lineWrapping}mustRefreshForHeights(a){let b=!1;for(let c=0;c<a.length;c++){let d=a[c];d<0?c++:this.heightSamples[Math.floor(10*d)]||(b=!0,this.heightSamples[Math.floor(10*d)]=!0)}return b}refresh(a,b,c,d,e,f){let g=gf.indexOf(a)>-1,h=Math.abs(b-this.lineHeight)>.3||this.lineWrapping!=g||Math.abs(c-this.charWidth)>.1;if(this.lineWrapping=g,this.lineHeight=b,this.charWidth=c,this.textHeight=d,this.lineLength=e,h){this.heightSamples={};for(let a=0;a<f.length;a++){let b=f[a];b<0?a++:this.heightSamples[Math.floor(10*b)]=!0}}return h}},gi=class{constructor(a,b){this.from=a,this.heights=b,this.index=0}get more(){return this.index<this.heights.length}},gj=class a{constructor(a,b,c,d,e){this.from=a,this.length=b,this.top=c,this.height=d,this._content=e}get type(){return"number"==typeof this._content?d0.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof d4?this._content.widget:null}get widgetLineBreaks(){return"number"==typeof this._content?this._content:0}join(b){let c=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(b._content)?b._content:[b]);return new a(this.from,this.length+b.length,this.top,this.height+b.height,c)}},gk=function(a){return a[a.ByPos=0]="ByPos",a[a.ByHeight=1]="ByHeight",a[a.ByPosNoHeight=2]="ByPosNoHeight",a}(gk||(gk={})),gl=class a{constructor(a,b,c=2){this.length=a,this.height=b,this.flags=c}get outdated(){return(2&this.flags)>0}set outdated(a){this.flags=2*!!a|-3&this.flags}setHeight(a){this.height!=a&&(Math.abs(this.height-a)>.001&&(gg=!0),this.height=a)}replace(b,c,d){return a.of(d)}decomposeLeft(a,b){b.push(this)}decomposeRight(a,b){b.push(this)}applyChanges(a,b,c,d){let e=this,f=c.doc;for(let g=d.length-1;g>=0;g--){let{fromA:h,toA:i,fromB:j,toB:k}=d[g],l=e.lineAt(h,gk.ByPosNoHeight,c.setDoc(b),0,0),m=l.to>=i?l:e.lineAt(i,gk.ByPosNoHeight,c,0,0);for(k+=m.to-i,i=m.to;g>0&&l.from<=d[g-1].toA;)h=d[g-1].fromA,j=d[g-1].fromB,g--,h<l.from&&(l=e.lineAt(h,gk.ByPosNoHeight,c,0,0));j+=l.from-h,h=l.from;let n=gt.build(c.setDoc(f),a,j,k);e=gm(e,e.replace(h,i,n))}return e.updateHeight(c,0)}static empty(){return new gp(0,0,0)}static of(b){if(1==b.length)return b[0];let c=0,d=b.length,e=0,f=0;for(;;)if(c==d)if(e>2*f){let a=b[c-1];a.break?b.splice(--c,1,a.left,null,a.right):b.splice(--c,1,a.left,a.right),d+=1+a.break,e-=a.size}else if(f>2*e){let a=b[d];a.break?b.splice(d,1,a.left,null,a.right):b.splice(d,1,a.left,a.right),d+=2+a.break,f-=a.size}else break;else if(e<f){let a=b[c++];a&&(e+=a.size)}else{let a=b[--d];a&&(f+=a.size)}let g=0;return null==b[c-1]?(g=1,c--):null==b[c]&&(g=1,d++),new gr(a.of(b.slice(0,c)),g,a.of(b.slice(d)))}};function gm(a,b){return a==b?a:(a.constructor!=b.constructor&&(gg=!0),b)}gl.prototype.size=1;var gn=d1.replace({}),go=class extends gl{constructor(a,b,c){super(a,b),this.deco=c,this.spaceAbove=0}mainBlock(a,b){return new gj(b,this.length,a+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(a,b,c,d){return this.spaceAbove&&a<c+this.spaceAbove?new gj(d,0,c,this.spaceAbove,gn):this.mainBlock(c,d)}lineAt(a,b,c,d,e){let f=this.mainBlock(d,e);return this.spaceAbove?this.blockAt(0,c,d,e).join(f):f}forEachLine(a,b,c,d,e,f){a<=e+this.length&&b>=e&&f(this.lineAt(0,gk.ByPos,c,d,e))}setMeasuredHeight(a){let b=a.heights[a.index++];b<0?(this.spaceAbove=-b,b=a.heights[a.index++]):this.spaceAbove=0,this.setHeight(b)}updateHeight(a,b=0,c=!1,d){return d&&d.from<=b&&d.more&&this.setMeasuredHeight(d),this.outdated=!1,this}toString(){return`block(${this.length})`}},gp=class a extends go{constructor(a,b,c){super(a,b,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=c}mainBlock(a,b){return new gj(b,this.length,a+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(b,c,d){let e=d[0];return 1==d.length&&(e instanceof a||e instanceof gq&&4&e.flags)&&10>Math.abs(this.length-e.length)?(e instanceof gq?e=new a(e.length,this.height,this.spaceAbove):e.height=this.height,this.outdated||(e.outdated=!1),e):gl.of(d)}updateHeight(a,b=0,c=!1,d){return d&&d.from<=b&&d.more?this.setMeasuredHeight(d):(c||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,a.heightForLine(this.length-this.collapsed))+this.breaks*a.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},gq=class a extends gl{constructor(a){super(a,0)}heightMetrics(a,b){let c=a.doc.lineAt(b).number,d=a.doc.lineAt(b+this.length).number,e=d-c+1,f,g=0;if(a.lineWrapping){let b=Math.min(this.height,a.lineHeight*e);f=b/e,this.length>e+1&&(g=(this.height-b)/(this.length-e-1))}else f=this.height/e;return{firstLine:c,lastLine:d,perLine:f,perChar:g}}blockAt(a,b,c,d){let{firstLine:e,lastLine:f,perLine:g,perChar:h}=this.heightMetrics(b,d);if(b.lineWrapping){let e=d+(a<b.lineHeight?0:Math.round(Math.max(0,Math.min(1,(a-c)/this.height))*this.length)),f=b.doc.lineAt(e),i=g+f.length*h,j=Math.max(c,a-i/2);return new gj(f.from,f.length,j,i,0)}{let d=Math.max(0,Math.min(f-e,Math.floor((a-c)/g))),{from:h,length:i}=b.doc.line(e+d);return new gj(h,i,c+g*d,g,0)}}lineAt(a,b,c,d,e){if(b==gk.ByHeight)return this.blockAt(a,c,d,e);if(b==gk.ByPosNoHeight){let{from:b,to:d}=c.doc.lineAt(a);return new gj(b,d-b,0,0,0)}let{firstLine:f,perLine:g,perChar:h}=this.heightMetrics(c,e),i=c.doc.lineAt(a),j=g+i.length*h,k=i.number-f,l=d+g*k+h*(i.from-e-k);return new gj(i.from,i.length,Math.max(d,Math.min(l,d+this.height-j)),j,0)}forEachLine(a,b,c,d,e,f){a=Math.max(a,e),b=Math.min(b,e+this.length);let{firstLine:g,perLine:h,perChar:i}=this.heightMetrics(c,e);for(let j=a,k=d;j<=b;){let b=c.doc.lineAt(j);if(j==a){let c=b.number-g;k+=h*c+i*(a-e-c)}let d=h+i*b.length;f(new gj(b.from,b.length,k,d,0)),k+=d,j=b.to+1}}replace(b,c,d){let e=this.length-c;if(e>0){let b=d[d.length-1];b instanceof a?d[d.length-1]=new a(b.length+e):d.push(null,new a(e-1))}if(b>0){let c=d[0];c instanceof a?d[0]=new a(b+c.length):d.unshift(new a(b-1),null)}return gl.of(d)}decomposeLeft(b,c){c.push(new a(b-1),null)}decomposeRight(b,c){c.push(null,new a(this.length-b-1))}updateHeight(b,c=0,d=!1,e){let f=c+this.length;if(e&&e.from<=c+this.length&&e.more){let d=[],g=Math.max(c,e.from),h=-1;for(e.from>c&&d.push(new a(e.from-c-1).updateHeight(b,c));g<=f&&e.more;){let a=b.doc.lineAt(g).length;d.length&&d.push(null);let c=e.heights[e.index++],f=0;c<0&&(f=-c,c=e.heights[e.index++]),-1==h?h=c:Math.abs(c-h)>=.001&&(h=-2);let i=new gp(a,c,f);i.outdated=!1,d.push(i),g+=a+1}g<=f&&d.push(null,new a(f-g).updateHeight(b,g));let i=gl.of(d);return(h<0||Math.abs(i.height-this.height)>=.001||Math.abs(h-this.heightMetrics(b,c).perLine)>=.001)&&(gg=!0),gm(this,i)}return(d||this.outdated)&&(this.setHeight(b.heightForGap(c,c+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}},gr=class extends gl{constructor(a,b,c){super(a.length+b+c.length,a.height+c.height,b|(a.outdated||c.outdated?2:0)),this.left=a,this.right=c,this.size=a.size+c.size}get break(){return 1&this.flags}blockAt(a,b,c,d){let e=c+this.left.height;return a<e?this.left.blockAt(a,b,c,d):this.right.blockAt(a,b,e,d+this.left.length+this.break)}lineAt(a,b,c,d,e){let f=d+this.left.height,g=e+this.left.length+this.break,h=b==gk.ByHeight?a<f:a<g,i=h?this.left.lineAt(a,b,c,d,e):this.right.lineAt(a,b,c,f,g);if(this.break||(h?i.to<g:i.from>g))return i;let j=b==gk.ByPosNoHeight?gk.ByPosNoHeight:gk.ByPos;return h?i.join(this.right.lineAt(g,j,c,f,g)):this.left.lineAt(g,j,c,d,e).join(i)}forEachLine(a,b,c,d,e,f){let g=d+this.left.height,h=e+this.left.length+this.break;if(this.break)a<h&&this.left.forEachLine(a,b,c,d,e,f),b>=h&&this.right.forEachLine(a,b,c,g,h,f);else{let i=this.lineAt(h,gk.ByPos,c,d,e);a<i.from&&this.left.forEachLine(a,i.from-1,c,d,e,f),i.to>=a&&i.from<=b&&f(i),b>i.to&&this.right.forEachLine(i.to+1,b,c,g,h,f)}}replace(a,b,c){let d=this.left.length+this.break;if(b<d)return this.balanced(this.left.replace(a,b,c),this.right);if(a>this.left.length)return this.balanced(this.left,this.right.replace(a-d,b-d,c));let e=[];a>0&&this.decomposeLeft(a,e);let f=e.length;for(let a of c)e.push(a);if(a>0&&gs(e,f-1),b<this.length){let a=e.length;this.decomposeRight(b,e),gs(e,a)}return gl.of(e)}decomposeLeft(a,b){let c=this.left.length;if(a<=c)return this.left.decomposeLeft(a,b);b.push(this.left),this.break&&a>=++c&&b.push(null),a>c&&this.right.decomposeLeft(a-c,b)}decomposeRight(a,b){let c=this.left.length,d=c+this.break;if(a>=d)return this.right.decomposeRight(a-d,b);a<c&&this.left.decomposeRight(a,b),this.break&&a<d&&b.push(null),b.push(this.right)}balanced(a,b){return a.size>2*b.size||b.size>2*a.size?gl.of(this.break?[a,null,b]:[a,b]):(this.left=gm(this.left,a),this.right=gm(this.right,b),this.setHeight(a.height+b.height),this.outdated=a.outdated||b.outdated,this.size=a.size+b.size,this.length=a.length+this.break+b.length,this)}updateHeight(a,b=0,c=!1,d){let{left:e,right:f}=this,g=b+e.length+this.break,h=null;return(d&&d.from<=b+e.length&&d.more?h=e=e.updateHeight(a,b,c,d):e.updateHeight(a,b,c),d&&d.from<=g+f.length&&d.more?h=f=f.updateHeight(a,g,c,d):f.updateHeight(a,g,c),h)?this.balanced(e,f):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function gs(a,b){let c,d;null==a[b]&&(c=a[b-1])instanceof gq&&(d=a[b+1])instanceof gq&&a.splice(b-1,3,new gq(c.length+1+d.length))}var gt=class a{constructor(a,b){this.pos=a,this.oracle=b,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=a}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(a,b){if(this.lineStart>-1){let a=Math.min(b,this.lineEnd),c=this.nodes[this.nodes.length-1];c instanceof gp?c.length+=a-this.pos:(a>this.pos||!this.isCovered)&&this.nodes.push(new gp(a-this.pos,-1,0)),this.writtenTo=a,b>a&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=b}point(a,b,c){if(a<b||c.heightRelevant){let d=c.widget?c.widget.estimatedHeight:0,e=c.widget?c.widget.lineBreaks:0;d<0&&(d=this.oracle.lineHeight);let f=b-a;c.block?this.addBlock(new go(f,d,c)):(f||e||d>=5)&&this.addLineDeco(d,e,f)}else b>a&&this.span(a,b);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:a,to:b}=this.oracle.doc.lineAt(this.pos);this.lineStart=a,this.lineEnd=b,this.writtenTo<a&&((this.writtenTo<a-1||null==this.nodes[this.nodes.length-1])&&this.nodes.push(this.blankContent(this.writtenTo,a-1)),this.nodes.push(null)),this.pos>a&&this.nodes.push(new gp(this.pos-a,-1,0)),this.writtenTo=this.pos}blankContent(a,b){let c=new gq(b-a);return this.oracle.doc.lineAt(a).to==b&&(c.flags|=4),c}ensureLine(){this.enterLine();let a=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(a instanceof gp)return a;let b=new gp(0,-1,0);return this.nodes.push(b),b}addBlock(a){this.enterLine();let b=a.deco;b&&b.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(a),this.writtenTo=this.pos=this.pos+a.length,b&&b.endSide>0&&(this.covering=a)}addLineDeco(a,b,c){let d=this.ensureLine();d.length+=c,d.collapsed+=c,d.widgetHeight=Math.max(d.widgetHeight,a),d.breaks+=b,this.writtenTo=this.pos=this.pos+c}finish(a){let b=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||b instanceof gp||this.isCovered?(this.writtenTo<this.pos||null==b)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new gp(0,-1,0));let c=a;for(let a of this.nodes)a instanceof gp&&a.updateHeight(this.oracle,c),c+=a?a.length:1;return this.nodes}static build(b,c,d,e){let f=new a(d,b);return dq.spans(c,d,e,f,0),f.finish(d)}},gu=class{constructor(){this.changes=[]}compareRange(){}comparePoint(a,b,c,d){(a<b||c&&c.heightRelevant||d&&d.heightRelevant)&&d6(a,b,this.changes,5)}},gv=class{constructor(a,b,c,d){this.from=a,this.to=b,this.size=c,this.displaySize=d}static same(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++){let d=a[c],e=b[c];if(d.from!=e.from||d.to!=e.to||d.size!=e.size)return!1}return!0}draw(a,b){return d1.replace({widget:new gw(this.displaySize*(b?a.scaleY:a.scaleX),b)}).range(this.from,this.to)}},gw=class extends d_{constructor(a,b){super(),this.size=a,this.vertical=b}eq(a){return a.size==this.size&&a.vertical==this.vertical}toDOM(){let a=document.createElement("div");return this.vertical?a.style.height=this.size+"px":(a.style.width=this.size+"px",a.style.height="2px",a.style.display="inline-block"),a}get estimatedHeight(){return this.vertical?this.size:-1}},gx=class{constructor(a){this.state=a,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!1,this.scaleX=1,this.scaleY=1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=gB,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=es.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let b=a.facet(e0).some(a=>"function"!=typeof a&&"cm-lineWrapping"==a.class);this.heightOracle=new gh(b),this.stateDeco=gC(a),this.heightMap=gl.empty().applyChanges(this.stateDeco,cp.empty,this.heightOracle.setDoc(a.doc),[new fa(0,0,0,a.doc.length)]);for(let a=0;a<2&&(this.viewport=this.getViewport(0,null),this.updateForViewport());a++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=d1.set(this.lineGaps.map(a=>a.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let a=[this.viewport],{main:b}=this.state.selection;for(let c=0;c<=1;c++){let d=c?b.head:b.anchor;if(!a.some(({from:a,to:b})=>d>=a&&d<=b)){let{from:b,to:c}=this.lineBlockAt(d);a.push(new gy(b,c))}}return this.viewports=a.sort((a,b)=>a.from-b.from),this.updateScaler()}updateScaler(){let a=this.scaler;return this.scaler=this.heightMap.height<=7e6?gB:new gD(this.heightOracle,this.heightMap,this.viewports),2*!a.eq(this.scaler)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,a=>{this.viewportLines.push(gE(a,this.scaler))})}update(a,b=null){var c,d;let e;this.state=a.state;let f=this.stateDeco;this.stateDeco=gC(this.state);let g=a.changedRanges,h=fa.extendWithRanges(g,(c=this.stateDeco,d=a?a.changes:cC.empty(this.state.doc.length),e=new gu,dq.compare(f,c,d,e,0),e.changes)),i=this.heightMap.height,j=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);gg=!1,this.heightMap=this.heightMap.applyChanges(this.stateDeco,a.startState.doc,this.heightOracle.setDoc(this.state.doc),h),(this.heightMap.height!=i||gg)&&(a.flags|=2),j?(this.scrollAnchorPos=a.changes.mapPos(j.from,-1),this.scrollAnchorHeight=j.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=i);let k=h.length?this.mapViewport(this.viewport,a.changes):this.viewport;(b&&(b.range.head<k.from||b.range.head>k.to)||!this.viewportIsAppropriate(k))&&(k=this.getViewport(0,b));let l=k.from!=this.viewport.from||k.to!=this.viewport.to;this.viewport=k,a.flags|=this.updateForViewport(),(l||!a.changes.empty||2&a.flags)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,a.changes))),a.flags|=this.computeVisibleRanges(a.changes),b&&(this.scrollTarget=b),!this.mustEnforceCursorAssoc&&(a.selectionSet||a.focusChanged)&&a.view.lineWrapping&&a.state.selection.main.empty&&a.state.selection.main.assoc&&!a.state.facet(eQ)&&(this.mustEnforceCursorAssoc=!0)}measure(a){var b;let c,d,e=a.contentDOM,f=window.getComputedStyle(e),g=this.heightOracle,h=f.whiteSpace;this.defaultTextDirection="rtl"==f.direction?es.RTL:es.LTR;let i=this.heightOracle.mustRefreshForWrapping(h)||this.mustMeasureContent,j=e.getBoundingClientRect(),k=i||this.mustMeasureContent||this.contentDOMHeight!=j.height;this.contentDOMHeight=j.height,this.mustMeasureContent=!1;let l=0,m=0;if(j.width&&j.height){let{scaleX:a,scaleY:b}=ei(e,j);(a>.005&&Math.abs(this.scaleX-a)>.005||b>.005&&Math.abs(this.scaleY-b)>.005)&&(this.scaleX=a,this.scaleY=b,l|=16,i=k=!0)}let n=(parseInt(f.paddingTop)||0)*this.scaleY,o=(parseInt(f.paddingBottom)||0)*this.scaleY;(this.paddingTop!=n||this.paddingBottom!=o)&&(this.paddingTop=n,this.paddingBottom=o,l|=18),this.editorWidth!=a.scrollDOM.clientWidth&&(g.lineWrapping&&(k=!0),this.editorWidth=a.scrollDOM.clientWidth,l|=16);let p=a.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=p&&(this.scrollAnchorHeight=-1,this.scrollTop=p),this.scrolledToBottom=eo(a.scrollDOM);let q=(this.printing?function(a,b){let c=a.getBoundingClientRect();return{left:0,right:c.right-c.left,top:b,bottom:c.bottom-(c.top+b)}}:function(a,b){let c=a.getBoundingClientRect(),d=a.ownerDocument,e=d.defaultView||window,f=Math.max(0,c.left),g=Math.min(e.innerWidth,c.right),h=Math.max(0,c.top),i=Math.min(e.innerHeight,c.bottom);for(let b=a.parentNode;b&&b!=d.body;)if(1==b.nodeType){let c=b,d=window.getComputedStyle(c);if((c.scrollHeight>c.clientHeight||c.scrollWidth>c.clientWidth)&&"visible"!=d.overflow){let d=c.getBoundingClientRect();f=Math.max(f,d.left),g=Math.min(g,d.right),h=Math.max(h,d.top),i=Math.min(b==a.parentNode?e.innerHeight:i,d.bottom)}b="absolute"==d.position||"fixed"==d.position?c.offsetParent:c.parentNode}else if(11==b.nodeType)b=b.host;else break;return{left:f-c.left,right:Math.max(f,g)-c.left,top:h-(c.top+b),bottom:Math.max(h,i)-(c.top+b)}})(e,this.paddingTop),r=q.top-this.pixelViewport.top,s=q.bottom-this.pixelViewport.bottom;this.pixelViewport=q;let t=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(t!=this.inView&&(this.inView=t,t&&(k=!0)),!this.inView&&!this.scrollTarget&&(c=(b=a.dom).getBoundingClientRect(),d=b.ownerDocument.defaultView||window,!(c.left<d.innerWidth)||!(c.right>0)||!(c.top<d.innerHeight)||!(c.bottom>0)))return 0;let u=j.width;if((this.contentDOMWidth!=u||this.editorHeight!=a.scrollDOM.clientHeight)&&(this.contentDOMWidth=j.width,this.editorHeight=a.scrollDOM.clientHeight,l|=16),k){let b=a.docView.measureVisibleLineHeights(this.viewport);if(g.mustRefreshForHeights(b)&&(i=!0),i||g.lineWrapping&&Math.abs(u-this.contentDOMWidth)>g.charWidth){let{lineHeight:c,charWidth:d,textHeight:e}=a.docView.measureTextSize();(i=c>0&&g.refresh(h,c,d,e,Math.max(5,u/d),b))&&(a.docView.minWidth=0,l|=16)}for(let c of(r>0&&s>0?m=Math.max(r,s):r<0&&s<0&&(m=Math.min(r,s)),gg=!1,this.viewports)){let d=c.from==this.viewport.from?b:a.docView.measureVisibleLineHeights(c);this.heightMap=(i?gl.empty().applyChanges(this.stateDeco,cp.empty,this.heightOracle,[new fa(0,0,0,a.state.doc.length)]):this.heightMap).updateHeight(g,0,i,new gi(c.from,d))}gg&&(l|=2)}let v=!this.viewportIsAppropriate(this.viewport,m)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return v&&(2&l&&(l|=this.updateScaler()),this.viewport=this.getViewport(m,this.scrollTarget),l|=this.updateForViewport()),(2&l||v)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(i?[]:this.lineGaps,a)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,a.docView.enforceCursorAssoc()),l}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(a,b){let c=.5-Math.max(-.5,Math.min(.5,a/1e3/2)),d=this.heightMap,e=this.heightOracle,{visibleTop:f,visibleBottom:g}=this,h=new gy(d.lineAt(f-1e3*c,gk.ByHeight,e,0,0).from,d.lineAt(g+(1-c)*1e3,gk.ByHeight,e,0,0).to);if(b){let{head:a}=b.range;if(a<h.from||a>h.to){let c=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),f=d.lineAt(a,gk.ByPos,e,0,0),g;g="center"==b.y?(f.top+f.bottom)/2-c/2:"start"==b.y||"nearest"==b.y&&a<h.from?f.top:f.bottom-c,h=new gy(d.lineAt(g-500,gk.ByHeight,e,0,0).from,d.lineAt(g+c+500,gk.ByHeight,e,0,0).to)}}return h}mapViewport(a,b){let c=b.mapPos(a.from,-1),d=b.mapPos(a.to,1);return new gy(this.heightMap.lineAt(c,gk.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(d,gk.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:a,to:b},c=0){if(!this.inView)return!0;let{top:d}=this.heightMap.lineAt(a,gk.ByPos,this.heightOracle,0,0),{bottom:e}=this.heightMap.lineAt(b,gk.ByPos,this.heightOracle,0,0),{visibleTop:f,visibleBottom:g}=this;return(0==a||d<=f-Math.max(10,Math.min(-c,250)))&&(b==this.state.doc.length||e>=g+Math.max(10,Math.min(c,250)))&&d>f-2e3&&e<g+2e3}mapLineGaps(a,b){if(!a.length||b.empty)return a;let c=[];for(let d of a)b.touchesRange(d.from,d.to)||c.push(new gv(b.mapPos(d.from),b.mapPos(d.to),d.size,d.displaySize));return c}ensureLineGaps(a,b){let c=this.heightOracle.lineWrapping,d=c?1e4:2e3,e=d>>1,f=d<<1;if(this.defaultTextDirection!=es.LTR&&!c)return[];let g=[],h=(d,f,i,j)=>{if(f-d<e)return;let k=this.state.selection.main,l=[k.from];for(let a of(k.empty||l.push(k.to),l))if(a>d&&a<f){h(d,a-10,i,j),h(a+10,f,i,j);return}let m=function(a,b){for(let c of a)if(b(c))return c}(a,a=>a.from>=i.from&&a.to<=i.to&&Math.abs(a.from-d)<e&&Math.abs(a.to-f)<e&&!l.some(b=>a.from<b&&a.to>b));if(!m){if(f<i.to&&b&&c&&b.visibleRanges.some(a=>a.from<=f&&a.to>=f)){let a=b.moveToLineBoundary(cK.cursor(f),!1,!0).head;a>d&&(f=a)}let a=this.gapSize(i,d,f,j),e=c||a<2e6?a:2e6;m=new gv(d,f,a,e)}g.push(m)},i=b=>{var e,g,i;let j,k,l,m,n;if(b.length<f||b.type!=d0.Text)return;let o=(e=b.from,g=b.to,i=this.stateDeco,l=[],m=e,n=0,dq.spans(i,e,g,{span(){},point(a,b){a>m&&(l.push({from:m,to:a}),n+=a-m),m=b}},20),m<g&&(l.push({from:m,to:g}),n+=g-m),{total:n,ranges:l});if(o.total<f)return;let p=this.scrollTarget?this.scrollTarget.range.head:null;if(c){let a,c,e=d/this.heightOracle.lineLength*this.heightOracle.lineHeight;if(null!=p){let d=gA(o,p),f=((this.visibleBottom-this.visibleTop)/2+e)/b.height;a=d-f,c=d+f}else a=(this.visibleTop-b.top-e)/b.height,c=(this.visibleBottom-b.top+e)/b.height;j=gz(o,a),k=gz(o,c)}else{let c,e,f=o.total*this.heightOracle.charWidth,g=d*this.heightOracle.charWidth,h=0;if(f>2e6)for(let c of a)c.from>=b.from&&c.from<b.to&&c.size!=c.displaySize&&c.from*this.heightOracle.charWidth+h<this.pixelViewport.left&&(h=c.size-c.displaySize);let i=this.pixelViewport.left+h,l=this.pixelViewport.right+h;if(null!=p){let a=gA(o,p),b=((l-i)/2+g)/f;c=a-b,e=a+b}else c=(i-g)/f,e=(l+g)/f;j=gz(o,c),k=gz(o,e)}j>b.from&&h(b.from,j,b,o),k<b.to&&h(k,b.to,b,o)};for(let a of this.viewportLines)Array.isArray(a.type)?a.type.forEach(i):i(a);return g}gapSize(a,b,c,d){let e=gA(d,c)-gA(d,b);return this.heightOracle.lineWrapping?a.height*e:d.total*this.heightOracle.charWidth*e}updateLineGaps(a){gv.same(a,this.lineGaps)||(this.lineGaps=a,this.lineGapDeco=d1.set(a.map(a=>a.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(a){let b=this.stateDeco;this.lineGaps.length&&(b=b.concat(this.lineGapDeco));let c=[];dq.spans(b,this.viewport.from,this.viewport.to,{span(a,b){c.push({from:a,to:b})},point(){}},20);let d=0;if(c.length!=this.visibleRanges.length)d=12;else for(let b=0;b<c.length&&!(8&d);b++){let e=this.visibleRanges[b],f=c[b];(e.from!=f.from||e.to!=f.to)&&(d|=4,a&&a.mapPos(e.from,-1)==f.from&&a.mapPos(e.to,1)==f.to||(d|=8))}return this.visibleRanges=c,d}lineBlockAt(a){return a>=this.viewport.from&&a<=this.viewport.to&&this.viewportLines.find(b=>b.from<=a&&b.to>=a)||gE(this.heightMap.lineAt(a,gk.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(a){return a>=this.viewportLines[0].top&&a<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(b=>b.top<=a&&b.bottom>=a)||gE(this.heightMap.lineAt(this.scaler.fromDOM(a),gk.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(a){let b=this.lineBlockAtHeight(a+8);return b.from>=this.viewport.from||this.viewportLines[0].top-a>200?b:this.viewportLines[0]}elementAtHeight(a){return gE(this.heightMap.blockAt(this.scaler.fromDOM(a),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},gy=class{constructor(a,b){this.from=a,this.to=b}};function gz({total:a,ranges:b},c){if(c<=0)return b[0].from;if(c>=1)return b[b.length-1].to;let d=Math.floor(a*c);for(let a=0;;a++){let{from:c,to:e}=b[a],f=e-c;if(d<=f)return c+d;d-=f}}function gA(a,b){let c=0;for(let{from:d,to:e}of a.ranges){if(b<=e){c+=b-d;break}c+=e-d}return c/a.total}var gB={toDOM:a=>a,fromDOM:a=>a,scale:1,eq(a){return a==this}};function gC(a){let b=a.facet(e1).filter(a=>"function"!=typeof a),c=a.facet(e3).filter(a=>"function"!=typeof a);return c.length&&b.push(dq.join(c)),b}var gD=class a{constructor(a,b,c){let d=0,e=0,f=0;for(let g of(this.viewports=c.map(({from:c,to:e})=>{let f=b.lineAt(c,gk.ByPos,a,0,0).top,g=b.lineAt(e,gk.ByPos,a,0,0).bottom;return d+=g-f,{from:c,to:e,top:f,bottom:g,domTop:0,domBottom:0}}),this.scale=(7e6-d)/(b.height-d),this.viewports))g.domTop=f+(g.top-e)*this.scale,f=g.domBottom=g.domTop+(g.bottom-g.top),e=g.bottom}toDOM(a){for(let b=0,c=0,d=0;;b++){let e=b<this.viewports.length?this.viewports[b]:null;if(!e||a<e.top)return d+(a-c)*this.scale;if(a<=e.bottom)return e.domTop+(a-e.top);c=e.bottom,d=e.domBottom}}fromDOM(a){for(let b=0,c=0,d=0;;b++){let e=b<this.viewports.length?this.viewports[b]:null;if(!e||a<e.domTop)return c+(a-d)/this.scale;if(a<=e.domBottom)return e.top+(a-e.domTop);c=e.bottom,d=e.domBottom}}eq(b){return b instanceof a&&this.scale==b.scale&&this.viewports.length==b.viewports.length&&this.viewports.every((a,c)=>a.from==b.viewports[c].from&&a.to==b.viewports[c].to)}};function gE(a,b){if(1==b.scale)return a;let c=b.toDOM(a.top),d=b.toDOM(a.bottom);return new gj(a.from,a.length,c,d-c,Array.isArray(a._content)?a._content.map(a=>gE(a,b)):a._content)}var gF=cN.define({combine:a=>a.join(" ")}),gG=cN.define({combine:a=>a.indexOf(!0)>-1}),gH=dF.newName(),gI=dF.newName(),gJ=dF.newName(),gK={"&light":"."+gI,"&dark":"."+gJ};function gL(a,b,c){return new dF(b,{finish:b=>/&/.test(b)?b.replace(/&\w*/,b=>{if("&"==b)return a;if(!c||!c[b])throw RangeError(`Unsupported selector: ${b}`);return c[b]}):a+" "+b})}var gM=gL("."+gH,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:'url(\'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>\')',backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},gK),gN={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},gO=dW.ie&&dW.ie_version<=11,gP=class{constructor(a){this.view=a,this.active=!1,this.editContext=null,this.selectionRange=new ej,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=a.contentDOM,this.observer=new MutationObserver(b=>{for(let a of b)this.queue.push(a);(dW.ie&&dW.ie_version<=11||dW.ios&&a.composing)&&b.some(a=>"childList"==a.type&&a.removedNodes.length||"characterData"==a.type&&a.oldValue.length>a.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&dW.android&&!1!==a.constructor.EDIT_CONTEXT&&!(dW.chrome&&dW.chrome_version<126)&&(this.editContext=new gS(a),a.state.facet(eW)&&(a.contentDOM.editContext=this.editContext.editContext)),gO&&(this.onCharData=a=>{this.queue.push({target:a.target,type:"characterData",oldValue:a.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),"function"==typeof ResizeObserver&&(this.resizeScroll=new ResizeObserver(()=>{var a;(null==(a=this.view.docView)?void 0:a.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(a.scrollDOM)),this.addWindowListeners(this.win=a.win),this.start(),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver(a=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),a.length>0&&a[a.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(a=>{a.length>0&&a[a.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(a){this.view.inputState.runHandlers("scroll",a),this.intersecting&&this.view.measure()}onScroll(a){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(a)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(a){("change"!=a.type&&a.type||a.matches)&&(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(a){if(this.gapIntersection&&(a.length!=this.gaps.length||this.gaps.some((b,c)=>b!=a[c]))){for(let b of(this.gapIntersection.disconnect(),a))this.gapIntersection.observe(b);this.gaps=a}}onSelectionChange(a){let b=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:c}=this,d=this.selectionRange;if(c.state.facet(eW)?c.root.activeElement!=this.dom:!ea(this.dom,d))return;let e=d.anchorNode&&c.docView.tile.nearest(d.anchorNode);if(e&&e.isWidget()&&e.widget.ignoreEvent(a)){b||(this.selectionChanged=!1);return}(dW.ie&&dW.ie_version<=11||dW.android&&dW.chrome)&&!c.state.selection.main.empty&&d.focusNode&&ec(d.focusNode,d.focusOffset,d.anchorNode,d.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:a}=this,b=d8(a.root);if(!b)return!1;let c=dW.safari&&11==a.root.nodeType&&a.root.activeElement==this.dom&&function(a,b){if(b.getComposedRanges){let c=b.getComposedRanges(a.root)[0];if(c)return gR(a,c)}let c=null;function d(a){a.preventDefault(),a.stopImmediatePropagation(),c=a.getTargetRanges()[0]}return a.contentDOM.addEventListener("beforeinput",d,!0),a.dom.ownerDocument.execCommand("indent"),a.contentDOM.removeEventListener("beforeinput",d,!0),c?gR(a,c):null}(this.view,b)||b;if(!c||this.selectionRange.eq(c))return!1;let d=ea(this.dom,c);return d&&!this.selectionChanged&&a.inputState.lastFocusTime>Date.now()-200&&a.inputState.lastTouchTime<Date.now()-300&&function(a,b){let c=b.focusNode,d=b.focusOffset;if(!c||b.anchorNode!=c||b.anchorOffset!=d)return!1;for(d=Math.min(d,eg(c));;)if(d){if(1!=c.nodeType)return!1;let a=c.childNodes[d-1];"false"==a.contentEditable?d--:d=eg(c=a)}else{if(c==a)return!0;d=ed(c),c=c.parentNode}}(this.dom,c)?(this.view.inputState.lastFocusTime=0,a.docView.updateSelection(),!1):(this.selectionRange.setRange(c),d&&(this.selectionChanged=!0),!0)}setSelectionRange(a,b){this.selectionRange.set(a.node,a.offset,b.node,b.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let a=0,b=null;for(let c=this.dom;c;)if(1==c.nodeType)!b&&a<this.scrollTargets.length&&this.scrollTargets[a]==c?a++:b||(b=this.scrollTargets.slice(0,a)),b&&b.push(c),c=c.assignedSlot||c.parentNode;else if(11==c.nodeType)c=c.host;else break;if(a<this.scrollTargets.length&&!b&&(b=this.scrollTargets.slice(0,a)),b){for(let a of this.scrollTargets)a.removeEventListener("scroll",this.onScroll);for(let a of this.scrollTargets=b)a.addEventListener("scroll",this.onScroll)}}ignore(a){if(!this.active)return a();try{return this.stop(),a()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,gN),gO&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),gO&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(a,b){var c;if(!this.delayedAndroidKey){let a=()=>{let a=this.delayedAndroidKey;a&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=a.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&a.force&&en(this.dom,a.key,a.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(a)}this.delayedAndroidKey&&"Enter"!=a||(this.delayedAndroidKey={key:a,keyCode:b,force:this.lastChange<Date.now()-50||!!(null==(c=this.delayedAndroidKey)?void 0:c.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let a of this.observer.takeRecords())this.queue.push(a);return this.queue}processRecords(){let a=this.pendingRecords();a.length&&(this.queue=[]);let b=-1,c=-1,d=!1;for(let e of a){let a=this.readMutation(e);a&&(a.typeOver&&(d=!0),-1==b?{from:b,to:c}=a:(b=Math.min(a.from,b),c=Math.max(a.to,c)))}return{from:b,to:c,typeOver:d}}readChange(){let{from:a,to:b,typeOver:c}=this.processRecords(),d=this.selectionChanged&&ea(this.dom,this.selectionRange);if(a<0&&!d)return null;a>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let e=new fO(this.view,a,b,c);return this.view.docView.domChanged={newSel:e.newSel?e.newSel.main:null},e}flush(a=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;a&&this.readSelectionRange();let b=this.readChange();if(!b)return this.view.requestMeasure(),!1;let c=this.view.state,d=fP(this.view,b);return this.view.state==c&&(b.domChanged||b.newSel&&!fS(this.view.state.selection,b.newSel.main))&&this.view.update([]),d}readMutation(a){let b=this.view.docView.tile.nearest(a.target);if(!b||b.isWidget())return null;if(b.markDirty("attributes"==a.type),"childList"==a.type){let c=gQ(b,a.previousSibling||a.target.previousSibling,-1),d=gQ(b,a.nextSibling||a.target.nextSibling,1);return{from:c?b.posAfter(c):b.posAtStart,to:d?b.posBefore(d):b.posAtEnd,typeOver:!1}}return"characterData"==a.type?{from:b.posAtStart,to:b.posAtEnd,typeOver:a.target.nodeValue==a.oldValue}:null}setWindow(a){a!=this.win&&(this.removeWindowListeners(this.win),this.win=a,this.addWindowListeners(this.win))}addWindowListeners(a){a.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):a.addEventListener("beforeprint",this.onPrint),a.addEventListener("scroll",this.onScroll),a.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(a){a.removeEventListener("scroll",this.onScroll),a.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):a.removeEventListener("beforeprint",this.onPrint),a.document.removeEventListener("selectionchange",this.onSelectionChange)}update(a){this.editContext&&(this.editContext.update(a),a.startState.facet(eW)!=a.state.facet(eW)&&(a.view.contentDOM.editContext=a.state.facet(eW)?this.editContext.editContext:null))}destroy(){var a,b,c;for(let d of(this.stop(),null==(a=this.intersection)||a.disconnect(),null==(b=this.gapIntersection)||b.disconnect(),null==(c=this.resizeScroll)||c.disconnect(),this.scrollTargets))d.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}};function gQ(a,b,c){for(;b;){let d=fd.get(b);if(d&&d.parent==a)return d;let e=b.parentNode;b=e!=a.dom?e:c>0?b.nextSibling:b.previousSibling}return null}function gR(a,b){let c=b.startContainer,d=b.startOffset,e=b.endContainer,f=b.endOffset,g=a.docView.domAtPos(a.state.selection.main.anchor,1);return ec(g.node,g.offset,e,f)&&([c,d,e,f]=[e,f,c,d]),{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}}var gS=class{constructor(a){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(a.state);let b=this.editContext=new window.EditContext({text:a.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,a.state.selection.main.anchor))),selectionEnd:this.toContextPos(a.state.selection.main.head)});for(let c in this.handlers.textupdate=c=>{let d=a.state.selection.main,{anchor:e,head:f}=d,g=this.toEditorPos(c.updateRangeStart),h=this.toEditorPos(c.updateRangeEnd);a.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:c.updateRangeStart,editorBase:g,drifted:!1});let i=h-g>c.text.length;g==this.from&&e<this.from?g=e:h==this.to&&e>this.to&&(h=e);let j=fR(a.state.sliceDoc(g,h),c.text,(i?d.from:d.to)-g,i?"end":null);if(!j){let b=cK.single(this.toEditorPos(c.selectionStart),this.toEditorPos(c.selectionEnd));fS(b,d)||a.dispatch({selection:b,userEvent:"select"});return}let k={from:j.from+g,to:j.toA+g,insert:cp.of(c.text.slice(j.from,j.toB).split("\n"))};if((dW.mac||dW.android)&&k.from==f-1&&/^\. ?$/.test(c.text)&&"off"==a.contentDOM.getAttribute("autocorrect")&&(k={from:g,to:h,insert:cp.of([c.text.replace("."," ")])}),this.pendingContextChange=k,!a.state.readOnly){let b=this.to-this.from+(k.to-k.from+k.insert.length);fQ(a,k,cK.single(this.toEditorPos(c.selectionStart,b),this.toEditorPos(c.selectionEnd,b)))}this.pendingContextChange&&(this.revertPending(a.state),this.setSelection(a.state)),k.from<k.to&&!k.insert.length&&a.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(b.text.slice(Math.max(0,c.updateRangeStart-1),Math.min(b.text.length,c.updateRangeStart+1)))&&this.handlers.compositionend(c)},this.handlers.characterboundsupdate=c=>{let d=[],e=null;for(let b=this.toEditorPos(c.rangeStart),f=this.toEditorPos(c.rangeEnd);b<f;b++){let c=a.coordsForChar(b);e=c&&new DOMRect(c.left,c.top,c.right-c.left,c.bottom-c.top)||e||new DOMRect,d.push(e)}b.updateCharacterBounds(c.rangeStart,d)},this.handlers.textformatupdate=b=>{let c=[];for(let a of b.getTextFormats()){let b=a.underlineStyle,d=a.underlineThickness;if(!/none/i.test(b)&&!/none/i.test(d)){let e=this.toEditorPos(a.rangeStart),f=this.toEditorPos(a.rangeEnd);if(e<f){let a=`text-decoration: underline ${/^[a-z]/.test(b)?b+" ":"Dashed"==b?"dashed ":"Squiggle"==b?"wavy ":""}${/thin/i.test(d)?1:2}px`;c.push(d1.mark({attributes:{style:a}}).range(e,f))}}}a.dispatch({effects:eU.of(d1.set(c))})},this.handlers.compositionstart=()=>{a.inputState.composing<0&&(a.inputState.composing=0,a.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(a.inputState.composing=-1,a.inputState.compositionFirstChange=null,this.composing){let{drifted:b}=this.composing;this.composing=null,b&&this.reset(a.state)}},this.handlers)b.addEventListener(c,this.handlers[c]);this.measureReq={read:a=>{this.editContext.updateControlBounds(a.contentDOM.getBoundingClientRect());let b=d8(a.root);b&&b.rangeCount&&this.editContext.updateSelectionBounds(b.getRangeAt(0).getBoundingClientRect())}}}applyEdits(a){let b=0,c=!1,d=this.pendingContextChange;return a.changes.iterChanges((e,f,g,h,i)=>{if(c)return;let j=i.length-(f-e);if(d&&f>=d.to)if(d.from==e&&d.to==f&&d.insert.eq(i)){d=this.pendingContextChange=null,b+=j,this.to+=j;return}else d=null,this.revertPending(a.state);if(e+=b,(f+=b)<=this.from)this.from+=j,this.to+=j;else if(e<this.to){if(e<this.from||f>this.to||this.to-this.from+i.length>3e4){c=!0;return}this.editContext.updateText(this.toContextPos(e),this.toContextPos(f),i.toString()),this.to+=j}b+=j}),d&&!c&&this.revertPending(a.state),!c}update(a){let b=this.pendingContextChange,c=a.startState.selection.main;this.composing&&(this.composing.drifted||!a.changes.touchesRange(c.from,c.to)&&a.transactions.some(a=>!a.isUserEvent("input.type")&&a.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=a.changes.mapPos(this.composing.editorBase)):this.applyEdits(a)&&this.rangeIsValid(a.state)?(a.docChanged||a.selectionSet||b)&&this.setSelection(a.state):(this.pendingContextChange=null,this.reset(a.state)),(a.geometryChanged||a.docChanged||a.selectionSet)&&a.view.requestMeasure(this.measureReq)}resetRange(a){let{head:b}=a.selection.main;this.from=Math.max(0,b-1e4),this.to=Math.min(a.doc.length,b+1e4)}reset(a){this.resetRange(a),this.editContext.updateText(0,this.editContext.text.length,a.doc.sliceString(this.from,this.to)),this.setSelection(a)}revertPending(a){let b=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(b.from),this.toContextPos(b.from+b.insert.length),a.doc.sliceString(b.from,b.to))}setSelection(a){let{main:b}=a.selection,c=this.toContextPos(Math.max(this.from,Math.min(this.to,b.anchor))),d=this.toContextPos(b.head);(this.editContext.selectionStart!=c||this.editContext.selectionEnd!=d)&&this.editContext.updateSelection(c,d)}rangeIsValid(a){let{head:b}=a.selection.main;return!(this.from>0&&b-this.from<500||this.to<a.doc.length&&this.to-b<500||this.to-this.from>3e4)}toEditorPos(a,b=this.to-this.from){a=Math.min(a,b);let c=this.composing;return c&&c.drifted?c.editorBase+(a-c.contextBase):a+this.from}toContextPos(a){let b=this.composing;return b&&b.drifted?b.contextBase+(a-b.editorBase):a-this.from}destroy(){for(let a in this.handlers)this.editContext.removeEventListener(a,this.handlers[a])}},gT=class a{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(a={}){var b;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),a.parent&&a.parent.appendChild(this.dom);let{dispatch:c}=a;for(let b of(this.dispatchTransactions=a.dispatchTransactions||c&&(a=>a.forEach(a=>c(a,this)))||(a=>this.update(a)),this.dispatch=this.dispatch.bind(this),this._root=a.root||function(a){for(;a;){if(a&&(9==a.nodeType||11==a.nodeType&&a.host))return a;a=a.assignedSlot||a.parentNode}return null}(a.parent)||document,this.viewState=new gx(a.state||dj.create(a)),a.scrollTo&&a.scrollTo.is(eT)&&(this.viewState.scrollTarget=a.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(eY).map(a=>new e$(a)),this.plugins))b.update(this);this.observer=new gP(this),this.inputState=new fT(this),this.inputState.ensureHandlers(this.plugins),this.docView=new fz(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),(null==(b=document.fonts)?void 0:b.ready)&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent=!0,this.requestMeasure()})}dispatch(...a){let b=1==a.length&&a[0]instanceof dc?a:1==a.length&&Array.isArray(a[0])?a[0]:[this.state.update(...a)];this.dispatchTransactions(b,this)}update(a){if(0!=this.updateState)throw Error("Calls to EditorView.update are not allowed while an update is in progress");let b=!1,c=!1,d,e=this.state;for(let b of a){if(b.startState!=e)throw RangeError("Trying to update state with a transaction that doesn't start from the previous state.");e=b.state}if(this.destroyed){this.viewState.state=e;return}let f=this.hasFocus,g=0,h=null;a.some(a=>a.annotation(gb))?(this.inputState.notifiedFocused=f,g=1):f!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=f,(h=gc(e,f))||(g=1));let i=this.observer.delayedAndroidKey,j=null;if(i?(this.observer.clearDelayedAndroidKey(),((j=this.observer.readChange())&&!this.state.doc.eq(e.doc)||!this.state.selection.eq(e.selection))&&(j=null)):this.observer.clear(),e.facet(dj.phrases)!=this.state.facet(dj.phrases))return this.setState(e);d=fb.create(this,e,a),d.flags|=g;let k=this.viewState.scrollTarget;try{for(let b of(this.updateState=2,a)){if(k&&(k=k.map(b.changes)),b.scrollIntoView){let{main:a}=b.state.selection;k=new eS(a.empty?a:cK.cursor(a.head,a.head>a.anchor?-1:1))}for(let a of b.effects)a.is(eT)&&(k=a.value.clip(this.state))}this.viewState.update(d,k),this.bidiCache=gW.update(this.bidiCache,d.changes),d.empty||(this.updatePlugins(d),this.inputState.update(d)),b=this.docView.update(d),this.state.facet(e9)!=this.styleModules&&this.mountStyles(),c=this.updateAttrs(),this.showAnnouncements(a),this.docView.updateSelection(b,a.some(a=>a.isUserEvent("select.pointer")))}finally{this.updateState=0}if(d.startState.facet(gF)!=d.state.facet(gF)&&(this.viewState.mustMeasureContent=!0),(b||c||k||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),b&&this.docViewUpdate(),!d.empty)for(let a of this.state.facet(eK))try{a(d)}catch(a){eV(this.state,a,"update listener")}(h||j)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),j&&!fP(this,j)&&i.force&&en(this.contentDOM,i.key,i.keyCode)})}setState(a){if(0!=this.updateState)throw Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=a;return}this.updateState=2;let b=this.hasFocus;try{for(let a of this.plugins)a.destroy(this);for(let b of(this.viewState=new gx(a),this.plugins=a.facet(eY).map(a=>new e$(a)),this.pluginMap.clear(),this.plugins))b.update(this);this.docView.destroy(),this.docView=new fz(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}b&&this.focus(),this.requestMeasure()}updatePlugins(a){let b=a.startState.facet(eY),c=a.state.facet(eY);if(b!=c){let d=[];for(let e of c){let c=b.indexOf(e);if(c<0)d.push(new e$(e));else{let b=this.plugins[c];b.mustUpdate=a,d.push(b)}}for(let b of this.plugins)b.mustUpdate!=a&&b.destroy(this);this.plugins=d,this.pluginMap.clear()}else for(let b of this.plugins)b.mustUpdate=a;for(let a=0;a<this.plugins.length;a++)this.plugins[a].update(this);b!=c&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let a of this.plugins){let b=a.value;if(b&&b.docViewUpdate)try{b.docViewUpdate(this)}catch(a){eV(this.state,a,"doc view update listener")}}}measure(a=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,a&&this.observer.forceFlush();let b=null,c=this.scrollDOM,d=c.scrollTop*this.scaleY,{scrollAnchorPos:e,scrollAnchorHeight:f}=this.viewState;Math.abs(d-this.viewState.scrollTop)>1&&(f=-1),this.viewState.scrollAnchorHeight=-1;try{for(let a=0;;a++){if(f<0)if(eo(c))e=-1,f=this.viewState.heightMap.height;else{let a=this.viewState.scrollAnchorAt(d);e=a.from,f=a.top}this.updateState=1;let g=this.viewState.measure(this);if(!g&&!this.measureRequests.length&&null==this.viewState.scrollTarget)break;if(a>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];4&g||([this.measureRequests,h]=[h,this.measureRequests]);let i=h.map(a=>{try{return a.read(this)}catch(a){return eV(this.state,a),gV}}),j=fb.create(this,this.state,[]),k=!1;j.flags|=g,b?b.flags|=g:b=j,this.updateState=2,!j.empty&&(this.updatePlugins(j),this.inputState.update(j),this.updateAttrs(),(k=this.docView.update(j))&&this.docViewUpdate());for(let a=0;a<h.length;a++)if(i[a]!=gV)try{let b=h[a];b.write&&b.write(i[a],this)}catch(a){eV(this.state,a)}if(k&&this.docView.updateSelection(!0),!j.viewportChanged&&0==this.measureRequests.length){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,f=-1;continue}else{let a=(e<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(e).top)-f;if(a>1||a<-1){c.scrollTop=(d+=a)/this.scaleY,f=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(b&&!b.empty)for(let a of this.state.facet(eK))a(b)}get themeClasses(){return gH+" "+(this.state.facet(gG)?gJ:gI)+" "+this.state.facet(gF)}updateAttrs(){let a=gX(this,e_,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),b={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(eW)?"true":"false",class:"cm-content",style:`${dW.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(b["aria-readonly"]="true"),gX(this,e0,b);let c=this.observer.ignore(()=>{let c=d$(this.contentDOM,this.contentAttrs,b),d=d$(this.dom,this.editorAttrs,a);return c||d});return this.editorAttrs=a,this.contentAttrs=b,c}showAnnouncements(b){let c=!0;for(let d of b)for(let b of d.effects)b.is(a.announce)&&(c&&(this.announceDOM.textContent=""),c=!1,this.announceDOM.appendChild(document.createElement("div")).textContent=b.value)}mountStyles(){this.styleModules=this.state.facet(e9);let b=this.state.facet(a.cspNonce);dF.mount(this.root,this.styleModules.concat(gM).reverse(),b?{nonce:b}:void 0)}readMeasured(){if(2==this.updateState)throw Error("Reading the editor layout isn't allowed during an update");0==this.updateState&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(a){if((this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),a)&&!(this.measureRequests.indexOf(a)>-1)){if(null!=a.key){for(let b=0;b<this.measureRequests.length;b++)if(this.measureRequests[b].key===a.key){this.measureRequests[b]=a;return}}this.measureRequests.push(a)}}plugin(a){let b=this.pluginMap.get(a);return(void 0===b||b&&b.plugin!=a)&&this.pluginMap.set(a,b=this.plugins.find(b=>b.plugin==a)||null),b&&b.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(a){return this.readMeasured(),this.viewState.elementAtHeight(a)}lineBlockAtHeight(a){return this.readMeasured(),this.viewState.lineBlockAtHeight(a)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(a){return this.viewState.lineBlockAt(a)}get contentHeight(){return this.viewState.contentHeight}moveByChar(a,b,c){return fI(this,a,fF(this,a,b,c))}moveByGroup(a,b){return fI(this,a,fF(this,a,b,b=>{var c;let d,e;return c=a.head,e=(d=this.state.charCategorizer(c))(b),a=>{let b=d(a);return e==dh.Space&&(e=b),e==b}}))}visualLineSide(a,b){let c=this.bidiSpans(a),d=this.textDirectionAt(a.from),e=c[b?c.length-1:0];return cK.cursor(e.side(b,d)+a.from,e.forward(!b,d)?1:-1)}moveToLineBoundary(a,b,c=!0){return function(a,b,c,d){let e=function(a,b,c){let d=a.lineBlockAt(b);if(Array.isArray(d.type)){let a;for(let e of d.type){if(e.from>b)break;if(!(e.to<b)){if(e.from<b&&e.to>b)return e;(!a||e.type==d0.Text&&(a.type!=e.type||(c<0?e.from<b:e.to>b)))&&(a=e)}}return a||d}return d}(a,b.head,b.assoc||-1),f=d&&e.type==d0.Text&&(a.lineWrapping||e.widgetLineBreaks)?a.coordsAtPos(b.assoc<0&&b.head>e.from?b.head-1:b.head):null;if(f){let b=a.dom.getBoundingClientRect(),d=a.textDirectionAt(e.from),g=a.posAtCoords({x:c==(d==es.LTR)?b.right-1:b.left+1,y:(f.top+f.bottom)/2});if(null!=g)return cK.cursor(g,c?-1:1)}return cK.cursor(c?e.to:e.from,c?-1:1)}(this,a,b,c)}moveVertically(a,b,c){return fI(this,a,function(a,b,c,d){let e=b.head,f=c?1:-1;if(e==(c?a.state.doc.length:0))return cK.cursor(e,b.assoc);let g=b.goalColumn,h,i=a.contentDOM.getBoundingClientRect(),j=a.coordsAtPos(e,(b.empty?b.assoc:0)||(c?1:-1)),k=a.documentTop;if(j)null==g&&(g=j.left-i.left),h=f<0?j.top:j.bottom;else{let b=a.viewState.lineBlockAt(e);null==g&&(g=Math.min(i.right-i.left,a.defaultCharacterWidth*(e-b.from))),h=(f<0?b.top:b.bottom)+k}let l=i.left+g,m=null!=d?d:a.viewState.heightOracle.textHeight>>1,n=fK(a,{x:l,y:h+m*f},!1,f);return cK.cursor(n.pos,n.assoc,void 0,g)}(this,a,b,c))}domAtPos(a,b=1){return this.docView.domAtPos(a,b)}posAtDOM(a,b=0){return this.docView.posFromDOM(a,b)}posAtCoords(a,b=!0){this.readMeasured();let c=fK(this,a,b);return c&&c.pos}posAndSideAtCoords(a,b=!0){return this.readMeasured(),fK(this,a,b)}coordsAtPos(a,b=1){this.readMeasured();let c=this.docView.coordsAt(a,b);if(!c||c.left==c.right)return c;let d=this.state.doc.lineAt(a),e=this.bidiSpans(d);return eh(c,e[eC.find(e,a-d.from,-1,b)].dir==es.LTR==b>0)}coordsForChar(a){return this.readMeasured(),this.docView.coordsForChar(a)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(a){return!this.state.facet(eP)||a<this.viewport.from||a>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(a))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(a){if(a.length>gU)return eE(a.length);let b=this.textDirectionAt(a.from),c;for(let d of this.bidiCache)if(d.from==a.from&&d.dir==b&&(d.fresh||function a(b,c){if(b.length!=c.length)return!1;for(let d=0;d<b.length;d++){let e=b[d],f=c[d];if(e.from!=f.from||e.to!=f.to||e.direction!=f.direction||!a(e.inner,f.inner))return!1}return!0}(d.isolates,c=e6(this,a))))return d.order;c||(c=e6(this,a));let d=function(a,b,c){if(!a)return[new eC(0,0,+(b==eu))];if(b==et&&!c.length&&!eB.test(a))return eE(a.length);if(c.length)for(;a.length>eD.length;)eD[eD.length]=256;let d=[],e=+(b!=et);return function a(b,c,d,e,f,g,h){let i=c%2?2:1;!function(a,b,c,d,e){for(let f=0;f<=d.length;f++){let g=f?d[f-1].to:b,h=f<d.length?d[f].from:c,i=f?256:e;for(let b=g,c=i,d=i;b<h;b++){let e=eA(a.charCodeAt(b));512==e?e=c:8==e&&4==d&&(e=16),eD[b]=4==e?2:e,7&e&&(d=e),c=e}for(let a=g,b=i,d=i;a<h;a++){let e=eD[a];if(128==e)a<h-1&&b==eD[a+1]&&24&b?e=eD[a]=b:eD[a]=256;else if(64==e){let e=a+1;for(;e<h&&64==eD[e];)e++;let f=a&&8==b||e<c&&8==eD[e]?1==d?1:8:256;for(let b=a;b<e;b++)eD[b]=f;a=e-1}else 8==e&&1==d&&(eD[a]=1);b=e,7&e&&(d=e)}}}(b,f,g,e,i),function(a,b,c,d,e){let f=1==e?2:1;for(let g=0,h=0,i=0;g<=d.length;g++){let j=g?d[g-1].to:b,k=g<d.length?d[g].from:c;for(let b=j,c,d,g;b<k;b++)if(d=ey[c=a.charCodeAt(b)])if(d<0){for(let a=h-3;a>=0;a-=3)if(ez[a+1]==-d){let c=ez[a+2],d=2&c?e:4&c?1&c?f:e:0;d&&(eD[b]=eD[ez[a]]=d),h=a;break}}else if(189==ez.length)break;else ez[h++]=b,ez[h++]=c,ez[h++]=i;else if(2==(g=eD[b])||1==g){let a=g==e;i=+!a;for(let b=h-3;b>=0;b-=3){let c=ez[b+2];if(2&c)break;if(a)ez[b+2]|=2;else{if(4&c)break;ez[b+2]|=4}}}}}(b,f,g,e,i),function(a,b,c,d){for(let e=0,f=d;e<=c.length;e++){let g=e?c[e-1].to:a,h=e<c.length?c[e].from:b;for(let i=g;i<h;){let g=eD[i];if(256==g){let g=i+1;for(;;)if(g==h){if(e==c.length)break;g=c[e++].to,h=e<c.length?c[e].from:b}else if(256==eD[g])g++;else break;let j=1==f,k=j==((g<b?eD[g]:d)==1)?j?1:2:d;for(let b=g,d=e,f=d?c[d-1].to:a;b>i;)b==f&&(b=c[--d].from,f=d?c[d-1].to:a),eD[--b]=k;i=g}else f=g,i++}}}(f,g,e,i),function b(c,d,e,f,g,h,i){let j=f%2?2:1;if(f%2==g%2)for(let k=d,l=0;k<e;){let d=!0,m=!1;if(l==h.length||k<h[l].from){let a=eD[k];a!=j&&(d=!1,m=16==a)}let n=d||1!=j?null:[],o=d?f:f+1,p=k;d:for(;;)if(l<h.length&&p==h[l].from){if(m)break;let b=h[l];if(!d)for(let a=b.to,c=l+1;;){if(a==e)break d;if(c<h.length&&h[c].from==a)a=h[c++].to;else if(eD[a]==j)break d;else break}l++,n?n.push(b):(b.from>k&&i.push(new eC(k,b.from,o)),a(c,b.direction==et!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.to),p=b.to}else if(p==e||(d?eD[p]!=j:eD[p]==j))break;else p++;n?b(c,k,p,f+1,g,n,i):k<p&&i.push(new eC(k,p,o)),k=p}else for(let k=e,l=h.length;k>d;){let e=!0,m=!1;if(!l||k>h[l-1].to){let a=eD[k-1];a!=j&&(e=!1,m=16==a)}let n=e||1!=j?null:[],o=e?f:f+1,p=k;d:for(;;)if(l&&p==h[l-1].to){if(m)break;let b=h[--l];if(!e)for(let a=b.from,c=l;;){if(a==d)break d;if(c&&h[c-1].to==a)a=h[--c].from;else if(eD[a-1]==j)break d;else break}n?n.push(b):(b.to<k&&i.push(new eC(b.to,k,o)),a(c,b.direction==et!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.from),p=b.from}else if(p==d||(e?eD[p-1]!=j:eD[p-1]==j))break;else p--;n?b(c,p,k,f+1,g,n,i):p<k&&i.push(new eC(p,k,o)),k=p}}(b,f,g,c,d,e,h)}(a,e,e,c,0,a.length,d),d}(a.text,b,c);return this.bidiCache.push(new gW(a.from,a.to,b,c,!0,d)),d}get hasFocus(){var a;return(this.dom.ownerDocument.hasFocus()||dW.safari&&(null==(a=this.inputState)?void 0:a.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{el(this.contentDOM),this.docView.updateSelection()})}setRoot(a){this._root!=a&&(this._root=a,this.observer.setWindow((9==a.nodeType?a:a.ownerDocument).defaultView||window),this.mountStyles())}destroy(){for(let a of(this.root.activeElement==this.contentDOM&&this.contentDOM.blur(),this.plugins))a.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(a,b={}){return eT.of(new eS("number"==typeof a?cK.cursor(a):a,b.y,b.x,b.yMargin,b.xMargin))}scrollSnapshot(){let{scrollTop:a,scrollLeft:b}=this.scrollDOM,c=this.viewState.scrollAnchorAt(a);return eT.of(new eS(cK.cursor(c.from),"start","start",c.top-a,b,!0))}setTabFocusMode(a){null==a?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:"boolean"==typeof a?this.inputState.tabFocusMode=a?0:-1:0!=this.inputState.tabFocusMode&&(this.inputState.tabFocusMode=Date.now()+a)}static domEventHandlers(a){return eZ.define(()=>({}),{eventHandlers:a})}static domEventObservers(a){return eZ.define(()=>({}),{eventObservers:a})}static theme(a,b){let c=dF.newName(),d=[gF.of(c),e9.of(gL(`.${c}`,a))];return b&&b.dark&&d.push(gG.of(!0)),d}static baseTheme(a){return cW.lowest(e9.of(gL("."+gH,a,gK)))}static findFromDOM(a){var b;let c=a.querySelector(".cm-content"),d=c&&fd.get(c)||fd.get(a);return(null==(b=null==d?void 0:d.root)?void 0:b.view)||null}};gT.styleModule=e9,gT.inputHandler=eL,gT.clipboardInputFilter=eN,gT.clipboardOutputFilter=eO,gT.scrollHandler=eR,gT.focusChangeEffect=eM,gT.perLineTextDirection=eP,gT.exceptionSink=eJ,gT.updateListener=eK,gT.editable=eW,gT.mouseSelectionStyle=eI,gT.dragMovesSelection=eH,gT.clickAddsSelectionRange=eG,gT.decorations=e1,gT.blockWrappers=e2,gT.outerDecorations=e3,gT.atomicRanges=e4,gT.bidiIsolatedRanges=e5,gT.scrollMargins=e7,gT.darkTheme=gG,gT.cspNonce=cN.define({combine:a=>a.length?a[0]:""}),gT.contentAttributes=e0,gT.editorAttributes=e_,gT.lineWrapping=gT.contentAttributes.of({class:"cm-lineWrapping"}),gT.announce=db.define();var gU=4096,gV={},gW=class a{constructor(a,b,c,d,e,f){this.from=a,this.to=b,this.dir=c,this.isolates=d,this.fresh=e,this.order=f}static update(b,c){if(c.empty&&!b.some(a=>a.fresh))return b;let d=[],e=b.length?b[b.length-1].dir:es.LTR;for(let f=Math.max(0,b.length-10);f<b.length;f++){let g=b[f];g.dir!=e||c.touchesRange(g.from,g.to)||d.push(new a(c.mapPos(g.from,1),c.mapPos(g.to,-1),g.dir,g.isolates,!1,g.order))}return d}};function gX(a,b,c){for(let d=a.state.facet(b),e=d.length-1;e>=0;e--){let b=d[e],f="function"==typeof b?b(a):b;f&&dX(f,c)}return c}dW.mac||dW.windows||dW.linux,/x/.unicode;var gY="-10000px",gZ=class{constructor(a,b,c,d){this.facet=b,this.createTooltipView=c,this.removeTooltipView=d,this.input=a.state.facet(b),this.tooltips=this.input.filter(a=>a);let e=null;this.tooltipViews=this.tooltips.map(a=>e=c(a,e))}update(a,b){var c;let d=a.state.facet(this.facet),e=d.filter(a=>a);if(d===this.input){for(let b of this.tooltipViews)b.update&&b.update(a);return!1}let f=[],g=b?[]:null;for(let c=0;c<e.length;c++){let d=e[c],h=-1;if(d){for(let a=0;a<this.tooltips.length;a++){let b=this.tooltips[a];b&&b.create==d.create&&(h=a)}if(h<0)f[c]=this.createTooltipView(d,c?f[c-1]:null),g&&(g[c]=!!d.above);else{let d=f[c]=this.tooltipViews[h];g&&(g[c]=b[h]),d.update&&d.update(a)}}}for(let a of this.tooltipViews)0>f.indexOf(a)&&(this.removeTooltipView(a),null==(c=a.destroy)||c.call(a));return b&&(g.forEach((a,c)=>b[c]=a),b.length=g.length),this.input=d,this.tooltips=e,this.tooltipViews=f,!0}};function g$(a){let b=a.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:b.clientHeight,right:b.clientWidth}}var g_=cN.define({combine:a=>{var b,c,d;return{position:dW.ios?"absolute":(null==(b=a.find(a=>a.position))?void 0:b.position)||"fixed",parent:(null==(c=a.find(a=>a.parent))?void 0:c.parent)||null,tooltipSpace:(null==(d=a.find(a=>a.tooltipSpace))?void 0:d.tooltipSpace)||g$}}}),g0=new WeakMap,g1=eZ.fromClass(class{constructor(a){this.view=a,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let b=a.state.facet(g_);this.position=b.position,this.parent=b.parent,this.classes=a.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver="function"==typeof ResizeObserver?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new gZ(a,g5,(a,b)=>this.createTooltip(a,b),a=>{this.resizeObserver&&this.resizeObserver.unobserve(a.dom),a.dom.remove()}),this.above=this.manager.tooltips.map(a=>!!a.above),this.intersectionObserver="function"==typeof IntersectionObserver?new IntersectionObserver(a=>{Date.now()>this.lastTransaction-50&&a.length>0&&a[a.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),a.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver)for(let a of(this.intersectionObserver.disconnect(),this.manager.tooltipViews))this.intersectionObserver.observe(a.dom)}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(a){a.transactions.length&&(this.lastTransaction=Date.now());let b=this.manager.update(a,this.above);b&&this.observeIntersection();let c=b||a.geometryChanged,d=a.state.facet(g_);if(d.position!=this.position&&!this.madeAbsolute){for(let a of(this.position=d.position,this.manager.tooltipViews))a.dom.style.position=this.position;c=!0}if(d.parent!=this.parent){for(let a of(this.parent&&this.container.remove(),this.parent=d.parent,this.createContainer(),this.manager.tooltipViews))this.container.appendChild(a.dom);c=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);c&&this.maybeMeasure()}createTooltip(a,b){let c=a.create(this.view),d=b?b.dom:null;if(c.dom.classList.add("cm-tooltip"),a.arrow&&!c.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let a=document.createElement("div");a.className="cm-tooltip-arrow",c.dom.appendChild(a)}return c.dom.style.position=this.position,c.dom.style.top=gY,c.dom.style.left="0px",this.container.insertBefore(c.dom,d),c.mount&&c.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(c.dom),c}destroy(){var a,b,c;for(let b of(this.view.win.removeEventListener("resize",this.measureSoon),this.manager.tooltipViews))b.dom.remove(),null==(a=b.destroy)||a.call(b);this.parent&&this.container.remove(),null==(b=this.resizeObserver)||b.disconnect(),null==(c=this.intersectionObserver)||c.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let a=1,b=1,c=!1;if("fixed"==this.position&&this.manager.tooltipViews.length){let{dom:a}=this.manager.tooltipViews[0];if(dW.safari){let b=a.getBoundingClientRect();c=Math.abs(b.top+1e4)>1||Math.abs(b.left)>1}else c=!!a.offsetParent&&a.offsetParent!=this.container.ownerDocument.body}if(c||"absolute"==this.position)if(this.parent){let c=this.parent.getBoundingClientRect();c.width&&c.height&&(a=c.width/this.parent.offsetWidth,b=c.height/this.parent.offsetHeight)}else({scaleX:a,scaleY:b}=this.view.viewState);let d=this.view.scrollDOM.getBoundingClientRect(),e=e8(this.view);return{visible:{left:d.left+e.left,top:d.top+e.top,right:d.right-e.right,bottom:d.bottom-e.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((a,b)=>{let c=this.manager.tooltipViews[b];return c.getCoords?c.getCoords(a.pos):this.view.coordsAtPos(a.pos)}),size:this.manager.tooltipViews.map(({dom:a})=>a.getBoundingClientRect()),space:this.view.state.facet(g_).tooltipSpace(this.view),scaleX:a,scaleY:b,makeAbsolute:c}}writeMeasure(a){var b;if(a.makeAbsolute)for(let a of(this.madeAbsolute=!0,this.position="absolute",this.manager.tooltipViews))a.dom.style.position="absolute";let{visible:c,space:d,scaleX:e,scaleY:f}=a,g=[];for(let h=0;h<this.manager.tooltips.length;h++){let i=this.manager.tooltips[h],j=this.manager.tooltipViews[h],{dom:k}=j,l=a.pos[h],m=a.size[h];if(!l||!1!==i.clip&&(l.bottom<=Math.max(c.top,d.top)||l.top>=Math.min(c.bottom,d.bottom)||l.right<Math.max(c.left,d.left)-.1||l.left>Math.min(c.right,d.right)+.1)){k.style.top=gY;continue}let n=i.arrow?j.dom.querySelector(".cm-tooltip-arrow"):null,o=7*!!n,p=m.right-m.left,q=null!=(b=g0.get(j))?b:m.bottom-m.top,r=j.offset||g4,s=this.view.textDirection==es.LTR,t=m.width>d.right-d.left?s?d.left:d.right-m.width:s?Math.max(d.left,Math.min(l.left-14*!!n+r.x,d.right-p)):Math.min(Math.max(d.left,l.left-p+14*!!n-r.x),d.right-p),u=this.above[h];!i.strictSide&&(u?l.top-q-o-r.y<d.top:l.bottom+q+o+r.y>d.bottom)&&u==d.bottom-l.bottom>l.top-d.top&&(u=this.above[h]=!u);let v=(u?l.top-d.top:d.bottom-l.bottom)-o;if(v<q&&!1!==j.resize){if(v<this.view.defaultLineHeight){k.style.top=gY;continue}g0.set(j,q),k.style.height=(q=v)/f+"px"}else k.style.height&&(k.style.height="");let w=u?l.top-q-o-r.y:l.bottom+o+r.y,x=t+p;if(!0!==j.overlap)for(let a of g)a.left<x&&a.right>t&&a.top<w+q&&a.bottom>w&&(w=u?a.top-q-2-o:a.bottom+o+2);if("absolute"==this.position?(k.style.top=(w-a.parent.top)/f+"px",g2(k,(t-a.parent.left)/e)):(k.style.top=w/f+"px",g2(k,t/e)),n){let a=l.left+(s?r.x:-r.x)-(t+14-7);n.style.left=a/e+"px"}!0!==j.overlap&&g.push({left:t,top:w,right:x,bottom:w+q}),k.classList.toggle("cm-tooltip-above",u),k.classList.toggle("cm-tooltip-below",!u),j.positioned&&j.positioned(a.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView)&&(this.inView=this.view.inView,!this.inView))for(let a of this.manager.tooltipViews)a.dom.style.top=gY}},{eventObservers:{scroll(){this.maybeMeasure()}}});function g2(a,b){let c=parseInt(a.style.left,10);(isNaN(c)||Math.abs(b-c)>1)&&(a.style.left=b+"px")}var g3=gT.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),g4={x:0,y:0},g5=cN.define({enables:[g1,g3]}),g6=cN.define({combine:a=>a.reduce((a,b)=>a.concat(b),[])}),g7=class a{static create(b){return new a(b)}constructor(a){this.view=a,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new gZ(a,g6,(a,b)=>this.createHostedView(a,b),a=>a.dom.remove())}createHostedView(a,b){let c=a.create(this.view);return c.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(c.dom,b?b.dom.nextSibling:this.dom.firstChild),this.mounted&&c.mount&&c.mount(this.view),c}mount(a){for(let b of this.manager.tooltipViews)b.mount&&b.mount(a);this.mounted=!0}positioned(a){for(let b of this.manager.tooltipViews)b.positioned&&b.positioned(a)}update(a){this.manager.update(a)}destroy(){var a;for(let b of this.manager.tooltipViews)null==(a=b.destroy)||a.call(b)}passProp(a){let b;for(let c of this.manager.tooltipViews){let d=c[a];if(void 0!==d){if(void 0===b)b=d;else if(b!==d)return}}return b}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}},g8=(a=>{let b=a.facet(g6);return 0===b.length?null:{pos:Math.min(...b.map(a=>a.pos)),end:Math.max(...b.map(a=>{var b;return null!=(b=a.end)?b:a.pos})),create:g7.create,above:b[0].above,arrow:b.some(a=>a.arrow)}},cN.define({combine(a){let b,c;for(let d of a)b=b||d.topContainer,c=c||d.bottomContainer;return{topContainer:b,bottomContainer:c}}})),g9=eZ.fromClass(class{constructor(a){this.input=a.state.facet(hc),this.specs=this.input.filter(a=>a),this.panels=this.specs.map(b=>b(a));let b=a.state.facet(g8);for(let c of(this.top=new ha(a,!0,b.topContainer),this.bottom=new ha(a,!1,b.bottomContainer),this.top.sync(this.panels.filter(a=>a.top)),this.bottom.sync(this.panels.filter(a=>!a.top)),this.panels))c.dom.classList.add("cm-panel"),c.mount&&c.mount()}update(a){let b=a.state.facet(g8);this.top.container!=b.topContainer&&(this.top.sync([]),this.top=new ha(a.view,!0,b.topContainer)),this.bottom.container!=b.bottomContainer&&(this.bottom.sync([]),this.bottom=new ha(a.view,!1,b.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let c=a.state.facet(hc);if(c!=this.input){let b=c.filter(a=>a),d=[],e=[],f=[],g=[];for(let c of b){let b=this.specs.indexOf(c),h;b<0?(h=c(a.view),g.push(h)):(h=this.panels[b]).update&&h.update(a),d.push(h),(h.top?e:f).push(h)}for(let a of(this.specs=b,this.panels=d,this.top.sync(e),this.bottom.sync(f),g))a.dom.classList.add("cm-panel"),a.mount&&a.mount()}else for(let b of this.panels)b.update&&b.update(a)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:a=>gT.scrollMargins.of(b=>{let c=b.plugin(a);return c&&{top:c.top.scrollMargin(),bottom:c.bottom.scrollMargin()}})}),ha=class{constructor(a,b,c){this.view=a,this.top=b,this.container=c,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(a){for(let b of this.panels)b.destroy&&0>a.indexOf(b)&&b.destroy();this.panels=a,this.syncDOM()}syncDOM(){if(0==this.panels.length){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let a=this.container||this.view.dom;a.insertBefore(this.dom,this.top?a.firstChild:null)}let a=this.dom.firstChild;for(let b of this.panels)if(b.dom.parentNode==this.dom){for(;a!=b.dom;)a=hb(a);a=a.nextSibling}else this.dom.insertBefore(b.dom,a);for(;a;)a=hb(a)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(this.container&&this.classes!=this.view.themeClasses){for(let a of this.classes.split(" "))a&&this.container.classList.remove(a);for(let a of(this.classes=this.view.themeClasses).split(" "))a&&this.container.classList.add(a)}}};function hb(a){let b=a.nextSibling;return a.remove(),b}var hc=cN.define({enables:g9}),hd=class extends dk{compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}eq(a){return!1}destroy(a){}};hd.prototype.elementClass="",hd.prototype.toDOM=void 0,hd.prototype.mapMode=cA.TrackBefore,hd.prototype.startSide=hd.prototype.endSide=-1,hd.prototype.point=!0;var he=class{constructor(a,b,c){this.from=a,this.to=b,this.diagnostic=c}},hf=class a{constructor(a,b,c){this.diagnostics=a,this.panel=b,this.selected=c}static init(b,c,d){let e=d.facet(hm).markerFilter;e&&(b=e(b,d));let f=b.slice().sort((a,b)=>a.from-b.from||a.to-b.to),g=new dr,h=[],i=0,j=d.doc.iter(),k=0,l=d.doc.length;for(let a=0;;){let b,c,d=a==f.length?null:f[a];if(!d&&!h.length)break;if(h.length)b=i,c=h.reduce((a,b)=>Math.min(a,b.to),d&&d.from>b?d.from:1e8);else{if((b=d.from)>l)break;c=d.to,h.push(d),a++}for(;a<f.length;){let d=f[a];if(d.from==b&&(d.to>d.from||d.to==b))h.push(d),a++,c=Math.min(d.to,c);else{c=Math.min(d.from,c);break}}c=Math.min(c,l);let e=!1;if(h.some(a=>a.from==b&&(a.to==c||c==l))&&!(e=b==c)&&c-b<10){let a=b-(k+j.value.length);a>0&&(j.next(a),k=b);for(let a=b;;){if(a>=c){e=!0;break}if(!j.lineBreak&&k+j.value.length>a)break;a=k+j.value.length,k+=j.value.length,j.next()}}let m=function(a){let b="hint",c=1;for(let e of a){var d;let a="error"==(d=e.severity)?4:"warning"==d?3:"info"==d?2:1;a>c&&(c=a,b=e.severity)}return b}(h);if(e)g.add(b,b,d1.widget({widget:new hp(m),diagnostics:h.slice()}));else{let a=h.reduce((a,b)=>b.markClass?a+" "+b.markClass:a,"");g.add(b,c,d1.mark({class:"cm-lintRange cm-lintRange-"+m+a,diagnostics:h.slice(),inclusiveEnd:h.some(a=>a.to>c)}))}if((i=c)==l)break;for(let a=0;a<h.length;a++)h[a].to<=i&&h.splice(a--,1)}let m=g.finish();return new a(m,c,hg(m))}};function hg(a,b=null,c=0){let d=null;return a.between(c,1e9,(a,c,{spec:e})=>{if(!(b&&0>e.diagnostics.indexOf(b)))if(d){if(0>e.diagnostics.indexOf(d.diagnostic))return!1;d=new he(d.from,c,d.diagnostic)}else d=new he(a,c,b||e.diagnostics[0])}),d}var hh=db.define(),hi=db.define(),hj=db.define(),hk=cT.define({create:()=>new hf(d1.none,null,null),update(a,b){if(b.docChanged&&a.diagnostics.size){let c=a.diagnostics.map(b.changes),d=null,e=a.panel;if(a.selected){let e=b.changes.mapPos(a.selected.from,1);d=hg(c,a.selected.diagnostic,e)||hg(c,null,e)}!c.size&&e&&b.state.facet(hm).autoPanel&&(e=null),a=new hf(c,e,d)}for(let c of b.effects)if(c.is(hh)){let d=b.state.facet(hm).autoPanel?c.value.length?hr.open:null:a.panel;a=hf.init(c.value,d,b.state)}else c.is(hi)?a=new hf(a.diagnostics,c.value?hr.open:null,a.selected):c.is(hj)&&(a=new hf(a.diagnostics,a.panel,c.value));return a},provide:a=>[hc.from(a,a=>a.panel),gT.decorations.from(a,a=>a.diagnostics)]}),hl=a=>{let b=a.state.field(hk,!1);return!!b&&!!b.panel&&(a.dispatch({effects:hi.of(!1)}),!0)},hm=cN.define({combine:a=>({sources:a.map(a=>a.source).filter(a=>null!=a),...function(a,b,c={}){let d={};for(let b of a)for(let a of Object.keys(b)){let e=b[a],f=d[a];if(void 0===f)d[a]=e;else if(f===e||void 0===e);else if(Object.hasOwnProperty.call(c,a))d[a]=c[a](f,e);else throw Error("Config merge conflict for field "+a)}for(let a in b)void 0===d[a]&&(d[a]=b[a]);return d}(a.map(a=>a.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:hn,tooltipFilter:hn,needsRefresh:(a,b)=>a?b?c=>a(c)||b(c):a:b,hideOn:(a,b)=>a?b?(c,d,e)=>a(c,d,e)||b(c,d,e):a:b,autoPanel:(a,b)=>a||b})})});function hn(a,b){return a?b?(c,d)=>b(a(c,d),d):a:b}function ho(a){let b=[];if(a)e:for(let{name:c}of a){for(let a=0;a<c.length;a++){let d=c[a];if(/[a-zA-Z]/.test(d)&&!b.some(a=>a.toLowerCase()==d.toLowerCase())){b.push(d);continue e}}b.push("")}return b}var hp=class extends d_{constructor(a){super(),this.sev=a}eq(a){return a.sev==this.sev}toDOM(){return dK("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},hq=class{constructor(a,b){this.diagnostic=b,this.id="item_"+Math.floor(0xffffffff*Math.random()).toString(16),this.dom=function(a,b,c){var d;let e=c?ho(b.actions):[];return dK("li",{class:"cm-diagnostic cm-diagnostic-"+b.severity},dK("span",{class:"cm-diagnosticText"},b.renderMessage?b.renderMessage(a):b.message),null==(d=b.actions)?void 0:d.map((c,d)=>{let f=!1,g=d=>{if(d.preventDefault(),f)return;f=!0;let e=hg(a.state.field(hk).diagnostics,b);e&&c.apply(a,e.from,e.to)},{name:h}=c,i=e[d]?h.indexOf(e[d]):-1,j=i<0?h:[h.slice(0,i),dK("u",h.slice(i,i+1)),h.slice(i+1)];return dK("button",{type:"button",class:"cm-diagnosticAction"+(c.markClass?" "+c.markClass:""),onclick:g,onmousedown:g,"aria-label":` Action: ${h}${i<0?"":` (access key "${e[d]})"`}.`},j)}),b.source&&dK("div",{class:"cm-diagnosticSource"},b.source))}(a,b,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},hr=class a{constructor(a){this.view=a,this.items=[];let b=b=>{if(!b.ctrlKey&&!b.altKey&&!b.metaKey){if(27==b.keyCode)hl(this.view),this.view.focus();else if(38==b.keyCode||33==b.keyCode)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(40==b.keyCode||34==b.keyCode)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(36==b.keyCode)this.moveSelection(0);else if(35==b.keyCode)this.moveSelection(this.items.length-1);else if(13==b.keyCode)this.view.focus();else{if(!(b.keyCode>=65)||!(b.keyCode<=90)||!(this.selectedIndex>=0))return;let{diagnostic:c}=this.items[this.selectedIndex],d=ho(c.actions);for(let e=0;e<d.length;e++)if(d[e].toUpperCase().charCodeAt(0)==b.keyCode){let b=hg(this.view.state.field(hk).diagnostics,c);b&&c.actions[e].apply(a,b.from,b.to)}}b.preventDefault()}},c=a=>{for(let b=0;b<this.items.length;b++)this.items[b].dom.contains(a.target)&&this.moveSelection(b)};this.list=dK("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:b,onclick:c}),this.dom=dK("div",{class:"cm-panel-lint"},this.list,dK("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>hl(this.view)},"\xd7")),this.update()}get selectedIndex(){let a=this.view.state.field(hk).selected;if(!a)return -1;for(let b=0;b<this.items.length;b++)if(this.items[b].diagnostic==a.diagnostic)return b;return -1}update(){let{diagnostics:a,selected:b}=this.view.state.field(hk),c=0,d=!1,e=null,f=new Set;for(a.between(0,this.view.state.doc.length,(a,g,{spec:h})=>{for(let a of h.diagnostics){if(f.has(a))continue;f.add(a);let g=-1,h;for(let b=c;b<this.items.length;b++)if(this.items[b].diagnostic==a){g=b;break}g<0?(h=new hq(this.view,a),this.items.splice(c,0,h),d=!0):(h=this.items[g],g>c&&(this.items.splice(c,g-c),d=!0)),b&&h.diagnostic==b.diagnostic?h.dom.hasAttribute("aria-selected")||(h.dom.setAttribute("aria-selected","true"),e=h):h.dom.hasAttribute("aria-selected")&&h.dom.removeAttribute("aria-selected"),c++}});c<this.items.length&&!(1==this.items.length&&this.items[0].diagnostic.from<0);)d=!0,this.items.pop();0==this.items.length&&(this.items.push(new hq(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),d=!0),e?(this.list.setAttribute("aria-activedescendant",e.id),this.view.requestMeasure({key:this,read:()=>({sel:e.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:a,panel:b})=>{let c=b.height/this.list.offsetHeight;a.top<b.top?this.list.scrollTop-=(b.top-a.top)/c:a.bottom>b.bottom&&(this.list.scrollTop+=(a.bottom-b.bottom)/c)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),d&&this.sync()}sync(){let a=this.list.firstChild;function b(){let b=a;a=b.nextSibling,b.remove()}for(let c of this.items)if(c.dom.parentNode==this.list){for(;a!=c.dom;)b();a=c.dom.nextSibling}else this.list.insertBefore(c.dom,a);for(;a;)b()}moveSelection(a){if(this.selectedIndex<0)return;let b=hg(this.view.state.field(hk).diagnostics,this.items[a].diagnostic);b&&this.view.dispatch({selection:{anchor:b.from,head:b.to},scrollIntoView:!0,effects:hj.of(b)})}static open(b){return new a(b)}},hs=({loading:a,requests:b,onFilterChange:c,onSortChange:d,onPaginationChange:e,rowsPerPage:f,page:g,totalRows:h,onRowClick:i,filterModel:j,filterMode:m,paginationMode:n,sortingMode:o,t:p,emptyContentImgUrl:q})=>{let r=(0,k.useMemo)(()=>b?b.map(a=>({...a,id:a.id,output:a.output||a.status_message,user_id:a.user_id||"N/A"})):[],[b]),s=(0,k.useMemo)(()=>[{field:"input",headerName:p("columnHeader.input"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"output",headerName:p("columnHeader.output"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"prompt_tokens",headerName:p("columnHeader.promptTokens"),width:150,type:"number",headerAlign:"left",align:"left"},{field:"completion_tokens",headerName:p("columnHeader.completionTokens"),width:200,type:"number",headerAlign:"left",align:"left"},{field:"cost",headerName:p("columnHeader.cost"),type:"number",width:110,headerAlign:"left",align:"left",valueFormatter:a=>b4(a,6)},{field:"props",headerName:p("columnHeader.variables"),type:"string",headerAlign:"left",align:"left",width:300},{field:"latency_ms",headerName:p("columnHeader.latency"),type:"number",width:100,headerAlign:"left",align:"left"},{field:"model_used",headerName:p("columnHeader.modelUsed"),type:"string",width:200,headerAlign:"left",align:"left"},{field:"status",headerName:p("columnHeader.status"),type:"string",width:100,headerAlign:"left",align:"left",valueFormatter:a=>2===Number(a)?p("fail"):p("success")},{field:"prompt_name",headerName:p("columnHeader.promptName"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"user_id",headerName:p("columnHeader.user"),type:"string",width:150,headerAlign:"left",align:"left"},{field:"trace_id",headerName:p("columnHeader.traceId"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"ts",headerName:p("columnHeader.date"),type:"date",width:200,headerAlign:"left",align:"left",valueFormatter:a=>new Date(a).toLocaleString()}].map(a=>({...a,filterOperators:"number"===a.type?(0,I.J)().filter(a=>!a.value.includes("Empty")):"date"===a.type?(0,J.Q)():(0,K.n)().filter(a=>!a.value.includes("Empty"))})),[p]);return(0,l.jsx)(b9,{t:p,emptyContentImgUrl:q,onRowClick:a=>i?.(a.row),rows:r,loading:a,columns:s,paginationMode:n,onFilterModelChange:c,filterModel:j,filterMode:m,rowCount:e?h:void 0,showToolbar:!0,paginationModel:"server"===n?{page:g||0,pageSize:f||10}:void 0,onSortModelChange:d,sortingMode:o,pageSizeOptions:[5,10,25],initialState:{pagination:"server"!==n?{paginationModel:{page:0,pageSize:10}}:void 0},rowSelection:!1,onPaginationModelChange:a=>{e?.(a.page,a.pageSize)}})},ht=a=>(0,l.jsxs)(r.A,{direction:"column",spacing:2,children:[(0,l.jsx)(q.A,{variant:"h5",component:"h1",children:a.t("title")}),(0,l.jsx)(H.A,{children:(0,l.jsx)(hs,{...a})})]});function hu({title:a,notFound:b,sx:c,imgUrl:d}){return(0,l.jsx)(y.A,{children:b?(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(b7,{filled:!0,title:a,sx:{py:10,...c},imgUrl:d})}):(0,l.jsx)(x.A,{colSpan:12,sx:{p:0}})})}var hv=({sessions:a,isLoading:b,sessionCount:c,table:d,onSessionClick:e,t:f,emptyContentImgUrl:g})=>(0,l.jsxs)(L.A,{children:[(0,l.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,l.jsx)(cd,{headLabel:[{id:"sessionId",label:f("sessionId")},{id:"name",label:f("name")},{id:"startTime",label:f("startTime")},{id:"endTime",label:f("endTime")}]}),(0,l.jsxs)(N.A,{children:[a.map(a=>(0,l.jsxs)(y.A,{onClick:()=>e(a),hover:!0,sx:{cursor:"pointer"},children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"primary",sx:{textTransform:"none"},children:a.id})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(q.A,{variant:"body2",children:a.name||"-"})}),(0,l.jsx)(x.A,{children:(0,O.GP)(new Date(1e3*a.start),"MMM d, yyyy h:mm:ss a")}),(0,l.jsx)(x.A,{children:a.end?(0,O.GP)(new Date(1e3*a.end),"MMM d, yyyy h:mm:ss a"):"-"})]},a.id)),b&&(0,l.jsx)(cb,{}),(0,l.jsx)(hu,{title:f("noSessions"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,l.jsx)(ce,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),hw=({trace:a,onClick:b})=>{let c=(0,P.A)();return(0,l.jsxs)(y.A,{onClick:()=>b(a),hover:!0,sx:{cursor:"pointer"},children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"primary",sx:{textTransform:"none"},children:a.name})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(b6,{color:"0"===a.status||"1"===a.status?c.palette.success.main:c.palette.error.main,icon:"0"===a.status||"1"===a.status?"mdi:check-circle-outline":"mdi:close-circle-outline"})}),(0,l.jsx)(x.A,{children:(0,l.jsxs)(cg,{color:"info",startIcon:(0,l.jsx)(b6,{icon:"mdi:clock-outline"}),children:[(parseInt(a.latency)/1e3).toFixed(2),"s"]})}),(0,l.jsx)(x.A,{children:b4(`${a.cost}`||0,5)}),(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"game-icons:token"}),children:b3(a.tokens||0)})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"mdi:layers-outline"}),children:b3(a.spanCount||0)})}),(0,l.jsx)(x.A,{children:(0,O.GP)(new Date(a.start),"MMM d, yyyy h:mm a")})]})},hx=({traces:a,isLoading:b,traceCount:c,table:d,onTraceClick:e,t:f,emptyContentImgUrl:g,emptyContentText:h})=>(0,l.jsxs)(L.A,{children:[(0,l.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,l.jsx)(cd,{headLabel:[{id:"name",label:f("name")},{id:"status",label:f("status")},{id:"latency",label:f("latency")},{id:"cost",label:f("cost")},{id:"tokens",label:f("tokens")},{id:"spans",label:f("spans")},{id:"timestamp",label:f("timestamp")}]}),(0,l.jsxs)(N.A,{children:[a.map(a=>(0,l.jsx)(hw,{trace:a,onClick:e},a.id)),b&&(0,l.jsx)(cb,{}),(0,l.jsx)(hu,{title:h||f("noTraces"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,l.jsx)(ce,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),hy=(0,k.createContext)(void 0),hz=({children:a,traces:b,traceId:c,fetchSpanEvaluations:d,t:e,onSpanChange:f})=>{let[g,h]=(0,k.useState)(null),i=(0,k.useMemo)(()=>{if(!g)return b.length>0&&b[0]?{id:b[0].id,name:b[0].name,data:{...b[0].data||{}},duration:0,timestamp:0}:null;let a=b.find(a=>a.id===g);if(a)return{id:a.id,name:a.name,data:{...a.data},duration:0,timestamp:0,traceId:a.id};let c=b.flatMap(a=>a.spans).find(a=>a.id===g);if(c){let a=b.find(a=>a.spans.some(a=>a.id===c.id));return{...c,traceId:a?.id}}return null},[g,b]),j=(0,k.useMemo)(()=>(a=>{let b=[],c={};return a.forEach(a=>{a.spans.forEach(a=>{c[a.id]={...a,children:[]}})}),a.forEach(a=>{let d=[];a.spans.forEach(a=>{a.parentId&&c[a.parentId]?c[a.parentId].children.push(c[a.id]):d.push(c[a.id])}),b.push({id:a.id,name:a.name,children:d,data:{...a.data,duration:a.data.latency}})}),b})(b),[b]),{treeHeight:m,handleMouseDown:n,isDragging:o}=((a=400)=>{let[b,c]=(0,k.useState)(a),[d,e]=(0,k.useState)(!1),[f,g]=(0,k.useState)({y:0,initialHeight:0});(0,k.useEffect)(()=>{if(d)return document.addEventListener("mousemove",h),document.addEventListener("mouseup",i),()=>{document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",i)}},[d]);let h=a=>{if(d){let b=a.clientY-f.y;c(Math.max(200,Math.min(600,f.initialHeight+b)))}},i=()=>{e(!1)};return{treeHeight:b,isDragging:d,handleMouseDown:a=>{e(!0),g({y:a.clientY,initialHeight:b}),a.preventDefault()},handleMouseMove:h,handleMouseUp:i}})();(0,k.useEffect)(()=>()=>{h(null)},[b]),(0,k.useEffect)(()=>{f&&f(i)},[i]);let p=(0,k.useCallback)(a=>{let b={},c=a=>{if(b[a.id])return b[a.id];if(a.data.tokens>0)return{cost:a.data.cost||0,tokens:a.data.tokens};if(a.children.length>0){let d=a.children.reduce((a,b)=>{let{cost:d,tokens:e}=c(b);return{cost:a.cost+d,tokens:a.tokens+e}},{cost:0,tokens:0});return b[a.id]=d,d}return{cost:Number(a.data.cost)||0,tokens:Number(a.data.tokens)||0}};return c(a)},[]);return(0,l.jsx)(hy.Provider,{value:{traces:b,selectedSpan:i,onSelectSpan:a=>{h(a)},spanTree:j,findCostAndTokens:p,fetchSpanEvaluations:d,traceId:c,setSelectedSpanId:h,treeHeight:m,onMouseDown:n,isDragging:o,t:e,onSpanChange:f},children:a})},hA=()=>{let a=(0,k.useContext)(hy);if(!a)throw Error("useTraceDrawerContext must be used within TraceDrawerProvider");return a};function hB(a,b){switch((a||"").toLowerCase()){case"llm":return{color:b.palette.info.main,icon:"mdi:robot-outline"};case"tool":return{color:b.palette.success.main,icon:"mdi:wrench-outline"};case"retrieval":return{color:"#9c27b0",icon:"mdi:magnify"};case"router":return{color:b.palette.warning.main,icon:"mdi:source-branch"};case"memory":return{color:"#795548",icon:"mdi:database-outline"};case"agent":return{color:b.palette.secondary.main,icon:"mdi:account-cog-outline"};case"start":return{color:b.palette.success.main,icon:"mdi:play-circle"};case"end":return{color:b.palette.error.main,icon:"mdi:stop-circle"};default:return{color:b.palette.primary.main,icon:""}}}var hC={width:220,height:80},hD={width:40,height:40};function hE(a){let b=a.data?.nodeType;return"start"===b||"end"===b?hD:hC}function hF(a,b=!1){if("GENERATION"===(a.type||a.data?.type))return"llm";let c=a.data?.toolCalls;if(c&&"[]"!==c)return"tool";if(b)return"agent";let d=(a.name||"").toLowerCase();return d.includes("retrieval")||d.includes("rag")||d.includes("search")?"retrieval":d.includes("router")||d.includes("route")?"router":d.includes("memory")||d.includes("store")||d.includes("cache")?"memory":d.includes("tool")||d.includes("function")?"tool":"default"}var hG=({open:a,onClose:b,children:c})=>(0,l.jsx)(R.Ay,{anchor:"right",open:a,onClose:b,sx:{"& .MuiDrawer-paper":{width:"80%"}},children:c}),hH=({children:a})=>(0,l.jsx)(r.A,{width:"100%",children:a}),hI=({children:a})=>(0,l.jsx)(q.A,{variant:"h6",children:a}),hJ=()=>{let{selectedSpan:a}=hA();return(0,l.jsx)(q.A,{variant:"subtitle1",color:"primary",children:a?.name})},hK=({children:a})=>(0,l.jsx)(o.default,{p:2,sx:{flexShrink:0,borderBottom:1,borderColor:"divider"},children:a}),hL=({children:a})=>(0,l.jsx)(r.A,{direction:"row",divider:(0,l.jsx)(S.A,{orientation:"vertical",flexItem:!0}),sx:{width:"100%"},height:"100%",children:a}),hM=({children:a})=>(0,l.jsx)(o.default,{width:500,minWidth:500,"data-sidebar":"left",sx:{display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),hN=()=>{let{onMouseDown:a,isDragging:b}=hA();return(0,l.jsx)(o.default,{onMouseDown:a,sx:{height:"8px",backgroundColor:b?"primary.main":"divider",cursor:"row-resize",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s","&:hover":{backgroundColor:"primary.light"}},children:(0,l.jsx)(o.default,{sx:{width:"40px",height:"3px",backgroundColor:"currentColor",borderRadius:"2px",opacity:.6}})})},hO=()=>(0,l.jsxs)(r.A,{height:"100%",divider:(0,l.jsx)(o.default,{sx:{borderBottom:1,borderColor:"divider"}}),children:[(0,l.jsxs)(r.A,{p:2,spacing:1,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:32})," ",(0,l.jsx)(w.A,{variant:"text",width:300,height:24})," ",(0,l.jsx)(w.A,{variant:"text",width:150,height:20})," "]}),(0,l.jsx)(o.default,{sx:{flexGrow:1,display:"flex",overflow:"hidden"},children:(0,l.jsxs)(r.A,{direction:"row",divider:(0,l.jsx)(o.default,{sx:{borderLeft:1,borderColor:"divider"}}),sx:{width:"100%"},children:[(0,l.jsx)(o.default,{width:500,minWidth:500,sx:{overflowY:"auto"},p:2,children:(0,l.jsx)(r.A,{spacing:1,children:[void 0,void 0,void 0,void 0,void 0].map((a,b)=>(0,l.jsxs)(r.A,{spacing:.5,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:24}),(0,l.jsx)(r.A,{spacing:.5,pl:3,children:[void 0,void 0].map((a,b)=>(0,l.jsx)(w.A,{variant:"text",width:180,height:24},b))})]},b))})}),(0,l.jsx)(o.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column"},children:(0,l.jsxs)(r.A,{p:2,spacing:2,children:[(0,l.jsxs)(r.A,{direction:"row",spacing:3,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:24}),(0,l.jsx)(w.A,{variant:"text",width:200,height:24})]}),(0,l.jsx)(w.A,{variant:"rectangular",width:200,height:32}),(0,l.jsx)(r.A,{spacing:2,pt:1,children:[void 0,void 0,void 0].map((a,b)=>(0,l.jsxs)(r.A,{spacing:1,children:[(0,l.jsx)(w.A,{variant:"rectangular",height:48}),(0,l.jsx)(w.A,{variant:"rectangular",height:100})]},b))})]})})]})})]}),hP=({children:a})=>(0,l.jsx)(o.default,{sx:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),hQ=(0,F.Ay)(U.eB)(({theme:a})=>({color:a.palette.text.secondary})),hR=(0,F.Ay)(U.dt)(({theme:a})=>({flexDirection:"row-reverse",borderRadius:a.spacing(.7),marginBottom:a.spacing(.5),marginTop:a.spacing(.5),padding:a.spacing(.5),paddingRight:a.spacing(1),fontWeight:500,"&.Mui-expanded ":{"&:not(.Mui-focused, .Mui-selected, .Mui-selected.Mui-focused) .labelIcon":{color:"light"===a.palette.mode?a.palette.primary.main:a.palette.primary.dark},"&::before":{content:'""',display:"block",position:"absolute",left:"16px",top:"44px",height:"calc(100% - 48px)",width:"1.5px",backgroundColor:"light"===a.palette.mode?a.palette.grey[300]:a.palette.grey[700]}},"&:hover":{backgroundColor:(0,p.X4)(a.palette.primary.main,.1),color:"light"===a.palette.mode?a.palette.primary.main:"white"},"&.Mui-focused, &.Mui-selected, &.Mui-selected.Mui-focused":{backgroundColor:"light"===a.palette.mode?a.palette.primary.main:a.palette.primary.dark,color:a.palette.primary.contrastText}})),hS=(0,F.Ay)(U.YS)(({theme:a})=>({marginLeft:15,paddingLeft:18,borderLeft:`2px solid ${(0,p.X4)(a.palette.text.primary,.4)}`,"& .content":{paddingLeft:a.spacing(2)}})),hT=k.forwardRef(function({hasChildren:a,...b},c){let d=(0,P.A)(),{id:e,itemId:f,label:g,disabled:h,children:i,bgColor:j,color:k,labelIcon:m,labelInfo:n,colorForDarkMode:p,bgColorForDarkMode:r,loading:s,...t}=b,{getRootProps:u,getContentProps:v,getIconContainerProps:w,getLabelProps:x,getGroupTransitionProps:y,status:z}=(0,V.V)({id:e,itemId:f,children:i,label:g,disabled:h,rootRef:c}),A={"--tree-view-color":"dark"!==d.palette.mode?k:p,"--tree-view-bg-color":"dark"!==d.palette.mode?j:r};return(0,l.jsx)(W.r,{itemId:f,id:e,children:(0,l.jsxs)(hQ,{...u({...t,style:A}),children:[(0,l.jsx)(hR,{...v({className:bS("content",{expanded:z.expanded,selected:z.selected,focused:z.focused})}),children:(0,l.jsxs)(o.default,{sx:{display:"flex",flexGrow:1,p:.5,pr:0,wordBreak:"break-all"},children:[(0,l.jsx)(o.default,{component:m,color:"inherit",sx:{mr:1,mt:"2px",minWidth:20,minHeight:20}}),"string"==typeof g?(0,l.jsx)(q.A,{...x({variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1}})}):g,(0,l.jsx)(q.A,{variant:"caption",color:"inherit",children:n}),Array.isArray(b.children)&&b.children.length>0&&(0,l.jsx)(X.A,{sx:{alignSelf:"center",ml:"auto"},...w({className:bS({expanded:z.expanded})}),children:(0,l.jsx)(b6,{icon:z.expanded?"mdi:chevron-down":"mdi:chevron-right"})})]})}),i&&(0,l.jsx)(hS,{...y()})]})})}),hU=({label:a,status:b,tokens:c,latency:d,cost:e})=>{let f=(0,P.A)(),{t:g}=hA();return(0,l.jsxs)(r.A,{spacing:.3,children:[(0,l.jsxs)(r.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,l.jsx)(q.A,{variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1},children:a}),(0,l.jsx)(o.default,{minWidth:16,maxHeight:16,children:(0,l.jsx)(b6,{width:16,color:"0"===b||"1"===b?f.palette.success.main:f.palette.error.main,icon:"0"===b||"1"===b?"mdi:check-circle-outline":"mdi:close-circle-outline"})})]}),(0,l.jsxs)(r.A,{direction:"row",spacing:.5,flexWrap:"wrap",children:[(0,l.jsx)(Y.A,{title:g("latency"),children:(0,l.jsxs)(cg,{sx:{textTransform:"lowercase"},color:"primary",startIcon:(0,l.jsx)(b6,{icon:"mdi:clock-time-four-outline"}),children:[(Number(d)/1e3).toFixed(1),"s"]})}),!!Number(c)&&(0,l.jsx)(Y.A,{title:g("cost"),children:(0,l.jsx)(cg,{color:"info",children:b4(e,5)})}),!!parseInt(c)&&(0,l.jsx)(Y.A,{title:g("tokens"),children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"game-icons:token"}),children:b3(c)})})]})]})},hV=(a,b)=>{if(!a)return null;let{cost:c,tokens:d}=b(a);return(0,l.jsx)(r.A,{children:(0,l.jsx)(hT,{itemId:a.id,labelIcon:a=>(0,l.jsx)(b6,{icon:"system-uicons:timeline",...a}),label:(0,l.jsx)(hU,{label:a.name,status:a.data.status,tokens:d,latency:a.data.duration,cost:c}),children:a.children.map(a=>hV(a,b))},a.id)},a.id)},hW=()=>{let{spanTree:a,selectedSpan:b,setSelectedSpanId:c,traces:d,findCostAndTokens:e,traceId:f}=hA(),g=(0,k.useMemo)(()=>a.map(a=>hV(a,e)),[a]);return(0,l.jsx)(o.default,{sx:{height:"100%",overflowY:"auto",p:2},children:b?.id&&(0,l.jsx)(T.G,{expansionTrigger:"iconContainer",selectedItems:b?.id||null,onItemSelectionToggle:(a,b,d)=>{d&&c(b)},...f&&d[0]?{defaultExpandedItems:[d[0].id,...d[0].spans.map(a=>a.id)||[]]}:{},children:g})})},hX="__start__",hY="__end__";function hZ(a){return null==a||0===a?null:a.toLocaleString()}function h$(a,b=200){if(!a)return null;let c=a.trim();return c?c.length<=b?c:`${c.slice(0,b)}\u2026`:null}function h_({label:a,value:b}){return(0,l.jsxs)(o.default,{sx:{display:"flex",justifyContent:"space-between",gap:2},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",flexShrink:0},children:a}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.100",textAlign:"right",wordBreak:"break-word",maxWidth:220},children:b})]})}function h0({span:a}){let b=function(a){var b;let c=a.data??{};return{name:a.name??"Unknown",duration:function(a){if(!isFinite(a)||a<0)return console.warn("[formatDuration] Received invalid duration:",a),"N/A";if(a>=6e4){let b=Math.floor(a/6e4),c=(a%6e4/1e3).toFixed(1);return`${b}m ${c}s`}return a>=1e3?`${(a/1e3).toFixed(2)}s`:`${Math.round(a)}ms`}(a.duration??0),model:c.model??c.model_name??null,inputTokens:hZ(c.inputTokens),outputTokens:hZ(c.outputTokens),totalTokens:hZ(c.totalTokens),cost:null==(b=c.cost)||0===b?null:b<1e-4?`$${b.toExponential(2)}`:`$${b.toFixed(4)}`,status:c.status?c.status:c.statusMessage?c.statusMessage:c.finishReason?c.finishReason:null,input:h$(c.input),output:h$(c.output)}}(a),c=[{label:"Duration",value:b.duration},{label:"Model",value:b.model},{label:"Status",value:b.status},{label:"Input tokens",value:b.inputTokens},{label:"Output tokens",value:b.outputTokens},{label:"Total tokens",value:b.totalTokens},{label:"Cost",value:b.cost}].filter(a=>null!==a.value),d=null!==b.input,e=null!==b.output;return(0,l.jsxs)(o.default,{sx:{p:.5,maxWidth:320},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{fontWeight:700,color:"grey.100",display:"block",mb:.5},children:b.name}),c.length>0&&(0,l.jsx)(o.default,{sx:{display:"flex",flexDirection:"column",gap:.25},children:c.map(a=>(0,l.jsx)(h_,{label:a.label,value:a.value},a.label))}),(d||e)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:.75,borderColor:"grey.700"}}),d&&(0,l.jsxs)(o.default,{sx:{mb:.75*!!e},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",display:"block",mb:.25},children:"Input"}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.200",display:"block",whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"monospace",fontSize:"0.65rem",maxHeight:80,overflow:"hidden"},children:b.input})]}),e&&(0,l.jsxs)(o.default,{children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",display:"block",mb:.25},children:"Output"}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.200",display:"block",whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"monospace",fontSize:"0.65rem",maxHeight:80,overflow:"hidden"},children:b.output})]})]})]})}var h1={traceNode:(0,k.memo)(function(a){let{id:b,data:c}=a,d=(0,P.A)(),e=c.color||c.branchColor,f=c.spanIds?.length||1,g=f>1,h="start"===c.nodeType||"end"===c.nodeType,i=g?`(${(c.currentSpanIndex??0)+1}/${f})`:"",j=c.spanData?(0,l.jsx)(h0,{span:c.spanData}):null;if(h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)($.h7,{type:"target",position:_.yX.Top,style:{visibility:"hidden"}}),(0,l.jsx)(o.default,{sx:{width:40,height:40,backgroundColor:d.palette.background.paper,borderRadius:"50%",border:`2px solid ${e}`,display:"flex",alignItems:"center",justifyContent:"center",boxShadow:d.shadows[2]},children:c.icon&&(0,l.jsx)(b6,{icon:c.icon,width:24,height:24,color:e})}),(0,l.jsx)($.h7,{type:"source",position:_.yX.Bottom,style:{visibility:"hidden"}})]});let k=(0,l.jsxs)(o.default,{sx:{minWidth:160,maxWidth:220,backgroundColor:d.palette.background.paper,borderRadius:2,border:`2px solid ${e}`,display:"flex",alignItems:"center",padding:2,boxShadow:d.shadows[3],cursor:"pointer",gap:1.5,"&:hover":{boxShadow:d.shadows[6],borderColor:e},transition:"box-shadow 0.2s ease-in-out"},onClick:()=>{!h&&(c.onNodeCycleClick&&c.spanIds&&c.spanIds.length>1?c.onNodeCycleClick(b):c.onNodeClick&&c.spanId&&c.onNodeClick(c.spanId))},children:[c.icon&&(0,l.jsx)(b6,{icon:c.icon,width:24,height:24,color:e,style:{flexShrink:0}}),(0,l.jsxs)(o.default,{sx:{flex:1,minWidth:0},children:[(0,l.jsx)(q.A,{variant:"body2",sx:{fontWeight:600,color:d.palette.text.primary,display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:c.label,children:c.label}),g&&(0,l.jsx)(q.A,{variant:"caption",sx:{fontSize:"0.7rem",color:d.palette.text.secondary},children:i})]})]});return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)($.h7,{type:"target",position:_.yX.Top,style:{visibility:"hidden"}}),j?(0,l.jsx)(Y.A,{title:j,placement:"top",arrow:!0,enterDelay:300,slotProps:{tooltip:{sx:{bgcolor:"grey.900",border:"1px solid",borderColor:"grey.700",borderRadius:1,p:1,maxWidth:340,boxShadow:4}},arrow:{sx:{color:"grey.900"}}},children:k}):k,(0,l.jsx)($.h7,{type:"source",position:_.yX.Bottom,style:{visibility:"hidden"}})]})})};function h2({graphData:a,isLoading:b}){let c=(0,P.A)(),{onSelectSpan:d,traces:e}=hA(),f=(0,k.useMemo)(()=>a&&a.length>0?[]:e.flatMap(a=>a.spans.map(a=>({spanId:a.id,parentSpanId:a.parentId,name:a.name,startTime:"string"==typeof a.timestamp?new Date(a.timestamp).getTime():a.timestamp,type:a.data?.type,data:a.data}))),[e,a]),g=(0,k.useMemo)(()=>{let a=new Map;return e.forEach(b=>{b.spans.forEach(b=>{a.has(b.id)&&console.warn("[TraceGraphCanvas] Duplicate span ID in lookup — tooltip data may be incorrect:",b.id),a.set(b.id,b)})}),a},[e]),{nodes:h,edges:i}=(0,k.useMemo)(()=>{if(a&&a.length>0){var b=a;let c=[],d=[],e=new Set,f=new Set;return b.forEach(({displayName:a,nodeId:b,nodeType:g,parentNodeId:h="",spanId:i,spanName:j})=>{if(b&&!e.has(b)&&(e.add(b),c.push({id:b,spanId:i,label:a||j||b,nodeType:g,spanIds:[i],spanCount:1})),h&&""!==h.trim()&&b){let a=`${h}->${b}`;f.has(a)||(f.add(a),d.push({id:a,source:h,target:b}))}}),{nodes:c,edges:d,isAutoGenerated:!1}}if(f&&f.length>0){if(f.some(a=>{let b=a.data;return!!b&&Object.keys(b).some(a=>a.startsWith("graph.node.")||"graphNodeId"===a||"graphNodeType"===a)}))return{nodes:[],edges:[],isAutoGenerated:!1};try{let a=function(a){if(!a||0===a.length)return{nodes:[],edges:[],isAutoGenerated:!0};let b=function(a){let b=new Map;for(let e of a){var c,d;let a=(c=e.parentSpanId,d=e.name,`${c||"root"}:${d}`),f=b.get(a);f?(f.spanIds.push(e.spanId),e.startTime<f.firstStartTime&&(f.firstStartTime=e.startTime)):b.set(a,{key:a,parentSpanId:e.parentSpanId,spanName:e.name,spanIds:[e.spanId],firstStartTime:e.startTime})}return b}(a),c=new Map;for(let[a,d]of b)for(let b of d.spanIds)c.set(b,a);let d=new Set;for(let b of a)if(b.parentSpanId){let a=c.get(b.parentSpanId);a&&d.add(a)}let e=[];for(let[f,g]of b){let b=a.find(a=>a.spanId===g.spanIds[0]);if(!b)continue;let h=d.has(f);e.push({nodeId:f,displayName:g.spanName||"Operation",nodeType:hF(b,h),spanIds:g.spanIds,parentNodeId:g.parentSpanId?c.get(g.parentSpanId):void 0})}let f=function(a,b){let c=new Map;for(let b of a){let a=b.parentSpanId||"root",d=c.get(a)||[];d.push(b),c.set(a,d)}let d=new Map,e=(a,b)=>{let[c,e]=[a,b].sort(),f=`${c}->${e}`,g=d.get(f);g?c===a?g.forward=!0:g.backward=!0:d.set(f,{forward:c===a,backward:c!==a,firstSource:a,firstTarget:b})};for(let[a,d]of c){let c=[...d].sort((a,b)=>a.startTime-b.startTime);if("root"!==a&&c.length>0){let d=b.get(a),f=c[0],g=f?b.get(f.spanId):void 0;d&&g&&d!==g&&e(d,g)}for(let a=0;a<c.length-1;a++){let d=c[a],f=c[a+1],g=b.get(d.spanId),h=b.get(f.spanId);g&&h&&g!==h&&e(g,h)}}let f=[];for(let[a,b]of d)f.push({id:a,source:b.firstSource,target:b.firstTarget,bidirectional:b.forward&&b.backward});return f}(a,c),g=function(a,b){if(0===a.length)return;let c=[...a].sort((a,b)=>a.startTime-b.startTime)[0];return c?b.get(c.spanId):void 0}(a,c),{nodes:h,edges:i}=function(a,b,c,d){if(0===a.length)return{nodes:[],edges:[]};let e=[];if(c)e.push({id:`${hX}->${c}`,source:hX,target:c,bidirectional:!1});else{let c=new Set;for(let a of b)c.add(a.target);for(let b of a.filter(a=>!c.has(a.nodeId)))e.push({id:`${hX}->${b.nodeId}`,source:hX,target:b.nodeId,bidirectional:!1})}let f=[];if(d)f.push({id:`${d}->${hY}`,source:d,target:hY,bidirectional:!1});else{let c=new Set;for(let a of b)c.add(a.source);for(let b of a.filter(a=>!c.has(a.nodeId)))f.push({id:`${b.nodeId}->${hY}`,source:b.nodeId,target:hY,bidirectional:!1})}return{nodes:[{nodeId:hX,displayName:"",nodeType:"start",spanIds:[]},...a,{nodeId:hY,displayName:"",nodeType:"end",spanIds:[]}],edges:[...e,...b,...f]}}(e,f,g,function(a,b){if(0===a.length)return;let c=[...a].sort((a,b)=>b.startTime-a.startTime)[0];return c?b.get(c.spanId):void 0}(a,c));return{nodes:h,edges:i,isAutoGenerated:!0}}(f);return{nodes:a.nodes.map(a=>({id:a.nodeId,spanId:a.spanIds[0]||"",label:a.displayName,nodeType:a.nodeType,spanIds:a.spanIds,spanCount:a.spanIds.length})),edges:a.edges.map(a=>({id:a.id,source:a.source,target:a.target,bidirectional:a.bidirectional})),isAutoGenerated:!0}}catch(a){console.error("Failed to generate workflow graph:",a)}}return{nodes:[],edges:[],isAutoGenerated:!1}},[a,f]),[j,m]=(0,k.useState)(()=>new Map),n=(0,k.useMemo)(()=>{let a=new Map;return h.forEach(b=>a.set(b.id,b)),a},[h]),p=(0,k.useCallback)(a=>{d(a)},[d]),q=(0,k.useCallback)(a=>{let b=n.get(a);if(!b?.spanIds||0===b.spanIds.length)return;let c=((j.get(a)??0)+1)%b.spanIds.length,e=b.spanIds[c];m(b=>{let d=new Map(b);return d.set(a,c),d}),e&&d(e)},[n,j,d]),{reactFlowNodes:r,reactFlowEdges:s}=function({nodes:a,edges:b,onNodeClick:c,onNodeCycleClick:d,nodeSpanIndices:e,spanLookup:f}){let g=(0,P.A)(),h=(0,k.useMemo)(()=>{if(!a.length)return[];let h=a.map(a=>({id:a.id,data:{label:a.label},position:{x:0,y:0}})),i=function(a,b){let c=new Map,d=new Set,e=new Map;return a.forEach(a=>{e.set(a.id,new Set)}),b.forEach(a=>{let b=e.get(a.source),c=e.get(a.target);b&&b.add(a.target),c&&c.add(a.source)}),a.forEach(a=>{d.has(a.id)||function a(b,f){if(d.has(b))return;d.add(b),c.set(b,f);let g=e.get(b);g&&g.forEach(b=>{d.has(b)||a(b,f)})}(a.id,a.id)}),c}(h,b.map(a=>({id:a.id,source:a.source,target:a.target})));return h.map(b=>{let h,j=a.find(a=>a.id===b.id),k=function(a,b){let c=[b.palette.primary.main,b.palette.secondary.main,b.palette.error.main,b.palette.warning.main,b.palette.info.main,b.palette.success.main,"#9c27b0","#795548","#607d8b"],d=0;for(let b=0;b<a.length;b++)d=(d<<5)-d+a.charCodeAt(b),d&=d;return c[Math.abs(d)%c.length]}(i.get(b.id)||b.id,g),{color:l,icon:m}=hB(j?.nodeType,g),n=e?.get(b.id);if(f){let a=j?.spanId;if(a){if(!(h=f.get(a))&&j?.spanIds){for(let a of j.spanIds)if(h=f.get(a))break}h||console.warn("[useGraphData] Span ID not found in lookup for node",b.id,"spanId:",a)}}return{...b,type:"traceNode",data:{label:b.data.label,branchColor:k,spanId:j?.spanId,nodeType:j?.nodeType,color:l,icon:m,onNodeClick:c,spanIds:j?.spanIds,currentSpanIndex:n,onNodeCycleClick:d,spanData:h}}})},[a,b,g,c,d,e,f]),i=(0,k.useMemo)(()=>{let a=[];return b.forEach(b=>{a.push({id:b.id,source:b.source,target:b.target,type:"default",animated:!0})}),a},[b]),{nodes:j,edges:l}=(0,k.useMemo)(()=>(function(a,b){if(0===a.length)return{nodes:[],edges:[]};let c=new Q.graphlib.Graph;return c.setGraph({rankdir:"TB",nodesep:60,ranksep:80,marginx:20,marginy:20}),c.setDefaultEdgeLabel(()=>({})),a.forEach(a=>{let b=hE(a);c.setNode(a.id,{width:b.width,height:b.height})}),b.forEach(a=>{c.setEdge(a.source,a.target)}),Q.layout(c),{nodes:a.map(a=>{let b=c.node(a.id),d=hE(a);return{...a,position:{x:b.x-d.width/2,y:b.y-d.height/2}}}),edges:b}})(h,i),[h,i]);return{reactFlowNodes:j,reactFlowEdges:l}}({nodes:h,edges:i,onNodeClick:p,onNodeCycleClick:q,nodeSpanIndices:j,spanLookup:g}),[t,u]=(0,k.useState)(r),[v,w]=(0,k.useState)(s),[x,y]=(0,k.useState)(-1),z=(0,k.useCallback)(a=>{if(0!==t.length)switch(a.key){case"ArrowRight":case"ArrowDown":a.preventDefault(),y(x<t.length-1?x+1:0);break;case"ArrowLeft":case"ArrowUp":a.preventDefault(),y(x>0?x-1:t.length-1);break;case"Enter":case" ":if(a.preventDefault(),x>=0&&x<t.length){let a=t[x],b=a?.data;b?.spanIds&&b.spanIds.length>1&&a?q(a.id):b?.spanId&&p(b.spanId)}break;case"Tab":-1===x&&t.length>0&&(a.preventDefault(),y(0))}},[t,x,p,q]);return b?(0,l.jsx)(o.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2},children:(0,l.jsx)(Z.A,{size:20})}):t.length?(0,l.jsx)(o.default,{sx:{flexGrow:1,overflow:"hidden",border:"1px solid",borderColor:"divider",borderRadius:1,m:2,position:"relative",minHeight:0},children:(0,l.jsx)(o.default,{sx:{width:"100%",height:"100%"},tabIndex:0,onKeyDown:z,role:"application","aria-label":"Workflow graph - use arrow keys to navigate between nodes, Enter to select",children:(0,l.jsxs)($.Gc,{nodes:t,edges:v,nodeTypes:h1,onNodesChange:a=>{u((0,$._0)(a,t))},onEdgesChange:a=>{w((0,$.zW)(a,v))},fitView:!0,zoomOnScroll:!0,panOnScroll:!0,zoomOnPinch:!0,fitViewOptions:{padding:.5},children:[(0,l.jsx)($.of,{style:{width:80,height:60,backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:4},nodeColor:a=>a.data?.color||a.data?.branchColor||c.palette.primary.main,maskColor:"rgba(0, 0, 0, 0.1)",position:"bottom-right"}),(0,l.jsx)($.H2,{style:{backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:8,boxShadow:c.shadows[4]}}),(0,l.jsx)($.VS,{gap:20,size:1})]})})}):(0,l.jsx)(o.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2,color:"text.secondary"},children:"No graph data available"})}var h3={ROW_HEIGHT:28,MIN_BAR_WIDTH:4,DEPTH_INDENT:16,BAR_HEIGHT_RATIO:.7,MIN_SCALE:.5,MAX_SCALE:10,RULER_HEIGHT:24,PADDING:8,LABEL_WIDTH:120};function h4(a){if(a<1e3)return`${Math.round(a)}ms`;if(a<6e4)return`${(a/1e3).toFixed(1)}s`;let b=Math.floor(a/6e4),c=Math.round(a%6e4/1e3);return c>0?`${b}m ${c}s`:`${b}m`}function h5(a){let b=a.data?.status?.toLowerCase();return"error"===b||"failed"===b||"failure"===b}function h6(a,b){let c=b.get(a);return void 0!==c&&c.length>0}function h7(a){if(!a||"string"!=typeof a.id||!a.id)return null;let b="number"==typeof a.timestamp&&Number.isFinite(a.timestamp)?a.timestamp:Date.now(),c="number"==typeof a.duration&&Number.isFinite(a.duration)&&a.duration>=0?a.duration:0,d="string"==typeof a.name?a.name:String(a.id);return{...a,timestamp:b,duration:c,name:d}}var{MIN_SCALE:h8,MAX_SCALE:h9}=h3,{ROW_HEIGHT:ia,MIN_BAR_WIDTH:ib,BAR_HEIGHT_RATIO:ic}=h3,id=(0,k.memo)(function({layout:a,isSelected:b,isFocused:c=!1,onSelect:d,onMouseEnter:e,onMouseLeave:f,timelineWidth:g}){var h;let i=(0,P.A)(),j=hB(a.nodeType,i),k=ia*ic,m=a.row*ia+(ia-k)/2,n=a.x*g,o=Math.max(ib,a.width*g),p=j.color;a.hasError&&(p=i.palette.error.main);let q=b?i.palette.primary.main:c?i.palette.action.focus:"transparent",r=a.hasError?1:.85,s=(h=a.durationMs)<1e3?`${Math.round(h)}ms`:`${(h/1e3).toFixed(1)}s`;return(0,l.jsxs)("g",{className:"timeline-bar","data-span-id":a.spanId,onClick:b=>{b.stopPropagation(),d?.(a.spanId)},onMouseEnter:b=>{e?.(a,b)},onMouseLeave:f,style:{cursor:"pointer"},role:"gridcell","aria-label":`${a.name}: ${s}, ${a.percentOfTrace.toFixed(1)}% of trace`,tabIndex:-1,children:[(0,l.jsx)("rect",{x:n,y:m,width:o,height:k,rx:3,ry:3,fill:p,opacity:r,stroke:q,strokeWidth:b||c?2:0}),o>60&&(0,l.jsx)("text",{x:n+o/2,y:m+k/2,textAnchor:"middle",dominantBaseline:"central",fontSize:10,fill:i.palette.getContrastText(p),style:{pointerEvents:"none",userSelect:"none"},children:s}),a.hasError&&(0,l.jsx)("circle",{cx:n+o-8,cy:m+k/2,r:4,fill:i.palette.error.contrastText,style:{pointerEvents:"none"}})]})}),{RULER_HEIGHT:ie}=h3,ig=(0,k.memo)(function({ticks:a,width:b,height:c=ie}){let d=(0,P.A)(),e=.6*c,f=.3*c;return(0,l.jsxs)("g",{className:"timeline-ruler",role:"presentation",children:[(0,l.jsx)("rect",{x:0,y:0,width:b,height:c,fill:d.palette.background.paper}),(0,l.jsx)("line",{x1:0,y1:c,x2:b,y2:c,stroke:d.palette.divider,strokeWidth:1}),a.map((a,g)=>{let h=a.position*b,i=c-(a.isMajor?e:f);return(0,l.jsxs)("g",{children:[(0,l.jsx)("line",{x1:h,y1:i,x2:h,y2:c,stroke:d.palette.text.secondary,strokeWidth:a.isMajor?1:.5,opacity:a.isMajor?.8:.4}),a.isMajor&&a.label&&(0,l.jsx)("text",{x:h,y:i-4,textAnchor:"middle",fontSize:10,fill:d.palette.text.secondary,style:{userSelect:"none"},children:a.label})]},g)})]})});function ih(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function ii(a,b){if(!a)return"";let c=a.replace(/\n/g," ").trim();return c.length<=b?c:c.slice(0,b)+"..."}var ij=(0,k.memo)(function({layout:a,position:b,visible:c}){var d,e;let f=(0,P.A)(),g=(0,k.useMemo)(()=>{let b=a?.span?.data?.attributes;if(!b)return null;try{return"string"==typeof b?JSON.parse(b):b}catch{return null}},[a?.span?.data?.attributes]);if(!c||!a||!b)return null;let h=hB(a.nodeType,f),i=a.span.data,j=i.model||i.totalTokens||i.cost,m=i.input||i.output,n=i.toolCalls,p=g&&Object.keys(g).length>0,r=b.x+12,s=b.y+12;return(0,l.jsxs)(aa.A,{elevation:8,sx:{position:"fixed",left:r,top:s,zIndex:f.zIndex.tooltip,p:1.5,maxWidth:340,maxHeight:400,overflow:"auto",pointerEvents:"none",backgroundColor:f.palette.background.paper,border:`1px solid ${f.palette.divider}`},children:[(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:1},children:[(0,l.jsx)(o.default,{sx:{width:8,height:8,borderRadius:"50%",backgroundColor:h.color,flexShrink:0}}),(0,l.jsx)(q.A,{variant:"subtitle2",sx:{fontWeight:600,wordBreak:"break-word",color:f.palette.text.primary},children:a.name})]}),(0,l.jsxs)(o.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Duration:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:function(a){if(a<1)return"<1ms";if(a<1e3)return`${Math.round(a)}ms`;if(a<6e4)return`${(a/1e3).toFixed(2)}s`;let b=Math.floor(a/6e4),c=(a%6e4/1e3).toFixed(1);return`${b}m ${c}s`}(a.durationMs)}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Start:"}),(0,l.jsx)(q.A,{variant:"caption",children:(d=a.startTimeMs)<1e3?`+${Math.round(d)}ms`:`+${(d/1e3).toFixed(2)}s`}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"% of trace:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[a.percentOfTrace.toFixed(1),"%"]}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Type:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{textTransform:"capitalize"},children:a.nodeType}),a.hasError&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"error.main",children:"Status:"}),(0,l.jsx)(q.A,{variant:"caption",color:"error.main",fontWeight:500,children:i.statusMessage||"Error"})]})]}),j&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsxs)(o.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[i.model&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Model:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:i.model})]}),(i.inputTokens||i.outputTokens)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Tokens:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[i.inputTokens?`${ih(i.inputTokens)} in`:"",i.inputTokens&&i.outputTokens?" / ":"",i.outputTokens?`${ih(i.outputTokens)} out`:"",i.totalTokens&&` (${ih(i.totalTokens)} total)`]})]}),i.reasoningTokens&&i.reasoningTokens>0&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Reasoning:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[ih(i.reasoningTokens)," tokens"]})]}),null!=i.cost&&i.cost>0&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Cost:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:(e=i.cost)<.01?`$${e.toFixed(6)}`:e<1?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`})]}),i.finishReason&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Finish:"}),(0,l.jsx)(q.A,{variant:"caption",children:i.finishReason})]})]})]}),m&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),i.input&&(0,l.jsxs)(o.default,{sx:{mb:.5},children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Input:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.input,100)})]}),i.output&&(0,l.jsxs)(o.default,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Output:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.output,100)})]})]}),n&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Tool Calls:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.toolCalls,80)})]}),p&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Attributes:"}),(0,l.jsxs)(o.default,{sx:{display:"flex",flexWrap:"wrap",gap:.5},children:[Object.entries(g).slice(0,5).map(([a,b])=>(0,l.jsx)(ab.A,{label:`${a}: ${ii(String(b),20)}`,size:"small",variant:"outlined",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}},a)),Object.keys(g).length>5&&(0,l.jsx)(ab.A,{label:`+${Object.keys(g).length-5} more`,size:"small",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}})]})]})]})}),ik={llm:"LLM",tool:"Tool",agent:"Agent",retrieval:"Retrieval",router:"Router",memory:"Memory",default:"Other",start:"Start",end:"End"},il=["llm","tool","agent","retrieval","router","memory","default"],im=(0,k.memo)(function({typeBreakdown:a,showCounts:b=!1}){let c=(0,P.A)(),d=il.filter(b=>void 0!==a[b]&&a[b]>0);return 0===d.length?null:(0,l.jsx)(o.default,{sx:{display:"flex",flexWrap:"wrap",gap:1.5,px:1,py:.5,borderTop:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.background.paper},role:"legend","aria-label":"Span type legend",children:d.map(d=>{let e=hB(d,c),f=a[d]||0,g=ik[d];return(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,l.jsx)(o.default,{sx:{width:12,height:12,borderRadius:.5,backgroundColor:e.color,flexShrink:0}}),(0,l.jsxs)(q.A,{variant:"caption",sx:{color:c.palette.text.secondary,lineHeight:1,whiteSpace:"nowrap"},children:[g,b&&f>0&&(0,l.jsxs)(q.A,{component:"span",variant:"caption",sx:{color:c.palette.text.disabled,ml:.5},children:["(",f,")"]})]})]},d)})})}),io=class extends k.Component{constructor(a){super(a),this.handleRetry=()=>{this.setState({hasError:!1,error:null})},this.state={hasError:!1,error:null}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}componentDidCatch(a,b){console.error("Timeline rendering error:",a,b)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:(0,l.jsxs)(o.default,{sx:{p:3,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",minHeight:200,color:"text.secondary",textAlign:"center"},children:[(0,l.jsx)(q.A,{variant:"body1",color:"error",gutterBottom:!0,children:"Failed to render timeline"}),(0,l.jsx)(q.A,{variant:"body2",sx:{mb:2},children:"There was an error processing the span data."}),(0,l.jsx)(ac.A,{variant:"outlined",size:"small",onClick:this.handleRetry,children:"Retry"})]}):this.props.children}},{ROW_HEIGHT:ip,RULER_HEIGHT:iq,PADDING:ir,LABEL_WIDTH:is}=h3,it=(0,k.memo)(function({spans:a,selectedSpanId:b,onSelectSpan:c,showRuler:d=!0,showLegend:e=!0,enableZoom:f=!0,enablePan:g=!0,sx:h,isLoading:i=!1}){let j=(0,P.A)(),m=(0,k.useRef)(null),[n,p]=(0,k.useState)(800),r=(0,k.useRef)(void 0),[s,t]=(0,k.useState)({layout:null,position:null}),[u,v]=(0,k.useState)(0),[x,y]=(0,k.useState)(400),{layouts:z,metrics:A,rulerTicks:B}=(0,k.useMemo)(()=>(function(a){if(!Array.isArray(a)||0===a.length)return{layouts:[],metrics:{totalDurationMs:0,startTimeMs:0,endTimeMs:0,spanCount:0,maxDepth:0,typeBreakdown:{}},rulerTicks:[]};let b=a.map(h7).filter(a=>null!==a);if(0===b.length)return{layouts:[],metrics:{totalDurationMs:0,startTimeMs:0,endTimeMs:0,spanCount:0,maxDepth:0,typeBreakdown:{}},rulerTicks:[]};let c=function(a){let b=new Map;for(let c of a)b.set(c.id,c);return b}(b),d=function(a){let b=new Map;for(let c of a){let a=c.parentId,d=b.get(a)||[];d.push(c),b.set(a,d)}for(let[,a]of b)a.sort((a,b)=>a.timestamp-b.timestamp);return b}(b),e=1/0,f=-1/0;for(let a of b){let b=a.timestamp,c=a.timestamp+Math.max(0,a.duration);b<e&&(e=b),c>f&&(f=c)}let g=f-e,h=a=>0===g?0:(a-e)/g,i=a=>0===g?1:Math.max(0,a)/g,j=[],k=0,l=0,m={};function n(a,b){for(let c of d.get(a)||[]){b>l&&(l=b);let a=h6(c.id,d),f=hF({spanId:c.id,parentSpanId:c.parentId,name:c.name,startTime:c.timestamp,type:c.data?.type,data:c.data},a);m[f]=(m[f]||0)+1;let o=c.timestamp-e,p=Math.max(0,c.duration),q=g>0?p/g*100:100,r={spanId:c.id,name:c.name,x:h(c.timestamp),width:i(p),row:k,depth:b,durationMs:p,startTimeMs:o,percentOfTrace:q,nodeType:f,hasError:h5(c),span:c};j.push(r),k++,n(c.id,b+1)}}for(let a of(n(void 0,0),b))if(a.parentId&&!c.has(a.parentId)){let b=h6(a.id,d),c=hF({spanId:a.id,parentSpanId:a.parentId,name:a.name,startTime:a.timestamp,type:a.data?.type,data:a.data},b);if(!j.find(b=>b.spanId===a.id)){m[c]=(m[c]||0)+1;let b=a.timestamp-e,d=Math.max(0,a.duration),f=g>0?d/g*100:100;j.push({spanId:a.id,name:a.name,x:h(a.timestamp),width:i(d),row:k,depth:0,durationMs:d,startTimeMs:b,percentOfTrace:f,nodeType:c,hasError:h5(a),span:a}),k++,n(a.id,1)}}let{major:o,minor:p}=function(a){let b=a/6,c=[1,2,5,10,20,50,100,200,500,1e3,2e3,5e3,1e4,2e4,3e4,6e4,12e4,3e5,6e5],d=c[0];for(let a of c){if(a>=b){d=a;break}d=a}let e=d/5;return{major:d,minor:e}}(g),q=[];if(g>0){for(let a=0;a<=g;a+=p){let b=a%o==0;q.push({position:a/g,label:b?h4(a):"",isMajor:b})}(0===q.length||q[q.length-1].position<1)&&q.push({position:1,label:h4(g),isMajor:!0})}return{layouts:j,metrics:{totalDurationMs:g,startTimeMs:e,endTimeMs:f,spanCount:b.length,maxDepth:l,typeBreakdown:m},rulerTicks:q}})(a),[a]),C=Math.max(400,n-is-2*ir),D=z.length*ip,E=D+(d?iq:0)+2*ir,{viewState:F,zoomIn:G,zoomOut:H,resetZoom:I,onWheel:J,panHandlers:K}=function(a=1e3,b=500){let[c,d]=(0,k.useState)(()=>({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})),e=(0,k.useRef)(null),f=(0,k.useCallback)(a=>Math.max(h8,Math.min(h9,a)),[]),g=(0,k.useCallback)(()=>{d(a=>{let b=f(1.2*a.scale),c=a.scale/b,d=a.viewBox.x+a.viewBox.width/2,e=a.viewBox.y+a.viewBox.height/2,g=a.viewBox.width*c,h=a.viewBox.height*c;return{...a,viewBox:{x:d-g/2,y:e-h/2,width:g,height:h},scale:b}})},[f]),h=(0,k.useCallback)(()=>{d(a=>{let b=f(a.scale/1.2),c=a.scale/b,d=a.viewBox.x+a.viewBox.width/2,e=a.viewBox.y+a.viewBox.height/2,g=a.viewBox.width*c,h=a.viewBox.height*c;return{...a,viewBox:{x:d-g/2,y:e-h/2,width:g,height:h},scale:b}})},[f]),i=(0,k.useCallback)(()=>{d({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})},[a,b]),j=(0,k.useCallback)(a=>{d(b=>{let c=f(a),d=b.scale/c,e=b.viewBox.x+b.viewBox.width/2,g=b.viewBox.y+b.viewBox.height/2,h=b.viewBox.width*d,i=b.viewBox.height*d;return{...b,viewBox:{x:e-h/2,y:g-i/2,width:h,height:i},scale:c}})},[f]),l=(0,k.useCallback)(a=>{if(!a.ctrlKey&&!a.metaKey)return;try{a.preventDefault()}catch{}let b=a.currentTarget;if(!b)return;let c=b.getBoundingClientRect();if(!c||0===c.width||0===c.height)return;let e=a.deltaY>0?-1:1;d(b=>{let d=f(b.scale*(e>0?1.2:.8333333333333334));if(d===b.scale)return b;let g=b.scale/d,h=a.clientX-c.left,i=a.clientY-c.top,j=b.viewBox.x+h/c.width*b.viewBox.width,k=b.viewBox.y+i/c.height*b.viewBox.height,l=b.viewBox.width*g,m=b.viewBox.height*g,n=j-h/c.width*l,o=k-i/c.height*m;return{...b,viewBox:{x:n,y:o,width:l,height:m},scale:d}})},[f]),m=(0,k.useCallback)(a=>{0===a.button&&(a.preventDefault(),d(b=>(e.current={x:a.clientX,y:a.clientY,viewBoxX:b.viewBox.x,viewBoxY:b.viewBox.y},{...b,isPanning:!0})))},[]),n=(0,k.useCallback)(a=>{if(!e.current)return;let b=a.currentTarget.getBoundingClientRect(),c=a.clientX-e.current.x,f=a.clientY-e.current.y;d(a=>{let d=c/b.width*a.viewBox.width,g=f/b.height*a.viewBox.height;return{...a,viewBox:{...a.viewBox,x:e.current.viewBoxX-d,y:e.current.viewBoxY-g}}})},[]);return{viewState:c,zoomIn:g,zoomOut:h,resetZoom:i,setScale:j,onWheel:l,panHandlers:{onMouseDown:m,onMouseMove:n,onMouseUp:(0,k.useCallback)(()=>{e.current=null,d(a=>({...a,isPanning:!1}))},[]),onMouseLeave:(0,k.useCallback)(()=>{e.current&&(e.current=null,d(a=>({...a,isPanning:!1})))},[])}}}(C,D),{visibleLayouts:L}=(0,k.useMemo)(()=>{if(z.length<100)return{visibleLayouts:z,startIndex:0,endIndex:z.length};let a=Math.floor((u-(d?iq:0)-ir)/ip),b=Math.ceil(x/ip),c=Math.max(0,a-5),e=Math.min(z.length,a+b+5);return{visibleLayouts:z.slice(c,e),startIndex:c,endIndex:e}},[z,u,x,d]);(0,k.useEffect)(()=>{let a=m.current;if(!a)return;let b=new ResizeObserver(a=>{for(let b of a)p(b.contentRect.width),y(b.contentRect.height)}),c=()=>{v(a.scrollTop)};return b.observe(a),a.addEventListener("scroll",c,{passive:!0}),p(a.offsetWidth),y(a.offsetHeight),()=>{b.disconnect(),a.removeEventListener("scroll",c)}},[]),(0,k.useEffect)(()=>{if(!b||b===r.current){r.current=b;return}r.current=b;let a=m.current;if(!a)return;let c=z.find(a=>a.spanId===b);if(!c)return;let e=ir+(d?iq:0)+c.row*ip,f=a.getBoundingClientRect(),g=a.scrollTop,h=g+f.height;(e<g||e+ip>h)&&a.scrollTo({top:e-f.height/2+ip/2,behavior:"smooth"})},[b,z,d]);let M=(0,k.useCallback)(a=>{c?.(a)},[c]),N=(0,k.useCallback)((a,b)=>{t({layout:a,position:{x:b.clientX,y:b.clientY}})},[]),O=(0,k.useCallback)(()=>{t({layout:null,position:null})},[]),[Q,R]=(0,k.useState)(-1),S=(0,k.useCallback)(a=>{if(0!==z.length)switch(a.key){case"ArrowDown":a.preventDefault(),R(a=>a<z.length-1?a+1:a);break;case"ArrowUp":a.preventDefault(),R(a=>a>0?a-1:0);break;case"Enter":case" ":if(a.preventDefault(),Q>=0&&Q<z.length){let a=z[Q];a&&M(a.spanId)}break;case"Home":a.preventDefault(),R(0);break;case"End":a.preventDefault(),R(z.length-1)}},[z,Q,M]);return i?(0,l.jsx)(o.default,{sx:{p:2,...h},children:(0,l.jsx)(w.A,{variant:"rectangular",height:200})}):0===a.length?(0,l.jsx)(o.default,{sx:{p:4,display:"flex",alignItems:"center",justifyContent:"center",color:"text.secondary",...h},children:(0,l.jsx)(q.A,{variant:"body2",children:"No spans to display"})}):(0,l.jsx)(io,{children:(0,l.jsxs)(o.default,{ref:m,sx:{width:"100%",height:"100%",minHeight:0,flex:1,overflow:"auto",backgroundColor:j.palette.background.default,position:"relative",...h},children:[f&&(0,l.jsxs)(o.default,{sx:{position:"sticky",top:4,right:4,zIndex:10,display:"flex",gap:.5,justifyContent:"flex-end",pr:1,pt:.5},children:[(0,l.jsx)(Y.A,{title:"Zoom in",children:(0,l.jsx)(X.A,{size:"small",onClick:G,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom in",children:"+"})}),(0,l.jsx)(Y.A,{title:"Zoom out",children:(0,l.jsx)(X.A,{size:"small",onClick:H,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom out",children:"−"})}),(0,l.jsx)(Y.A,{title:"Fit all",children:(0,l.jsx)(X.A,{size:"small",onClick:I,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:12},"aria-label":"Fit all",children:"⊡"})})]}),(0,l.jsxs)("svg",{width:n,height:E,viewBox:1!==F.scale?`${F.viewBox.x} ${F.viewBox.y} ${F.viewBox.width} ${F.viewBox.height}`:void 0,style:{display:"block",cursor:g&&F.isPanning?"grabbing":g?"grab":"default",outline:"none"},role:"grid","aria-label":"Trace timeline",tabIndex:0,onKeyDown:S,onWheel:f?J:void 0,...g?K:{},children:[d&&(0,l.jsx)("g",{transform:`translate(${is+ir}, ${ir})`,children:(0,l.jsx)(ig,{ticks:B,width:C})}),(0,l.jsx)("g",{transform:`translate(${ir}, ${ir+(d?iq:0)})`,children:L.map(a=>(0,l.jsx)("g",{children:(0,l.jsx)("text",{x:12*a.depth,y:a.row*ip+ip/2,dominantBaseline:"central",fontSize:11,fill:j.palette.text.primary,style:{userSelect:"none",cursor:"pointer"},onClick:()=>M(a.spanId),children:function(a,b){let c=Math.floor(b/6);return a.length<=c?a:a.slice(0,c-3)+"..."}(a.name,is-12*a.depth-8)})},`label-${a.spanId}`))}),(0,l.jsxs)("g",{transform:`translate(${is+ir}, ${ir+(d?iq:0)})`,children:[B.filter(a=>a.isMajor).map((a,b)=>(0,l.jsx)("line",{x1:a.position*C,y1:0,x2:a.position*C,y2:D,stroke:j.palette.divider,strokeWidth:.5,opacity:.5},`grid-${b}`)),L.map(a=>(0,l.jsx)("rect",{x:0,y:a.row*ip,width:C,height:ip,fill:a.row%2==0?"transparent":j.palette.action.hover,opacity:.3},`row-bg-${a.spanId}`)),L.map(a=>{let c=z.findIndex(b=>b.spanId===a.spanId);return(0,l.jsx)(id,{layout:a,isSelected:b===a.spanId,isFocused:Q===c,onSelect:M,onMouseEnter:N,onMouseLeave:O,timelineWidth:C},a.spanId)})]})]}),e&&(0,l.jsx)(im,{typeBreakdown:A.typeBreakdown,showCounts:!0}),(0,l.jsx)(ij,{layout:s.layout,position:s.position,visible:null!==s.layout})]})})}),iu=({children:a})=>(0,l.jsx)(r.A,{width:"100%",height:"100%",overflow:"hidden",children:a}),iv=(0,k.createContext)(void 0),iw=({children:a})=>{let{selectedSpan:b}=hA(),{activeTab:c,setActiveTab:d,tabs:e}=(({span:a})=>{let[b,c]=(0,k.useState)("attributes"),[d,e]=(0,k.useState)([]),f=(0,k.useMemo)(()=>a?.data?.type==="GENERATION"||!!a?.data?.model,[a?.data?.type,a?.data?.model]);return(0,k.useEffect)(()=>{if(a?.id){let a=[];f?(a.push({value:"inputOutput",label:"Input/Output"}),c("inputOutput")):c("evaluation"),a.push({value:"evaluation",label:"Evaluations"}),a.push({value:"attributes",label:"Attributes"}),e(a)}},[a?.id,f]),(0,k.useEffect)(()=>{"inputOutput"===b&&f||"evaluation"===b||"attributes"===b||(f?c("inputOutput"):c("evaluation"))},[b,f]),{activeTab:b,setActiveTab:c,tabs:d,isLLMCall:f}})({span:b||void 0});return b?(0,l.jsx)(iv.Provider,{value:{span:b,activeTab:c,setActiveTab:d,tabs:e},children:a}):null},ix=()=>{let a=(0,k.useContext)(iv);if(!a)throw Error("useSpanInfo must be used within a SpanInfoProvider");return a},iy=()=>{let{span:a}=ix(),{t:b}=hA(),c=a.data.model;return(0,l.jsxs)(r.A,{direction:"row",spacing:3,sx:{px:2,py:1.5,borderBottom:1,borderColor:"divider"},children:[(0,l.jsxs)(q.A,{variant:"subtitle2",children:[(0,l.jsxs)(q.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("spanId"),":"]})," ",a.id]}),c&&(0,l.jsxs)(q.A,{variant:"subtitle2",children:[(0,l.jsxs)(q.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("modelName"),":"]})," ",c]})]})},iz=({children:a})=>{let{activeTab:b,tabs:c,setActiveTab:d}=ix();return(0,l.jsxs)(ae.Ay,{value:b,children:[(0,l.jsx)(af.A,{onChange:(a,b)=>d(b),scrollButtons:!1,sx:{borderBottom:1,borderColor:"divider"},children:c.map(a=>(0,l.jsx)(ad.A,{label:a.label,value:a.value},a.value))}),a]})},iA=new class{register(a,b=0){this.transformers.push({transformer:a,priority:b}),this.transformers.sort((a,b)=>b.priority-a.priority)}transform(a,b){for(let{transformer:c}of this.transformers)try{let d=c.transform(a,b);if(null!==d)return d}catch(a){console.warn("Transformer error:",a)}return a}constructor(){this.transformers=[]}},iB=class{transform(a,b){if(!b)return null;let c={},d=!1;if(b.model&&(c.model={id:b.model},d=!0),b.settings)try{let a="string"==typeof b.settings?JSON.parse(b.settings):b.settings;a&&Object.keys(a).length>0&&(c.settings=a,d=!0)}catch(a){}let e={};void 0!==b.inputTokens&&(e.inputTokens=b.inputTokens,d=!0),void 0!==b.outputTokens&&(e.outputTokens=b.outputTokens,d=!0),void 0!==b.cost&&(e.cost=b.cost,d=!0),Object.keys(e).length>0&&(c.usage=e);let f={};if(b.finishReason&&(f.finishReason=b.finishReason,d=!0),b.output&&(f.text=b.output,d=!0),b.outputObject)try{let a="string"==typeof b.outputObject?JSON.parse(b.outputObject):b.outputObject;a&&(f.schema=a,d=!0)}catch(a){}if(Object.keys(f).length>0&&(c.response=f),b.toolCalls)try{let a="string"==typeof b.toolCalls?JSON.parse(b.toolCalls):b.toolCalls;if(Array.isArray(a)&&a.length>0){let b=a[0];c.tool={name:b.toolName||b.name,id:b.toolCallId||b.id,args:b.args||b.input,result:b.result},d=!0}}catch(a){}if(b.props)try{c.props="string"==typeof b.props?JSON.parse(b.props):b.props,d=!0}catch{c.props=b.props,d=!0}if(b.metadata)try{let a="string"==typeof b.metadata?JSON.parse(b.metadata):b.metadata;a&&Object.keys(a).length>0&&(c.metadata=a,d=!0)}catch(a){}return d?c:null}},iC={REQUEST_MODEL:"gen_ai.request.model",AI_MODEL_ID:"ai.model.id",AI_OPERATION_ID:"ai.operationId",AI_OPERATION_NAME:"operation.name",AI_MODEL_PROVIDER:"ai.model.provider",GEN_AI_REQUEST_MAX_TOKENS:"gen_ai.request.max_tokens",AI_SETTINGS_MAX_TOKENS:"ai.settings.maxTokens",GEN_AI_REQUEST_TEMPERATURE:"gen_ai.request.temperature",AI_SETTINGS_TEMPERATURE:"ai.settings.temperature",GEN_AI_REQUEST_TOP_P:"gen_ai.request.top_p",AI_SETTINGS_TOP_P:"ai.settings.topP",GEN_AI_REQUEST_PRESENCE_PENALTY:"gen_ai.request.presence_penalty",AI_SETTINGS_PRESENCE_PENALTY:"ai.settings.presencePenalty",AI_TOOL_CALL_NAME:"ai.toolCall.name",AI_TOOL_CALL_ID:"ai.toolCall.id",AI_TOOL_CALL_ARGS:"ai.toolCall.args",AI_TOOL_CALL_RESULT:"ai.toolCall.result",AI_TELEMETRY_METADATA_PREFIX:"ai.telemetry.metadata.",AI_TELEMETRY_METADATA_PROPS:"ai.telemetry.metadata.props",AI_RESPONSE_FINISH_REASON:"ai.response.finishReason",GEN_AI_RESPONSE_FINISH_REASONS:"gen_ai.response.finish_reasons",AI_RESPONSE_TEXT:"ai.response.text",AI_RESPONSE_OBJECT:"ai.response.object",GEN_AI_USAGE_INPUT_TOKENS:"gen_ai.usage.input_tokens",AI_USAGE_PROMPT_TOKENS:"ai.usage.promptTokens",GEN_AI_USAGE_OUTPUT_TOKENS:"gen_ai.usage.output_tokens",AI_USAGE_COMPLETION_TOKENS:"ai.usage.completionTokens",GEN_AI_USAGE_COST:"gen_ai.usage.cost"},iD=class{transform(a,b){try{let b={},c=!1;a[iC.AI_OPERATION_ID]&&(b.operation={id:a[iC.AI_OPERATION_ID],name:a[iC.AI_OPERATION_NAME]},c=!0),(a[iC.REQUEST_MODEL]||a[iC.AI_MODEL_ID])&&(b.model={id:a[iC.REQUEST_MODEL]||a[iC.AI_MODEL_ID],provider:a[iC.AI_MODEL_PROVIDER]},c=!0);let d={};(a[iC.GEN_AI_REQUEST_MAX_TOKENS]||a[iC.AI_SETTINGS_MAX_TOKENS])&&(d.maxTokens=a[iC.GEN_AI_REQUEST_MAX_TOKENS]||a[iC.AI_SETTINGS_MAX_TOKENS],c=!0),(a[iC.GEN_AI_REQUEST_TEMPERATURE]||a[iC.AI_SETTINGS_TEMPERATURE])&&(d.temperature=a[iC.GEN_AI_REQUEST_TEMPERATURE]||a[iC.AI_SETTINGS_TEMPERATURE],c=!0),(a[iC.GEN_AI_REQUEST_TOP_P]||a[iC.AI_SETTINGS_TOP_P])&&(d.topP=a[iC.GEN_AI_REQUEST_TOP_P]||a[iC.AI_SETTINGS_TOP_P],c=!0),(a[iC.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iC.AI_SETTINGS_PRESENCE_PENALTY])&&(d.presencePenalty=a[iC.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iC.AI_SETTINGS_PRESENCE_PENALTY],c=!0),Object.keys(d).length>0&&(b.settings=d),a[iC.AI_TOOL_CALL_NAME]&&(b.tool={name:a[iC.AI_TOOL_CALL_NAME],id:a[iC.AI_TOOL_CALL_ID],args:a[iC.AI_TOOL_CALL_ARGS]?JSON.parse(a[iC.AI_TOOL_CALL_ARGS]):void 0,result:a[iC.AI_TOOL_CALL_RESULT]},c=!0);let e={};if(Object.entries(a).forEach(([a,b])=>{if(a.startsWith(iC.AI_TELEMETRY_METADATA_PREFIX)){let d=a.replace(iC.AI_TELEMETRY_METADATA_PREFIX,"");if("props"!==d){try{e[d]=JSON.parse(b)}catch{e[d]=b}c=!0}}}),Object.keys(e).length>0&&(b.metadata=e),a[iC.AI_TELEMETRY_METADATA_PROPS])try{b.props=JSON.parse(a[iC.AI_TELEMETRY_METADATA_PROPS]),c=!0}catch{b.props=a[iC.AI_TELEMETRY_METADATA_PROPS],c=!0}let f={};if((a[iC.AI_RESPONSE_FINISH_REASON]||a[iC.GEN_AI_RESPONSE_FINISH_REASONS])&&(f.finishReason=a[iC.AI_RESPONSE_FINISH_REASON]||a[iC.GEN_AI_RESPONSE_FINISH_REASONS],c=!0),a[iC.AI_RESPONSE_TEXT]&&(f.text=a[iC.AI_RESPONSE_TEXT],c=!0),a[iC.AI_RESPONSE_OBJECT])try{f.schema=JSON.parse(a[iC.AI_RESPONSE_OBJECT]),c=!0}catch(a){}Object.keys(f).length>0&&(b.response=f);let g={};return(a[iC.GEN_AI_USAGE_INPUT_TOKENS]||a[iC.AI_USAGE_PROMPT_TOKENS])&&(g.inputTokens=a[iC.GEN_AI_USAGE_INPUT_TOKENS]||a[iC.AI_USAGE_PROMPT_TOKENS],c=!0),(a[iC.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iC.AI_USAGE_COMPLETION_TOKENS])&&(g.outputTokens=a[iC.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iC.AI_USAGE_COMPLETION_TOKENS],c=!0),a[iC.GEN_AI_USAGE_COST]&&(g.cost=a[iC.GEN_AI_USAGE_COST],c=!0),Object.keys(g).length>0&&(b.usage=g),c?b:null}catch(a){return null}}};iA.register(new iB,10),iA.register(new iD,5);var iE=({attributes:a})=>(0,l.jsx)(o.default,{position:"relative",children:(0,l.jsx)(o.default,{position:"absolute",left:0,right:0,sx:{width:"100%",overflow:"hidden","& .cm-editor":{borderRadius:1,fontSize:"14px",maxWidth:"100%",overflow:"hidden"}},children:(0,l.jsx)(G.Ay,{value:JSON.stringify(a,null,2),extensions:[(0,ah.Pq)()],basicSetup:{lineNumbers:!0,foldGutter:!0,highlightActiveLine:!1,dropCursor:!1},editable:!1,style:{fontSize:"13px",maxWidth:"100%"},height:"100%"})})}),iF=()=>{let{transformedAttributes:a}=(()=>{let{selectedSpan:a}=hA(),b=(0,k.useMemo)(()=>{if(!a?.data?.attributes)return{};try{return JSON.parse(a.data.attributes)}catch{return{}}},[a]),c=(0,k.useMemo)(()=>((a,b)=>{try{return iA.transform(a,b)}catch(b){return a}})(b,a?.data),[b,a?.data]);return{rawAttributes:b,transformedAttributes:c,isLoading:!a}})();return(0,l.jsx)(({children:a})=>(0,l.jsx)(ag.A,{value:"attributes",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),{children:(0,l.jsx)(iE,{attributes:a})})},iG=({children:a})=>(0,l.jsx)(o.default,{component:"pre",sx:{backgroundColor:"grey.100",p:2,borderRadius:1,overflow:"auto",mb:2,"& code":{fontFamily:"monospace",whiteSpace:"break-spaces",display:"block"}},children:(0,l.jsx)("code",{children:a})}),iH=({content:a})=>(0,l.jsx)(al.oz,{components:{p:({children:a})=>(0,l.jsx)(q.A,{variant:"body2",sx:{whiteSpace:"pre-wrap",mb:1},children:a}),pre:({children:a})=>(0,l.jsx)(iG,{children:a}),code:a=>(0,l.jsx)(q.A,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",p:.5,borderRadius:.5},children:a.children}),strong:({children:a})=>(0,l.jsx)(q.A,{component:"span",sx:{fontWeight:"bold",color:"primary.main"},children:a})},children:a}),iI=({prompt:a})=>{let{t:b}=hA(),c=(a=>"string"==typeof a?a:a.map(a=>"string"==typeof a?a:"text"===a.type?a.text:"tool-call"===a.type||"tool-result"===a.type?(a=>"tool-call"===a.type?`**Tool Call**: \`${a.toolName}\`
|
|
1
|
+
exports.id=478,exports.ids=[478],exports.modules={3395:(a,b,c)=>{"use strict";c.d(b,{BK:()=>hM,Ds:()=>iF,Eh:()=>hH,Ek:()=>hN,FQ:()=>iz,IO:()=>iN,K2:()=>ca,L8:()=>hx,LE:()=>hJ,Lh:()=>iM,Ow:()=>hv,Q$:()=>iy,QK:()=>hK,V5:()=>iT,Zc:()=>it,_B:()=>hW,_h:()=>h2,eP:()=>iu,ep:()=>hP,gF:()=>iw,lv:()=>ht,qx:()=>hz,rr:()=>hO,sK:()=>hL,t3:()=>hG,uz:()=>iR,vG:()=>hI});var d,e,f,g,h,i=c(72396),j=c(86670),k=c(31768),l=c(78157),m=c(89508),n=c(86841),o=c(77438),p=c(26743),q=c(90410),r=c(28669),s=c(17692),t=c(98770),u=c(13666),v=c(33372),w=c(21127),x=c(73517),y=c(18236),z=c(21335),A=c(84155),B=c(40053),C=c(66075),D=c(74034),E=c(50339),F=c(37217),G=c(79103),H=c(39880),I=c(81008),J=c(7502),K=c(20776),L=c(13621),M=c(37703),N=c(5955),O=c(77986),P=c(53678),Q=c(51701),R=c(80945),S=c(93474),T=c(13647),U=c(48244),V=c(48128),W=c(85506),X=c(54862),Y=c(39553),Z=c(24672),$=c(87598),_=c(2952),aa=c(53480);c(41973);var ab=c(31933),ac=c(73995),ad=c(48756),ae=c(96262),af=c(50392),ag=c(36473),ah=c(52830),ai=c(22749),aj=c(80142),ak=c(27132),al=c(40975),am=c(20969);c(13395);var an=Object.create,ao=Object.defineProperty,ap=Object.getOwnPropertyDescriptor,aq=Object.getOwnPropertyNames,ar=Object.getPrototypeOf,as=Object.prototype.hasOwnProperty,at=(a,b)=>function(){return b||(0,a[aq(a)[0]])((b={exports:{}}).exports,b),b.exports},au=(a,b,c)=>(c=null!=a?an(ar(a)):{},((a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let e of aq(b))as.call(a,e)||e===c||ao(a,e,{get:()=>b[e],enumerable:!(d=ap(b,e))||d.enumerable});return a})(!b&&a&&a.__esModule?c:ao(c,"default",{value:a,enumerable:!0}),a)),av=at({"../../node_modules/react-is/cjs/react-is.production.min.js"(a){var b="function"==typeof Symbol&&Symbol.for,c=b?Symbol.for("react.element"):60103,d=b?Symbol.for("react.portal"):60106,e=b?Symbol.for("react.fragment"):60107,f=b?Symbol.for("react.strict_mode"):60108,g=b?Symbol.for("react.profiler"):60114,h=b?Symbol.for("react.provider"):60109,i=b?Symbol.for("react.context"):60110,j=b?Symbol.for("react.async_mode"):60111,k=b?Symbol.for("react.concurrent_mode"):60111,l=b?Symbol.for("react.forward_ref"):60112,m=b?Symbol.for("react.suspense"):60113,n=b?Symbol.for("react.suspense_list"):60120,o=b?Symbol.for("react.memo"):60115,p=b?Symbol.for("react.lazy"):60116,q=b?Symbol.for("react.block"):60121,r=b?Symbol.for("react.fundamental"):60117,s=b?Symbol.for("react.responder"):60118,t=b?Symbol.for("react.scope"):60119;function u(a){if("object"==typeof a&&null!==a){var b=a.$$typeof;switch(b){case c:switch(a=a.type){case j:case k:case e:case g:case f:case m:return a;default:switch(a=a&&a.$$typeof){case i:case l:case p:case o:case h:return a;default:return b}}case d:return b}}}function v(a){return u(a)===k}a.AsyncMode=j,a.ConcurrentMode=k,a.ContextConsumer=i,a.ContextProvider=h,a.Element=c,a.ForwardRef=l,a.Fragment=e,a.Lazy=p,a.Memo=o,a.Portal=d,a.Profiler=g,a.StrictMode=f,a.Suspense=m,a.isAsyncMode=function(a){return v(a)||u(a)===j},a.isConcurrentMode=v,a.isContextConsumer=function(a){return u(a)===i},a.isContextProvider=function(a){return u(a)===h},a.isElement=function(a){return"object"==typeof a&&null!==a&&a.$$typeof===c},a.isForwardRef=function(a){return u(a)===l},a.isFragment=function(a){return u(a)===e},a.isLazy=function(a){return u(a)===p},a.isMemo=function(a){return u(a)===o},a.isPortal=function(a){return u(a)===d},a.isProfiler=function(a){return u(a)===g},a.isStrictMode=function(a){return u(a)===f},a.isSuspense=function(a){return u(a)===m},a.isValidElementType=function(a){return"string"==typeof a||"function"==typeof a||a===e||a===k||a===g||a===f||a===m||a===n||"object"==typeof a&&null!==a&&(a.$$typeof===p||a.$$typeof===o||a.$$typeof===h||a.$$typeof===i||a.$$typeof===l||a.$$typeof===r||a.$$typeof===s||a.$$typeof===t||a.$$typeof===q)},a.typeOf=u}});at({"../../node_modules/react-is/cjs/react-is.development.js"(a){}});var aw=at({"../../node_modules/react-is/index.js"(a,b){b.exports=av()}}),ax=at({"../../node_modules/object-assign/index.js"(a,b){var c=Object.getOwnPropertySymbols,d=Object.prototype.hasOwnProperty,e=Object.prototype.propertyIsEnumerable;b.exports=!function(){try{if(!Object.assign)return!1;var a=new String("abc");if(a[5]="de","5"===Object.getOwnPropertyNames(a)[0])return!1;for(var b={},c=0;c<10;c++)b["_"+String.fromCharCode(c)]=c;var d=Object.getOwnPropertyNames(b).map(function(a){return b[a]});if("0123456789"!==d.join(""))return!1;var e={};if("abcdefghijklmnopqrst".split("").forEach(function(a){e[a]=a}),"abcdefghijklmnopqrst"!==Object.keys(Object.assign({},e)).join(""))return!1;return!0}catch(a){return!1}}()?function(a,b){for(var f,g,h=function(a){if(null==a)throw TypeError("Object.assign cannot be called with null or undefined");return Object(a)}(a),i=1;i<arguments.length;i++){for(var j in f=Object(arguments[i]))d.call(f,j)&&(h[j]=f[j]);if(c){g=c(f);for(var k=0;k<g.length;k++)e.call(f,g[k])&&(h[g[k]]=f[g[k]])}}return h}:Object.assign}}),ay=at({"../../node_modules/prop-types/lib/ReactPropTypesSecret.js"(a,b){b.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}}),az=at({"../../node_modules/prop-types/lib/has.js"(a,b){b.exports=Function.call.bind(Object.prototype.hasOwnProperty)}}),aA=at({"../../node_modules/prop-types/checkPropTypes.js"(a,b){function c(a,b,c,d,e){}c.resetWarningCache=function(){},b.exports=c}});at({"../../node_modules/prop-types/factoryWithTypeCheckers.js"(a,b){var c=aw(),d=ax(),e=ay(),f=az(),g=aA(),h=function(){};function i(){return null}b.exports=function(a,b){var j="function"==typeof Symbol&&Symbol.iterator,k="<<anonymous>>",l={array:o("array"),bigint:o("bigint"),bool:o("boolean"),func:o("function"),number:o("number"),object:o("object"),string:o("string"),symbol:o("symbol"),any:n(i),arrayOf:function(a){return n(function(b,c,d,f,g){if("function"!=typeof a)return new m("Property `"+g+"` of component `"+d+"` has invalid PropType notation inside arrayOf.");var h=b[c];if(!Array.isArray(h))return new m("Invalid "+f+" `"+g+"` of type "+("`"+q(h)+"` supplied to `")+d+"`, expected an array.");for(var i=0;i<h.length;i++){var j=a(h,i,d,f,g+"["+i+"]",e);if(j instanceof Error)return j}return null})},element:n(function(b,c,d,e,f){var g=b[c];return a(g)?null:new m("Invalid "+e+" `"+f+"` of type "+("`"+q(g)+"` supplied to `")+d+"`, expected a single ReactElement.")}),elementType:n(function(a,b,d,e,f){var g=a[b];return c.isValidElementType(g)?null:new m("Invalid "+e+" `"+f+"` of type "+("`"+q(g)+"` supplied to `")+d+"`, expected a single ReactElement type.")}),instanceOf:function(a){return n(function(b,c,d,e,f){if(!(b[c]instanceof a)){var g,h=a.name||k;return new m("Invalid "+e+" `"+f+"` of type "+("`"+((g=b[c]).constructor&&g.constructor.name?g.constructor.name:k)+"` supplied to `")+d+"`, expected instance of `"+h+"`.")}return null})},node:n(function(b,c,d,e,f){return!function b(c){switch(typeof c){case"number":case"string":case"undefined":return!0;case"boolean":return!c;case"object":if(Array.isArray(c))return c.every(b);if(null===c||a(c))return!0;var d=function(a){var b=a&&(j&&a[j]||a["@@iterator"]);if("function"==typeof b)return b}(c);if(!d)return!1;var e,f=d.call(c);if(d!==c.entries){for(;!(e=f.next()).done;)if(!b(e.value))return!1}else for(;!(e=f.next()).done;){var g=e.value;if(g&&!b(g[1]))return!1}return!0;default:return!1}}(b[c])?new m("Invalid "+e+" `"+f+"` supplied to `"+d+"`, expected a ReactNode."):null}),objectOf:function(a){return n(function(b,c,d,g,h){if("function"!=typeof a)return new m("Property `"+h+"` of component `"+d+"` has invalid PropType notation inside objectOf.");var i=b[c],j=q(i);if("object"!==j)return new m("Invalid "+g+" `"+h+"` of type "+("`"+j+"` supplied to `")+d+"`, expected an object.");for(var k in i)if(f(i,k)){var l=a(i,k,d,g,h+"."+k,e);if(l instanceof Error)return l}return null})},oneOf:function(a){return Array.isArray(a)?n(function(b,c,d,e,f){for(var g,h=b[c],i=0;i<a.length;i++)if(h===(g=a[i])?0!==h||1/h==1/g:h!=h&&g!=g)return null;var j=JSON.stringify(a,function(a,b){return"symbol"===r(b)?String(b):b});return new m("Invalid "+e+" `"+f+"` of value `"+String(h)+"` "+("supplied to `"+d+"`, expected one of ")+j+".")}):i},oneOfType:function(a){if(!Array.isArray(a))return i;for(var b=0;b<a.length;b++){var c=a[b];if("function"!=typeof c)return h("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+function(a){var b=r(a);switch(b){case"array":case"object":return"an "+b;case"boolean":case"date":case"regexp":return"a "+b;default:return b}}(c)+" at index "+b+"."),i}return n(function(b,c,d,g,h){for(var i=[],j=0;j<a.length;j++){var k=(0,a[j])(b,c,d,g,h,e);if(null==k)return null;k.data&&f(k.data,"expectedType")&&i.push(k.data.expectedType)}return new m("Invalid "+g+" `"+h+"` supplied to "+("`"+d+"`")+(i.length>0?", expected one of type ["+i.join(", ")+"]":"")+".")})},shape:function(a){return n(function(b,c,d,f,g){var h=b[c],i=q(h);if("object"!==i)return new m("Invalid "+f+" `"+g+"` of type `"+i+"` supplied to `"+d+"`, expected `object`.");for(var j in a){var k=a[j];if("function"!=typeof k)return p(d,f,g,j,r(k));var l=k(h,j,d,f,g+"."+j,e);if(l)return l}return null})},exact:function(a){return n(function(b,c,g,h,i){var j=b[c],k=q(j);if("object"!==k)return new m("Invalid "+h+" `"+i+"` of type `"+k+"` supplied to `"+g+"`, expected `object`.");var l=d({},b[c],a);for(var n in l){var o=a[n];if(f(a,n)&&"function"!=typeof o)return p(g,h,i,n,r(o));if(!o)return new m("Invalid "+h+" `"+i+"` key `"+n+"` supplied to `"+g+"`.\nBad object: "+JSON.stringify(b[c],null," ")+"\nValid keys: "+JSON.stringify(Object.keys(a),null," "));var s=o(j,n,g,h,i+"."+n,e);if(s)return s}return null})}};function m(a,b){this.message=a,this.data=b&&"object"==typeof b?b:{},this.stack=""}function n(a){function c(c,d,f,g,h,i,j){if((g=g||k,i=i||f,j!==e)&&b){var l=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw l.name="Invariant Violation",l}return null!=d[f]?a(d,f,g,h,i):c?new m(null===d[f]?"The "+h+" `"+i+"` is marked as required in `"+g+"`, but its value is `null`.":"The "+h+" `"+i+"` is marked as required in `"+g+"`, but its value is `undefined`."):null}var d=c.bind(null,!1);return d.isRequired=c.bind(null,!0),d}function o(a){return n(function(b,c,d,e,f,g){var h=b[c];return q(h)!==a?new m("Invalid "+e+" `"+f+"` of type "+("`"+r(h)+"` supplied to `")+d+"`, expected `"+a+"`.",{expectedType:a}):null})}function p(a,b,c,d,e){return new m((a||"React class")+": "+b+" type `"+c+"."+d+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+e+"`.")}function q(a){var b=typeof a;return Array.isArray(a)?"array":a instanceof RegExp?"object":"symbol"===b||a&&("Symbol"===a["@@toStringTag"]||"function"==typeof Symbol&&a instanceof Symbol)?"symbol":b}function r(a){if(null==a)return""+a;var b=q(a);if("object"===b){if(a instanceof Date)return"date";else if(a instanceof RegExp)return"regexp"}return b}return m.prototype=Error.prototype,l.checkPropTypes=g,l.resetWarningCache=g.resetWarningCache,l.PropTypes=l,l}}});var aB=at({"../../node_modules/prop-types/factoryWithThrowingShims.js"(a,b){var c=ay();function d(){}function e(){}e.resetWarningCache=d,b.exports=function(){function a(a,b,d,e,f,g){if(g!==c){var h=Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw h.name="Invariant Violation",h}}function b(){return a}a.isRequired=a;var f={array:a,bigint:a,bool:a,func:a,number:a,object:a,string:a,symbol:a,any:a,arrayOf:b,element:a,elementType:a,instanceOf:b,node:a,objectOf:b,oneOf:b,oneOfType:b,shape:b,exact:b,checkPropTypes:e,resetWarningCache:d};return f.PropTypes=f,f}}}),aC=at({"../../node_modules/prop-types/index.js"(a,b){b.exports=aB()()}}),aD=at({"../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.production.js"(a){var b=Symbol.for("react.transitional.element"),c=Symbol.for("react.portal"),d=Symbol.for("react.fragment"),e=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),g=Symbol.for("react.consumer"),h=Symbol.for("react.context"),i=Symbol.for("react.forward_ref"),j=Symbol.for("react.suspense"),k=Symbol.for("react.suspense_list"),l=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),n=Symbol.for("react.view_transition"),o=Symbol.for("react.client.reference");function p(a){if("object"==typeof a&&null!==a){var o=a.$$typeof;switch(o){case b:switch(a=a.type){case d:case f:case e:case j:case k:case n:return a;default:switch(a=a&&a.$$typeof){case h:case i:case m:case l:case g:return a;default:return o}}case c:return o}}}a.ContextConsumer=g,a.ContextProvider=h,a.Element=b,a.ForwardRef=i,a.Fragment=d,a.Lazy=m,a.Memo=l,a.Portal=c,a.Profiler=f,a.StrictMode=e,a.Suspense=j,a.SuspenseList=k,a.isContextConsumer=function(a){return p(a)===g},a.isContextProvider=function(a){return p(a)===h},a.isElement=function(a){return"object"==typeof a&&null!==a&&a.$$typeof===b},a.isForwardRef=function(a){return p(a)===i},a.isFragment=function(a){return p(a)===d},a.isLazy=function(a){return p(a)===m},a.isMemo=function(a){return p(a)===l},a.isPortal=function(a){return p(a)===c},a.isProfiler=function(a){return p(a)===f},a.isStrictMode=function(a){return p(a)===e},a.isSuspense=function(a){return p(a)===j},a.isSuspenseList=function(a){return p(a)===k},a.isValidElementType=function(a){return"string"==typeof a||"function"==typeof a||a===d||a===f||a===e||a===j||a===k||"object"==typeof a&&null!==a&&(a.$$typeof===m||a.$$typeof===l||a.$$typeof===h||a.$$typeof===g||a.$$typeof===i||a.$$typeof===o||void 0!==a.getModuleId)||!1},a.typeOf=p}});at({"../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js"(a){}});var aE=at({"../../node_modules/@mui/utils/node_modules/react-is/index.js"(a,b){b.exports=aD()}}),aF={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1},aG=/[A-Z]|^ms/g,aH=/_EMO_([^_]+?)_([^]*?)_EMO_/g,aI=function(a){return 45===a.charCodeAt(1)},aJ=function(a){return null!=a&&"boolean"!=typeof a},aK=function(a){var b=Object.create(null);return function(c){return void 0===b[c]&&(b[c]=a(c)),b[c]}}(function(a){return aI(a)?a:a.replace(aG,"-$&").toLowerCase()}),aL=function(a,b){switch(a){case"animation":case"animationName":if("string"==typeof b)return b.replace(aH,function(a,b,c){return d={name:b,styles:c,next:d},b})}return 1===aF[a]||aI(a)||"number"!=typeof b||0===b?b:b+"px"};function aM(a,b,c){if(null==c)return"";if(void 0!==c.__emotion_styles)return c;switch(typeof c){case"boolean":return"";case"object":if(1===c.anim)return d={name:c.name,styles:c.styles,next:d},c.name;if(void 0!==c.styles){var e=c.next;if(void 0!==e)for(;void 0!==e;)d={name:e.name,styles:e.styles,next:d},e=e.next;return c.styles+";"}return function(a,b,c){var d="";if(Array.isArray(c))for(var e=0;e<c.length;e++)d+=aM(a,b,c[e])+";";else for(var f in c){var g=c[f];if("object"!=typeof g)null!=b&&void 0!==b[g]?d+=f+"{"+b[g]+"}":aJ(g)&&(d+=aK(f)+":"+aL(f,g)+";");else if(Array.isArray(g)&&"string"==typeof g[0]&&(null==b||void 0===b[g[0]]))for(var h=0;h<g.length;h++)aJ(g[h])&&(d+=aK(f)+":"+aL(f,g[h])+";");else{var i=aM(a,b,g);switch(f){case"animation":case"animationName":d+=aK(f)+":"+i+";";break;default:d+=f+"{"+i+"}"}}}return d}(a,b,c);case"function":if(void 0!==a){var f=d,g=c(a);return d=f,aM(a,b,g)}}if(null==b)return c;var h=b[c];return void 0!==h?h:c}var aN=/label:\s*([^\s;{]+)\s*(;|$)/g,aO=[];function aP(a){return aO[0]=a,function(a,b,c){if(1===a.length&&"object"==typeof a[0]&&null!==a[0]&&void 0!==a[0].styles)return a[0];var e,f=!0,g="";d=void 0;var h=a[0];null==h||void 0===h.raw?(f=!1,g+=aM(void 0,void 0,h)):g+=h[0];for(var i=1;i<a.length;i++)g+=aM(void 0,void 0,a[i]),f&&(g+=h[i]);aN.lastIndex=0;for(var j="";null!==(e=aN.exec(g));)j+="-"+e[1];return{name:function(a){for(var b,c=0,d=0,e=a.length;e>=4;++d,e-=4)b=(65535&(b=255&a.charCodeAt(d)|(255&a.charCodeAt(++d))<<8|(255&a.charCodeAt(++d))<<16|(255&a.charCodeAt(++d))<<24))*0x5bd1e995+((b>>>16)*59797<<16),b^=b>>>24,c=(65535&b)*0x5bd1e995+((b>>>16)*59797<<16)^(65535&c)*0x5bd1e995+((c>>>16)*59797<<16);switch(e){case 3:c^=(255&a.charCodeAt(d+2))<<16;case 2:c^=(255&a.charCodeAt(d+1))<<8;case 1:c^=255&a.charCodeAt(d),c=(65535&c)*0x5bd1e995+((c>>>16)*59797<<16)}return c^=c>>>13,(((c=(65535&c)*0x5bd1e995+((c>>>16)*59797<<16))^c>>>15)>>>0).toString(36)}(g)+j,styles:g,next:d}}(aO)}var aQ=au(aE(),1);function aR(a){if("object"!=typeof a||null===a)return!1;let b=Object.getPrototypeOf(a);return(null===b||b===Object.prototype||null===Object.getPrototypeOf(b))&&!(Symbol.toStringTag in a)&&!(Symbol.iterator in a)}function aS(a,b,c={clone:!0}){let d=c.clone?{...a}:a;return aR(a)&&aR(b)&&Object.keys(b).forEach(e=>{k.isValidElement(b[e])||(0,aQ.isValidElementType)(b[e])?d[e]=b[e]:aR(b[e])&&Object.prototype.hasOwnProperty.call(a,e)&&aR(a[e])?d[e]=aS(a[e],b[e],c):c.clone?d[e]=aR(b[e])?function a(b){if(k.isValidElement(b)||(0,aQ.isValidElementType)(b)||!aR(b))return b;let c={};return Object.keys(b).forEach(d=>{c[d]=a(b[d])}),c}(b[e]):b[e]:d[e]=b[e]}),d}function aT(a,b){if(!a.containerQueries)return b;let c=Object.keys(b).filter(a=>a.startsWith("@container")).sort((a,b)=>{let c=/min-width:\s*([0-9.]+)/;return(a.match(c)?.[1]||0)-(b.match(c)?.[1]||0)});return c.length?c.reduce((a,c)=>{let d=b[c];return delete a[c],a[c]=d,a},{...b}):b}var aU={borderRadius:4};au(aC(),1);var aV=function(a,b){return b?aS(a,b,{clone:!1}):a},aW={xs:0,sm:600,md:900,lg:1200,xl:1536},aX={keys:["xs","sm","md","lg","xl"],up:a=>`@media (min-width:${aW[a]}px)`},aY={containerQueries:a=>({up:b=>{let c="number"==typeof b?b:aW[b]||b;return"number"==typeof c&&(c=`${c}px`),a?`@container ${a} (min-width:${c})`:`@container (min-width:${c})`}})};function aZ(a,b,c){let d=a.theme||{};if(Array.isArray(b)){let a=d.breakpoints||aX;return b.reduce((d,e,f)=>(d[a.up(a.keys[f])]=c(b[f]),d),{})}if("object"==typeof b){let a=d.breakpoints||aX;return Object.keys(b).reduce((e,f)=>{var g;if(g=a.keys,"@"===f||f.startsWith("@")&&(g.some(a=>f.startsWith(`@${a}`))||f.match(/^@\d/))){let a=function(a,b){let c=b.match(/^@([^/]+)?\/?(.+)?$/);if(!c)return null;let[,d,e]=c,f=Number.isNaN(+d)?d||0:+d;return a.containerQueries(e).up(f)}(d.containerQueries?d:aY,f);a&&(e[a]=c(b[f],f))}else Object.keys(a.values||aW).includes(f)?e[a.up(f)]=c(b[f],f):e[f]=b[f];return e},{})}return c(b)}function a$(a={}){return a.keys?.reduce((b,c)=>(b[a.up(c)]={},b),{})||{}}function a_(a,b){return a.reduce((a,b)=>{let c=a[b];return c&&0!==Object.keys(c).length||delete a[b],a},b)}function a0({values:a,breakpoints:b,base:c}){let d,e=Object.keys(c||function(a,b){if("object"!=typeof a)return{};let c={},d=Object.keys(b);return Array.isArray(a)?d.forEach((b,d)=>{d<a.length&&(c[b]=!0)}):d.forEach(b=>{null!=a[b]&&(c[b]=!0)}),c}(a,b));return 0===e.length?a:e.reduce((b,c,e)=>(Array.isArray(a)?(b[c]=null!=a[e]?a[e]:a[d],d=e):"object"==typeof a?(b[c]=null!=a[c]?a[c]:a[d],d=c):b[c]=a,b),{})}function a1(a){if("string"!=typeof a)throw Error(function(a){let b=new URL("https://mui.com/production-error/?code=7");return[].forEach(a=>b.searchParams.append("args[]",a)),`Minified MUI error #${7}; visit ${b} for the full message.`}(7));return a.charAt(0).toUpperCase()+a.slice(1)}function a2(a,b,c=!0){if(!b||"string"!=typeof b)return null;if(a&&a.vars&&c){let c=`vars.${b}`.split(".").reduce((a,b)=>a&&a[b]?a[b]:null,a);if(null!=c)return c}return b.split(".").reduce((a,b)=>a&&null!=a[b]?a[b]:null,a)}function a3(a,b,c,d=c){let e;return e="function"==typeof a?a(c):Array.isArray(a)?a[c]||d:a2(a,c)||d,b&&(e=b(e,d,a)),e}var a4=function(a){let{prop:b,cssProperty:c=a.prop,themeKey:d,transform:e}=a,f=a=>{if(null==a[b])return null;let f=a[b],g=a2(a.theme,d)||{};return aZ(a,f,a=>{let d=a3(g,e,a);return(a===d&&"string"==typeof a&&(d=a3(g,e,`${b}${"default"===a?"":a1(a)}`,a)),!1===c)?d:{[c]:d}})};return f.propTypes={},f.filterProps=[b],f},a5={m:"margin",p:"padding"},a6={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},a7={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},a8=function(a){let b={};return c=>(void 0===b[c]&&(b[c]=a(c)),b[c])}(a=>{if(a.length>2)if(!a7[a])return[a];else a=a7[a];let[b,c]=a.split(""),d=a5[b],e=a6[c]||"";return Array.isArray(e)?e.map(a=>d+a):[d+e]}),a9=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],ba=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],bb=[...a9,...ba];function bc(a,b,c,d){let e=a2(a,b,!0)??c;return"number"==typeof e||"string"==typeof e?a=>"string"==typeof a?a:"string"==typeof e?e.startsWith("var(")&&0===a?0:e.startsWith("var(")&&1===a?e:`calc(${a} * ${e})`:e*a:Array.isArray(e)?a=>{if("string"==typeof a)return a;let b=e[Math.abs(a)];return a>=0?b:"number"==typeof b?-b:"string"==typeof b&&b.startsWith("var(")?`calc(-1 * ${b})`:`-${b}`}:"function"==typeof e?e:()=>void 0}function bd(a){return bc(a,"spacing",8,"spacing")}function be(a,b){return"string"==typeof b||null==b?b:a(b)}function bf(a,b){let c=bd(a.theme);return Object.keys(a).map(d=>(function(a,b,c,d){var e;if(!b.includes(c))return null;let f=(e=a8(c),a=>e.reduce((b,c)=>(b[c]=be(d,a),b),{})),g=a[c];return aZ(a,g,f)})(a,b,d,c)).reduce(aV,{})}function bg(a){return bf(a,a9)}function bh(a){return bf(a,ba)}function bi(a){return bf(a,bb)}bg.propTypes={},bg.filterProps=a9,bh.propTypes={},bh.filterProps=ba,bi.propTypes={},bi.filterProps=bb;var bj=function(...a){let b=a.reduce((a,b)=>(b.filterProps.forEach(c=>{a[c]=b}),a),{}),c=a=>Object.keys(a).reduce((c,d)=>b[d]?aV(c,b[d](a)):c,{});return c.propTypes={},c.filterProps=a.reduce((a,b)=>a.concat(b.filterProps),[]),c};function bk(a){return"number"!=typeof a?a:`${a}px solid`}function bl(a,b){return a4({prop:a,themeKey:"borders",transform:b})}var bm=bl("border",bk),bn=bl("borderTop",bk),bo=bl("borderRight",bk),bp=bl("borderBottom",bk),bq=bl("borderLeft",bk),br=bl("borderColor"),bs=bl("borderTopColor"),bt=bl("borderRightColor"),bu=bl("borderBottomColor"),bv=bl("borderLeftColor"),bw=bl("outline",bk),bx=bl("outlineColor"),by=a=>{if(void 0!==a.borderRadius&&null!==a.borderRadius){let b=bc(a.theme,"shape.borderRadius",4,"borderRadius");return aZ(a,a.borderRadius,a=>({borderRadius:be(b,a)}))}return null};by.propTypes={},by.filterProps=["borderRadius"],bj(bm,bn,bo,bp,bq,br,bs,bt,bu,bv,by,bw,bx);var bz=a=>{if(void 0!==a.gap&&null!==a.gap){let b=bc(a.theme,"spacing",8,"gap");return aZ(a,a.gap,a=>({gap:be(b,a)}))}return null};bz.propTypes={},bz.filterProps=["gap"];var bA=a=>{if(void 0!==a.columnGap&&null!==a.columnGap){let b=bc(a.theme,"spacing",8,"columnGap");return aZ(a,a.columnGap,a=>({columnGap:be(b,a)}))}return null};bA.propTypes={},bA.filterProps=["columnGap"];var bB=a=>{if(void 0!==a.rowGap&&null!==a.rowGap){let b=bc(a.theme,"spacing",8,"rowGap");return aZ(a,a.rowGap,a=>({rowGap:be(b,a)}))}return null};function bC(a,b){return"grey"===b?b:a}function bD(a){return a<=1&&0!==a?`${100*a}%`:a}bB.propTypes={},bB.filterProps=["rowGap"],bj(bz,bA,bB,a4({prop:"gridColumn"}),a4({prop:"gridRow"}),a4({prop:"gridAutoFlow"}),a4({prop:"gridAutoColumns"}),a4({prop:"gridAutoRows"}),a4({prop:"gridTemplateColumns"}),a4({prop:"gridTemplateRows"}),a4({prop:"gridTemplateAreas"}),a4({prop:"gridArea"})),bj(a4({prop:"color",themeKey:"palette",transform:bC}),a4({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:bC}),a4({prop:"backgroundColor",themeKey:"palette",transform:bC}));var bE=a4({prop:"width",transform:bD}),bF=a=>void 0!==a.maxWidth&&null!==a.maxWidth?aZ(a,a.maxWidth,b=>{let c=a.theme?.breakpoints?.values?.[b]||aW[b];return c?a.theme?.breakpoints?.unit!=="px"?{maxWidth:`${c}${a.theme.breakpoints.unit}`}:{maxWidth:c}:{maxWidth:bD(b)}}):null;bF.filterProps=["maxWidth"];var bG=a4({prop:"minWidth",transform:bD}),bH=a4({prop:"height",transform:bD}),bI=a4({prop:"maxHeight",transform:bD}),bJ=a4({prop:"minHeight",transform:bD});a4({prop:"size",cssProperty:"width",transform:bD}),a4({prop:"size",cssProperty:"height",transform:bD}),bj(bE,bF,bG,bH,bI,bJ,a4({prop:"boxSizing"}));var bK={border:{themeKey:"borders",transform:bk},borderTop:{themeKey:"borders",transform:bk},borderRight:{themeKey:"borders",transform:bk},borderBottom:{themeKey:"borders",transform:bk},borderLeft:{themeKey:"borders",transform:bk},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:bk},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:by},color:{themeKey:"palette",transform:bC},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:bC},backgroundColor:{themeKey:"palette",transform:bC},p:{style:bh},pt:{style:bh},pr:{style:bh},pb:{style:bh},pl:{style:bh},px:{style:bh},py:{style:bh},padding:{style:bh},paddingTop:{style:bh},paddingRight:{style:bh},paddingBottom:{style:bh},paddingLeft:{style:bh},paddingX:{style:bh},paddingY:{style:bh},paddingInline:{style:bh},paddingInlineStart:{style:bh},paddingInlineEnd:{style:bh},paddingBlock:{style:bh},paddingBlockStart:{style:bh},paddingBlockEnd:{style:bh},m:{style:bg},mt:{style:bg},mr:{style:bg},mb:{style:bg},ml:{style:bg},mx:{style:bg},my:{style:bg},margin:{style:bg},marginTop:{style:bg},marginRight:{style:bg},marginBottom:{style:bg},marginLeft:{style:bg},marginX:{style:bg},marginY:{style:bg},marginInline:{style:bg},marginInlineStart:{style:bg},marginInlineEnd:{style:bg},marginBlock:{style:bg},marginBlockStart:{style:bg},marginBlockEnd:{style:bg},displayPrint:{cssProperty:!1,transform:a=>({"@media print":{display:a}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:bz},rowGap:{style:bB},columnGap:{style:bA},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:bD},maxWidth:{style:bF},minWidth:{transform:bD},height:{transform:bD},maxHeight:{transform:bD},minHeight:{transform:bD},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}},bL=function(){function a(a,b,c,d){let e={[a]:b,theme:c},f=d[a];if(!f)return{[a]:b};let{cssProperty:g=a,themeKey:h,transform:i,style:j}=f;if(null==b)return null;if("typography"===h&&"inherit"===b)return{[a]:b};let k=a2(c,h)||{};return j?j(e):aZ(e,b,b=>{let c=a3(k,i,b);return(b===c&&"string"==typeof b&&(c=a3(k,i,`${a}${"default"===b?"":a1(b)}`,b)),!1===g)?c:{[g]:c}})}return function b(c){let{sx:d,theme:e={},nested:f}=c||{};if(!d)return null;let g=e.unstable_sxConfig??bK;function h(c){let d=c;if("function"==typeof c)d=c(e);else if("object"!=typeof c)return c;if(!d)return null;let h=a$(e.breakpoints),i=Object.keys(h),j=h;return(Object.keys(d).forEach(c=>{var f;let h=(f=d[c],"function"==typeof f?f(e):f);if(null!=h)if("object"==typeof h)if(g[c])j=aV(j,a(c,h,e,g));else{let a=aZ({theme:e},h,a=>({[c]:a}));!function(...a){let b=new Set(a.reduce((a,b)=>a.concat(Object.keys(b)),[]));return a.every(a=>b.size===Object.keys(a).length)}(a,h)?j=aV(j,a):j[c]=b({sx:h,theme:e,nested:!0})}else j=aV(j,a(c,h,e,g))}),!f&&e.modularCssLayers)?{"@layer sx":aT(e,a_(i,j))}:aT(e,a_(i,j))}return Array.isArray(d)?d.map(h):h(d)}}();function bM(a,b){if(this.vars){if(!this.colorSchemes?.[a]||"function"!=typeof this.getColorSchemeSelector)return{};let c=this.getColorSchemeSelector(a);return"&"===c?b:((c.includes("data-")||c.includes("."))&&(c=`*:where(${c.replace(/\s*&$/,"")}) &`),{[c]:b})}return this.palette.mode===a?b:{}}bL.filterProps=["sx"];var bN=function(a={},...b){let{breakpoints:c={},palette:d={},spacing:e,shape:f={},...g}=a,h=function(a){let{values:b={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:c="px",step:d=5,...e}=a,f=(a=>{let b=Object.keys(a).map(b=>({key:b,val:a[b]}))||[];return b.sort((a,b)=>a.val-b.val),b.reduce((a,b)=>({...a,[b.key]:b.val}),{})})(b),g=Object.keys(f);function h(a){let d="number"==typeof b[a]?b[a]:a;return`@media (min-width:${d}${c})`}function i(a){let e="number"==typeof b[a]?b[a]:a;return`@media (max-width:${e-d/100}${c})`}function j(a,e){let f=g.indexOf(e);return`@media (min-width:${"number"==typeof b[a]?b[a]:a}${c}) and (max-width:${(-1!==f&&"number"==typeof b[g[f]]?b[g[f]]:e)-d/100}${c})`}return{keys:g,values:f,up:h,down:i,between:j,only:function(a){return g.indexOf(a)+1<g.length?j(a,g[g.indexOf(a)+1]):h(a)},not:function(a){let b=g.indexOf(a);return 0===b?h(g[1]):b===g.length-1?i(g[b]):j(a,g[g.indexOf(a)+1]).replace("@media","@media not all and")},unit:c,...e}}(c),i=function(a=8,b=bd({spacing:a})){if(a.mui)return a;let c=(...a)=>(0===a.length?[1]:a).map(a=>{let c=b(a);return"number"==typeof c?`${c}px`:c}).join(" ");return c.mui=!0,c}(e),j=aS({breakpoints:h,direction:"ltr",components:{},palette:{mode:"light",...d},spacing:i,shape:{...aU,...f}},g);return(j=function(a){let b=(a,b)=>a.replace("@media",b?`@container ${b}`:"@container");function c(c,d){c.up=(...c)=>b(a.breakpoints.up(...c),d),c.down=(...c)=>b(a.breakpoints.down(...c),d),c.between=(...c)=>b(a.breakpoints.between(...c),d),c.only=(...c)=>b(a.breakpoints.only(...c),d),c.not=(...c)=>{let e=b(a.breakpoints.not(...c),d);return e.includes("not all and")?e.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):e}}let d={},e=a=>(c(d,a),d);return c(e),{...a,containerQueries:e}}(j)).applyStyles=bM,(j=b.reduce((a,b)=>aS(a,b),j)).unstable_sxConfig={...bK,...g?.unstable_sxConfig},j.unstable_sx=function(a){return bL({sx:a,theme:this})},j},bO=function(a=null){let b=k.useContext(j.T);return b&&0!==Object.keys(b).length?b:a},bP=bN();au(aC(),1);var bQ=a=>a,bR=(()=>{let a=bQ;return{configure(b){a=b},generate:b=>a(b),reset(){a=bQ}}})(),bS=function(){for(var a,b,c=0,d="",e=arguments.length;c<e;c++)(a=arguments[c])&&(b=function a(b){var c,d,e="";if("string"==typeof b||"number"==typeof b)e+=b;else if("object"==typeof b)if(Array.isArray(b)){var f=b.length;for(c=0;c<f;c++)b[c]&&(d=a(b[c]))&&(e&&(e+=" "),e+=d)}else for(d in b)b[d]&&(e&&(e+=" "),e+=d);return e}(a))&&(d&&(d+=" "),d+=b);return d},bT={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};!function(a={}){var b,c;let{themeId:d,defaultTheme:e,defaultClassName:f="MuiBox-root",generateClassName:g}=a;(b="div",c={shouldForwardProp:a=>"theme"!==a&&"sx"!==a&&"as"!==a},(0,i.A)("div",c))(bL)}({defaultClassName:function(a,b,c="Mui"){let d={};return b.forEach(b=>{d[b]=function(a,b,c="Mui"){let d=bT[b];return d?`${c}-${d}`:`${bR.generate(a)}-${b}`}(a,b,c)}),d}("MuiBox",["root"]).root,generateClassName:bR.generate}),au(aE(),1);var bU=bN();function bV(a){return"ownerState"!==a&&"theme"!==a&&"sx"!==a&&"as"!==a}function bW(a,b){return b&&a&&"object"==typeof a&&a.styles&&!a.styles.startsWith("@layer")&&(a.styles=`@layer ${b}{${String(a.styles)}}`),a}function bX(a,b,c){let d="function"==typeof b?b(a):b;if(Array.isArray(d))return d.flatMap(b=>bX(a,b,c));if(Array.isArray(d?.variants)){let b;if(d.isProcessed)b=c?bW(d.style,c):d.style;else{let{variants:a,...e}=d;b=c?bW(aP(e),c):e}return bY(a,d.variants,[b],c)}return d?.isProcessed?c?bW(aP(d.style),c):d.style:c?bW(aP(d),c):d}function bY(a,b,c=[],d){let e;a:for(let f=0;f<b.length;f+=1){let g=b[f];if("function"==typeof g.props){if(e??={...a,...a.ownerState,ownerState:a.ownerState},!g.props(e))continue}else for(let b in g.props)if(a[b]!==g.props[b]&&a.ownerState?.[b]!==g.props[b])continue a;"function"==typeof g.style?(e??={...a,...a.ownerState,ownerState:a.ownerState},c.push(d?bW(aP(g.style(e)),d):g.style(e))):c.push(d?bW(aP(g.style),d):g.style)}return c}var bZ=function(a={}){let{themeId:b,defaultTheme:c=bU,rootShouldForwardProp:d=bV,slotShouldForwardProp:e=bV}=a;function f(a){a.theme=!function(a){for(let b in a)return!1;return!0}(a.theme)?a.theme[b]||a.theme:c}return(a,b={})=>{var c,g,h,j,k,l,m;Array.isArray(a.__emotion_styles)&&(a.__emotion_styles=(a=>a.filter(a=>a!==bL))(a.__emotion_styles));let{name:n,slot:o,skipVariantsResolver:p,skipSx:q,overridesResolver:r=!(c=(g=o)?g.charAt(0).toLowerCase()+g.slice(1):g)?null:(a,b)=>b[c],...s}=b,t=n&&n.startsWith("Mui")||o?"components":"custom",u=void 0!==p?p:o&&"Root"!==o&&"root"!==o||!1,v=q||!1,w=bV;"Root"===o||"root"===o?w=d:o?w=e:"string"==typeof(h=a)&&h.charCodeAt(0)>96&&(w=void 0);let x=(l=a,m={shouldForwardProp:w,label:(j=0,void(k=0)),...s},(0,i.A)(l,m)),y=a=>{if(a.__emotion_real===a)return a;if("function"==typeof a)return function(b){return bX(b,a,b.theme.modularCssLayers?t:void 0)};if(aR(a)){let b=function(a){let{variants:b,...c}=a,d={variants:b,style:aP(c),isProcessed:!0};return d.style===c||b&&b.forEach(a=>{"function"!=typeof a.style&&(a.style=aP(a.style))}),d}(a);return function(a){return b.variants?bX(a,b,a.theme.modularCssLayers?t:void 0):a.theme.modularCssLayers?bW(b.style,t):b.style}}return a},z=(...b)=>{let c=[],d=b.map(y),e=[];if(c.push(f),n&&r&&e.push(function(a){let b=a.theme,c=b.components?.[n]?.styleOverrides;if(!c)return null;let d={};for(let b in c)d[b]=bX(a,c[b],a.theme.modularCssLayers?"theme":void 0);return r(a,d)}),n&&!u&&e.push(function(a){let b=a.theme,c=b?.components?.[n]?.variants;return c?bY(a,c,[],a.theme.modularCssLayers?"theme":void 0):null}),v||e.push(bL),Array.isArray(d[0])){let a,b=d.shift(),f=Array(c.length).fill(""),g=Array(e.length).fill("");(a=[...f,...b,...g]).raw=[...f,...b.raw,...g],c.unshift(a)}let g=x(...c,...d,...e);return a.muiName&&(g.muiName=a.muiName),g};return x.withConfig&&(z.withConfig=x.withConfig),z}}();au(aC(),1),au(aC(),1);var b$=bN(),b_=bZ("div",{name:"MuiStack",slot:"Root"});function b0(a){return function({props:a,name:b,defaultTheme:c,themeId:d}){let e=function(a=bP){return bO(a)}(c);d&&(e=e[d]||e);let{theme:f,name:g,props:h}={theme:e,name:b,props:a};return f&&f.components&&f.components[g]&&f.components[g].defaultProps?function a(b,c,d=!1){let e={...c};for(let f in b)if(Object.prototype.hasOwnProperty.call(b,f))if("components"===f||"slots"===f)e[f]={...b[f],...e[f]};else if("componentsProps"===f||"slotProps"===f){let g=b[f],h=c[f];if(h)if(g)for(let b in e[f]={...h},g)Object.prototype.hasOwnProperty.call(g,b)&&(e[f][b]=a(g[b],h[b],d));else e[f]=h;else e[f]=g||{}}else"className"===f&&d&&c.className?e.className=bS(b?.className,c?.className):"style"===f&&d&&c.style?e.style={...b?.style,...c?.style}:void 0===e[f]&&(e[f]=b[f]);return e}(f.components[g].defaultProps,h):h}({props:a,name:"MuiStack",defaultTheme:b$})}var b1=({ownerState:a,theme:b})=>{let c={display:"flex",flexDirection:"column",...aZ({theme:b},a0({values:a.direction,breakpoints:b.breakpoints.values}),a=>({flexDirection:a}))};if(a.spacing){let d=bd(b),e=Object.keys(b.breakpoints.values).reduce((b,c)=>(("object"==typeof a.spacing&&null!=a.spacing[c]||"object"==typeof a.direction&&null!=a.direction[c])&&(b[c]=!0),b),{}),f=a0({values:a.direction,base:e}),g=a0({values:a.spacing,base:e});"object"==typeof f&&Object.keys(f).forEach((a,b,c)=>{if(!f[a]){let d=b>0?f[c[b-1]]:"column";f[a]=d}}),c=aS(c,aZ({theme:b},g,(b,c)=>a.useFlexGap?{gap:be(d,b)}:{"& > :not(style):not(style)":{margin:0},"& > :not(style) ~ :not(style)":{[`margin${({row:"Left","row-reverse":"Right",column:"Top","column-reverse":"Bottom"})[c?f[c]:a.direction]}`]:be(d,b)}}))}return function(a,...b){let c=a$(a),d=[c,...b].reduce((a,b)=>aS(a,b),{});return a_(Object.keys(c),d)}(b.breakpoints,c)};function b2(a){return null!=a&&""!==a}function b3(a,b=!1){return b?b5(b2(a)?m(a).format("0,0.[00]"):"",".[00]"):b2(a)?m(a).format():""}function b4(a,b=2){let c=`.${"0".repeat(b)}`;return b5(b2(a)?m(a).format(`$0,0${c}`):"",c)}function b5(a,b=".00"){return a.includes(b)?a.replace(b,""):a}!function(a={}){let{createStyledComponent:b=b_,useThemeProps:c=b0,componentName:d="MuiStack"}=a;b(b1)}();var b6=(0,k.forwardRef)(({icon:a,width:b=20,sx:c,...d},e)=>(0,l.jsx)(o.default,{ref:e,component:n.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...d}));function b7({title:a,imgUrl:b,action:c,filled:d=!0,description:e,sx:f,...g}){return(0,l.jsxs)(r.A,{flexGrow:1,alignItems:"center",justifyContent:"center",sx:{px:3,height:500,...d&&{borderRadius:2,bgcolor:a=>(0,p.X4)(a.palette.grey[500],.04),border:a=>`dashed 1px ${(0,p.X4)(a.palette.grey[500],.08)}`},...f},...g,children:[b?(0,l.jsx)(o.default,{component:"img",alt:"empty content",src:b||"/assets/icons/empty/ic_content.svg",sx:{width:1,maxWidth:160}}):(0,l.jsx)(b6,{sx:{color:"text.disabled"},icon:"fluent:collections-empty-20-filled",width:160}),a&&(0,l.jsx)(q.A,{variant:"h6",component:"span",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:a}),e&&(0,l.jsx)(q.A,{variant:"caption",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:e}),c&&c]})}var b8=(0,k.memo)(function(){return(0,l.jsxs)(s.M,{children:[(0,l.jsx)(t.U,{startIcon:(0,l.jsx)(b6,{icon:"solar:eye-bold"}),children:"Columns"}),(0,l.jsx)(u.P,{startIcon:(0,l.jsx)(b6,{icon:"solar:filter-bold"}),children:"Filters"})]})}),b9=({t:a,emptyContentImgUrl:b,...c})=>{let d=(0,k.useMemo)(()=>({toolbar:b8,noRowsOverlay:()=>(0,l.jsx)(b7,{sx:{margin:2},title:a("noResults"),imgUrl:b}),noResultsOverlay:()=>(0,l.jsx)(b7,{title:a("noResults"),sx:{py:10},imgUrl:b})}),[a,b]);return(0,l.jsx)(v.z,{sx:{"--DataGrid-overlayHeight":"530px"},...c,slots:d,slotProps:{loadingOverlay:{sx:{padding:5}},filterPanel:{sx:{maxWidth:"100vw"}},columnsPanel:{sx:{maxWidth:"100vw"}}}})};function ca(a){let[b,c]=(0,k.useState)(!!a?.defaultDense),[d,e]=(0,k.useState)(a?.defaultCurrentPage||0),[f,g]=(0,k.useState)(a?.defaultOrderBy||"name"),[h,i]=(0,k.useState)(a?.defaultRowsPerPage||10),[j,l]=(0,k.useState)(a?.defaultOrder||"asc"),[m,n]=(0,k.useState)(a?.defaultSelected||[]),o=(0,k.useCallback)(a=>{let b=f===a&&"asc"===j;""!==a&&(l(b?"desc":"asc"),g(a))},[j,f]),p=(0,k.useCallback)(a=>{n(m.includes(a)?m.filter(b=>b!==a):[...m,a])},[m]),q=(0,k.useCallback)(a=>{e(0),i(parseInt(a.target.value,10))},[]),r=(0,k.useCallback)(a=>{c(a.target.checked)},[]),s=(0,k.useCallback)((a,b)=>{if(a)return void n(b);n([])},[]),t=(0,k.useCallback)((a,b)=>{e(b)},[]),u=(0,k.useCallback)(()=>{e(0)},[]),v=(0,k.useCallback)(a=>{n([]),d&&a<2&&e(d-1)},[d]),w=(0,k.useCallback)(({totalRows:a,totalRowsInPage:b,totalRowsFiltered:c})=>{let f=m.length;n([]),d&&(f===b?e(d-1):f===c?e(0):f>b&&e(Math.ceil((a-f)/h)-1))},[d,h,m.length]);return{dense:b,order:j,page:d,orderBy:f,rowsPerPage:h,selected:m,onSelectRow:p,onSelectAllRows:s,onSort:o,onChangePage:t,onChangeDense:r,onResetPage:u,onChangeRowsPerPage:q,onUpdatePageDeleteRow:v,onUpdatePageDeleteRows:w,setPage:e,setDense:c,setOrder:l,setOrderBy:g,setSelected:n,setRowsPerPage:i}}function cb({...a}){return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})}),(0,l.jsx)(y.A,{...a,children:(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(w.A,{sx:{width:"100%",height:12}})})})]})}var cc={border:0,margin:-1,padding:0,width:"1px",height:"1px",overflow:"hidden",position:"absolute",whiteSpace:"nowrap",clip:"rect(0 0 0 0)"};function cd({order:a,orderBy:b,rowCount:c=0,headLabel:d,numSelected:e=0,onSort:f,onSelectAllRows:g,sx:h}){return(0,l.jsx)(A.A,{sx:h,children:(0,l.jsxs)(y.A,{children:[g&&(0,l.jsx)(x.A,{padding:"checkbox",children:(0,l.jsx)(z.A,{indeterminate:!!e&&e<c,checked:!!c&&e===c,onChange:a=>g(a.target.checked)})}),d.map(c=>(0,l.jsx)(x.A,{align:c.align||"left",sortDirection:b===c.id&&a,sx:{width:c.width,minWidth:c.minWidth},children:f?(0,l.jsxs)(B.A,{hideSortIcon:!0,active:b===c.id,direction:b===c.id?a:"asc",onClick:()=>f(c.id),children:[c.label,b===c.id?(0,l.jsx)(o.default,{sx:{...cc},children:"desc"===a?"sorted descending":"sorted ascending"}):null]}):c.label},c.id))]})})}function ce({dense:a,onChangeDense:b,rowsPerPageOptions:c=[5,10,25],sx:d,...e}){return(0,l.jsxs)(o.default,{sx:{position:"relative",...d},children:[(0,l.jsx)(E.A,{rowsPerPageOptions:c,component:"div",...e,sx:{borderTopColor:"transparent"}}),b&&(0,l.jsx)(D.A,{label:"Dense",control:(0,l.jsx)(C.A,{checked:a,onChange:b}),sx:{pl:2,py:1.5,top:0,position:{sm:"absolute"}}})]})}var cf=(0,F.Ay)(o.default)(({theme:a,ownerState:b})=>{let c="light"===a.palette.mode,d="filled"===b.variant,e="outlined"===b.variant,f="soft"===b.variant,g={..."default"===b.color&&{...d&&{color:c?a.palette.common.white:a.palette.grey[800],backgroundColor:a.palette.text.primary},...e&&{backgroundColor:"transparent",color:a.palette.text.primary,border:`2px solid ${a.palette.text.primary}`},...f&&{color:a.palette.text.secondary,backgroundColor:(0,p.X4)(a.palette.grey[500],.16)}}},h={..."default"!==b.color&&{...d&&{color:a.palette[b.color].contrastText,backgroundColor:a.palette[b.color].main},...e&&{backgroundColor:"transparent",color:a.palette[b.color].main,border:`2px solid ${a.palette[b.color].main}`},...f&&{color:a.palette[b.color][c?"dark":"light"],backgroundColor:(0,p.X4)(a.palette[b.color].main,.16)}}};return{height:24,minWidth:24,lineHeight:0,borderRadius:6,cursor:"default",alignItems:"center",whiteSpace:"nowrap",display:"inline-flex",justifyContent:"center",textTransform:"capitalize",padding:a.spacing(0,.75),fontSize:a.typography.pxToRem(12),fontWeight:a.typography.fontWeightBold,transition:a.transitions.create("all",{duration:a.transitions.duration.shorter}),...g,...h}}),cg=(0,k.forwardRef)(({children:a,color:b="default",variant:c="soft",startIcon:d,endIcon:e,sx:f,...g},h)=>{let i={width:16,height:16,"& svg, img":{width:1,height:1,objectFit:"cover"}};return(0,l.jsxs)(cf,{ref:h,component:"span",ownerState:{color:b,variant:c},sx:{...d&&{pl:.75},...e&&{pr:.75},...f},...g,children:[d&&(0,l.jsxs)(o.default,{sx:{mr:.75,...i},children:[" ",d," "]}),a,e&&(0,l.jsxs)(o.default,{sx:{ml:.75,...i},children:[" ",e," "]})]})}),ch=[],ci=[];function cj(a){return a>=127462&&a<=127487}function ck(a,b,c){if(b==a.length)return b;b&&cm(a.charCodeAt(b))&&cn(a.charCodeAt(b-1))&&b--;let d=cl(a,b);for(b+=co(d);b<a.length;){let e=cl(a,b);if(8205==d||8205==e||c&&function(a){if(a<768)return!1;for(let b=0,c=ch.length;;){let d=b+c>>1;if(a<ch[d])c=d;else{if(!(a>=ci[d]))return!0;b=d+1}if(b==c)return!1}}(e))b+=co(e),d=e;else if(cj(e)){let c=0,d=b-2;for(;d>=0&&cj(cl(a,d));)c++,d-=2;if(c%2==0)break;b+=2}else break}return b}function cl(a,b){let c=a.charCodeAt(b);if(!cn(c)||b+1==a.length)return c;let d=a.charCodeAt(b+1);return cm(d)?(c-55296<<10)+(d-56320)+65536:c}function cm(a){return a>=56320&&a<57344}function cn(a){return a>=55296&&a<56320}function co(a){return a<65536?1:2}(()=>{let a="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(a=>a?parseInt(a,36):1);for(let b=0,c=0;b<a.length;b++)(b%2?ci:ch).push(c+=a[b])})();var cp=class a{lineAt(a){if(a<0||a>this.length)throw RangeError(`Invalid position ${a} in document of length ${this.length}`);return this.lineInner(a,!1,1,0)}line(a){if(a<1||a>this.lines)throw RangeError(`Invalid line number ${a} in ${this.lines}-line document`);return this.lineInner(a,!0,1,0)}replace(a,b,c){[a,b]=cx(this,a,b);let d=[];return this.decompose(0,a,d,2),c.length&&c.decompose(0,c.length,d,3),this.decompose(b,this.length,d,1),cr.from(d,this.length-(b-a)+c.length)}append(a){return this.replace(this.length,this.length,a)}slice(a,b=this.length){[a,b]=cx(this,a,b);let c=[];return this.decompose(a,b,c,0),cr.from(c,b-a)}eq(a){if(a==this)return!0;if(a.length!=this.length||a.lines!=this.lines)return!1;let b=this.scanIdentical(a,1),c=this.length-this.scanIdentical(a,-1),d=new ct(this),e=new ct(a);for(let a=b,f=b;;){if(d.next(a),e.next(a),a=0,d.lineBreak!=e.lineBreak||d.done!=e.done||d.value!=e.value)return!1;if(f+=d.value.length,d.done||f>=c)return!0}}iter(a=1){return new ct(this,a)}iterRange(a,b=this.length){return new cu(this,a,b)}iterLines(a,b){let c;if(null==a)c=this.iter();else{null==b&&(b=this.lines+1);let d=this.line(a).from;c=this.iterRange(d,Math.max(d,b==this.lines+1?this.length:b<=1?0:this.line(b-1).to))}return new cv(c)}toString(){return this.sliceString(0)}toJSON(){let a=[];return this.flatten(a),a}constructor(){}static of(b){if(0==b.length)throw RangeError("A document must have at least one line");return 1!=b.length||b[0]?b.length<=32?new cq(b):cr.from(cq.split(b,[])):a.empty}},cq=class a extends cp{constructor(a,b=function(a){let b=-1;for(let c of a)b+=c.length+1;return b}(a)){super(),this.text=a,this.length=b}get lines(){return this.text.length}get children(){return null}lineInner(a,b,c,d){for(let e=0;;e++){let f=this.text[e],g=d+f.length;if((b?c:g)>=a)return new cw(d,g,c,f);d=g+1,c++}}decompose(b,c,d,e){var f;let g=b<=0&&c>=this.length?this:new a((f=this.text,cs(f,[""],b,c)),Math.min(c,this.length)-Math.max(0,b));if(1&e){let b=d.pop(),c=cs(g.text,b.text.slice(),0,g.length);if(c.length<=32)d.push(new a(c,b.length+g.length));else{let b=c.length>>1;d.push(new a(c.slice(0,b)),new a(c.slice(b)))}}else d.push(g)}replace(b,c,d){var e,f;if(!(d instanceof a))return super.replace(b,c,d);[b,c]=cx(this,b,c);let g=cs(this.text,cs(d.text,(e=this.text,f=0,cs(e,[""],0,b))),c),h=this.length+d.length-(c-b);return g.length<=32?new a(g,h):cr.from(a.split(g,[]),h)}sliceString(a,b=this.length,c="\n"){[a,b]=cx(this,a,b);let d="";for(let e=0,f=0;e<=b&&f<this.text.length;f++){let g=this.text[f],h=e+g.length;e>a&&f&&(d+=c),a<h&&b>e&&(d+=g.slice(Math.max(0,a-e),b-e)),e=h+1}return d}flatten(a){for(let b of this.text)a.push(b)}scanIdentical(){return 0}static split(b,c){let d=[],e=-1;for(let f of b)d.push(f),e+=f.length+1,32==d.length&&(c.push(new a(d,e)),d=[],e=-1);return e>-1&&c.push(new a(d,e)),c}},cr=class a extends cp{constructor(a,b){for(let c of(super(),this.children=a,this.length=b,this.lines=0,a))this.lines+=c.lines}lineInner(a,b,c,d){for(let e=0;;e++){let f=this.children[e],g=d+f.length,h=c+f.lines-1;if((b?h:g)>=a)return f.lineInner(a,b,c,d);d=g+1,c=h+1}}decompose(a,b,c,d){for(let e=0,f=0;f<=b&&e<this.children.length;e++){let g=this.children[e],h=f+g.length;if(a<=h&&b>=f){let e=d&(f<=a|2*(h>=b));f>=a&&h<=b&&!e?c.push(g):g.decompose(a-f,b-f,c,e)}f=h+1}}replace(b,c,d){if([b,c]=cx(this,b,c),d.lines<this.lines)for(let e=0,f=0;e<this.children.length;e++){let g=this.children[e],h=f+g.length;if(b>=f&&c<=h){let i=g.replace(b-f,c-f,d),j=this.lines-g.lines+i.lines;if(i.lines<j>>4&&i.lines>j>>6){let f=this.children.slice();return f[e]=i,new a(f,this.length-(c-b)+d.length)}return super.replace(f,h,i)}f=h+1}return super.replace(b,c,d)}sliceString(a,b=this.length,c="\n"){[a,b]=cx(this,a,b);let d="";for(let e=0,f=0;e<this.children.length&&f<=b;e++){let g=this.children[e],h=f+g.length;f>a&&e&&(d+=c),a<h&&b>f&&(d+=g.sliceString(a-f,b-f,c)),f=h+1}return d}flatten(a){for(let b of this.children)b.flatten(a)}scanIdentical(b,c){if(!(b instanceof a))return 0;let d=0,[e,f,g,h]=c>0?[0,0,this.children.length,b.children.length]:[this.children.length-1,b.children.length-1,-1,-1];for(;;e+=c,f+=c){if(e==g||f==h)return d;let a=this.children[e],i=b.children[f];if(a!=i)return d+a.scanIdentical(i,c);d+=a.length+1}}static from(b,c=b.reduce((a,b)=>a+b.length+1,-1)){let d=0;for(let a of b)d+=a.lines;if(d<32){let a=[];for(let c of b)c.flatten(a);return new cq(a,c)}let e=Math.max(32,d>>5),f=e<<1,g=e>>1,h=[],i=0,j=-1,k=[];function l(){0!=i&&(h.push(1==k.length?k[0]:a.from(k,j)),j=-1,i=k.length=0)}for(let c of b)!function b(c){let d;if(c.lines>f&&c instanceof a)for(let a of c.children)b(a);else c.lines>g&&(i>g||!i)?(l(),h.push(c)):c instanceof cq&&i&&(d=k[k.length-1])instanceof cq&&c.lines+d.lines<=32?(i+=c.lines,j+=c.length+1,k[k.length-1]=new cq(d.text.concat(c.text),d.length+1+c.length)):(i+c.lines>e&&l(),i+=c.lines,j+=c.length+1,k.push(c))}(c);return l(),1==h.length?h[0]:new a(h,c)}};function cs(a,b,c=0,d=1e9){for(let e=0,f=0,g=!0;f<a.length&&e<=d;f++){let h=a[f],i=e+h.length;i>=c&&(i>d&&(h=h.slice(0,d-e)),e<c&&(h=h.slice(c-e)),g?(b[b.length-1]+=h,g=!1):b.push(h)),e=i+1}return b}cp.empty=new cq([""],0);var ct=class{constructor(a,b=1){this.dir=b,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[a],this.offsets=[b>0?1:(a instanceof cq?a.text.length:a.children.length)<<1]}nextInner(a,b){for(this.done=this.lineBreak=!1;;){let c=this.nodes.length-1,d=this.nodes[c],e=this.offsets[c],f=e>>1,g=d instanceof cq?d.text.length:d.children.length;if(f==(b>0?g:0)){if(0==c)return this.done=!0,this.value="",this;b>0&&this.offsets[c-1]++,this.nodes.pop(),this.offsets.pop()}else if((1&e)==(b>0?0:1)){if(this.offsets[c]+=b,0==a)return this.lineBreak=!0,this.value="\n",this;a--}else if(d instanceof cq){let e=d.text[f+(b<0?-1:0)];if(this.offsets[c]+=b,e.length>Math.max(0,a))return this.value=0==a?e:b>0?e.slice(a):e.slice(0,e.length-a),this;a-=e.length}else{let e=d.children[f+(b<0?-1:0)];a>e.length?(a-=e.length,this.offsets[c]+=b):(b<0&&this.offsets[c]--,this.nodes.push(e),this.offsets.push(b>0?1:(e instanceof cq?e.text.length:e.children.length)<<1))}}}next(a=0){return a<0&&(this.nextInner(-a,-this.dir),a=this.value.length),this.nextInner(a,this.dir)}},cu=class{constructor(a,b,c){this.value="",this.done=!1,this.cursor=new ct(a,b>c?-1:1),this.pos=b>c?a.length:0,this.from=Math.min(b,c),this.to=Math.max(b,c)}nextInner(a,b){if(b<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;a+=Math.max(0,b<0?this.pos-this.to:this.from-this.pos);let c=b<0?this.pos-this.from:this.to-this.pos;a>c&&(a=c),c-=a;let{value:d}=this.cursor.next(a);return this.pos+=(d.length+a)*b,this.value=d.length<=c?d:b<0?d.slice(d.length-c):d.slice(0,c),this.done=!this.value,this}next(a=0){return a<0?a=Math.max(a,this.from-this.pos):a>0&&(a=Math.min(a,this.to-this.pos)),this.nextInner(a,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&""!=this.value}},cv=class{constructor(a){this.inner=a,this.afterBreak=!0,this.value="",this.done=!1}next(a=0){let{done:b,lineBreak:c,value:d}=this.inner.next(a);return b&&this.afterBreak?(this.value="",this.afterBreak=!1):b?(this.done=!0,this.value=""):c?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=d,this.afterBreak=!1),this}get lineBreak(){return!1}};"undefined"!=typeof Symbol&&(cp.prototype[Symbol.iterator]=function(){return this.iter()},ct.prototype[Symbol.iterator]=cu.prototype[Symbol.iterator]=cv.prototype[Symbol.iterator]=function(){return this});var cw=class{constructor(a,b,c,d){this.from=a,this.to=b,this.number=c,this.text=d}get length(){return this.to-this.from}};function cx(a,b,c){return[b=Math.max(0,Math.min(a.length,b)),Math.max(b,Math.min(a.length,c))]}function cy(a,b,c=!0,d=!0){return function(a,b,c=!0,d=!0){return(c?ck:function(a,b,c){for(;b>0;){let d=ck(a,b-2,c);if(d<b)return d;b--}return 0})(a,b,d)}(a,b,c,d)}var cz=/\r\n?|\n/,cA=function(a){return a[a.Simple=0]="Simple",a[a.TrackDel=1]="TrackDel",a[a.TrackBefore=2]="TrackBefore",a[a.TrackAfter=3]="TrackAfter",a}(cA||(cA={})),cB=class a{constructor(a){this.sections=a}get length(){let a=0;for(let b=0;b<this.sections.length;b+=2)a+=this.sections[b];return a}get newLength(){let a=0;for(let b=0;b<this.sections.length;b+=2){let c=this.sections[b+1];a+=c<0?this.sections[b]:c}return a}get empty(){return 0==this.sections.length||2==this.sections.length&&this.sections[1]<0}iterGaps(a){for(let b=0,c=0,d=0;b<this.sections.length;){let e=this.sections[b++],f=this.sections[b++];f<0?(a(c,d,e),d+=e):d+=f,c+=e}}iterChangedRanges(a,b=!1){cF(this,a,b)}get invertedDesc(){let b=[];for(let a=0;a<this.sections.length;){let c=this.sections[a++],d=this.sections[a++];d<0?b.push(c,d):b.push(d,c)}return new a(b)}composeDesc(a){return this.empty?a:a.empty?this:cH(this,a)}mapDesc(a,b=!1){return a.empty?this:cG(this,a,b)}mapPos(a,b=-1,c=cA.Simple){let d=0,e=0;for(let f=0;f<this.sections.length;){let g=this.sections[f++],h=this.sections[f++],i=d+g;if(h<0){if(i>a)return e+(a-d);e+=g}else{if(c!=cA.Simple&&i>=a&&(c==cA.TrackDel&&d<a&&i>a||c==cA.TrackBefore&&d<a||c==cA.TrackAfter&&i>a))return null;if(i>a||i==a&&b<0&&!g)return a==d||b<0?e:e+h;e+=h}d=i}if(a>d)throw RangeError(`Position ${a} is out of range for changeset of length ${d}`);return e}touchesRange(a,b=a){for(let c=0,d=0;c<this.sections.length&&d<=b;){let e=this.sections[c++],f=this.sections[c++],g=d+e;if(f>=0&&d<=b&&g>=a)return!(d<a)||!(g>b)||"cover";d=g}return!1}toString(){let a="";for(let b=0;b<this.sections.length;){let c=this.sections[b++],d=this.sections[b++];a+=(a?" ":"")+c+(d>=0?":"+d:"")}return a}toJSON(){return this.sections}static fromJSON(b){if(!Array.isArray(b)||b.length%2||b.some(a=>"number"!=typeof a))throw RangeError("Invalid JSON representation of ChangeDesc");return new a(b)}static create(b){return new a(b)}},cC=class a extends cB{constructor(a,b){super(a),this.inserted=b}apply(a){if(this.length!=a.length)throw RangeError("Applying change set to a document with the wrong length");return cF(this,(b,c,d,e,f)=>a=a.replace(d,d+(c-b),f),!1),a}mapDesc(a,b=!1){return cG(this,a,b,!0)}invert(b){let c=this.sections.slice(),d=[];for(let a=0,e=0;a<c.length;a+=2){let f=c[a],g=c[a+1];if(g>=0){c[a]=g,c[a+1]=f;let h=a>>1;for(;d.length<h;)d.push(cp.empty);d.push(f?b.slice(e,e+f):cp.empty)}e+=f}return new a(c,d)}compose(a){return this.empty?a:a.empty?this:cH(this,a,!0)}map(a,b=!1){return a.empty?this:cG(this,a,b,!0)}iterChanges(a,b=!1){cF(this,a,b)}get desc(){return cB.create(this.sections)}filter(b){let c=[],d=[],e=[],f=new cI(this);b:for(let a=0,g=0;;){let h=a==b.length?1e9:b[a++];for(;g<h||g==h&&0==f.len;){if(f.done)break b;let a=Math.min(f.len,h-g);cD(e,a,-1);let b=-1==f.ins?-1:0==f.off?f.ins:0;cD(c,a,b),b>0&&cE(d,c,f.text),f.forward(a),g+=a}let i=b[a++];for(;g<i;){if(f.done)break b;let a=Math.min(f.len,i-g);cD(c,a,-1),cD(e,a,-1==f.ins?-1:0==f.off?f.ins:0),f.forward(a),g+=a}}return{changes:new a(c,d),filtered:cB.create(e)}}toJSON(){let a=[];for(let b=0;b<this.sections.length;b+=2){let c=this.sections[b],d=this.sections[b+1];d<0?a.push(c):0==d?a.push([c]):a.push([c].concat(this.inserted[b>>1].toJSON()))}return a}static of(b,c,d){let e=[],f=[],g=0,h=null;function i(b=!1){if(!b&&!e.length)return;g<c&&cD(e,c-g,-1);let d=new a(e,f);h=h?h.compose(d.map(h)):d,e=[],f=[],g=0}return!function b(j){if(Array.isArray(j))for(let a of j)b(a);else if(j instanceof a){if(j.length!=c)throw RangeError(`Mismatched change set length (got ${j.length}, expected ${c})`);i(),h=h?h.compose(j.map(h)):j}else{let{from:a,to:b=a,insert:h}=j;if(a>b||a<0||b>c)throw RangeError(`Invalid change range ${a} to ${b} (in doc of length ${c})`);let k=h?"string"==typeof h?cp.of(h.split(d||cz)):h:cp.empty,l=k.length;if(a==b&&0==l)return;a<g&&i(),a>g&&cD(e,a-g,-1),cD(e,b-a,l),cE(f,e,k),g=b}}(b),i(!h),h}static empty(b){return new a(b?[b,-1]:[],[])}static fromJSON(b){if(!Array.isArray(b))throw RangeError("Invalid JSON representation of ChangeSet");let c=[],d=[];for(let a=0;a<b.length;a++){let e=b[a];if("number"==typeof e)c.push(e,-1);else if(!Array.isArray(e)||"number"!=typeof e[0]||e.some((a,b)=>b&&"string"!=typeof a))throw RangeError("Invalid JSON representation of ChangeSet");else if(1==e.length)c.push(e[0],0);else{for(;d.length<a;)d.push(cp.empty);d[a]=cp.of(e.slice(1)),c.push(e[0],d[a].length)}}return new a(c,d)}static createSet(b,c){return new a(b,c)}};function cD(a,b,c,d=!1){if(0==b&&c<=0)return;let e=a.length-2;e>=0&&c<=0&&c==a[e+1]?a[e]+=b:e>=0&&0==b&&0==a[e]?a[e+1]+=c:d?(a[e]+=b,a[e+1]+=c):a.push(b,c)}function cE(a,b,c){if(0==c.length)return;let d=b.length-2>>1;if(d<a.length)a[a.length-1]=a[a.length-1].append(c);else{for(;a.length<d;)a.push(cp.empty);a.push(c)}}function cF(a,b,c){let d=a.inserted;for(let e=0,f=0,g=0;g<a.sections.length;){let h=a.sections[g++],i=a.sections[g++];if(i<0)e+=h,f+=h;else{let j=e,k=f,l=cp.empty;for(;j+=h,k+=i,i&&d&&(l=l.append(d[g-2>>1])),!c&&g!=a.sections.length&&!(a.sections[g+1]<0);)h=a.sections[g++],i=a.sections[g++];b(e,j,f,k,l),e=j,f=k}}}function cG(a,b,c,d=!1){let e=[],f=d?[]:null,g=new cI(a),h=new cI(b);for(let a=-1;;)if(g.done&&h.len||h.done&&g.len)throw Error("Mismatched change set lengths");else if(-1==g.ins&&-1==h.ins){let a=Math.min(g.len,h.len);cD(e,a,-1),g.forward(a),h.forward(a)}else if(h.ins>=0&&(g.ins<0||a==g.i||0==g.off&&(h.len<g.len||h.len==g.len&&!c))){let b=h.len;for(cD(e,h.ins,-1);b;){let c=Math.min(g.len,b);g.ins>=0&&a<g.i&&g.len<=c&&(cD(e,0,g.ins),f&&cE(f,e,g.text),a=g.i),g.forward(c),b-=c}h.next()}else if(g.ins>=0){let b=0,c=g.len;for(;c;)if(-1==h.ins){let a=Math.min(c,h.len);b+=a,c-=a,h.forward(a)}else if(0==h.ins&&h.len<c)c-=h.len,h.next();else break;cD(e,b,a<g.i?g.ins:0),f&&a<g.i&&cE(f,e,g.text),a=g.i,g.forward(g.len-c)}else if(g.done&&h.done)return f?cC.createSet(e,f):cB.create(e);else throw Error("Mismatched change set lengths")}function cH(a,b,c=!1){let d=[],e=c?[]:null,f=new cI(a),g=new cI(b);for(let a=!1;;)if(f.done&&g.done)return e?cC.createSet(d,e):cB.create(d);else if(0==f.ins)cD(d,f.len,0,a),f.next();else if(0!=g.len||g.done)if(f.done||g.done)throw Error("Mismatched change set lengths");else{let b=Math.min(f.len2,g.len),c=d.length;if(-1==f.ins){let c=-1==g.ins?-1:g.off?0:g.ins;cD(d,b,c,a),e&&c&&cE(e,d,g.text)}else -1==g.ins?(cD(d,f.off?0:f.len,b,a),e&&cE(e,d,f.textBit(b))):(cD(d,f.off?0:f.len,g.off?0:g.ins,a),e&&!g.off&&cE(e,d,g.text));a=(f.ins>b||g.ins>=0&&g.len>b)&&(a||d.length>c),f.forward2(b),g.forward(b)}else cD(d,0,g.ins,a),e&&cE(e,d,g.text),g.next()}var cI=class{constructor(a){this.set=a,this.i=0,this.next()}next(){let{sections:a}=this.set;this.i<a.length?(this.len=a[this.i++],this.ins=a[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return -2==this.ins}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:a}=this.set,b=this.i-2>>1;return b>=a.length?cp.empty:a[b]}textBit(a){let{inserted:b}=this.set,c=this.i-2>>1;return c>=b.length&&!a?cp.empty:b[c].slice(this.off,null==a?void 0:this.off+a)}forward(a){a==this.len?this.next():(this.len-=a,this.off+=a)}forward2(a){-1==this.ins?this.forward(a):a==this.ins?this.next():(this.ins-=a,this.off+=a)}},cJ=class a{constructor(a,b,c){this.from=a,this.to=b,this.flags=c}get anchor(){return 32&this.flags?this.to:this.from}get head(){return 32&this.flags?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return 8&this.flags?-1:16&this.flags?1:0}get bidiLevel(){let a=7&this.flags;return 7==a?null:a}get goalColumn(){let a=this.flags>>6;return 0xffffff==a?void 0:a}map(b,c=-1){let d,e;return this.empty?d=e=b.mapPos(this.from,c):(d=b.mapPos(this.from,1),e=b.mapPos(this.to,-1)),d==this.from&&e==this.to?this:new a(d,e,this.flags)}extend(a,b=a){if(a<=this.anchor&&b>=this.anchor)return cK.range(a,b);let c=Math.abs(a-this.anchor)>Math.abs(b-this.anchor)?a:b;return cK.range(this.anchor,c)}eq(a,b=!1){return this.anchor==a.anchor&&this.head==a.head&&this.goalColumn==a.goalColumn&&(!b||!this.empty||this.assoc==a.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(a){if(!a||"number"!=typeof a.anchor||"number"!=typeof a.head)throw RangeError("Invalid JSON representation for SelectionRange");return cK.range(a.anchor,a.head)}static create(b,c,d){return new a(b,c,d)}},cK=class a{constructor(a,b){this.ranges=a,this.mainIndex=b}map(b,c=-1){return b.empty?this:a.create(this.ranges.map(a=>a.map(b,c)),this.mainIndex)}eq(a,b=!1){if(this.ranges.length!=a.ranges.length||this.mainIndex!=a.mainIndex)return!1;for(let c=0;c<this.ranges.length;c++)if(!this.ranges[c].eq(a.ranges[c],b))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return 1==this.ranges.length?this:new a([this.main],0)}addRange(b,c=!0){return a.create([b].concat(this.ranges),c?0:this.mainIndex+1)}replaceRange(b,c=this.mainIndex){let d=this.ranges.slice();return d[c]=b,a.create(d,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(a=>a.toJSON()),main:this.mainIndex}}static fromJSON(b){if(!b||!Array.isArray(b.ranges)||"number"!=typeof b.main||b.main>=b.ranges.length)throw RangeError("Invalid JSON representation for EditorSelection");return new a(b.ranges.map(a=>cJ.fromJSON(a)),b.main)}static single(b,c=b){return new a([a.range(b,c)],0)}static create(b,c=0){if(0==b.length)throw RangeError("A selection needs at least one range");for(let d=0,e=0;e<b.length;e++){let f=b[e];if(f.empty?f.from<=d:f.from<d)return a.normalized(b.slice(),c);d=f.to}return new a(b,c)}static cursor(a,b=0,c,d){return cJ.create(a,a,(0==b?0:b<0?8:16)|(null==c?7:Math.min(6,c))|(null!=d?d:0xffffff)<<6)}static range(a,b,c,d){let e=(null!=c?c:0xffffff)<<6|(null==d?7:Math.min(6,d));return b<a?cJ.create(b,a,48|e):cJ.create(a,b,8*(b>a)|e)}static normalized(b,c=0){let d=b[c];b.sort((a,b)=>a.from-b.from),c=b.indexOf(d);for(let d=1;d<b.length;d++){let e=b[d],f=b[d-1];if(e.empty?e.from<=f.to:e.from<f.to){let g=f.from,h=Math.max(e.to,f.to);d<=c&&c--,b.splice(--d,2,e.anchor>e.head?a.range(h,g):a.range(g,h))}}return new a(b,c)}};function cL(a,b){for(let c of a.ranges)if(c.to>b)throw RangeError("Selection points outside of document")}var cM=0,cN=class a{constructor(a,b,c,d,e){this.combine=a,this.compareInput=b,this.compare=c,this.isStatic=d,this.id=cM++,this.default=a([]),this.extensions="function"==typeof e?e(this):e}get reader(){return this}static define(b={}){return new a(b.combine||(a=>a),b.compareInput||((a,b)=>a===b),b.compare||(!b.combine?cO:(a,b)=>a===b),!!b.static,b.enables)}of(a){return new cP([],this,0,a)}compute(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cP(a,this,1,b)}computeN(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cP(a,this,2,b)}from(a,b){return b||(b=a=>a),this.compute([a],c=>b(c.field(a)))}};function cO(a,b){return a==b||a.length==b.length&&a.every((a,c)=>a===b[c])}var cP=class{constructor(a,b,c,d){this.dependencies=a,this.facet=b,this.type=c,this.value=d,this.id=cM++}dynamicSlot(a){var b;let c=this.value,d=this.facet.compareInput,e=this.id,f=a[e]>>1,g=2==this.type,h=!1,i=!1,j=[];for(let c of this.dependencies)"doc"==c?h=!0:"selection"==c?i=!0:((null!=(b=a[c.id])?b:1)&1)==0&&j.push(a[c.id]);return{create:a=>(a.values[f]=c(a),1),update(a,b){if(h&&b.docChanged||i&&(b.docChanged||b.selection)||cR(a,j)){let b=c(a);if(g?!cQ(b,a.values[f],d):!d(b,a.values[f]))return a.values[f]=b,1}return 0},reconfigure:(a,b)=>{let h,i=b.config.address[e];if(null!=i){let e=c0(b,i);if(this.dependencies.every(c=>c instanceof cN?b.facet(c)===a.facet(c):!(c instanceof cT)||b.field(c,!1)==a.field(c,!1))||(g?cQ(h=c(a),e,d):d(h=c(a),e)))return a.values[f]=e,0}else h=c(a);return a.values[f]=h,1}}}};function cQ(a,b,c){if(a.length!=b.length)return!1;for(let d=0;d<a.length;d++)if(!c(a[d],b[d]))return!1;return!0}function cR(a,b){let c=!1;for(let d of b)1&c_(a,d)&&(c=!0);return c}var cS=cN.define({static:!0}),cT=class a{constructor(a,b,c,d,e){this.id=a,this.createF=b,this.updateF=c,this.compareF=d,this.spec=e,this.provides=void 0}static define(b){let c=new a(cM++,b.create,b.update,b.compare||((a,b)=>a===b),b);return b.provide&&(c.provides=b.provide(c)),c}create(a){let b=a.facet(cS).find(a=>a.field==this);return((null==b?void 0:b.create)||this.createF)(a)}slot(a){let b=a[this.id]>>1;return{create:a=>(a.values[b]=this.create(a),1),update:(a,c)=>{let d=a.values[b],e=this.updateF(d,c);return this.compareF(d,e)?0:(a.values[b]=e,1)},reconfigure:(a,c)=>{let d=a.facet(cS),e=c.facet(cS),f;return(f=d.find(a=>a.field==this))&&f!=e.find(a=>a.field==this)?(a.values[b]=f.create(a),1):null!=c.config.address[this.id]?(a.values[b]=c.field(this),0):(a.values[b]=this.create(a),1)}}}init(a){return[this,cS.of({field:this,create:a})]}get extension(){return this}},cU={lowest:4,low:3,default:2,high:1,highest:0};function cV(a){return b=>new cX(b,a)}var cW={highest:cV(cU.highest),high:cV(cU.high),default:cV(cU.default),low:cV(cU.low),lowest:cV(cU.lowest)},cX=class{constructor(a,b){this.inner=a,this.prec=b}},cY=class a{of(a){return new cZ(this,a)}reconfigure(b){return a.reconfigure.of({compartment:this,extension:b})}get(a){return a.config.compartments.get(this)}},cZ=class{constructor(a,b){this.compartment=a,this.inner=b}},c$=class a{constructor(a,b,c,d,e,f){for(this.base=a,this.compartments=b,this.dynamicSlots=c,this.address=d,this.staticValues=e,this.facets=f,this.statusTemplate=[];this.statusTemplate.length<c.length;)this.statusTemplate.push(0)}staticFacet(a){let b=this.address[a.id];return null==b?a.default:this.staticValues[b>>1]}static resolve(b,c,d){var e,f,g;let h,i,j=[],k=Object.create(null),l=new Map;for(let a of(e=b,f=c,g=l,h=[[],[],[],[],[]],i=new Map,!function a(b,c){let d=i.get(b);if(null!=d){if(d<=c)return;let a=h[d].indexOf(b);a>-1&&h[d].splice(a,1),b instanceof cZ&&g.delete(b.compartment)}if(i.set(b,c),Array.isArray(b))for(let d of b)a(d,c);else if(b instanceof cZ){if(g.has(b.compartment))throw RangeError("Duplicate use of compartment in extensions");let d=f.get(b.compartment)||b.inner;g.set(b.compartment,d),a(d,c)}else if(b instanceof cX)a(b.inner,b.prec);else if(b instanceof cT)h[c].push(b),b.provides&&a(b.provides,c);else if(b instanceof cP)h[c].push(b),b.facet.extensions&&a(b.facet.extensions,cU.default);else{let d=b.extension;if(!d)throw Error(`Unrecognized extension value in extension set (${b}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);a(d,c)}}(e,cU.default),h.reduce((a,b)=>a.concat(b))))a instanceof cT?j.push(a):(k[a.facet.id]||(k[a.facet.id]=[])).push(a);let m=Object.create(null),n=[],o=[];for(let a of j)m[a.id]=o.length<<1,o.push(b=>a.slot(b));let p=null==d?void 0:d.config.facets;for(let a in k){let b=k[a],c=b[0].facet,e=p&&p[a]||[];if(b.every(a=>0==a.type))if(m[c.id]=n.length<<1|1,cO(e,b))n.push(d.facet(c));else{let a=c.combine(b.map(a=>a.value));n.push(d&&c.compare(a,d.facet(c))?d.facet(c):a)}else{for(let a of b)0==a.type?(m[a.id]=n.length<<1|1,n.push(a.value)):(m[a.id]=o.length<<1,o.push(b=>a.dynamicSlot(b)));m[c.id]=o.length<<1,o.push(a=>(function(a,b,c){let d=c.map(b=>a[b.id]),e=c.map(a=>a.type),f=d.filter(a=>!(1&a)),g=a[b.id]>>1;function h(a){let c=[];for(let b=0;b<d.length;b++){let f=c0(a,d[b]);if(2==e[b])for(let a of f)c.push(a);else c.push(f)}return b.combine(c)}return{create(a){for(let b of d)c_(a,b);return a.values[g]=h(a),1},update(a,c){if(!cR(a,f))return 0;let d=h(a);return b.compare(d,a.values[g])?0:(a.values[g]=d,1)},reconfigure(a,e){let f=cR(a,d),i=e.config.facets[b.id],j=e.facet(b);if(i&&!f&&cO(c,i))return a.values[g]=j,0;let k=h(a);return b.compare(k,j)?(a.values[g]=j,0):(a.values[g]=k,1)}}})(a,c,b))}}return new a(b,l,o.map(a=>a(m)),m,n,k)}};function c_(a,b){if(1&b)return 2;let c=b>>1,d=a.status[c];if(4==d)throw Error("Cyclic dependency between fields and/or facets");if(2&d)return d;a.status[c]=4;let e=a.computeSlot(a,a.config.dynamicSlots[c]);return a.status[c]=2|e}function c0(a,b){return 1&b?a.config.staticValues[b>>1]:a.values[b>>1]}var c1=cN.define(),c2=cN.define({combine:a=>a.some(a=>a),static:!0}),c3=cN.define({combine:a=>a.length?a[0]:void 0,static:!0}),c4=cN.define(),c5=cN.define(),c6=cN.define(),c7=cN.define({combine:a=>!!a.length&&a[0]}),c8=class{constructor(a,b){this.type=a,this.value=b}static define(){return new c9}},c9=class{of(a){return new c8(this,a)}},da=class{constructor(a){this.map=a}of(a){return new db(this,a)}},db=class a{constructor(a,b){this.type=a,this.value=b}map(b){let c=this.type.map(this.value,b);return void 0===c?void 0:c==this.value?this:new a(this.type,c)}is(a){return this.type==a}static define(a={}){return new da(a.map||(a=>a))}static mapEffects(a,b){if(!a.length)return a;let c=[];for(let d of a){let a=d.map(b);a&&c.push(a)}return c}};db.reconfigure=db.define(),db.appendConfig=db.define();var dc=class a{constructor(b,c,d,e,f,g){this.startState=b,this.changes=c,this.selection=d,this.effects=e,this.annotations=f,this.scrollIntoView=g,this._doc=null,this._state=null,d&&cL(d,c.newLength),f.some(b=>b.type==a.time)||(this.annotations=f.concat(a.time.of(Date.now())))}static create(b,c,d,e,f,g){return new a(b,c,d,e,f,g)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(a){for(let b of this.annotations)if(b.type==a)return b.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(b){let c=this.annotation(a.userEvent);return!!(c&&(c==b||c.length>b.length&&c.slice(0,b.length)==b&&"."==c[b.length]))}};function dd(a,b,c){var d;let e,f,g;return c?(e=b.changes,f=cC.empty(b.changes.length),g=a.changes.compose(b.changes)):(e=b.changes.map(a.changes),f=a.changes.mapDesc(b.changes,!0),g=a.changes.compose(e)),{changes:g,selection:b.selection?b.selection.map(f):null==(d=a.selection)?void 0:d.map(e),effects:db.mapEffects(a.effects,e).concat(db.mapEffects(b.effects,f)),annotations:a.annotations.length?a.annotations.concat(b.annotations):b.annotations,scrollIntoView:a.scrollIntoView||b.scrollIntoView}}function de(a,b,c){let d=b.selection,e=dg(b.annotations);return b.userEvent&&(e=e.concat(dc.userEvent.of(b.userEvent))),{changes:b.changes instanceof cC?b.changes:cC.of(b.changes||[],c,a.facet(c3)),selection:d&&(d instanceof cK?d:cK.single(d.anchor,d.head)),effects:dg(b.effects),annotations:e,scrollIntoView:!!b.scrollIntoView}}dc.time=c8.define(),dc.userEvent=c8.define(),dc.addToHistory=c8.define(),dc.remote=c8.define();var df=[];function dg(a){return null==a?df:Array.isArray(a)?a:[a]}var dh=function(a){return a[a.Word=0]="Word",a[a.Space=1]="Space",a[a.Other=2]="Other",a}(dh||(dh={})),di=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;try{e=RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch(a){}var dj=class a{constructor(a,b,c,d,e,f){this.config=a,this.doc=b,this.selection=c,this.values=d,this.status=a.statusTemplate.slice(),this.computeSlot=e,f&&(f._state=this);for(let a=0;a<this.config.dynamicSlots.length;a++)c_(this,a<<1);this.computeSlot=null}field(a,b=!0){let c=this.config.address[a.id];if(null==c){if(b)throw RangeError("Field is not present in this state");return}return c_(this,c),c0(this,c)}update(...a){return function a(b,c,d){let e=de(b,c.length?c[0]:{},b.doc.length);c.length&&!1===c[0].filter&&(d=!1);for(let a=1;a<c.length;a++){!1===c[a].filter&&(d=!1);let f=!!c[a].sequential;e=dd(e,de(b,c[a],f?e.changes.newLength:b.doc.length),f)}let f=dc.create(b,e.changes,e.selection,e.effects,e.annotations,e.scrollIntoView);return function(a){let b=a.startState,c=b.facet(c6),d=a;for(let e=c.length-1;e>=0;e--){let f=c[e](a);f&&Object.keys(f).length&&(d=dd(d,de(b,f,a.changes.newLength),!0))}return d==a?a:dc.create(b,a.changes,a.selection,d.effects,d.annotations,d.scrollIntoView)}(d?function(b){let c=b.startState,d=!0;for(let a of c.facet(c4)){let c=a(b);if(!1===c){d=!1;break}Array.isArray(c)&&(d=!0===d?c:function(a,b){let c=[];for(let d=0,e=0;;){let f,g;if(d<a.length&&(e==b.length||b[e]>=a[d]))f=a[d++],g=a[d++];else{if(!(e<b.length))return c;f=b[e++],g=b[e++]}!c.length||c[c.length-1]<f?c.push(f,g):c[c.length-1]<g&&(c[c.length-1]=g)}}(d,c))}if(!0!==d){let a,e;if(!1===d)e=b.changes.invertedDesc,a=cC.empty(c.doc.length);else{let c=b.changes.filter(d);a=c.changes,e=c.filtered.mapDesc(c.changes).invertedDesc}b=dc.create(c,a,b.selection&&b.selection.map(e),db.mapEffects(b.effects,e),b.annotations,b.scrollIntoView)}let e=c.facet(c5);for(let d=e.length-1;d>=0;d--){let f=e[d](b);b=f instanceof dc?f:Array.isArray(f)&&1==f.length&&f[0]instanceof dc?f[0]:a(c,dg(f),!1)}return b}(f):f)}(this,a,!0)}applyTransaction(b){let c,d=this.config,{base:e,compartments:f}=d;for(let a of b.effects)a.is(cY.reconfigure)?(d&&(f=new Map,d.compartments.forEach((a,b)=>f.set(b,a)),d=null),f.set(a.value.compartment,a.value.extension)):a.is(db.reconfigure)?(d=null,e=a.value):a.is(db.appendConfig)&&(d=null,e=dg(e).concat(a.value));c=d?b.startState.values.slice():new a(d=c$.resolve(e,f,this),this.doc,this.selection,d.dynamicSlots.map(()=>null),(a,b)=>b.reconfigure(a,this),null).values;let g=b.startState.facet(c2)?b.newSelection:b.newSelection.asSingle();new a(d,b.newDoc,g,c,(a,c)=>c.update(a,b),b)}replaceSelection(a){return"string"==typeof a&&(a=this.toText(a)),this.changeByRange(b=>({changes:{from:b.from,to:b.to,insert:a},range:cK.cursor(b.from+a.length)}))}changeByRange(a){let b=this.selection,c=a(b.ranges[0]),d=this.changes(c.changes),e=[c.range],f=dg(c.effects);for(let c=1;c<b.ranges.length;c++){let g=a(b.ranges[c]),h=this.changes(g.changes),i=h.map(d);for(let a=0;a<c;a++)e[a]=e[a].map(i);let j=d.mapDesc(h,!0);e.push(g.range.map(j)),d=d.compose(i),f=db.mapEffects(f,i).concat(db.mapEffects(dg(g.effects),j))}return{changes:d,selection:cK.create(e,b.mainIndex),effects:f}}changes(b=[]){return b instanceof cC?b:cC.of(b,this.doc.length,this.facet(a.lineSeparator))}toText(b){return cp.of(b.split(this.facet(a.lineSeparator)||cz))}sliceDoc(a=0,b=this.doc.length){return this.doc.sliceString(a,b,this.lineBreak)}facet(a){let b=this.config.address[a.id];return null==b?a.default:(c_(this,b),c0(this,b))}toJSON(a){let b={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(a)for(let c in a){let d=a[c];d instanceof cT&&null!=this.config.address[d.id]&&(b[c]=d.spec.toJSON(this.field(a[c]),this))}return b}static fromJSON(b,c={},d){if(!b||"string"!=typeof b.doc)throw RangeError("Invalid JSON representation for EditorState");let e=[];if(d){for(let a in d)if(Object.prototype.hasOwnProperty.call(b,a)){let c=d[a],f=b[a];e.push(c.init(a=>c.spec.fromJSON(f,a)))}}return a.create({doc:b.doc,selection:cK.fromJSON(b.selection),extensions:c.extensions?e.concat([c.extensions]):e})}static create(b={}){let c=c$.resolve(b.extensions||[],new Map),d=b.doc instanceof cp?b.doc:cp.of((b.doc||"").split(c.staticFacet(a.lineSeparator)||cz)),e=b.selection?b.selection instanceof cK?b.selection:cK.single(b.selection.anchor,b.selection.head):cK.single(0);return cL(e,d.length),c.staticFacet(c2)||(e=e.asSingle()),new a(c,d,e,c.dynamicSlots.map(()=>null),(a,b)=>b.create(a),null)}get tabSize(){return this.facet(a.tabSize)}get lineBreak(){return this.facet(a.lineSeparator)||"\n"}get readOnly(){return this.facet(c7)}phrase(b,...c){for(let c of this.facet(a.phrases))if(Object.prototype.hasOwnProperty.call(c,b)){b=c[b];break}return c.length&&(b=b.replace(/\$(\$|\d*)/g,(a,b)=>{if("$"==b)return"$";let d=+(b||1);return!d||d>c.length?a:c[d-1]})),b}languageDataAt(a,b,c=-1){let d=[];for(let e of this.facet(c1))for(let f of e(this,b,c))Object.prototype.hasOwnProperty.call(f,a)&&d.push(f[a]);return d}charCategorizer(a){var b;let c=this.languageDataAt("wordChars",a);return b=c.length?c[0]:"",a=>{if(!/\S/.test(a))return dh.Space;if(function(a){if(e)return e.test(a);for(let b=0;b<a.length;b++){let c=a[b];if(/\w/.test(c)||c>"\x80"&&(c.toUpperCase()!=c.toLowerCase()||di.test(c)))return!0}return!1}(a))return dh.Word;for(let c=0;c<b.length;c++)if(a.indexOf(b[c])>-1)return dh.Word;return dh.Other}}wordAt(a){let{text:b,from:c,length:d}=this.doc.lineAt(a),e=this.charCategorizer(a),f=a-c,g=a-c;for(;f>0;){let a=cy(b,f,!1);if(e(b.slice(a,f))!=dh.Word)break;f=a}for(;g<d;){let a=cy(b,g);if(e(b.slice(g,a))!=dh.Word)break;g=a}return f==g?null:cK.range(f+c,g+c)}};dj.allowMultipleSelections=c2,dj.tabSize=cN.define({combine:a=>a.length?a[0]:4}),dj.lineSeparator=c3,dj.readOnly=c7,dj.phrases=cN.define({compare(a,b){let c=Object.keys(a),d=Object.keys(b);return c.length==d.length&&c.every(c=>a[c]==b[c])}}),dj.languageData=c1,dj.changeFilter=c4,dj.transactionFilter=c5,dj.transactionExtender=c6,cY.reconfigure=db.define();var dk=class{eq(a){return this==a}range(a,b=a){return dm.create(a,b,this)}};function dl(a,b){return a==b||a.constructor==b.constructor&&a.eq(b)}dk.prototype.startSide=dk.prototype.endSide=0,dk.prototype.point=!1,dk.prototype.mapMode=cA.TrackDel;var dm=class a{constructor(a,b,c){this.from=a,this.to=b,this.value=c}static create(b,c,d){return new a(b,c,d)}};function dn(a,b){return a.from-b.from||a.value.startSide-b.value.startSide}var dp=class a{constructor(a,b,c,d){this.from=a,this.to=b,this.value=c,this.maxPoint=d}get length(){return this.to[this.to.length-1]}findIndex(a,b,c,d=0){let e=c?this.to:this.from;for(let f=d,g=e.length;;){if(f==g)return f;let d=f+g>>1,h=e[d]-a||(c?this.value[d].endSide:this.value[d].startSide)-b;if(d==f)return h>=0?f:g;h>=0?g=d:f=d+1}}between(a,b,c,d){for(let e=this.findIndex(b,-1e9,!0),f=this.findIndex(c,1e9,!1,e);e<f;e++)if(!1===d(this.from[e]+a,this.to[e]+a,this.value[e]))return!1}map(b,c){let d=[],e=[],f=[],g=-1,h=-1;for(let a=0;a<this.value.length;a++){let i=this.value[a],j=this.from[a]+b,k=this.to[a]+b,l,m;if(j==k){let a=c.mapPos(j,i.startSide,i.mapMode);if(null==a||(l=m=a,i.startSide!=i.endSide&&(m=c.mapPos(j,i.endSide))<l))continue}else if((l=c.mapPos(j,i.startSide))>(m=c.mapPos(k,i.endSide))||l==m&&i.startSide>0&&i.endSide<=0)continue;0>(m-l||i.endSide-i.startSide)||(g<0&&(g=l),i.point&&(h=Math.max(h,m-l)),d.push(i),e.push(l-g),f.push(m-g))}return{mapped:d.length?new a(e,f,d,h):null,pos:g}}},dq=class a{constructor(a,b,c,d){this.chunkPos=a,this.chunk=b,this.nextLayer=c,this.maxPoint=d}static create(b,c,d,e){return new a(b,c,d,e)}get length(){let a=this.chunk.length-1;return a<0?0:Math.max(this.chunkEnd(a),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let a=this.nextLayer.size;for(let b of this.chunk)a+=b.value.length;return a}chunkEnd(a){return this.chunkPos[a]+this.chunk[a].length}update(b){let{add:c=[],sort:d=!1,filterFrom:e=0,filterTo:f=this.length}=b,g=b.filter;if(0==c.length&&!g)return this;if(d&&(c=c.slice().sort(dn)),this.isEmpty)return c.length?a.of(c):this;let h=new dt(this,null,-1).goto(0),i=0,j=[],k=new dr;for(;h.value||i<c.length;)if(i<c.length&&(h.from-c[i].from||h.startSide-c[i].value.startSide)>=0){let a=c[i++];k.addInner(a.from,a.to,a.value)||j.push(a)}else 1==h.rangeIndex&&h.chunkIndex<this.chunk.length&&(i==c.length||this.chunkEnd(h.chunkIndex)<c[i].from)&&(!g||e>this.chunkEnd(h.chunkIndex)||f<this.chunkPos[h.chunkIndex])&&k.addChunk(this.chunkPos[h.chunkIndex],this.chunk[h.chunkIndex])?h.nextChunk():((!g||e>h.to||f<h.from||g(h.from,h.to,h.value))&&!k.addInner(h.from,h.to,h.value)&&j.push(dm.create(h.from,h.to,h.value)),h.next());return k.finishInner(this.nextLayer.isEmpty&&!j.length?a.empty:this.nextLayer.update({add:j,filter:g,filterFrom:e,filterTo:f}))}map(b){if(b.empty||this.isEmpty)return this;let c=[],d=[],e=-1;for(let a=0;a<this.chunk.length;a++){let f=this.chunkPos[a],g=this.chunk[a],h=b.touchesRange(f,f+g.length);if(!1===h)e=Math.max(e,g.maxPoint),c.push(g),d.push(b.mapPos(f));else if(!0===h){let{mapped:a,pos:h}=g.map(f,b);a&&(e=Math.max(e,a.maxPoint),c.push(a),d.push(h))}}let f=this.nextLayer.map(b);return 0==c.length?f:new a(d,c,f||a.empty,e)}between(a,b,c){if(!this.isEmpty){for(let d=0;d<this.chunk.length;d++){let e=this.chunkPos[d],f=this.chunk[d];if(b>=e&&a<=e+f.length&&!1===f.between(e,a-e,b-e,c))return}this.nextLayer.between(a,b,c)}}iter(a=0){return du.from([this]).goto(a)}get isEmpty(){return this.nextLayer==this}static iter(a,b=0){return du.from(a).goto(b)}static compare(a,b,c,d,e=-1){let f=a.filter(a=>a.maxPoint>0||!a.isEmpty&&a.maxPoint>=e),g=b.filter(a=>a.maxPoint>0||!a.isEmpty&&a.maxPoint>=e),h=ds(f,g,c),i=new dw(f,h,e),j=new dw(g,h,e);c.iterGaps((a,b,c)=>dx(i,a,j,b,c,d)),c.empty&&0==c.length&&dx(i,0,j,0,0,d)}static eq(a,b,c=0,d){null==d&&(d=1e9-1);let e=a.filter(a=>!a.isEmpty&&0>b.indexOf(a)),f=b.filter(b=>!b.isEmpty&&0>a.indexOf(b));if(e.length!=f.length)return!1;if(!e.length)return!0;let g=ds(e,f),h=new dw(e,g,0).goto(c),i=new dw(f,g,0).goto(c);for(;;){if(h.to!=i.to||!dy(h.active,i.active)||h.point&&(!i.point||!dl(h.point,i.point)))return!1;if(h.to>d)return!0;h.next(),i.next()}}static spans(a,b,c,d,e=-1){let f=new dw(a,null,e).goto(b),g=b,h=f.openStart;for(;;){let a=Math.min(f.to,c);if(f.point){let c=f.activeForPoint(f.to),e=f.pointFrom<b?c.length+1:f.point.startSide<0?c.length:Math.min(c.length,h);d.point(g,a,f.point,c,e,f.pointRank),h=Math.min(f.openEnd(a),c.length)}else a>g&&(d.span(g,a,f.active,h),h=f.openEnd(a));if(f.to>c)return h+(f.point&&f.to>c?1:0);g=f.to,f.next()}}static of(a,b=!1){let c=new dr;for(let d of a instanceof dm?[a]:b?function(a){if(a.length>1)for(let b=a[0],c=1;c<a.length;c++){let d=a[c];if(dn(b,d)>0)return a.slice().sort(dn);b=d}return a}(a):a)c.add(d.from,d.to,d.value);return c.finish()}static join(b){if(!b.length)return a.empty;let c=b[b.length-1];for(let d=b.length-2;d>=0;d--)for(let e=b[d];e!=a.empty;e=e.nextLayer)c=new a(e.chunkPos,e.chunk,c,Math.max(e.maxPoint,c.maxPoint));return c}};dq.empty=new dq([],[],null,-1),dq.empty.nextLayer=dq.empty;var dr=class a{finishChunk(a){this.chunks.push(new dp(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,a&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(b,c,d){this.addInner(b,c,d)||(this.nextLayer||(this.nextLayer=new a)).add(b,c,d)}addInner(a,b,c){let d=a-this.lastTo||c.startSide-this.last.endSide;if(d<=0&&0>(a-this.lastFrom||c.startSide-this.last.startSide))throw Error("Ranges must be added sorted by `from` position and `startSide`");return!(d<0)&&(250==this.from.length&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=a),this.from.push(a-this.chunkStart),this.to.push(b-this.chunkStart),this.last=c,this.lastFrom=a,this.lastTo=b,this.value.push(c),c.point&&(this.maxPoint=Math.max(this.maxPoint,b-a)),!0)}addChunk(a,b){if(0>(a-this.lastTo||b.value[0].startSide-this.last.endSide))return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,b.maxPoint),this.chunks.push(b),this.chunkPos.push(a);let c=b.value.length-1;return this.last=b.value[c],this.lastFrom=b.from[c]+a,this.lastTo=b.to[c]+a,!0}finish(){return this.finishInner(dq.empty)}finishInner(a){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return a;let b=dq.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(a):a,this.setMaxPoint);return this.from=null,b}};function ds(a,b,c){let d=new Map;for(let b of a)for(let a=0;a<b.chunk.length;a++)b.chunk[a].maxPoint<=0&&d.set(b.chunk[a],b.chunkPos[a]);let e=new Set;for(let a of b)for(let b=0;b<a.chunk.length;b++){let f=d.get(a.chunk[b]);null==f||(c?c.mapPos(f):f)!=a.chunkPos[b]||(null==c?void 0:c.touchesRange(f,f+a.chunk[b].length))||e.add(a.chunk[b])}return e}var dt=class{constructor(a,b,c,d=0){this.layer=a,this.skip=b,this.minPoint=c,this.rank=d}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(a,b=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(a,b,!1),this}gotoInner(a,b,c){for(;this.chunkIndex<this.layer.chunk.length;){let b=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(b)||this.layer.chunkEnd(this.chunkIndex)<a||b.maxPoint<this.minPoint))break;this.chunkIndex++,c=!1}if(this.chunkIndex<this.layer.chunk.length){let d=this.layer.chunk[this.chunkIndex].findIndex(a-this.layer.chunkPos[this.chunkIndex],b,!0);(!c||this.rangeIndex<d)&&this.setRangeIndex(d)}this.next()}forward(a,b){0>(this.to-a||this.endSide-b)&&this.gotoInner(a,b,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let a=this.layer.chunkPos[this.chunkIndex],b=this.layer.chunk[this.chunkIndex],c=a+b.from[this.rangeIndex];if(this.from=c,this.to=a+b.to[this.rangeIndex],this.value=b.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(a){if(a==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=a}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(a){return this.from-a.from||this.startSide-a.startSide||this.rank-a.rank||this.to-a.to||this.endSide-a.endSide}},du=class a{constructor(a){this.heap=a}static from(b,c=null,d=-1){let e=[];for(let a=0;a<b.length;a++)for(let f=b[a];!f.isEmpty;f=f.nextLayer)f.maxPoint>=d&&e.push(new dt(f,c,d,a));return 1==e.length?e[0]:new a(e)}get startSide(){return this.value?this.value.startSide:0}goto(a,b=-1e9){for(let c of this.heap)c.goto(a,b);for(let a=this.heap.length>>1;a>=0;a--)dv(this.heap,a);return this.next(),this}forward(a,b){for(let c of this.heap)c.forward(a,b);for(let a=this.heap.length>>1;a>=0;a--)dv(this.heap,a);0>(this.to-a||this.value.endSide-b)&&this.next()}next(){if(0==this.heap.length)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let a=this.heap[0];this.from=a.from,this.to=a.to,this.value=a.value,this.rank=a.rank,a.value&&a.next(),dv(this.heap,0)}}};function dv(a,b){for(let c=a[b];;){let d=(b<<1)+1;if(d>=a.length)break;let e=a[d];if(d+1<a.length&&e.compare(a[d+1])>=0&&(e=a[d+1],d++),0>c.compare(e))break;a[d]=c,a[b]=e,b=d}}var dw=class{constructor(a,b,c){this.minPoint=c,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=du.from(a,b,c)}goto(a,b=-1e9){return this.cursor.goto(a,b),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=a,this.endSide=b,this.openStart=-1,this.next(),this}forward(a,b){for(;this.minActive>-1&&0>(this.activeTo[this.minActive]-a||this.active[this.minActive].endSide-b);)this.removeActive(this.minActive);this.cursor.forward(a,b)}removeActive(a){dz(this.active,a),dz(this.activeTo,a),dz(this.activeRank,a),this.minActive=dB(this.active,this.activeTo)}addActive(a){let b=0,{value:c,to:d,rank:e}=this.cursor;for(;b<this.activeRank.length&&(e-this.activeRank[b]||d-this.activeTo[b])>0;)b++;dA(this.active,b,c),dA(this.activeTo,b,d),dA(this.activeRank,b,e),a&&dA(a,b,this.cursor.from),this.minActive=dB(this.active,this.activeTo)}next(){let a=this.to,b=this.point;this.point=null;let c=this.openStart<0?[]:null;for(;;){let d=this.minActive;if(d>-1&&0>(this.activeTo[d]-this.cursor.from||this.active[d].endSide-this.cursor.startSide)){if(this.activeTo[d]>a){this.to=this.activeTo[d],this.endSide=this.active[d].endSide;break}this.removeActive(d),c&&dz(c,d)}else if(this.cursor.value)if(this.cursor.from>a){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let a=this.cursor.value;if(a.point)if(b&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=a,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=a.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}else this.addActive(c),this.cursor.next()}else{this.to=this.endSide=1e9;break}}if(c){this.openStart=0;for(let b=c.length-1;b>=0&&c[b]<a;b--)this.openStart++}}activeForPoint(a){if(!this.active.length)return this.active;let b=[];for(let c=this.active.length-1;c>=0&&!(this.activeRank[c]<this.pointRank);c--)(this.activeTo[c]>a||this.activeTo[c]==a&&this.active[c].endSide>=this.point.endSide)&&b.push(this.active[c]);return b.reverse()}openEnd(a){let b=0;for(let c=this.activeTo.length-1;c>=0&&this.activeTo[c]>a;c--)b++;return b}};function dx(a,b,c,d,e,f){a.goto(b),c.goto(d);let g=d+e,h=d,i=d-b,j=!!f.boundChange;for(let b=!1;;){let d=a.to+i-c.to,e=d||a.endSide-c.endSide,k=e<0?a.to+i:c.to,l=Math.min(k,g);if(a.point||c.point?(a.point&&c.point&&dl(a.point,c.point)&&dy(a.activeForPoint(a.to),c.activeForPoint(c.to))||f.comparePoint(h,l,a.point,c.point),b=!1):(b&&f.boundChange(h),l>h&&!dy(a.active,c.active)&&f.compareRange(h,l,a.active,c.active),j&&l<g&&(d||a.openEnd(k)!=c.openEnd(k))&&(b=!0)),k>g)break;h=k,e<=0&&a.next(),e>=0&&c.next()}}function dy(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c]&&!dl(a[c],b[c]))return!1;return!0}function dz(a,b){for(let c=b,d=a.length-1;c<d;c++)a[c]=a[c+1];a.pop()}function dA(a,b,c){for(let c=a.length-1;c>=b;c--)a[c+1]=a[c];a[b]=c}function dB(a,b){let c=-1,d=1e9;for(let e=0;e<b.length;e++)0>(b[e]-d||a[e].endSide-a[c].endSide)&&(c=e,d=b[e]);return c}var dC="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),dD="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),dE="undefined"!=typeof globalThis?globalThis:{},dF=class{constructor(a,b){this.rules=[];let{finish:c}=b||{};function d(a){return/^@/.test(a)?[a]:a.split(/,\s*/)}for(let b in a)!function a(b,e,f,g){let h=[],i=/^@(\w+)\b/.exec(b[0]),j=i&&"keyframes"==i[1];if(i&&null==e)return f.push(b[0]+";");for(let c in e){let g=e[c];if(/&/.test(c))a(c.split(/,\s*/).map(a=>b.map(b=>a.replace(/&/,b))).reduce((a,b)=>a.concat(b)),g,f);else if(g&&"object"==typeof g){if(!i)throw RangeError("The value of a property ("+c+") should be a primitive value.");a(d(c),g,h,j)}else null!=g&&h.push(c.replace(/_.*/,"").replace(/[A-Z]/g,a=>"-"+a.toLowerCase())+": "+g+";")}(h.length||j)&&f.push((c&&!i&&!g?b.map(c):b).join(", ")+" {"+h.join(" ")+"}")}(d(b),a[b],this.rules)}getRules(){return this.rules.join("\n")}static newName(){let a=dE[dC]||1;return dE[dC]=a+1,"ͼ"+a.toString(36)}static mount(a,b,c){let d=a[dD],e=c&&c.nonce;d?e&&d.setNonce(e):d=new dH(a,e),d.mount(Array.isArray(b)?b:[b],a)}},dG=new Map,dH=class{constructor(a,b){let c=a.ownerDocument||a,d=c.defaultView;if(!a.head&&a.adoptedStyleSheets&&d.CSSStyleSheet){let b=dG.get(c);if(b)return a[dD]=b;this.sheet=new d.CSSStyleSheet,dG.set(c,this)}else this.styleTag=c.createElement("style"),b&&this.styleTag.setAttribute("nonce",b);this.modules=[],a[dD]=this}mount(a,b){let c=this.sheet,d=0,e=0;for(let b=0;b<a.length;b++){let f=a[b],g=this.modules.indexOf(f);if(g<e&&g>-1&&(this.modules.splice(g,1),e--,g=-1),-1==g){if(this.modules.splice(e++,0,f),c)for(let a=0;a<f.rules.length;a++)c.insertRule(f.rules[a],d++)}else{for(;e<g;)d+=this.modules[e++].rules.length;d+=f.rules.length,e++}}if(c)0>b.adoptedStyleSheets.indexOf(this.sheet)&&(b.adoptedStyleSheets=[this.sheet,...b.adoptedStyleSheets]);else{let a="";for(let b=0;b<this.modules.length;b++)a+=this.modules[b].getRules()+"\n";this.styleTag.textContent=a;let c=b.head||b;this.styleTag.parentNode!=c&&c.insertBefore(this.styleTag,c.firstChild)}}setNonce(a){this.styleTag&&this.styleTag.getAttribute("nonce")!=a&&this.styleTag.setAttribute("nonce",a)}},dI={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},dJ={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'};for("undefined"!=typeof navigator&&/Mac/.test(navigator.platform),"undefined"!=typeof navigator&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent),f=0;f<10;f++)dI[48+f]=dI[96+f]=String(f);for(f=1;f<=24;f++)dI[f+111]="F"+f;for(f=65;f<=90;f++)dI[f]=String.fromCharCode(f+32),dJ[f]=String.fromCharCode(f);for(g in dI)dJ.hasOwnProperty(g)||(dJ[g]=dI[g]);function dK(){var a=arguments[0];"string"==typeof a&&(a=document.createElement(a));var b=1,c=arguments[1];if(c&&"object"==typeof c&&null==c.nodeType&&!Array.isArray(c)){for(var d in c)if(Object.prototype.hasOwnProperty.call(c,d)){var e=c[d];"string"==typeof e?a.setAttribute(d,e):null!=e&&(a[d]=e)}b++}for(;b<arguments.length;b++)!function a(b,c){if("string"==typeof c)b.appendChild(document.createTextNode(c));else if(null==c);else if(null!=c.nodeType)b.appendChild(c);else if(Array.isArray(c))for(var d=0;d<c.length;d++)a(b,c[d]);else throw RangeError("Unsupported child node: "+c)}(a,arguments[b]);return a}var dL="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},dM="undefined"!=typeof document?document:{documentElement:{style:{}}},dN=/Edge\/(\d+)/.exec(dL.userAgent),dO=/MSIE \d/.test(dL.userAgent),dP=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(dL.userAgent),dQ=!!(dO||dP||dN),dR=!dQ&&/gecko\/(\d+)/i.test(dL.userAgent),dS=!dQ&&/Chrome\/(\d+)/.exec(dL.userAgent),dT="webkitFontSmoothing"in dM.documentElement.style,dU=!dQ&&/Apple Computer/.test(dL.vendor),dV=dU&&(/Mobile\/\w+/.test(dL.userAgent)||dL.maxTouchPoints>2),dW={mac:dV||/Mac/.test(dL.platform),windows:/Win/.test(dL.platform),linux:/Linux|X11/.test(dL.platform),ie:dQ,ie_version:dO?dM.documentMode||6:dP?+dP[1]:dN?+dN[1]:0,gecko:dR,gecko_version:dR?+(/Firefox\/(\d+)/.exec(dL.userAgent)||[0,0])[1]:0,chrome:!!dS,chrome_version:dS?+dS[1]:0,ios:dV,android:/Android\b/.test(dL.userAgent),webkit:dT,webkit_version:dT?+(/\bAppleWebKit\/(\d+)/.exec(dL.userAgent)||[0,0])[1]:0,safari:dU,safari_version:dU?+(/\bVersion\/(\d+(\.\d+)?)/.exec(dL.userAgent)||[0,0])[1]:0,tabSize:null!=dM.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};function dX(a,b){for(let c in a)"class"==c&&b.class?b.class+=" "+a.class:"style"==c&&b.style?b.style+=";"+a.style:b[c]=a[c];return b}var dY=Object.create(null);function dZ(a,b,c){if(a==b)return!0;a||(a=dY),b||(b=dY);let d=Object.keys(a),e=Object.keys(b);if(d.length-(c&&d.indexOf(c)>-1?1:0)!=e.length-(c&&e.indexOf(c)>-1?1:0))return!1;for(let f of d)if(f!=c&&(-1==e.indexOf(f)||a[f]!==b[f]))return!1;return!0}function d$(a,b,c){let d=!1;if(b)for(let e in b)c&&e in c||(d=!0,"style"==e?a.style.cssText="":a.removeAttribute(e));if(c)for(let e in c)b&&b[e]==c[e]||(d=!0,"style"==e?a.style.cssText=c[e]:a.setAttribute(e,c[e]));return d}var d_=class{eq(a){return!1}updateDOM(a,b){return!1}compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}get estimatedHeight(){return -1}get lineBreaks(){return 0}ignoreEvent(a){return!0}coordsAt(a,b,c){return null}get isHidden(){return!1}get editable(){return!1}destroy(a){}},d0=function(a){return a[a.Text=0]="Text",a[a.WidgetBefore=1]="WidgetBefore",a[a.WidgetAfter=2]="WidgetAfter",a[a.WidgetRange=3]="WidgetRange",a}(d0||(d0={})),d1=class extends dk{constructor(a,b,c,d){super(),this.startSide=a,this.endSide=b,this.widget=c,this.spec=d}get heightRelevant(){return!1}static mark(a){return new d2(a)}static widget(a){let b=Math.max(-1e4,Math.min(1e4,a.side||0)),c=!!a.block;return b+=c&&!a.inlineOrder?b>0?3e8:-4e8:b>0?1e8:-1e8,new d4(a,b,b,c,a.widget||null,!1)}static replace(a){let b=!!a.block,c,d;if(a.isBlockGap)c=-5e8,d=4e8;else{let{start:e,end:f}=d5(a,b);c=(e?b?-3e8:-1:5e8)-1,d=(f?b?2e8:1:-6e8)+1}return new d4(a,c,d,b,a.widget||null,!0)}static line(a){return new d3(a)}static set(a,b=!1){return dq.of(a,b)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}};d1.none=dq.empty;var d2=class a extends d1{constructor(a){let{start:b,end:c}=d5(a);super(b?-1:5e8,c?1:-6e8,null,a),this.tagName=a.tagName||"span",this.attrs=a.class&&a.attributes?dX(a.attributes,{class:a.class}):a.class?{class:a.class}:a.attributes||dY}eq(b){return this==b||b instanceof a&&this.tagName==b.tagName&&dZ(this.attrs,b.attrs)}range(a,b=a){if(a>=b)throw RangeError("Mark decorations may not be empty");return super.range(a,b)}};d2.prototype.point=!1;var d3=class a extends d1{constructor(a){super(-2e8,-2e8,null,a)}eq(b){return b instanceof a&&this.spec.class==b.spec.class&&dZ(this.spec.attributes,b.spec.attributes)}range(a,b=a){if(b!=a)throw RangeError("Line decoration ranges must be zero-length");return super.range(a,b)}};d3.prototype.mapMode=cA.TrackBefore,d3.prototype.point=!0;var d4=class a extends d1{constructor(a,b,c,d,e,f){super(b,c,e,a),this.block=d,this.isReplace=f,this.mapMode=d?b<=0?cA.TrackBefore:cA.TrackAfter:cA.TrackDel}get type(){return this.startSide!=this.endSide?d0.WidgetRange:this.startSide<=0?d0.WidgetBefore:d0.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(b){var c,d;return b instanceof a&&(c=this.widget,c==(d=b.widget)||!!(c&&d&&c.compare(d)))&&this.block==b.block&&this.startSide==b.startSide&&this.endSide==b.endSide}range(a,b=a){if(this.isReplace&&(a>b||a==b&&this.startSide>0&&this.endSide<=0))throw RangeError("Invalid range for replacement decoration");if(!this.isReplace&&b!=a)throw RangeError("Widget decorations can only have zero-length ranges");return super.range(a,b)}};function d5(a,b=!1){let{inclusiveStart:c,inclusiveEnd:d}=a;return null==c&&(c=a.inclusive),null==d&&(d=a.inclusive),{start:null!=c?c:b,end:null!=d?d:b}}function d6(a,b,c,d=0){let e=c.length-1;e>=0&&c[e]+d>=a?c[e]=Math.max(c[e],b):c.push(a,b)}d4.prototype.point=!0;var d7=class a extends dk{constructor(a,b){super(),this.tagName=a,this.attributes=b}eq(b){return b==this||b instanceof a&&this.tagName==b.tagName&&dZ(this.attributes,b.attributes)}static create(b){return new a(b.tagName,b.attributes||dY)}static set(a,b=!1){return dq.of(a,b)}};function d8(a){return(11==a.nodeType?a.getSelection?a:a.ownerDocument:a).getSelection()}function d9(a,b){return!!b&&(a==b||a.contains(1!=b.nodeType?b.parentNode:b))}function ea(a,b){if(!b.anchorNode)return!1;try{return d9(a,b.anchorNode)}catch(a){return!1}}function eb(a){return 3==a.nodeType?em(a,0,a.nodeValue.length).getClientRects():1==a.nodeType?a.getClientRects():[]}function ec(a,b,c,d){return!!c&&(ef(a,b,c,d,-1)||ef(a,b,c,d,1))}function ed(a){for(var b=0;;b++)if(!(a=a.previousSibling))return b}function ee(a){return 1==a.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(a.nodeName)}function ef(a,b,c,d,e){for(;;){if(a==c&&b==d)return!0;if(b==(e<0?0:eg(a))){if("DIV"==a.nodeName)return!1;let c=a.parentNode;if(!c||1!=c.nodeType)return!1;b=ed(a)+(e<0?0:1),a=c}else{if(1!=a.nodeType||1==(a=a.childNodes[b+(e<0?-1:0)]).nodeType&&"false"==a.contentEditable)return!1;b=e<0?eg(a):0}}}function eg(a){return 3==a.nodeType?a.nodeValue.length:a.childNodes.length}function eh(a,b){let c=b?a.left:a.right;return{left:c,right:c,top:a.top,bottom:a.bottom}}function ei(a,b){let c=b.width/a.offsetWidth,d=b.height/a.offsetHeight;return(c>.995&&c<1.005||!isFinite(c)||1>Math.abs(b.width-a.offsetWidth))&&(c=1),(d>.995&&d<1.005||!isFinite(d)||1>Math.abs(b.height-a.offsetHeight))&&(d=1),{scaleX:c,scaleY:d}}d7.prototype.startSide=d7.prototype.endSide=-1;var ej=class{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(a){return this.anchorNode==a.anchorNode&&this.anchorOffset==a.anchorOffset&&this.focusNode==a.focusNode&&this.focusOffset==a.focusOffset}setRange(a){let{anchorNode:b,focusNode:c}=a;this.set(b,Math.min(a.anchorOffset,b?eg(b):0),c,Math.min(a.focusOffset,c?eg(c):0))}set(a,b,c,d){this.anchorNode=a,this.anchorOffset=b,this.focusNode=c,this.focusOffset=d}},ek=null;function el(a){if(a.setActive)return a.setActive();if(ek)return a.focus(ek);let b=[];for(let c=a;c&&(b.push(c,c.scrollTop,c.scrollLeft),c!=c.ownerDocument);c=c.parentNode);if(a.focus(null==ek?{get preventScroll(){return ek={preventScroll:!0},!0}}:void 0),!ek){ek=!1;for(let a=0;a<b.length;){let c=b[a++],d=b[a++],e=b[a++];c.scrollTop!=d&&(c.scrollTop=d),c.scrollLeft!=e&&(c.scrollLeft=e)}}}function em(a,b,c=b){let d=h||(h=document.createRange());return d.setEnd(a,c),d.setStart(a,b),d}function en(a,b,c,d){let e={key:b,code:b,keyCode:c,which:c,cancelable:!0};d&&({altKey:e.altKey,ctrlKey:e.ctrlKey,shiftKey:e.shiftKey,metaKey:e.metaKey}=d);let f=new KeyboardEvent("keydown",e);f.synthetic=!0,a.dispatchEvent(f);let g=new KeyboardEvent("keyup",e);return g.synthetic=!0,a.dispatchEvent(g),f.defaultPrevented||g.defaultPrevented}function eo(a){return a.scrollTop>Math.max(1,a.scrollHeight-a.clientHeight-4)}function ep(a,b){for(let c=a,d=b;;)if(3==c.nodeType&&d>0)return{node:c,offset:d};else if(1==c.nodeType&&d>0){if("false"==c.contentEditable)return null;d=eg(c=c.childNodes[d-1])}else{if(!c.parentNode||ee(c))return null;d=ed(c),c=c.parentNode}}function eq(a,b){for(let c=a,d=b;;)if(3==c.nodeType&&d<c.nodeValue.length)return{node:c,offset:d};else if(1==c.nodeType&&d<c.childNodes.length){if("false"==c.contentEditable)return null;c=c.childNodes[d],d=0}else{if(!c.parentNode||ee(c))return null;d=ed(c)+1,c=c.parentNode}}dW.safari&&dW.safari_version>=26&&(ek=!1);var er=class a{constructor(a,b,c=!0){this.node=a,this.offset=b,this.precise=c}static before(b,c){return new a(b.parentNode,ed(b),c)}static after(b,c){return new a(b.parentNode,ed(b)+1,c)}},es=function(a){return a[a.LTR=0]="LTR",a[a.RTL=1]="RTL",a}(es||(es={})),et=es.LTR,eu=es.RTL;function ev(a){let b=[];for(let c=0;c<a.length;c++)b.push(1<<a[c]);return b}var ew=ev("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),ex=ev("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),ey=Object.create(null),ez=[];for(let a of["()","[]","{}"]){let b=a.charCodeAt(0),c=a.charCodeAt(1);ey[b]=c,ey[c]=-b}function eA(a){return a<=247?ew[a]:1424<=a&&a<=1524?2:1536<=a&&a<=1785?ex[a-1536]:1774<=a&&a<=2220?4:8192<=a&&a<=8204?256:64336<=a&&a<=65023?4:1}var eB=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,eC=class{get dir(){return this.level%2?eu:et}constructor(a,b,c){this.from=a,this.to=b,this.level=c}side(a,b){return this.dir==b==a?this.to:this.from}forward(a,b){return a==(this.dir==b)}static find(a,b,c,d){let e=-1;for(let f=0;f<a.length;f++){let g=a[f];if(g.from<=b&&g.to>=b){if(g.level==c)return f;(e<0||(0!=d?d<0?g.from<b:g.to>b:a[e].level>g.level))&&(e=f)}}if(e<0)throw RangeError("Index out of range");return e}},eD=[];function eE(a){return[new eC(0,a,0)]}var eF="",eG=cN.define(),eH=cN.define(),eI=cN.define(),eJ=cN.define(),eK=cN.define(),eL=cN.define(),eM=cN.define(),eN=cN.define(),eO=cN.define(),eP=cN.define({combine:a=>a.some(a=>a)}),eQ=cN.define({combine:a=>a.some(a=>a)}),eR=cN.define(),eS=class a{constructor(a,b="nearest",c="nearest",d=5,e=5,f=!1){this.range=a,this.y=b,this.x=c,this.yMargin=d,this.xMargin=e,this.isSnapshot=f}map(b){return b.empty?this:new a(this.range.map(b),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(b){return this.range.to<=b.doc.length?this:new a(cK.cursor(b.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},eT=db.define({map:(a,b)=>a.map(b)}),eU=db.define();function eV(a,b,c){let d=a.facet(eJ);d.length?d[0](b):window.onerror&&window.onerror(String(b),c,void 0,void 0,b)||(c?console.error(c+":",b):console.error(b))}var eW=cN.define({combine:a=>!a.length||a[0]}),eX=0,eY=cN.define({combine:a=>a.filter((b,c)=>{for(let d=0;d<c;d++)if(a[d].plugin==b.plugin)return!1;return!0})}),eZ=class a{constructor(a,b,c,d,e){this.id=a,this.create=b,this.domEventHandlers=c,this.domEventObservers=d,this.baseExtensions=e(this),this.extension=this.baseExtensions.concat(eY.of({plugin:this,arg:void 0}))}of(a){return this.baseExtensions.concat(eY.of({plugin:this,arg:a}))}static define(b,c){let{eventHandlers:d,eventObservers:e,provide:f,decorations:g}=c||{};return new a(eX++,b,d,e,a=>{let b=[];return g&&b.push(e1.of(b=>{let c=b.plugin(a);return c?g(c):d1.none})),f&&b.push(f(a)),b})}static fromClass(b,c){return a.define((a,c)=>new b(a,c),c)}},e$=class{constructor(a){this.spec=a,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(a){if(this.value){if(this.mustUpdate){let a=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(a)}catch(b){if(eV(a.state,b,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch(a){}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(a,this.spec.arg)}catch(b){eV(a.state,b,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(a){var b;if(null==(b=this.value)?void 0:b.destroy)try{this.value.destroy()}catch(b){eV(a.state,b,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},e_=cN.define(),e0=cN.define(),e1=cN.define(),e2=cN.define(),e3=cN.define(),e4=cN.define(),e5=cN.define();function e6(a,b){let c=a.state.facet(e5);if(!c.length)return c;let d=c.map(b=>b instanceof Function?b(a):b),e=[];return dq.spans(d,b.from,b.to,{point(){},span(a,c,d,f){let g=a-b.from,h=c-b.from,i=e;for(let a=d.length-1;a>=0;a--,f--){let c=d[a].spec.bidiIsolate,e;if(null==c&&(c=function(a,b,c){for(let d=b;d<c;d++){let b=eA(a.charCodeAt(d));if(1==b)break;if(2==b||4==b)return eu}return et}(b.text,g,h)),f>0&&i.length&&(e=i[i.length-1]).to==g&&e.direction==c)e.to=h,i=e.inner;else{let a={from:g,to:h,direction:c,inner:[]};i.push(a),i=a.inner}}}}),e}var e7=cN.define();function e8(a){let b=0,c=0,d=0,e=0;for(let f of a.state.facet(e7)){let g=f(a);g&&(null!=g.left&&(b=Math.max(b,g.left)),null!=g.right&&(c=Math.max(c,g.right)),null!=g.top&&(d=Math.max(d,g.top)),null!=g.bottom&&(e=Math.max(e,g.bottom)))}return{left:b,right:c,top:d,bottom:e}}var e9=cN.define(),fa=class a{constructor(a,b,c,d){this.fromA=a,this.toA=b,this.fromB=c,this.toB=d}join(b){return new a(Math.min(this.fromA,b.fromA),Math.max(this.toA,b.toA),Math.min(this.fromB,b.fromB),Math.max(this.toB,b.toB))}addToSet(a){let b=a.length,c=this;for(;b>0;b--){let d=a[b-1];if(!(d.fromA>c.toA)){if(d.toA<c.fromA)break;c=c.join(d),a.splice(b-1,1)}}return a.splice(b,0,c),a}static extendWithRanges(b,c){if(0==c.length)return b;let d=[];for(let e=0,f=0,g=0;;){let h=Math.min(e<b.length?b[e].fromB:1e9,f<c.length?c[f]:1e9);if(1e9==h)break;let i=h+g,j=h,k=i;for(;;)if(f<c.length&&c[f]<=j){let a=c[f+1];f+=2,j=Math.max(j,a);for(let a=e;a<b.length&&b[a].fromB<=j;a++)g=b[a].toA-b[a].toB;k=Math.max(k,a+g)}else if(e<b.length&&b[e].fromB<=j){let a=b[e++];j=Math.max(j,a.toB),k=Math.max(k,a.toA),g=a.toA-a.toB}else break;d.push(new a(i,k,h,j))}return d}},fb=class a{constructor(a,b,c){for(let d of(this.view=a,this.state=b,this.transactions=c,this.flags=0,this.startState=a.state,this.changes=cC.empty(this.startState.doc.length),c))this.changes=this.changes.compose(d.changes);let d=[];this.changes.iterChangedRanges((a,b,c,e)=>d.push(new fa(a,b,c,e))),this.changedRanges=d}static create(b,c,d){return new a(b,c,d)}get viewportChanged(){return(4&this.flags)>0}get viewportMoved(){return(8&this.flags)>0}get heightChanged(){return(2&this.flags)>0}get geometryChanged(){return this.docChanged||(18&this.flags)>0}get focusChanged(){return(1&this.flags)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(a=>a.selection)}get empty(){return 0==this.flags&&0==this.transactions.length}},fc=[],fd=class{constructor(a,b,c=0){this.dom=a,this.length=b,this.flags=c,this.parent=null,a.cmTile=this}get breakAfter(){return 1&this.flags}get children(){return fc}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(a){if(this.flags|=2,4&this.flags){this.flags&=-5;let a=this.domAttrs;a&&function(a,b){for(let c=a.attributes.length-1;c>=0;c--){let d=a.attributes[c].name;null==b[d]&&a.removeAttribute(d)}for(let c in b){let d=b[c];"style"==c?a.style.cssText=d:a.getAttribute(c)!=d&&a.setAttribute(c,d)}}(this.dom,a)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(a){this.dom=a,a.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(a,b=this.posAtStart){let c=b;for(let b of this.children){if(b==a)return c;c+=b.length+b.breakAfter}throw RangeError("Invalid child in posBefore")}posAfter(a){return this.posBefore(a)+a.length}covers(a){return!0}coordsIn(a,b){return null}domPosFor(a,b){let c=ed(this.dom),d=this.length?a>0:b>0;return new er(this.parent.dom,c+ +!!d,0==a||a==this.length)}markDirty(a){this.flags&=-3,a&&(this.flags|=4),this.parent&&2&this.parent.flags&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let a=this;a;a=a.parent)if(a instanceof fg)return a;return null}static get(a){return a.cmTile}},fe=class extends fd{constructor(a){super(a,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(a){this.children.push(a),a.parent=this}sync(a){if(2&this.flags)return;super.sync(a);let b=this.dom,c=null,d,e=(null==a?void 0:a.node)==b?a:null,f=0;for(let g of this.children){if(g.sync(a),f+=g.length+g.breakAfter,d=c?c.nextSibling:b.firstChild,e&&d!=g.dom&&(e.written=!0),g.dom.parentNode==b)for(;d&&d!=g.dom;)d=ff(d);else b.insertBefore(g.dom,d);c=g.dom}for(d=c?c.nextSibling:b.firstChild,e&&d&&(e.written=!0);d;)d=ff(d);this.length=f}};function ff(a){let b=a.nextSibling;return a.parentNode.removeChild(a),b}var fg=class extends fe{constructor(a,b){super(b),this.view=a}owns(a){for(;a;a=a.parent)if(a==this)return!0;return!1}isBlock(){return!0}nearest(a){for(;;){if(!a)return null;let b=fd.get(a);if(b&&this.owns(b))return b;a=a.parentNode}}blockTiles(a){for(let b=[],c=this,d=0,e=0;;)if(d==c.children.length){if(!b.length)return;(c=c.parent).breakAfter&&e++,d=b.pop()}else{let f=c.children[d++];if(f instanceof fh)b.push(d),c=f,d=0;else{let b=e+f.length,c=a(f,e);if(void 0!==c)return c;e=b+f.breakAfter}}}resolveBlock(a,b){let c,d=-1,e,f=-1;if(this.blockTiles((g,h)=>{let i=h+g.length;if(a>=h&&a<=i){if(g.isWidget()&&b>=-1&&b<=1){if(32&g.flags)return!0;16&g.flags&&(c=void 0)}(h<a||a==i&&(b<-1?g.length:g.covers(1)))&&(!c||!g.isWidget()&&c.isWidget())&&(c=g,d=a-h),(i>a||a==h&&(b>1?g.length:g.covers(-1)))&&(!e||!g.isWidget()&&e.isWidget())&&(e=g,f=a-h)}}),!c&&!e)throw Error("No tile at position "+a);return c&&b<0||!e?{tile:c,offset:d}:{tile:e,offset:f}}},fh=class a extends fe{constructor(a,b){super(a),this.wrapper=b}isBlock(){return!0}covers(a){return!!this.children.length&&(a<0?this.children[0].covers(-1):this.lastChild.covers(1))}get domAttrs(){return this.wrapper.attributes}static of(b,c){let d=new a(c||document.createElement(b.tagName),b);return c||(d.flags|=4),d}},fi=class a extends fe{constructor(a,b){super(a),this.attrs=b}isLine(){return!0}static start(b,c,d){let e=new a(c||document.createElement("div"),b);return c&&d||(e.flags|=4),e}get domAttrs(){return this.attrs}resolveInline(a,b,c){let d=null,e=-1,f=null,g=-1;!function a(h,i){for(let j=0,k=0;j<h.children.length&&k<=i;j++){let l=h.children[j],m=k+l.length;m>=i&&(l.isComposite()?a(l,i-k):(!f||f.isHidden&&(b>0||c&&function(a,b){let c=a.coordsIn(0,1),d=b.coordsIn(0,1);return c&&d&&d.top<c.bottom}(f,l)))&&(m>i||32&l.flags)?(f=l,g=i-k):(k<i||16&l.flags&&!l.isHidden)&&(d=l,e=i-k)),k=m}}(this,a);let h=(b<0?d:f)||d||f;return h?{tile:h,offset:h==d?e:g}:null}coordsIn(a,b){let c=this.resolveInline(a,b,!0);return c?c.tile.coordsIn(Math.max(0,c.offset),b):function(a){let b=a.dom.lastChild;if(!b)return a.dom.getBoundingClientRect();let c=eb(b);return c[c.length-1]||null}(this)}domIn(a,b){let c=this.resolveInline(a,b);if(c){let{tile:a,offset:d}=c;if(this.dom.contains(a.dom))return a.isText()?new er(a.dom,Math.min(a.dom.nodeValue.length,d)):a.domPosFor(d,16&a.flags?1:32&a.flags?-1:b);let e=c.tile.parent,f=!1;for(let a of e.children){if(f)return new er(a.dom,0);a==c.tile&&(f=!0)}}return new er(this.dom,0)}},fj=class a extends fe{constructor(a,b){super(a),this.mark=b}get domAttrs(){return this.mark.attrs}static of(b,c){let d=new a(c||document.createElement(b.tagName),b);return c||(d.flags|=4),d}},fk=class a extends fd{constructor(a,b){super(a,b.length),this.text=b}sync(a){2&this.flags||(super.sync(a),this.dom.nodeValue!=this.text&&(a&&a.node==this.dom&&(a.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(a,b){let c=this.dom.nodeValue.length;a>c&&(a=c);let d=a,e=a,f=0;0==a&&b<0||a==c&&b>=0?!(dW.chrome||dW.gecko)&&(a?(d--,f=1):e<c&&(e++,f=-1)):b<0?d--:e<c&&e++;let g=em(this.dom,d,e).getClientRects();if(!g.length)return null;let h=g[(f?f<0:b>=0)?0:g.length-1];return dW.safari&&!f&&0==h.width&&(h=Array.prototype.find.call(g,a=>a.width)||h),f?eh(h,f<0):h||null}static of(b,c){let d=new a(c||document.createTextNode(b),b);return c||(d.flags|=2),d}},fl=class a extends fd{constructor(a,b,c,d){super(a,b,d),this.widget=c}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(a){return!(48&this.flags)&&(this.flags&(a<0?64:128))>0}coordsIn(a,b){return this.coordsInWidget(a,b,!1)}coordsInWidget(a,b,c){let d=this.widget.coordsAt(this.dom,a,b);if(d)return d;if(c)return eh(this.dom.getBoundingClientRect(),this.length?0==a:b<=0);{let b=this.dom.getClientRects(),c=null;if(!b.length)return null;let d=!!(16&this.flags)||!(32&this.flags)&&a>0;for(let e=d?b.length-1:0;c=b[e],a>0?0!=e:e!=b.length-1&&!(c.top<c.bottom);e+=d?-1:1);return eh(c,!d)}}get overrideDOMText(){if(!this.length)return cp.empty;let{root:a}=this;if(!a)return cp.empty;let b=this.posAtStart;return a.view.state.doc.slice(b,b+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(b,c,d,e,f){return!f&&(f=b.toDOM(c),b.editable||(f.contentEditable="false")),new a(f,d,b,e)}},fm=class extends fd{constructor(a){let b=document.createElement("img");b.className="cm-widgetBuffer",b.setAttribute("aria-hidden","true"),super(b,0,a)}get isHidden(){return!0}get overrideDOMText(){return cp.empty}coordsIn(a){return this.dom.getBoundingClientRect()}},fn=class{constructor(a){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=a}advance(a,b,c){let{tile:d,index:e,beforeBreak:f,parents:g}=this;for(;a||b>0;)if(d.isComposite())if(f){if(!a)break;c&&c.break(),a--,f=!1}else if(e==d.children.length){if(!a&&!g.length)break;c&&c.leave(d),f=!!d.breakAfter,({tile:d,index:e}=g.pop()),e++}else{let h=d.children[e],i=h.breakAfter;(b>0?h.length<=a:h.length<a)&&(!c||!1!==c.skip(h,0,h.length)||!h.isComposite)?(f=!!i,e++,a-=h.length):(g.push({tile:d,index:e}),d=h,e=0,c&&h.isComposite()&&c.enter(h))}else if(e==d.length)f=!!d.breakAfter,({tile:d,index:e}=g.pop()),e++;else if(a){let b=Math.min(a,d.length-e);c&&c.skip(d,e,e+b),a-=b,e+=b}else break;return this.tile=d,this.index=e,this.beforeBreak=f,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}},fo=class{constructor(a,b,c,d){this.from=a,this.to=b,this.wrapper=c,this.rank=d}},fp=class{constructor(a,b,c){this.cache=a,this.root=b,this.blockWrappers=c,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(a,b,c,d){var e;this.flushBuffer();let f=this.ensureMarks(b,c),g=f.lastChild;g&&g.isText()&&!(8&g.flags)&&g.length+a.length<512?(this.cache.reused.set(g,2),(f.children[f.children.length-1]=new fk(g.dom,g.text+a)).parent=f):f.append(d||fk.of(a,null==(e=this.cache.find(fk))?void 0:e.dom)),this.pos+=a.length,this.afterWidget=null}addComposition(a,b){let c=this.curLine;c.dom!=b.line.dom&&(c.setDOM(this.cache.reused.has(b.line)?fw(b.line.dom):b.line.dom),this.cache.reused.set(b.line,2));let d=c;for(let a=b.marks.length-1;a>=0;a--){let c=b.marks[a],e=d.lastChild;if(e instanceof fj&&e.mark.eq(c.mark))e.dom!=c.dom&&e.setDOM(fw(c.dom)),d=e;else{if(this.cache.reused.get(c)){let a=fd.get(c.dom);a&&a.setDOM(fw(c.dom))}let a=fj.of(c.mark,c.dom);d.append(a),d=a}this.cache.reused.set(c,2)}let e=fd.get(a.text);e&&this.cache.reused.set(e,2);let f=new fk(a.text,a.text.nodeValue);f.flags|=8,d.append(f)}addInlineWidget(a,b,c){let d=this.afterWidget&&48&a.flags&&(48&this.afterWidget.flags)==(48&a.flags);d||this.flushBuffer();let e=this.ensureMarks(b,c);d||16&a.flags||e.append(this.getBuffer(1)),e.append(a),this.pos+=a.length,this.afterWidget=a}addMark(a,b,c){this.flushBuffer(),this.ensureMarks(b,c).append(a),this.pos+=a.length,this.afterWidget=null}addBlockWidget(a){this.getBlockPos().append(a),this.pos+=a.length,this.lastBlock=a,this.endLine()}continueWidget(a){let b=this.afterWidget||this.lastBlock;b.length+=a,this.pos+=a}addLineStart(a,b){var c;a||(a=fv);let d=fi.start(a,b||(null==(c=this.cache.find(fi))?void 0:c.dom),!!b);this.getBlockPos().append(this.lastBlock=this.curLine=d)}addLine(a){this.getBlockPos().append(a),this.pos+=a.length,this.lastBlock=a,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(a){this.blockPosCovered()||this.addLineStart(a)}ensureLine(a){this.curLine||this.addLineStart(a)}ensureMarks(a,b){var c;let d=this.curLine;for(let e=a.length-1;e>=0;e--){let f=a[e],g;if(b>0&&(g=d.lastChild)&&g instanceof fj&&g.mark.eq(f))d=g,b--;else{let a=fj.of(f,null==(c=this.cache.find(fj,a=>a.mark.eq(f)))?void 0:c.dom);d.append(a),d=a,b=0}}return d}endLine(){if(this.curLine){this.flushBuffer();let a=this.curLine.lastChild;(!a||!fu(this.curLine,!1)||"BR"!=a.dom.nodeName&&a.isWidget()&&!(dW.ios&&fu(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(fy,0,32)||new fl(fy.toDOM(),0,fy,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let a=this.wrappers.length-1;a>=0;a--)this.wrappers[a].to<this.pos&&this.wrappers.splice(a,1);for(let a=this.blockWrappers;a.value&&a.from<=this.pos;a.next())if(a.to>=this.pos){let b=new fo(a.from,a.to,a.value,a.rank),c=this.wrappers.length;for(;c>0&&0>(this.wrappers[c-1].rank-b.rank||this.wrappers[c-1].to-b.to);)c--;this.wrappers.splice(c,0,b)}this.wrapperPos=this.pos}getBlockPos(){var a;this.updateBlockWrappers();let b=this.root;for(let c of this.wrappers){let d=b.lastChild;if(c.from<this.pos&&d instanceof fh&&d.wrapper.eq(c.wrapper))b=d;else{let d=fh.of(c.wrapper,null==(a=this.cache.find(fh,a=>a.wrapper.eq(c.wrapper)))?void 0:a.dom);b.append(d),b=d}}return b}blockPosCovered(){let a=this.lastBlock;return null!=a&&!a.breakAfter&&(!a.isWidget()||(160&a.flags)>0)}getBuffer(a){let b=2|(a<0?16:32),c=this.cache.find(fm,void 0,1);return c&&(c.flags=b),c||new fm(b)}flushBuffer(){this.afterWidget&&!(32&this.afterWidget.flags)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},fq=class{constructor(a){this.skipCount=0,this.text="",this.textOff=0,this.cursor=a.iter()}skip(a){this.textOff+a<=this.text.length?this.textOff+=a:(this.skipCount+=a-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(a){if(this.textOff==this.text.length){let{value:b,lineBreak:c,done:d}=this.cursor.next(this.skipCount);if(this.skipCount=0,d)throw Error("Ran out of text content when drawing inline views");this.text=b;let e=this.textOff=Math.min(a,b.length);return c?null:b.slice(0,e)}let b=Math.min(this.text.length,this.textOff+a),c=this.text.slice(this.textOff,b);return this.textOff=b,c}},fr=[fl,fi,fk,fj,fm,fh,fg];for(let a=0;a<fr.length;a++)fr[a].bucket=a;var fs=class{constructor(a){this.view=a,this.buckets=fr.map(()=>[]),this.index=fr.map(()=>0),this.reused=new Map}add(a){let b=a.constructor.bucket,c=this.buckets[b];c.length<6?c.push(a):c[this.index[b]=(this.index[b]+1)%6]=a}find(a,b,c=2){let d=a.bucket,e=this.buckets[d],f=this.index[d];for(let a=e.length-1;a>=0;a--){let g=(a+f)%e.length,h=e[g];if((!b||b(h))&&!this.reused.has(h))return e.splice(g,1),g<f&&this.index[d]--,this.reused.set(h,c),h}return null}findWidget(a,b,c){let d=this.buckets[0];if(d.length)for(let e=0,f=0;;e++){if(e==d.length){if(f)return null;f=1,e=0}let g=d[e];if(!this.reused.has(g)&&(0==f?g.widget.compare(a):g.widget.constructor==a.constructor&&a.updateDOM(g.dom,this.view))){if(d.splice(e,1),e<this.index[0]&&this.index[0]--,g.widget==a&&g.length==b&&(497&g.flags)==c)return this.reused.set(g,1),g;return this.reused.set(g,2),new fl(g.dom,b,a,-498&g.flags|c)}}}reuse(a){return this.reused.set(a,1),a}maybeReuse(a,b=2){if(!this.reused.has(a))return this.reused.set(a,b),a.dom}clear(){for(let a=0;a<this.buckets.length;a++)this.buckets[a].length=this.index[a]=0}},ft=class{constructor(a,b,c,d,e){this.view=a,this.decorations=d,this.disallowBlockEffectsFor=e,this.openWidget=!1,this.openMarks=0,this.cache=new fs(a),this.text=new fq(a.state.doc),this.builder=new fp(this.cache,new fg(a,a.contentDOM),dq.iter(c)),this.cache.reused.set(b,2),this.old=new fn(b),this.reuseWalker={skip:(a,b,c)=>{if(this.cache.add(a),a.isComposite())return!1},enter:a=>this.cache.add(a),leave:()=>{},break:()=>{}}}run(a,b){let c=b&&this.getCompositionContext(b.text);for(let d=0,e=0,f=0;;){let g=f<a.length?a[f++]:null,h=g?g.fromA:this.old.root.length;if(h>d){let a=h-d;this.preserve(a,!f,!g),d=h,e+=a}if(!g)break;b&&g.fromA<=b.range.fromA&&g.toA>=b.range.toA?(this.forward(g.fromA,b.range.fromA,b.range.fromA<b.range.toA?1:-1),this.emit(e,b.range.fromB),this.cache.clear(),this.builder.addComposition(b,c),this.text.skip(b.range.toB-b.range.fromB),this.forward(b.range.fromA,g.toA),this.emit(b.range.toB,g.toB)):(this.forward(g.fromA,g.toA),this.emit(e,g.toB)),e=g.toB,d=g.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(a,b,c){let d=function(a){let b=[];for(let c=a.parents.length;c>1;c--){let d=c==a.parents.length?a.tile:a.parents[c].tile;d instanceof fj&&b.push(d.mark)}return b}(this.old),e=this.openMarks;this.old.advance(a,c?1:-1,{skip:(a,b,c)=>{if(a.isWidget())if(this.openWidget)this.builder.continueWidget(c-b);else{let f=c>0||b<a.length?fl.of(a.widget,this.view,c-b,496&a.flags,this.cache.maybeReuse(a)):this.cache.reuse(a);256&f.flags?(f.flags&=-2,this.builder.addBlockWidget(f)):(this.builder.ensureLine(null),this.builder.addInlineWidget(f,d,e),e=d.length)}else if(a.isText())this.builder.ensureLine(null),b||c!=a.length?(this.cache.add(a),this.builder.addText(a.text.slice(b,c),d,e)):this.builder.addText(a.text,d,e,this.cache.reuse(a)),e=d.length;else if(a.isLine())a.flags&=-2,this.cache.reused.set(a,1),this.builder.addLine(a);else if(a instanceof fm)this.cache.add(a);else{if(!(a instanceof fj))return!1;this.builder.ensureLine(null),this.builder.addMark(a,d,e),this.cache.reused.set(a,1),e=d.length}this.openWidget=!1},enter:a=>{a.isLine()?this.builder.addLineStart(a.attrs,this.cache.maybeReuse(a)):(this.cache.add(a),a instanceof fj&&d.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?d.length&&(d.length=e=0):a instanceof fj&&(d.shift(),e=Math.min(e,d.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(a)}emit(a,b){let c=null,d=this.builder,e=0,f=dq.spans(this.decorations,a,b,{point:(a,b,f,g,h,i)=>{var j,k,l;if(f instanceof d4){if(this.disallowBlockEffectsFor[i]){if(f.block)throw RangeError("Block decorations may not be specified via plugins");if(b>this.view.state.doc.lineAt(a).to)throw RangeError("Decorations that replace line breaks may not be specified via plugins")}if(e=g.length,h>g.length)d.continueWidget(b-a);else{let e,i=f.widget||(f.block?fx.block:fx.inline),k=(e=(j=f).isReplace?64*(j.startSide<0)|128*(j.endSide>0):j.startSide>0?32:16,j.block&&(e|=256),e),l=this.cache.findWidget(i,b-a,k)||fl.of(i,this.view,b-a,k);f.block?(f.startSide>0&&d.addLineStartIfNotCovered(c),d.addBlockWidget(l)):(d.ensureLine(c),d.addInlineWidget(l,g,h))}c=null}else{let a,b;k=c,a=(l=f).spec.attributes,b=l.spec.class,(a||b)&&(k||(k={class:"cm-line"}),a&&dX(a,k),b&&(k.class+=" "+b)),c=k}b>a&&this.text.skip(b-a)},span:(a,b,e,f)=>{for(let g=a;g<b;){let h=this.text.next(Math.min(512,b-g));null==h?(d.addLineStartIfNotCovered(c),d.addBreak(),g++):(d.ensureLine(c),d.addText(h,e,g==a?f:e.length),g+=h.length),c=null}}});d.addLineStartIfNotCovered(c),this.openWidget=f>e,this.openMarks=f}forward(a,b,c=1){b-a<=10?this.old.advance(b-a,c,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(b-a-10,-1),this.old.advance(5,c,this.reuseWalker))}getCompositionContext(a){let b=[],c=null;for(let d=a.parentNode;;d=d.parentNode){let a=fd.get(d);if(d==this.view.contentDOM)break;a instanceof fj?b.push(a):(null==a?void 0:a.isLine())?c=a:"DIV"!=d.nodeName||c||d==this.view.contentDOM?b.push(fj.of(new d2({tagName:d.nodeName.toLowerCase(),attributes:function(a){let b=Object.create(null);for(let c=0;c<a.attributes.length;c++){let d=a.attributes[c];b[d.name]=d.value}return b}(d)}),d)):c=new fi(d,fv)}return{line:c,marks:b}}};function fu(a,b){let c=a=>{for(let d of a.children)if((b?d.isText():d.length)||c(d))return!0;return!1};return c(a)}var fv={class:"cm-line"};function fw(a){let b=fd.get(a);return b&&b.setDOM(a.cloneNode()),a}var fx=class extends d_{constructor(a){super(),this.tag=a}eq(a){return a.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(a){return a.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}};fx.inline=new fx("span"),fx.block=new fx("div");var fy=new class extends d_{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},fz=class{constructor(a){this.view=a,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=d1.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new fg(a,a.contentDOM),this.updateInner([new fa(0,0,0,a.state.doc.length)],null)}update(a){var b,c,d,e,f,g,h,i,j;let k,l,m,n=a.changedRanges;this.minWidth>0&&n.length&&(n.every(({fromA:a,toA:b})=>b<this.minWidthFrom||a>this.minWidthTo)?(this.minWidthFrom=a.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=a.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(a);let o=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&((null==(b=this.domChanged)?void 0:b.newSel)?o=this.domChanged.newSel.head:(c=a.changes,d=this.hasComposition,k=!1,d&&c.iterChangedRanges((a,b)=>{a<d.to&&b>d.from&&(k=!0)}),k||a.selectionSet||(o=a.state.selection.main.head)));let p=o>-1?function(a,b,c){let d=fB(a,c);if(!d)return null;let{node:e,from:f,to:g}=d,h=e.nodeValue;if(/[\n\r]/.test(h)||a.state.doc.sliceString(d.from,d.to)!=h)return null;let i=b.invertedDesc;return{range:new fa(i.mapPos(f),i.mapPos(g),f,g),text:e}}(this.view,a.changes,o):null;if(this.domChanged=null,this.hasComposition){let{from:b,to:c}=this.hasComposition;n=new fa(b,c,a.changes.mapPos(b,-1),a.changes.mapPos(c,1)).addToSet(n.slice())}this.hasComposition=p?{from:p.range.fromB,to:p.range.toB}:null,(dW.ie||dW.chrome)&&!p&&a&&a.state.doc.lines!=a.startState.doc.lines&&(this.forceSelection=!0);let q=this.decorations,r=this.blockWrappers;this.updateDeco();let s=(e=q,f=this.decorations,g=a.changes,l=new fC,dq.compare(e,f,g,l),l.changes);s.length&&(n=fa.extendWithRanges(n,s));let t=(h=r,i=this.blockWrappers,j=a.changes,m=new fD,dq.compare(h,i,j,m),m.changes);return t.length&&(n=fa.extendWithRanges(n,t)),p&&!n.some(a=>a.fromA<=p.range.fromA&&a.toA>=p.range.toA)&&(n=p.range.addToSet(n.slice())),(!(2&this.tile.flags)||0!=n.length)&&(this.updateInner(n,p),a.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(a,b){this.view.viewState.mustMeasureContent=!0;let{observer:c}=this.view;c.ignore(()=>{if(b||a.length){let c=this.tile,d=new ft(this.view,c,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=d.run(a,b),fA(c,d.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let d=dW.chrome||dW.ios?{node:c.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(d),d&&(d.written||c.selectionRange.focusNode!=d.node||!this.tile.dom.contains(d.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let d=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let a of this.tile.children)a.isWidget()&&a.widget instanceof fE&&d.push(a.dom);c.updateGaps(d)}updateEditContextFormatting(a){for(let b of(this.editContextFormatting=this.editContextFormatting.map(a.changes),a.transactions))for(let a of b.effects)a.is(eU)&&(this.editContextFormatting=a.value)}updateSelection(a=!1,b=!1){var c;(a||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:d}=this.tile,e=this.view.root.activeElement,f=e==d,g=!f&&!(this.view.state.facet(eW)||d.tabIndex>-1)&&ea(d,this.view.observer.selectionRange)&&!(e&&d.contains(e));if(!(f||b||g))return;let h=this.forceSelection;this.forceSelection=!1;let i=this.view.state.selection.main,j,k;if(i.empty?k=j=this.inlineDOMNearPos(i.anchor,i.assoc||1):(k=this.inlineDOMNearPos(i.head,i.head==i.from?1:-1),j=this.inlineDOMNearPos(i.anchor,i.anchor==i.from?1:-1)),dW.gecko&&i.empty&&!this.hasComposition&&1==(c=j).node.nodeType&&c.node.firstChild&&(0==c.offset||"false"==c.node.childNodes[c.offset-1].contentEditable)&&(c.offset==c.node.childNodes.length||"false"==c.node.childNodes[c.offset].contentEditable)){let a=document.createTextNode("");this.view.observer.ignore(()=>j.node.insertBefore(a,j.node.childNodes[j.offset]||null)),j=k=new er(a,0),h=!0}let l=this.view.observer.selectionRange;!h&&l.focusNode&&(ec(j.node,j.offset,l.anchorNode,l.anchorOffset)&&ec(k.node,k.offset,l.focusNode,l.focusOffset)||this.suppressWidgetCursorChange(l,i))||(this.view.observer.ignore(()=>{dW.android&&dW.chrome&&d.contains(l.focusNode)&&function(a,b){for(let c=a;c&&c!=b;c=c.assignedSlot||c.parentNode)if(1==c.nodeType&&"false"==c.contentEditable)return!0;return!1}(l.focusNode,d)&&(d.blur(),d.focus({preventScroll:!0}));let a=d8(this.view.root);if(a)if(i.empty){if(dW.gecko){var b,c;let a=(b=j.node,c=j.offset,1!=b.nodeType?0:(c&&"false"==b.childNodes[c-1].contentEditable?1:0)|2*(c<b.childNodes.length&&"false"==b.childNodes[c].contentEditable));if(a&&3!=a){let b=(1==a?ep:eq)(j.node,j.offset);b&&(j=new er(b.node,b.offset))}}a.collapse(j.node,j.offset),null!=i.bidiLevel&&void 0!==a.caretBidiLevel&&(a.caretBidiLevel=i.bidiLevel)}else if(a.extend){a.collapse(j.node,j.offset);try{a.extend(k.node,k.offset)}catch(a){}}else{let b=document.createRange();i.anchor>i.head&&([j,k]=[k,j]),b.setEnd(k.node,k.offset),b.setStart(j.node,j.offset),a.removeAllRanges(),a.addRange(b)}g&&this.view.root.activeElement==d&&(d.blur(),e&&e.focus())}),this.view.observer.setSelectionRange(j,k)),this.impreciseAnchor=j.precise?null:new er(l.anchorNode,l.anchorOffset),this.impreciseHead=k.precise?null:new er(l.focusNode,l.focusOffset)}suppressWidgetCursorChange(a,b){return this.hasComposition&&b.empty&&ec(a.focusNode,a.focusOffset,a.anchorNode,a.anchorOffset)&&this.posFromDOM(a.focusNode,a.focusOffset)==b.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:a}=this,b=a.state.selection.main,c=d8(a.root),{anchorNode:d,anchorOffset:e}=a.observer.selectionRange;if(!c||!b.empty||!b.assoc||!c.modify)return;let f=this.lineAt(b.head,b.assoc);if(!f)return;let g=f.posAtStart;if(b.head==g||b.head==g+f.length)return;let h=this.coordsAt(b.head,-1),i=this.coordsAt(b.head,1);if(!h||!i||h.bottom>i.top)return;let j=this.domAtPos(b.head+b.assoc,b.assoc);c.collapse(j.node,j.offset),c.modify("move",b.assoc<0?"forward":"backward","lineboundary"),a.observer.readSelectionRange();let k=a.observer.selectionRange;a.docView.posFromDOM(k.anchorNode,k.anchorOffset)!=b.from&&c.collapse(d,e)}posFromDOM(a,b){let c=this.tile.nearest(a);if(!c)return 2&this.tile.dom.compareDocumentPosition(a)?0:this.view.state.doc.length;let d=c.posAtStart;if(c.isComposite()){let e;if(a==c.dom)e=c.dom.childNodes[b];else{let d=0==eg(a)?0:0==b?-1:1;for(;;){let b=a.parentNode;if(b==c.dom)break;0==d&&b.firstChild!=b.lastChild&&(d=a==b.firstChild?-1:1),a=b}e=d<0?a:a.nextSibling}if(e==c.dom.firstChild)return d;for(;e&&!fd.get(e);)e=e.nextSibling;if(!e)return d+c.length;for(let a=0,b=d;;a++){let d=c.children[a];if(d.dom==e)return b;b+=d.length+d.breakAfter}}else if(c.isText())return a==c.dom?d+b:d+(b?c.length:0);else return d}domAtPos(a,b){let{tile:c,offset:d}=this.tile.resolveBlock(a,b);return c.isWidget()?c.domPosFor(a,b):c.domIn(d,b)}inlineDOMNearPos(a,b){let c,d=-1,e=!1,f,g=-1,h=!1;return(this.tile.blockTiles((b,i)=>{if(b.isWidget()){if(32&b.flags&&i>=a)return!0;16&b.flags&&(e=!0)}else{let j=i+b.length;if(i<=a&&(c=b,d=a-i,e=j<a),j>=a&&!f&&(f=b,g=a-i,h=i>a),i>a&&f)return!0}}),c||f)?(e&&f?c=null:h&&c&&(f=null),c&&b<0||!f?c.domIn(d,b):f.domIn(g,b)):this.domAtPos(a,b)}coordsAt(a,b){let{tile:c,offset:d}=this.tile.resolveBlock(a,b);return c.isWidget()?c.widget instanceof fE?null:c.coordsInWidget(d,b,!0):c.coordsIn(d,b)}lineAt(a,b){let{tile:c}=this.tile.resolveBlock(a,b);return c.isLine()?c:null}coordsForChar(a){let{tile:b,offset:c}=this.tile.resolveBlock(a,1);return b.isLine()?function a(b,c){if(b.isComposite())for(let d of b.children){if(d.length>=c){let b=a(d,c);if(b)return b}if((c-=d.length)<0)break}else if(b.isText()&&c<b.length){let a=cy(b.text,c);if(a==c)return null;let d=em(b.dom,c,a).getClientRects();for(let a=0;a<d.length;a++){let b=d[a];if(a==d.length-1||b.top<b.bottom&&b.left<b.right)return b}}return null}(b,c):null}measureVisibleLineHeights(a){let b=[],{from:c,to:d}=a,e=this.view.contentDOM.clientWidth,f=e>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,g=-1,h=this.view.textDirection==es.LTR,i=0,j=(a,k,l)=>{for(let m=0;m<a.children.length&&!(k>d);m++){let d=a.children[m],n=k+d.length,o=d.dom.getBoundingClientRect(),{height:p}=o;if(l&&!m&&(i+=o.top-l.top),d instanceof fh)n>c&&j(d,k,o);else if(k>=c&&(i>0&&b.push(-i),b.push(p+i),i=0,f)){let a=d.dom.lastChild,b=a?eb(a):[];if(b.length){let a=b[b.length-1],c=h?a.right-o.left:o.right-a.left;c>g&&(g=c,this.minWidth=e,this.minWidthFrom=k,this.minWidthTo=n)}}l&&m==a.children.length-1&&(i+=l.bottom-o.bottom),k=n+d.breakAfter}};return j(this.tile,0,null),b}textDirectionAt(a){let{tile:b}=this.tile.resolveBlock(a,1);return"rtl"==getComputedStyle(b.dom).direction?es.RTL:es.LTR}measureTextSize(){let a=this.tile.blockTiles(a=>{if(a.isLine()&&a.children.length&&a.length<=20){let b=0,c;for(let d of a.children){if(!d.isText()||/[^ -~]/.test(d.text))return;let a=eb(d.dom);if(1!=a.length)return;b+=a[0].width,c=a[0].height}if(b)return{lineHeight:a.dom.getBoundingClientRect().height,charWidth:b/a.length,textHeight:c}}});if(a)return a;let b=document.createElement("div"),c,d,e;return b.className="cm-line",b.style.width="99999px",b.style.position="absolute",b.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(b);let a=eb(b.firstChild)[0];c=b.getBoundingClientRect().height,d=a&&a.width?a.width/27:7,e=a&&a.height?a.height:c,b.remove()}),{lineHeight:c,charWidth:d,textHeight:e}}computeBlockGapDeco(){let a=[],b=this.view.viewState;for(let c=0,d=0;;d++){let e=d==b.viewports.length?null:b.viewports[d],f=e?e.from-1:this.view.state.doc.length;if(f>c){let d=(b.lineBlockAt(f).bottom-b.lineBlockAt(c).top)/this.view.scaleY;a.push(d1.replace({widget:new fE(d),block:!0,inclusive:!0,isBlockGap:!0}).range(c,f))}if(!e)break;c=e.to+1}return d1.set(a)}updateDeco(){let a=1,b=this.view.state.facet(e1).map(b=>(this.dynamicDecorationMap[a++]="function"==typeof b)?b(this.view):b),c=!1,d=this.view.state.facet(e3).map((a,b)=>{let d="function"==typeof a;return d&&(c=!0),d?a(this.view):a});for(d.length&&(this.dynamicDecorationMap[a++]=c,b.push(dq.join(d))),this.decorations=[this.editContextFormatting,...b,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];a<this.decorations.length;)this.dynamicDecorationMap[a++]=!1;this.blockWrappers=this.view.state.facet(e2).map(a=>"function"==typeof a?a(this.view):a)}scrollIntoView(a){if(a.isSnapshot){let b=this.view.viewState.lineBlockAt(a.range.head);this.view.scrollDOM.scrollTop=b.top-a.yMargin,this.view.scrollDOM.scrollLeft=a.xMargin;return}for(let b of this.view.state.facet(eR))try{if(b(this.view,a.range,a))return!0}catch(a){eV(this.view.state,a,"scroll handler")}let{range:b}=a,c=this.coordsAt(b.head,b.empty?b.assoc:b.head>b.anchor?-1:1),d;if(!c)return;!b.empty&&(d=this.coordsAt(b.anchor,b.anchor>b.head?-1:1))&&(c={left:Math.min(c.left,d.left),top:Math.min(c.top,d.top),right:Math.max(c.right,d.right),bottom:Math.max(c.bottom,d.bottom)});let e=e8(this.view),f={left:c.left-e.left,top:c.top-e.top,right:c.right+e.right,bottom:c.bottom+e.bottom},{offsetWidth:g,offsetHeight:h}=this.view.scrollDOM;!function(a,b,c,d,e,f,g,h){let i=a.ownerDocument,j=i.defaultView||window;for(let k=a,l=!1;k&&!l;)if(1==k.nodeType){let a,m=k==i.body,n=1,o=1;if(m)a=function(a){let b=a.visualViewport;return b?{left:0,right:b.width,top:0,bottom:b.height}:{left:0,right:a.innerWidth,top:0,bottom:a.innerHeight}}(j);else{if(/^(fixed|sticky)$/.test(getComputedStyle(k).position)&&(l=!0),k.scrollHeight<=k.clientHeight&&k.scrollWidth<=k.clientWidth){k=k.assignedSlot||k.parentNode;continue}let b=k.getBoundingClientRect();({scaleX:n,scaleY:o}=ei(k,b)),a={left:b.left,right:b.left+k.clientWidth*n,top:b.top,bottom:b.top+k.clientHeight*o}}let p=0,q=0;if("nearest"==e)b.top<a.top?(q=b.top-(a.top+g),c>0&&b.bottom>a.bottom+q&&(q=b.bottom-a.bottom+g)):b.bottom>a.bottom&&(q=b.bottom-a.bottom+g,c<0&&b.top-q<a.top&&(q=b.top-(a.top+g)));else{let d=b.bottom-b.top,f=a.bottom-a.top;q=("center"==e&&d<=f?b.top+d/2-f/2:"start"==e||"center"==e&&c<0?b.top-g:b.bottom-f+g)-a.top}if("nearest"==d?b.left<a.left?(p=b.left-(a.left+f),c>0&&b.right>a.right+p&&(p=b.right-a.right+f)):b.right>a.right&&(p=b.right-a.right+f,c<0&&b.left<a.left+p&&(p=b.left-(a.left+f))):p=("center"==d?b.left+(b.right-b.left)/2-(a.right-a.left)/2:"start"==d==h?b.left-f:b.right-(a.right-a.left)+f)-a.left,p||q)if(m)j.scrollBy(p,q);else{let a=0,c=0;if(q){let a=k.scrollTop;k.scrollTop+=q/o,c=(k.scrollTop-a)*o}if(p){let b=k.scrollLeft;k.scrollLeft+=p/n,a=(k.scrollLeft-b)*n}b={left:b.left-a,top:b.top-c,right:b.right-a,bottom:b.bottom-c},a&&1>Math.abs(a-p)&&(d="nearest"),c&&1>Math.abs(c-q)&&(e="nearest")}if(m)break;(b.top<a.top||b.bottom>a.bottom||b.left<a.left||b.right>a.right)&&(b={left:Math.max(b.left,a.left),right:Math.min(b.right,a.right),top:Math.max(b.top,a.top),bottom:Math.min(b.bottom,a.bottom)}),k=k.assignedSlot||k.parentNode}else if(11==k.nodeType)k=k.host;else break}(this.view.scrollDOM,f,b.head<b.anchor?-1:1,a.x,a.y,Math.max(Math.min(a.xMargin,g),-g),Math.max(Math.min(a.yMargin,h),-h),this.view.textDirection==es.LTR)}lineHasWidget(a){let b=a=>a.isWidget()||a.children.some(b);return b(this.tile.resolveBlock(a,1).tile)}destroy(){fA(this.tile)}};function fA(a,b){let c=null==b?void 0:b.get(a);if(1!=c)for(let d of(null==c&&a.destroy(),a.children))fA(d,b)}function fB(a,b){let c=a.observer.selectionRange;if(!c.focusNode)return null;let d=ep(c.focusNode,c.focusOffset),e=eq(c.focusNode,c.focusOffset),f=d||e;if(e&&d&&e.node!=d.node){let b=fd.get(e.node);if(!b||b.isText()&&b.text!=e.node.nodeValue)f=e;else if(a.docView.lastCompositionAfterCursor){let a=fd.get(d.node);!a||a.isText()&&a.text!=d.node.nodeValue||(f=e)}}if(a.docView.lastCompositionAfterCursor=f!=d,!f)return null;let g=b-f.offset;return{from:g,to:g+f.node.nodeValue.length,node:f.node}}var fC=class{constructor(){this.changes=[]}compareRange(a,b){d6(a,b,this.changes)}comparePoint(a,b){d6(a,b,this.changes)}boundChange(a){d6(a,a,this.changes)}},fD=class{constructor(){this.changes=[]}compareRange(a,b){d6(a,b,this.changes)}comparePoint(){}boundChange(a){d6(a,a,this.changes)}},fE=class extends d_{constructor(a){super(),this.height=a}toDOM(){let a=document.createElement("div");return a.className="cm-gap",this.updateDOM(a),a}eq(a){return a.height==this.height}updateDOM(a){return a.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}};function fF(a,b,c,d){let e=a.state.doc.lineAt(b.head),f=a.bidiSpans(e),g=a.textDirectionAt(e.from);for(let h=b,i=null;;){let b=function(a,b,c,d,e){var f;let g=d.head-a.from,h=eC.find(b,g,null!=(f=d.bidiLevel)?f:-1,d.assoc),i=b[h],j=i.side(e,c);if(g==j){let a=h+=e?1:-1;if(a<0||a>=b.length)return null;g=(i=b[h=a]).side(!e,c),j=i.side(e,c)}let k=cy(a.text,g,i.forward(e,c));(k<i.from||k>i.to)&&(k=j),eF=a.text.slice(Math.min(g,k),Math.max(g,k));let l=h==(e?b.length-1:0)?null:b[h+(e?1:-1)];return l&&k==j&&l.level+ +!e<i.level?cK.cursor(l.side(!e,c)+a.from,l.forward(e,c)?1:-1,l.level):cK.cursor(k+a.from,i.forward(e,c)?-1:1,i.level)}(e,f,g,h,c),j=eF;if(!b){if(e.number==(c?a.state.doc.lines:1))return h;j="\n",e=a.state.doc.line(e.number+(c?1:-1)),f=a.bidiSpans(e),b=a.visualLineSide(e,!c)}if(i){if(!i(j))return h}else{if(!d)return b;i=d(j)}h=b}}function fG(a,b,c){for(;;){let d=0;for(let e of a)e.between(b-1,b+1,(a,e,f)=>{if(b>a&&b<e){let f=d||c||(b-a<e-b?-1:1);b=f<0?a:e,d=f}});if(!d)return b}}function fH(a,b){let c=null;for(let d=0;d<b.ranges.length;d++){let e=b.ranges[d],f=null;if(e.empty){let b=fG(a,e.from,0);b!=e.from&&(f=cK.cursor(b,-1))}else{let b=fG(a,e.from,-1),c=fG(a,e.to,1);(b!=e.from||c!=e.to)&&(f=cK.range(e.from==e.anchor?b:c,e.from==e.head?b:c))}f&&(c||(c=b.ranges.slice()),c[d]=f)}return c?cK.create(c,b.mainIndex):b}function fI(a,b,c){let d=fG(a.state.facet(e4).map(b=>b(a)),c.from,b.head>c.from?-1:1);return d==c.from?c:cK.cursor(d,d<c.from?1:-1)}var fJ=class{constructor(a,b){this.pos=a,this.assoc=b}};function fK(a,b,c,d){let e=a.contentDOM.getBoundingClientRect(),f=e.top+a.viewState.paddingTop,{x:g,y:h}=b,i=h-f,j;for(;;){if(i<0)return new fJ(0,1);if(i>a.viewState.docHeight)return new fJ(a.state.doc.length,-1);if(j=a.elementAtHeight(i),null==d)break;if(j.type==d0.Text){if(d<0?j.to<a.viewport.from:j.from>a.viewport.to)break;let b=a.docView.coordsAt(d<0?j.from:j.to,d>0?-1:1);if(b&&(d<0?b.top<=i+f:b.bottom>=i+f))break}let b=a.viewState.heightOracle.textHeight/2;i=d>0?j.bottom+b:j.top-b}if(a.viewport.from>=j.to||a.viewport.to<=j.from){if(c)return null;if(j.type==d0.Text){let b=function(a,b,c,d,e){let f=Math.round((d-b.left)*a.defaultCharacterWidth);if(a.lineWrapping&&c.height>1.5*a.defaultLineHeight){let b=a.viewState.heightOracle.textHeight;f+=Math.floor((e-c.top-(a.defaultLineHeight-b)*.5)/b)*a.viewState.heightOracle.lineLength}let g=a.state.sliceDoc(c.from,c.to);return c.from+function(a,b,c,d){for(let d=0,e=0;;){if(e>=b)return d;if(d==a.length)break;e+=9==a.charCodeAt(d)?c-e%c:1,d=cy(a,d)}return a.length}(g,f,a.state.tabSize)}(a,e,j,g,h);return new fJ(b,b==j.from?1:-1)}}if(j.type!=d0.Text)return i<(j.top+j.bottom)/2?new fJ(j.from,1):new fJ(j.to,-1);let k=a.docView.lineAt(j.from,2);return k&&k.length==j.length||(k=a.docView.lineAt(j.from,-2)),new fL(a,g,h,a.textDirectionAt(j.from)).scanTile(k,j.from)}var fL=class{constructor(a,b,c,d){this.view=a,this.x=b,this.y=c,this.baseDir=d,this.line=null,this.spans=null}bidiSpansAt(a){return(!this.line||this.line.from>a||this.line.to<a)&&(this.line=this.view.state.doc.lineAt(a),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[eC.find(d,a-c.from,-1,b)].level==this.baseDir}dirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[eC.find(d,a-c.from,-1,b)].dir}bidiIn(a,b){let{spans:c,line:d}=this.bidiSpansAt(a);return c.length>1||c.length&&(c[0].level!=this.baseDir||c[0].to+d.from<b)}scan(a,b){let c,d,e=0,f=a.length-1,g=new Set,h=this.bidiIn(a[0],a[f]),i=-1,j=1e9,k;for(;e<f;){let l=f-e,m=e+f>>1;c:if(g.has(m)){let a=e+Math.floor(Math.random()*l);for(let b=0;b<l;b++){if(!g.has(a)){m=a;break c}++a==f&&(a=e)}break}g.add(m);let n=b(m);if(n)for(let b=0;b<n.length;b++){let g=n[b],l=0;if(g.bottom<this.y)(!c||c.bottom<g.bottom)&&(c=g),l=1;else if(g.top>this.y)(!d||d.top>g.top)&&(d=g),l=-1;else{let a=g.left>this.x?this.x-g.left:g.right<this.x?this.x-g.right:0,b=Math.abs(a);b<j&&(i=m,j=b,k=g),a&&(l=a<0==(this.baseDir==es.LTR)?-1:1)}-1==l&&(!h||this.baseDirAt(a[m],1))?f=m:1==l&&(!h||this.baseDirAt(a[m+1],-1))&&(e=m+1)}}if(!k){let e=c&&(!d||this.y-c.bottom<d.top-this.y)?c:d;return this.y=(e.top+e.bottom)/2,this.scan(a,b)}let l=(h?this.dirAt(a[i],1):this.baseDir)==es.LTR;return{i:i,after:this.x>(k.left+k.right)/2==l}}scanText(a,b){let c=[];for(let d=0;d<a.length;d=cy(a.text,d))c.push(b+d);c.push(b+a.length);let d=this.scan(c,d=>{let e=c[d]-b,f=c[d+1]-b;return em(a.dom,e,f).getClientRects()});return d.after?new fJ(c[d.i+1],-1):new fJ(c[d.i],1)}scanTile(a,b){if(!a.length)return new fJ(b,1);if(1==a.children.length){let c=a.children[0];if(c.isText())return this.scanText(c,b);if(c.isComposite())return this.scanTile(c,b)}let c=[b];for(let d=0,e=b;d<a.children.length;d++)c.push(e+=a.children[d].length);let d=this.scan(c,b=>{let c=a.children[b];return 48&c.flags?null:(1==c.dom.nodeType?c.dom:em(c.dom,0,c.length)).getClientRects()}),e=a.children[d.i],f=c[d.i];return e.isText()?this.scanText(e,f):e.isComposite()?this.scanTile(e,f):d.after?new fJ(c[d.i+1],-1):new fJ(f,1)}},fM=class{constructor(a,b){this.points=a,this.view=b,this.text="",this.lineSeparator=b.state.facet(dj.lineSeparator)}append(a){this.text+=a}lineBreak(){this.text+=""}readRange(a,b){if(!a)return this;let c=a.parentNode;for(let d=a;;){this.findPointBefore(c,d);let a=this.text.length;this.readNode(d);let e=fd.get(d),f=d.nextSibling;if(f==b){(null==e?void 0:e.breakAfter)&&!f&&c!=this.view.contentDOM&&this.lineBreak();break}let g=fd.get(f);(e&&g?e.breakAfter:(e?e.breakAfter:ee(d))||ee(f)&&("BR"!=d.nodeName||(null==e?void 0:e.isWidget()))&&this.text.length>a)&&!function(a,b){let c;for(;a!=b&&a;a=a.nextSibling){let b=fd.get(a);if(!(null==b?void 0:b.isWidget()))return!1;b&&(c||(c=[])).push(b)}if(c)for(let a of c){let b=a.overrideDOMText;if(null==b?void 0:b.length)return!1}return!0}(f,b)&&this.lineBreak(),d=f}return this.findPointBefore(c,b),this}readTextNode(a){let b=a.nodeValue;for(let c of this.points)c.node==a&&(c.pos=this.text.length+Math.min(c.offset,b.length));for(let c=0,d=this.lineSeparator?null:/\r\n?|\n/g;;){let e=-1,f=1,g;if(this.lineSeparator?(e=b.indexOf(this.lineSeparator,c),f=this.lineSeparator.length):(g=d.exec(b))&&(e=g.index,f=g[0].length),this.append(b.slice(c,e<0?b.length:e)),e<0)break;if(this.lineBreak(),f>1)for(let b of this.points)b.node==a&&b.pos>this.text.length&&(b.pos-=f-1);c=e+f}}readNode(a){let b=fd.get(a),c=b&&b.overrideDOMText;if(null!=c){this.findPointInside(a,c.length);for(let a=c.iter();!a.next().done;)a.lineBreak?this.lineBreak():this.append(a.value)}else 3==a.nodeType?this.readTextNode(a):"BR"==a.nodeName?a.nextSibling&&this.lineBreak():1==a.nodeType&&this.readRange(a.firstChild,null)}findPointBefore(a,b){for(let c of this.points)c.node==a&&a.childNodes[c.offset]==b&&(c.pos=this.text.length)}findPointInside(a,b){for(let c of this.points)(3==a.nodeType?c.node==a:a.contains(c.node))&&(c.pos=this.text.length+(!function(a,b,c){for(;;){if(!b||c<eg(b))return!1;if(b==a)return!0;c=ed(b)+1,b=b.parentNode}}(a,c.node,c.offset)?0:b))}},fN=class{constructor(a,b){this.node=a,this.offset=b,this.pos=-1}},fO=class{constructor(a,b,c,d){this.typeOver=d,this.bounds=null,this.text="",this.domChanged=b>-1;let{impreciseHead:e,impreciseAnchor:f}=a.docView;if(a.state.readOnly&&b>-1)this.newSel=null;else if(b>-1&&(this.bounds=function a(b,c,d,e){if(b.isComposite()){let f=-1,g=-1,h=-1,i=-1;for(let j=0,k=e,l=e;j<b.children.length;j++){let e=b.children[j],m=k+e.length;if(k<c&&m>d)return a(e,c,d,k);if(m>=c&&-1==f&&(f=j,g=k),k>d&&e.dom.parentNode==b.dom){h=j,i=l;break}l=m,k=m+e.breakAfter}return{from:g,to:i<0?e+b.length:i,startDOM:(f?b.children[f-1].dom.nextSibling:null)||b.dom.firstChild,endDOM:h<b.children.length&&h>=0?b.children[h].dom:null}}return b.isText()?{from:e,to:e+b.length,startDOM:b.dom,endDOM:b.dom.nextSibling}:null}(a.docView.tile,b,c,0))){let b=e||f?[]:function(a){let b=[];if(a.root.activeElement!=a.contentDOM)return b;let{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}=a.observer.selectionRange;return c&&(b.push(new fN(c,d)),(e!=c||f!=d)&&b.push(new fN(e,f))),b}(a),c=new fM(b,a);c.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=c.text,this.newSel=function(a,b){if(0==a.length)return null;let c=a[0].pos,d=2==a.length?a[1].pos:c;return c>-1&&d>-1?cK.single(c+b,d+b):null}(b,this.bounds.from)}else{let b=a.observer.selectionRange,c=e&&e.node==b.focusNode&&e.offset==b.focusOffset||!d9(a.contentDOM,b.focusNode)?a.state.selection.main.head:a.docView.posFromDOM(b.focusNode,b.focusOffset),d=f&&f.node==b.anchorNode&&f.offset==b.anchorOffset||!d9(a.contentDOM,b.anchorNode)?a.state.selection.main.anchor:a.docView.posFromDOM(b.anchorNode,b.anchorOffset),g=a.viewport;if((dW.ios||dW.chrome)&&a.state.selection.main.empty&&c!=d&&(g.from>0||g.to<a.state.doc.length)){let b=Math.min(c,d),e=Math.max(c,d),f=g.from-b,h=g.to-e;(0==f||1==f||0==b)&&(0==h||-1==h||e==a.state.doc.length)&&(c=0,d=a.state.doc.length)}a.inputState.composing>-1&&a.state.selection.ranges.length>1?this.newSel=a.state.selection.replaceRange(cK.range(d,c)):this.newSel=cK.single(d,c)}}};function fP(a,b){let c,{newSel:d}=b,e=a.state.selection.main,f=a.inputState.lastKeyTime>Date.now()-100?a.inputState.lastKeyCode:-1;if(b.bounds){let{from:d,to:g}=b.bounds,h=e.from,i=null;(8===f||dW.android&&b.text.length<g-d)&&(h=e.to,i="end");let j=fR(a.state.doc.sliceString(d,g,""),b.text,h-d,i);j&&(dW.chrome&&13==f&&j.toB==j.from+2&&""==b.text.slice(j.from,j.toB)&&j.toB--,c={from:d+j.from,to:d+j.toA,insert:cp.of(b.text.slice(j.from,j.toB).split(""))})}else d&&(!a.hasFocus&&a.state.facet(eW)||fS(d,e))&&(d=null);if(!c&&!d)return!1;if(!c&&b.typeOver&&!e.empty&&d&&d.main.empty?c={from:e.from,to:e.to,insert:a.state.doc.slice(e.from,e.to)}:(dW.mac||dW.android)&&c&&c.from==c.to&&c.from==e.head-1&&/^\. ?$/.test(c.insert.toString())&&"off"==a.contentDOM.getAttribute("autocorrect")?(d&&2==c.insert.length&&(d=cK.single(d.main.anchor-1,d.main.head-1)),c={from:c.from,to:c.to,insert:cp.of([c.insert.toString().replace("."," ")])}):c&&c.from>=e.from&&c.to<=e.to&&(c.from!=e.from||c.to!=e.to)&&e.to-e.from-(c.to-c.from)<=4?c={from:e.from,to:e.to,insert:a.state.doc.slice(e.from,c.from).append(c.insert).append(a.state.doc.slice(c.to,e.to))}:a.state.doc.lineAt(e.from).to<e.to&&a.docView.lineHasWidget(e.to)&&a.inputState.insertingTextAt>Date.now()-50?c={from:e.from,to:e.to,insert:a.state.toText(a.inputState.insertingText)}:dW.chrome&&c&&c.from==c.to&&c.from==e.head&&"\n "==c.insert.toString()&&a.lineWrapping&&(d&&(d=cK.single(d.main.anchor-1,d.main.head-1)),c={from:e.from,to:e.to,insert:cp.of([" "])}),c)return fQ(a,c,d,f);if(!d||fS(d,e))return!1;{let b=!1,c="select";return a.inputState.lastSelectionTime>Date.now()-50&&("select"==a.inputState.lastSelectionOrigin&&(b=!0),"select.pointer"==(c=a.inputState.lastSelectionOrigin)&&(d=fH(a.state.facet(e4).map(b=>b(a)),d))),a.dispatch({selection:d,scrollIntoView:b,userEvent:c}),!0}}function fQ(a,b,c,d=-1){let e;if(dW.ios&&a.inputState.flushIOSKey(b))return!0;let f=a.state.selection.main;if(dW.android&&(b.to==f.to&&(b.from==f.from||b.from==f.from-1&&" "==a.state.sliceDoc(b.from,f.from))&&1==b.insert.length&&2==b.insert.lines&&en(a.contentDOM,"Enter",13)||(b.from==f.from-1&&b.to==f.to&&0==b.insert.length||8==d&&b.insert.length<b.to-b.from&&b.to>f.head)&&en(a.contentDOM,"Backspace",8)||b.from==f.from&&b.to==f.to+1&&0==b.insert.length&&en(a.contentDOM,"Delete",46)))return!0;let g=b.insert.toString();a.inputState.composing>=0&&a.inputState.composing++;let h=()=>e||(e=function(a,b,c){let d,e=a.state,f=e.selection.main,g=-1;if(b.from==b.to&&b.from<f.from||b.from>f.to){let c=b.from<f.from?-1:1,d=c<0?f.from:f.to,h=fG(e.facet(e4).map(b=>b(a)),d,c);b.from==h&&(g=h)}if(g>-1)d={changes:b,selection:cK.cursor(b.from+b.insert.length,-1)};else if(b.from>=f.from&&b.to<=f.to&&b.to-b.from>=(f.to-f.from)/3&&(!c||c.main.empty&&c.main.from==b.from+b.insert.length)&&a.inputState.composing<0){let c=f.from<b.from?e.sliceDoc(f.from,b.from):"",g=f.to>b.to?e.sliceDoc(b.to,f.to):"";d=e.replaceSelection(a.state.toText(c+b.insert.sliceString(0,void 0,a.state.lineBreak)+g))}else{let g=e.changes(b),h=c&&c.main.to<=g.newLength?c.main:void 0;if(e.selection.ranges.length>1&&(a.inputState.composing>=0||a.inputState.compositionPendingChange)&&b.to<=f.to+10&&b.to>=f.to-10){let i=a.state.sliceDoc(b.from,b.to),j,k=c&&fB(a,c.main.head);if(k){let a=b.insert.length-(b.to-b.from);j={from:k.from,to:k.to-a}}else j=a.state.doc.lineAt(f.head);let l=f.to-b.to;d=e.changeByRange(c=>{if(c.from==f.from&&c.to==f.to)return{changes:g,range:h||c.map(g)};let d=c.to-l,k=d-i.length;if(a.state.sliceDoc(k,d)!=i||d>=j.from&&k<=j.to)return{range:c};let m=e.changes({from:k,to:d,insert:b.insert}),n=c.to-f.to;return{changes:m,range:h?cK.range(Math.max(0,h.anchor+n),Math.max(0,h.head+n)):c.map(m)}})}else d={changes:g,selection:h&&e.selection.replaceRange(h)}}let h="input.type";return(a.composing||a.inputState.compositionPendingChange&&a.inputState.compositionEndedAt>Date.now()-50)&&(a.inputState.compositionPendingChange=!1,h+=".compose",a.inputState.compositionFirstChange&&(h+=".start",a.inputState.compositionFirstChange=!1)),e.update(d,{userEvent:h,scrollIntoView:!0})}(a,b,c));return a.state.facet(eL).some(c=>c(a,b.from,b.to,g,h))||a.dispatch(h()),!0}function fR(a,b,c,d){let e=Math.min(a.length,b.length),f=0;for(;f<e&&a.charCodeAt(f)==b.charCodeAt(f);)f++;if(f==e&&a.length==b.length)return null;let g=a.length,h=b.length;for(;g>0&&h>0&&a.charCodeAt(g-1)==b.charCodeAt(h-1);)g--,h--;if("end"==d){let a=Math.max(0,f-Math.min(g,h));c-=g+a-f}if(g<f&&a.length<b.length){let a=c<=f&&c>=g?f-c:0;f-=a,h=f+(h-g),g=f}else if(h<f){let a=c<=f&&c>=h?f-c:0;f-=a,g=f+(g-h),h=f}return{from:f,toA:g,toB:h}}function fS(a,b){return b.head==a.main.head&&b.anchor==a.main.anchor}var fT=class{setSelectionOrigin(a){this.lastSelectionOrigin=a,this.lastSelectionTime=Date.now()}constructor(a){this.view=a,this.lastKeyCode=0,this.lastKeyTime=0,this.lastTouchTime=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.pendingIOSKey=void 0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=a.hasFocus,dW.safari&&a.contentDOM.addEventListener("input",()=>null),dW.gecko&&function(a){ge.has(a)||(ge.add(a),a.addEventListener("copy",()=>{}),a.addEventListener("cut",()=>{}))}(a.contentDOM.ownerDocument)}handleEvent(a){!(!function(a,b){if(!b.bubbles)return!0;if(b.defaultPrevented)return!1;for(let c=b.target,d;c!=a.contentDOM;c=c.parentNode)if(!c||11==c.nodeType||(d=fd.get(c))&&d.isWidget()&&!d.isHidden&&d.widget.ignoreEvent(b))return!1;return!0}(this.view,a)||this.ignoreDuringComposition(a))&&("keydown"==a.type&&this.keydown(a)||(0!=this.view.updateState?Promise.resolve().then(()=>this.runHandlers(a.type,a)):this.runHandlers(a.type,a)))}runHandlers(a,b){let c=this.handlers[a];if(c){for(let a of c.observers)a(this.view,b);for(let a of c.handlers){if(b.defaultPrevented)break;if(a(this.view,b)){b.preventDefault();break}}}}ensureHandlers(a){let b=function(a){let b=Object.create(null);function c(a){return b[a]||(b[a]={observers:[],handlers:[]})}for(let b of a){let a=b.spec,d=a&&a.plugin.domEventHandlers,e=a&&a.plugin.domEventObservers;if(d)for(let a in d){let e=d[a];e&&c(a).handlers.push(fU(b.value,e))}if(e)for(let a in e){let d=e[a];d&&c(a).observers.push(fU(b.value,d))}}for(let a in f$)c(a).handlers.push(f$[a]);for(let a in f_)c(a).observers.push(f_[a]);return b}(a),c=this.handlers,d=this.view.contentDOM;for(let a in b)if("scroll"!=a){let e=!b[a].handlers.length,f=c[a];f&&!f.handlers.length!=e&&(d.removeEventListener(a,this.handleEvent),f=null),f||d.addEventListener(a,this.handleEvent,{passive:e})}for(let a in c)"scroll"==a||b[a]||d.removeEventListener(a,this.handleEvent);this.handlers=b}keydown(a){let b;return this.lastKeyCode=a.keyCode,this.lastKeyTime=Date.now(),!!(9==a.keyCode&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))||((this.tabFocusMode>0&&27!=a.keyCode&&0>fX.indexOf(a.keyCode)&&(this.tabFocusMode=-1),dW.android&&dW.chrome&&!a.synthetic&&(13==a.keyCode||8==a.keyCode))?(this.view.observer.delayAndroidKey(a.key,a.keyCode),!0):dW.ios&&!a.synthetic&&!a.altKey&&!a.metaKey&&((b=fV.find(b=>b.keyCode==a.keyCode))&&!a.ctrlKey||fW.indexOf(a.key)>-1&&a.ctrlKey&&!a.shiftKey)?(this.pendingIOSKey=b||a,setTimeout(()=>this.flushIOSKey(),250),!0):(229!=a.keyCode&&this.view.observer.forceFlush(),!1))}flushIOSKey(a){let b=this.pendingIOSKey;return!(!b||"Enter"==b.key&&a&&a.from<a.to&&/^\S+$/.test(a.insert.toString()))&&(this.pendingIOSKey=void 0,en(this.view.contentDOM,b.key,b.keyCode,b instanceof KeyboardEvent?b:void 0))}ignoreDuringComposition(a){return!!/^key/.test(a.type)&&!a.synthetic&&(this.composing>0||!!(dW.safari&&!dW.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100)&&(this.compositionPendingKey=!1,!0))}startMouseSelection(a){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=a}update(a){this.view.observer.update(a),this.mouseSelection&&this.mouseSelection.update(a),this.draggedContent&&a.docChanged&&(this.draggedContent=this.draggedContent.map(a.changes)),a.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}};function fU(a,b){return(c,d)=>{try{return b.call(a,d,c)}catch(a){eV(c.state,a)}}}var fV=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],fW="dthko",fX=[16,17,18,20,91,92,224,225];function fY(a){return .7*Math.max(0,a)+8}var fZ=class{constructor(a,b,c,d){this.view=a,this.startEvent=b,this.style=c,this.mustSelect=d,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=b,this.scrollParents=function(a){let b=a.ownerDocument,c,d;for(let e=a.parentNode;e;)if(e==b.body||c&&d)break;else if(1==e.nodeType)!d&&e.scrollHeight>e.clientHeight&&(d=e),!c&&e.scrollWidth>e.clientWidth&&(c=e),e=e.assignedSlot||e.parentNode;else if(11==e.nodeType)e=e.host;else break;return{x:c,y:d}}(a.contentDOM),this.atoms=a.state.facet(e4).map(b=>b(a));let e=a.contentDOM.ownerDocument;e.addEventListener("mousemove",this.move=this.move.bind(this)),e.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=b.shiftKey,this.multiple=a.state.facet(dj.allowMultipleSelections)&&function(a,b){let c=a.state.facet(eG);return c.length?c[0](b):dW.mac?b.metaKey:b.ctrlKey}(a,b),this.dragging=!!function(a,b){let{main:c}=a.state.selection;if(c.empty)return!1;let d=d8(a.root);if(!d||0==d.rangeCount)return!0;let e=d.getRangeAt(0).getClientRects();for(let a=0;a<e.length;a++){let c=e[a];if(c.left<=b.clientX&&c.right>=b.clientX&&c.top<=b.clientY&&c.bottom>=b.clientY)return!0}return!1}(a,b)&&1==f8(b)&&null}start(a){!1===this.dragging&&this.select(a)}move(a){var b;if(0==a.buttons)return this.destroy();if(this.dragging||null==this.dragging&&10>(b=this.startEvent,Math.max(Math.abs(b.clientX-a.clientX),Math.abs(b.clientY-a.clientY))))return;this.select(this.lastEvent=a);let c=0,d=0,e=0,f=0,g=this.view.win.innerWidth,h=this.view.win.innerHeight;this.scrollParents.x&&({left:e,right:g}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:f,bottom:h}=this.scrollParents.y.getBoundingClientRect());let i=e8(this.view);a.clientX-i.left<=e+6?c=-fY(e-a.clientX):a.clientX+i.right>=g-6&&(c=fY(a.clientX-g)),a.clientY-i.top<=f+6?d=-fY(f-a.clientY):a.clientY+i.bottom>=h-6&&(d=fY(a.clientY-h)),this.setScrollSpeed(c,d)}up(a){null==this.dragging&&this.select(this.lastEvent),this.dragging||a.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let a=this.view.contentDOM.ownerDocument;a.removeEventListener("mousemove",this.move),a.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(a,b){this.scrollSpeed={x:a,y:b},a||b?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:a,y:b}=this.scrollSpeed;a&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=a,a=0),b&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=b,b=0),(a||b)&&this.view.win.scrollBy(a,b),!1===this.dragging&&this.select(this.lastEvent)}select(a){let{view:b}=this,c=fH(this.atoms,this.style.get(a,this.extend,this.multiple));(this.mustSelect||!c.eq(b.state.selection,!1===this.dragging))&&this.view.dispatch({selection:c,userEvent:"select.pointer"}),this.mustSelect=!1}update(a){a.transactions.some(a=>a.isUserEvent("input.type"))?this.destroy():this.style.update(a)&&setTimeout(()=>this.select(this.lastEvent),20)}},f$=Object.create(null),f_=Object.create(null),f0=dW.ie&&dW.ie_version<15||dW.ios&&dW.webkit_version<604;function f1(a,b,c){for(let d of a.facet(b))c=d(c,a);return c}function f2(a,b){b=f1(a.state,eN,b);let{state:c}=a,d,e=1,f=c.toText(b),g=f.lines==c.selection.ranges.length;if(null!=ga&&c.selection.ranges.every(a=>a.empty)&&ga==f.toString()){let a=-1;d=c.changeByRange(d=>{let h=c.doc.lineAt(d.from);if(h.from==a)return{range:d};a=h.from;let i=c.toText((g?f.line(e++).text:b)+c.lineBreak);return{changes:{from:h.from,insert:i},range:cK.cursor(d.from+i.length)}})}else d=g?c.changeByRange(a=>{let b=f.line(e++);return{changes:{from:a.from,to:a.to,insert:b.text},range:cK.cursor(a.from+b.length)}}):c.replaceSelection(f);a.dispatch(d,{userEvent:"input.paste",scrollIntoView:!0})}function f3(a,b,c,d){if(1==d)return cK.cursor(b,c);{if(2==d)return function(a,b,c=1){let d=a.charCategorizer(b),e=a.doc.lineAt(b),f=b-e.from;if(0==e.length)return cK.cursor(b);0==f?c=1:f==e.length&&(c=-1);let g=f,h=f;c<0?g=cy(e.text,f,!1):h=cy(e.text,f);let i=d(e.text.slice(g,h));for(;g>0;){let a=cy(e.text,g,!1);if(d(e.text.slice(a,g))!=i)break;g=a}for(;h<e.length;){let a=cy(e.text,h);if(d(e.text.slice(h,a))!=i)break;h=a}return cK.range(g+e.from,h+e.from)}(a.state,b,c);let e=a.docView.lineAt(b,c),f=a.state.doc.lineAt(e?e.posAtEnd:b),g=e?e.posAtStart:f.from,h=e?e.posAtEnd:f.to;return h<a.state.doc.length&&h==f.to&&h++,cK.range(g,h)}}f_.scroll=a=>{a.inputState.lastScrollTop=a.scrollDOM.scrollTop,a.inputState.lastScrollLeft=a.scrollDOM.scrollLeft},f$.keydown=(a,b)=>(a.inputState.setSelectionOrigin("select"),27==b.keyCode&&0!=a.inputState.tabFocusMode&&(a.inputState.tabFocusMode=Date.now()+2e3),!1),f_.touchstart=(a,b)=>{a.inputState.lastTouchTime=Date.now(),a.inputState.setSelectionOrigin("select.pointer")},f_.touchmove=a=>{a.inputState.setSelectionOrigin("select.pointer")},f$.mousedown=(a,b)=>{if(a.observer.flush(),a.inputState.lastTouchTime>Date.now()-2e3)return!1;let c=null;for(let d of a.state.facet(eI))if(c=d(a,b))break;if(c||0!=b.button||(c=function(a,b){let c=a.posAndSideAtCoords({x:b.clientX,y:b.clientY},!1),d=f8(b),e=a.state.selection;return{update(a){a.docChanged&&(c.pos=a.changes.mapPos(c.pos),e=e.map(a.changes))},get(b,f,g){let h=a.posAndSideAtCoords({x:b.clientX,y:b.clientY},!1),i,j=f3(a,h.pos,h.assoc,d);if(c.pos!=h.pos&&!f){let b=f3(a,c.pos,c.assoc,d),e=Math.min(b.from,j.from),f=Math.max(b.to,j.to);j=e<j.from?cK.range(e,f):cK.range(f,e)}return f?e.replaceRange(e.main.extend(j.from,j.to)):g&&1==d&&e.ranges.length>1&&(i=function(a,b){for(let c=0;c<a.ranges.length;c++){let{from:d,to:e}=a.ranges[c];if(d<=b&&e>=b)return cK.create(a.ranges.slice(0,c).concat(a.ranges.slice(c+1)),a.mainIndex==c?0:a.mainIndex-(a.mainIndex>c))}return null}(e,h.pos))?i:g?e.addRange(j):cK.create([j])}}}(a,b)),c){let d=!a.hasFocus;a.inputState.startMouseSelection(new fZ(a,b,c,d)),d&&a.observer.ignore(()=>{el(a.contentDOM);let b=a.root.activeElement;b&&!b.contains(a.contentDOM)&&b.blur()});let e=a.inputState.mouseSelection;if(e)return e.start(b),!1===e.dragging}else a.inputState.setSelectionOrigin("select.pointer");return!1};var f4=dW.ie&&dW.ie_version<=11,f5=null,f6=0,f7=0;function f8(a){if(!f4)return a.detail;let b=f5,c=f7;return f5=a,f7=Date.now(),f6=!b||c>Date.now()-400&&2>Math.abs(b.clientX-a.clientX)&&2>Math.abs(b.clientY-a.clientY)?(f6+1)%3:1}function f9(a,b,c,d){let e;if(!(c=f1(a.state,eN,c)))return;let f=a.posAtCoords({x:b.clientX,y:b.clientY},!1),{draggedContent:g}=a.inputState,h=d&&g&&((e=a.state.facet(eH)).length?e[0](b):dW.mac?!b.altKey:!b.ctrlKey)?{from:g.from,to:g.to}:null,i={from:f,insert:c},j=a.state.changes(h?[h,i]:i);a.focus(),a.dispatch({changes:j,selection:{anchor:j.mapPos(f,-1),head:j.mapPos(f,1)},userEvent:h?"move.drop":"input.drop"}),a.inputState.draggedContent=null}f$.dragstart=(a,b)=>{let{selection:{main:c}}=a.state;if(b.target.draggable){let d=a.docView.tile.nearest(b.target);if(d&&d.isWidget()){let a=d.posAtStart,b=a+d.length;(a>=c.to||b<=c.from)&&(c=cK.range(a,b))}}let{inputState:d}=a;return d.mouseSelection&&(d.mouseSelection.dragging=!0),d.draggedContent=c,b.dataTransfer&&(b.dataTransfer.setData("Text",f1(a.state,eO,a.state.sliceDoc(c.from,c.to))),b.dataTransfer.effectAllowed="copyMove"),!1},f$.dragend=a=>(a.inputState.draggedContent=null,!1),f$.drop=(a,b)=>{if(!b.dataTransfer)return!1;if(a.state.readOnly)return!0;let c=b.dataTransfer.files;if(c&&c.length){let d=Array(c.length),e=0,f=()=>{++e==c.length&&f9(a,b,d.filter(a=>null!=a).join(a.state.lineBreak),!1)};for(let a=0;a<c.length;a++){let b=new FileReader;b.onerror=f,b.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(b.result)||(d[a]=b.result),f()},b.readAsText(c[a])}return!0}{let c=b.dataTransfer.getData("Text");if(c)return f9(a,b,c,!0),!0}return!1},f$.paste=(a,b)=>{if(a.state.readOnly)return!0;a.observer.flush();let c=f0?null:b.clipboardData;return c?(f2(a,c.getData("text/plain")||c.getData("text/uri-list")),!0):(!function(a){let b=a.dom.parentNode;if(!b)return;let c=b.appendChild(document.createElement("textarea"));c.style.cssText="position: fixed; left: -10000px; top: 10px",c.focus(),setTimeout(()=>{a.focus(),c.remove(),f2(a,c.value)},50)}(a),!1)};var ga=null;f$.copy=f$.cut=(a,b)=>{if(!ea(a.contentDOM,a.observer.selectionRange))return!1;let{text:c,ranges:d,linewise:e}=function(a){let b=[],c=[],d=!1;for(let d of a.selection.ranges)d.empty||(b.push(a.sliceDoc(d.from,d.to)),c.push(d));if(!b.length){let e=-1;for(let{from:d}of a.selection.ranges){let f=a.doc.lineAt(d);f.number>e&&(b.push(f.text),c.push({from:f.from,to:Math.min(a.doc.length,f.to+1)})),e=f.number}d=!0}return{text:f1(a,eO,b.join(a.lineBreak)),ranges:c,linewise:d}}(a.state);if(!c&&!e)return!1;ga=e?c:null,"cut"!=b.type||a.state.readOnly||a.dispatch({changes:d,scrollIntoView:!0,userEvent:"delete.cut"});let f=f0?null:b.clipboardData;return f?(f.clearData(),f.setData("text/plain",c),!0):(!function(a,b){let c=a.dom.parentNode;if(!c)return;let d=c.appendChild(document.createElement("textarea"));d.style.cssText="position: fixed; left: -10000px; top: 10px",d.value=b,d.focus(),d.selectionEnd=b.length,d.selectionStart=0,setTimeout(()=>{d.remove(),a.focus()},50)}(a,c),!1)};var gb=c8.define();function gc(a,b){let c=[];for(let d of a.facet(eM)){let e=d(a,b);e&&c.push(e)}return c.length?a.update({effects:c,annotations:gb.of(!0)}):null}function gd(a){setTimeout(()=>{let b=a.hasFocus;if(b!=a.inputState.notifiedFocused){let c=gc(a.state,b);c?a.dispatch(c):a.update([])}},10)}f_.focus=a=>{a.inputState.lastFocusTime=Date.now(),!a.scrollDOM.scrollTop&&(a.inputState.lastScrollTop||a.inputState.lastScrollLeft)&&(a.scrollDOM.scrollTop=a.inputState.lastScrollTop,a.scrollDOM.scrollLeft=a.inputState.lastScrollLeft),gd(a)},f_.blur=a=>{a.observer.clearSelectionRange(),gd(a)},f_.compositionstart=f_.compositionupdate=a=>{!a.observer.editContext&&(null==a.inputState.compositionFirstChange&&(a.inputState.compositionFirstChange=!0),a.inputState.composing<0&&(a.inputState.composing=0))},f_.compositionend=a=>{a.observer.editContext||(a.inputState.composing=-1,a.inputState.compositionEndedAt=Date.now(),a.inputState.compositionPendingKey=!0,a.inputState.compositionPendingChange=a.observer.pendingRecords().length>0,a.inputState.compositionFirstChange=null,dW.chrome&&dW.android?a.observer.flushSoon():a.inputState.compositionPendingChange?Promise.resolve().then(()=>a.observer.flush()):setTimeout(()=>{a.inputState.composing<0&&a.docView.hasComposition&&a.update([])},50))},f_.contextmenu=a=>{a.inputState.lastContextMenu=Date.now()},f$.beforeinput=(a,b)=>{var c,d;let e;if(("insertText"==b.inputType||"insertCompositionText"==b.inputType)&&(a.inputState.insertingText=b.data,a.inputState.insertingTextAt=Date.now()),"insertReplacementText"==b.inputType&&a.observer.editContext){let d=null==(c=b.dataTransfer)?void 0:c.getData("text/plain"),e=b.getTargetRanges();if(d&&e.length){let b=e[0],c=a.posAtDOM(b.startContainer,b.startOffset),f=a.posAtDOM(b.endContainer,b.endOffset);return fQ(a,{from:c,to:f,insert:a.state.toText(d)},null),!0}}if(dW.chrome&&dW.android&&(e=fV.find(a=>a.inputType==b.inputType))&&(a.observer.delayAndroidKey(e.key,e.keyCode),"Backspace"==e.key||"Delete"==e.key)){let b=(null==(d=window.visualViewport)?void 0:d.height)||0;setTimeout(()=>{var c;((null==(c=window.visualViewport)?void 0:c.height)||0)>b+10&&a.hasFocus&&(a.contentDOM.blur(),a.focus())},100)}return dW.ios&&"deleteContentForward"==b.inputType&&a.observer.flushSoon(),dW.safari&&"insertText"==b.inputType&&a.inputState.composing>=0&&setTimeout(()=>f_.compositionend(a,b),20),!1};var ge=new Set,gf=["pre-wrap","normal","pre-line","break-spaces"],gg=!1,gh=class{constructor(a){this.lineWrapping=a,this.doc=cp.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(a,b){let c=this.doc.lineAt(b).number-this.doc.lineAt(a).number+1;return this.lineWrapping&&(c+=Math.max(0,Math.ceil((b-a-c*this.lineLength*.5)/this.lineLength))),this.lineHeight*c}heightForLine(a){return this.lineWrapping?(1+Math.max(0,Math.ceil((a-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(a){return this.doc=a,this}mustRefreshForWrapping(a){return gf.indexOf(a)>-1!=this.lineWrapping}mustRefreshForHeights(a){let b=!1;for(let c=0;c<a.length;c++){let d=a[c];d<0?c++:this.heightSamples[Math.floor(10*d)]||(b=!0,this.heightSamples[Math.floor(10*d)]=!0)}return b}refresh(a,b,c,d,e,f){let g=gf.indexOf(a)>-1,h=Math.abs(b-this.lineHeight)>.3||this.lineWrapping!=g||Math.abs(c-this.charWidth)>.1;if(this.lineWrapping=g,this.lineHeight=b,this.charWidth=c,this.textHeight=d,this.lineLength=e,h){this.heightSamples={};for(let a=0;a<f.length;a++){let b=f[a];b<0?a++:this.heightSamples[Math.floor(10*b)]=!0}}return h}},gi=class{constructor(a,b){this.from=a,this.heights=b,this.index=0}get more(){return this.index<this.heights.length}},gj=class a{constructor(a,b,c,d,e){this.from=a,this.length=b,this.top=c,this.height=d,this._content=e}get type(){return"number"==typeof this._content?d0.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof d4?this._content.widget:null}get widgetLineBreaks(){return"number"==typeof this._content?this._content:0}join(b){let c=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(b._content)?b._content:[b]);return new a(this.from,this.length+b.length,this.top,this.height+b.height,c)}},gk=function(a){return a[a.ByPos=0]="ByPos",a[a.ByHeight=1]="ByHeight",a[a.ByPosNoHeight=2]="ByPosNoHeight",a}(gk||(gk={})),gl=class a{constructor(a,b,c=2){this.length=a,this.height=b,this.flags=c}get outdated(){return(2&this.flags)>0}set outdated(a){this.flags=2*!!a|-3&this.flags}setHeight(a){this.height!=a&&(Math.abs(this.height-a)>.001&&(gg=!0),this.height=a)}replace(b,c,d){return a.of(d)}decomposeLeft(a,b){b.push(this)}decomposeRight(a,b){b.push(this)}applyChanges(a,b,c,d){let e=this,f=c.doc;for(let g=d.length-1;g>=0;g--){let{fromA:h,toA:i,fromB:j,toB:k}=d[g],l=e.lineAt(h,gk.ByPosNoHeight,c.setDoc(b),0,0),m=l.to>=i?l:e.lineAt(i,gk.ByPosNoHeight,c,0,0);for(k+=m.to-i,i=m.to;g>0&&l.from<=d[g-1].toA;)h=d[g-1].fromA,j=d[g-1].fromB,g--,h<l.from&&(l=e.lineAt(h,gk.ByPosNoHeight,c,0,0));j+=l.from-h,h=l.from;let n=gt.build(c.setDoc(f),a,j,k);e=gm(e,e.replace(h,i,n))}return e.updateHeight(c,0)}static empty(){return new gp(0,0,0)}static of(b){if(1==b.length)return b[0];let c=0,d=b.length,e=0,f=0;for(;;)if(c==d)if(e>2*f){let a=b[c-1];a.break?b.splice(--c,1,a.left,null,a.right):b.splice(--c,1,a.left,a.right),d+=1+a.break,e-=a.size}else if(f>2*e){let a=b[d];a.break?b.splice(d,1,a.left,null,a.right):b.splice(d,1,a.left,a.right),d+=2+a.break,f-=a.size}else break;else if(e<f){let a=b[c++];a&&(e+=a.size)}else{let a=b[--d];a&&(f+=a.size)}let g=0;return null==b[c-1]?(g=1,c--):null==b[c]&&(g=1,d++),new gr(a.of(b.slice(0,c)),g,a.of(b.slice(d)))}};function gm(a,b){return a==b?a:(a.constructor!=b.constructor&&(gg=!0),b)}gl.prototype.size=1;var gn=d1.replace({}),go=class extends gl{constructor(a,b,c){super(a,b),this.deco=c,this.spaceAbove=0}mainBlock(a,b){return new gj(b,this.length,a+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(a,b,c,d){return this.spaceAbove&&a<c+this.spaceAbove?new gj(d,0,c,this.spaceAbove,gn):this.mainBlock(c,d)}lineAt(a,b,c,d,e){let f=this.mainBlock(d,e);return this.spaceAbove?this.blockAt(0,c,d,e).join(f):f}forEachLine(a,b,c,d,e,f){a<=e+this.length&&b>=e&&f(this.lineAt(0,gk.ByPos,c,d,e))}setMeasuredHeight(a){let b=a.heights[a.index++];b<0?(this.spaceAbove=-b,b=a.heights[a.index++]):this.spaceAbove=0,this.setHeight(b)}updateHeight(a,b=0,c=!1,d){return d&&d.from<=b&&d.more&&this.setMeasuredHeight(d),this.outdated=!1,this}toString(){return`block(${this.length})`}},gp=class a extends go{constructor(a,b,c){super(a,b,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=c}mainBlock(a,b){return new gj(b,this.length,a+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(b,c,d){let e=d[0];return 1==d.length&&(e instanceof a||e instanceof gq&&4&e.flags)&&10>Math.abs(this.length-e.length)?(e instanceof gq?e=new a(e.length,this.height,this.spaceAbove):e.height=this.height,this.outdated||(e.outdated=!1),e):gl.of(d)}updateHeight(a,b=0,c=!1,d){return d&&d.from<=b&&d.more?this.setMeasuredHeight(d):(c||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,a.heightForLine(this.length-this.collapsed))+this.breaks*a.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}},gq=class a extends gl{constructor(a){super(a,0)}heightMetrics(a,b){let c=a.doc.lineAt(b).number,d=a.doc.lineAt(b+this.length).number,e=d-c+1,f,g=0;if(a.lineWrapping){let b=Math.min(this.height,a.lineHeight*e);f=b/e,this.length>e+1&&(g=(this.height-b)/(this.length-e-1))}else f=this.height/e;return{firstLine:c,lastLine:d,perLine:f,perChar:g}}blockAt(a,b,c,d){let{firstLine:e,lastLine:f,perLine:g,perChar:h}=this.heightMetrics(b,d);if(b.lineWrapping){let e=d+(a<b.lineHeight?0:Math.round(Math.max(0,Math.min(1,(a-c)/this.height))*this.length)),f=b.doc.lineAt(e),i=g+f.length*h,j=Math.max(c,a-i/2);return new gj(f.from,f.length,j,i,0)}{let d=Math.max(0,Math.min(f-e,Math.floor((a-c)/g))),{from:h,length:i}=b.doc.line(e+d);return new gj(h,i,c+g*d,g,0)}}lineAt(a,b,c,d,e){if(b==gk.ByHeight)return this.blockAt(a,c,d,e);if(b==gk.ByPosNoHeight){let{from:b,to:d}=c.doc.lineAt(a);return new gj(b,d-b,0,0,0)}let{firstLine:f,perLine:g,perChar:h}=this.heightMetrics(c,e),i=c.doc.lineAt(a),j=g+i.length*h,k=i.number-f,l=d+g*k+h*(i.from-e-k);return new gj(i.from,i.length,Math.max(d,Math.min(l,d+this.height-j)),j,0)}forEachLine(a,b,c,d,e,f){a=Math.max(a,e),b=Math.min(b,e+this.length);let{firstLine:g,perLine:h,perChar:i}=this.heightMetrics(c,e);for(let j=a,k=d;j<=b;){let b=c.doc.lineAt(j);if(j==a){let c=b.number-g;k+=h*c+i*(a-e-c)}let d=h+i*b.length;f(new gj(b.from,b.length,k,d,0)),k+=d,j=b.to+1}}replace(b,c,d){let e=this.length-c;if(e>0){let b=d[d.length-1];b instanceof a?d[d.length-1]=new a(b.length+e):d.push(null,new a(e-1))}if(b>0){let c=d[0];c instanceof a?d[0]=new a(b+c.length):d.unshift(new a(b-1),null)}return gl.of(d)}decomposeLeft(b,c){c.push(new a(b-1),null)}decomposeRight(b,c){c.push(null,new a(this.length-b-1))}updateHeight(b,c=0,d=!1,e){let f=c+this.length;if(e&&e.from<=c+this.length&&e.more){let d=[],g=Math.max(c,e.from),h=-1;for(e.from>c&&d.push(new a(e.from-c-1).updateHeight(b,c));g<=f&&e.more;){let a=b.doc.lineAt(g).length;d.length&&d.push(null);let c=e.heights[e.index++],f=0;c<0&&(f=-c,c=e.heights[e.index++]),-1==h?h=c:Math.abs(c-h)>=.001&&(h=-2);let i=new gp(a,c,f);i.outdated=!1,d.push(i),g+=a+1}g<=f&&d.push(null,new a(f-g).updateHeight(b,g));let i=gl.of(d);return(h<0||Math.abs(i.height-this.height)>=.001||Math.abs(h-this.heightMetrics(b,c).perLine)>=.001)&&(gg=!0),gm(this,i)}return(d||this.outdated)&&(this.setHeight(b.heightForGap(c,c+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}},gr=class extends gl{constructor(a,b,c){super(a.length+b+c.length,a.height+c.height,b|(a.outdated||c.outdated?2:0)),this.left=a,this.right=c,this.size=a.size+c.size}get break(){return 1&this.flags}blockAt(a,b,c,d){let e=c+this.left.height;return a<e?this.left.blockAt(a,b,c,d):this.right.blockAt(a,b,e,d+this.left.length+this.break)}lineAt(a,b,c,d,e){let f=d+this.left.height,g=e+this.left.length+this.break,h=b==gk.ByHeight?a<f:a<g,i=h?this.left.lineAt(a,b,c,d,e):this.right.lineAt(a,b,c,f,g);if(this.break||(h?i.to<g:i.from>g))return i;let j=b==gk.ByPosNoHeight?gk.ByPosNoHeight:gk.ByPos;return h?i.join(this.right.lineAt(g,j,c,f,g)):this.left.lineAt(g,j,c,d,e).join(i)}forEachLine(a,b,c,d,e,f){let g=d+this.left.height,h=e+this.left.length+this.break;if(this.break)a<h&&this.left.forEachLine(a,b,c,d,e,f),b>=h&&this.right.forEachLine(a,b,c,g,h,f);else{let i=this.lineAt(h,gk.ByPos,c,d,e);a<i.from&&this.left.forEachLine(a,i.from-1,c,d,e,f),i.to>=a&&i.from<=b&&f(i),b>i.to&&this.right.forEachLine(i.to+1,b,c,g,h,f)}}replace(a,b,c){let d=this.left.length+this.break;if(b<d)return this.balanced(this.left.replace(a,b,c),this.right);if(a>this.left.length)return this.balanced(this.left,this.right.replace(a-d,b-d,c));let e=[];a>0&&this.decomposeLeft(a,e);let f=e.length;for(let a of c)e.push(a);if(a>0&&gs(e,f-1),b<this.length){let a=e.length;this.decomposeRight(b,e),gs(e,a)}return gl.of(e)}decomposeLeft(a,b){let c=this.left.length;if(a<=c)return this.left.decomposeLeft(a,b);b.push(this.left),this.break&&a>=++c&&b.push(null),a>c&&this.right.decomposeLeft(a-c,b)}decomposeRight(a,b){let c=this.left.length,d=c+this.break;if(a>=d)return this.right.decomposeRight(a-d,b);a<c&&this.left.decomposeRight(a,b),this.break&&a<d&&b.push(null),b.push(this.right)}balanced(a,b){return a.size>2*b.size||b.size>2*a.size?gl.of(this.break?[a,null,b]:[a,b]):(this.left=gm(this.left,a),this.right=gm(this.right,b),this.setHeight(a.height+b.height),this.outdated=a.outdated||b.outdated,this.size=a.size+b.size,this.length=a.length+this.break+b.length,this)}updateHeight(a,b=0,c=!1,d){let{left:e,right:f}=this,g=b+e.length+this.break,h=null;return(d&&d.from<=b+e.length&&d.more?h=e=e.updateHeight(a,b,c,d):e.updateHeight(a,b,c),d&&d.from<=g+f.length&&d.more?h=f=f.updateHeight(a,g,c,d):f.updateHeight(a,g,c),h)?this.balanced(e,f):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function gs(a,b){let c,d;null==a[b]&&(c=a[b-1])instanceof gq&&(d=a[b+1])instanceof gq&&a.splice(b-1,3,new gq(c.length+1+d.length))}var gt=class a{constructor(a,b){this.pos=a,this.oracle=b,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=a}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(a,b){if(this.lineStart>-1){let a=Math.min(b,this.lineEnd),c=this.nodes[this.nodes.length-1];c instanceof gp?c.length+=a-this.pos:(a>this.pos||!this.isCovered)&&this.nodes.push(new gp(a-this.pos,-1,0)),this.writtenTo=a,b>a&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=b}point(a,b,c){if(a<b||c.heightRelevant){let d=c.widget?c.widget.estimatedHeight:0,e=c.widget?c.widget.lineBreaks:0;d<0&&(d=this.oracle.lineHeight);let f=b-a;c.block?this.addBlock(new go(f,d,c)):(f||e||d>=5)&&this.addLineDeco(d,e,f)}else b>a&&this.span(a,b);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:a,to:b}=this.oracle.doc.lineAt(this.pos);this.lineStart=a,this.lineEnd=b,this.writtenTo<a&&((this.writtenTo<a-1||null==this.nodes[this.nodes.length-1])&&this.nodes.push(this.blankContent(this.writtenTo,a-1)),this.nodes.push(null)),this.pos>a&&this.nodes.push(new gp(this.pos-a,-1,0)),this.writtenTo=this.pos}blankContent(a,b){let c=new gq(b-a);return this.oracle.doc.lineAt(a).to==b&&(c.flags|=4),c}ensureLine(){this.enterLine();let a=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(a instanceof gp)return a;let b=new gp(0,-1,0);return this.nodes.push(b),b}addBlock(a){this.enterLine();let b=a.deco;b&&b.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(a),this.writtenTo=this.pos=this.pos+a.length,b&&b.endSide>0&&(this.covering=a)}addLineDeco(a,b,c){let d=this.ensureLine();d.length+=c,d.collapsed+=c,d.widgetHeight=Math.max(d.widgetHeight,a),d.breaks+=b,this.writtenTo=this.pos=this.pos+c}finish(a){let b=0==this.nodes.length?null:this.nodes[this.nodes.length-1];!(this.lineStart>-1)||b instanceof gp||this.isCovered?(this.writtenTo<this.pos||null==b)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new gp(0,-1,0));let c=a;for(let a of this.nodes)a instanceof gp&&a.updateHeight(this.oracle,c),c+=a?a.length:1;return this.nodes}static build(b,c,d,e){let f=new a(d,b);return dq.spans(c,d,e,f,0),f.finish(d)}},gu=class{constructor(){this.changes=[]}compareRange(){}comparePoint(a,b,c,d){(a<b||c&&c.heightRelevant||d&&d.heightRelevant)&&d6(a,b,this.changes,5)}},gv=class{constructor(a,b,c,d){this.from=a,this.to=b,this.size=c,this.displaySize=d}static same(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++){let d=a[c],e=b[c];if(d.from!=e.from||d.to!=e.to||d.size!=e.size)return!1}return!0}draw(a,b){return d1.replace({widget:new gw(this.displaySize*(b?a.scaleY:a.scaleX),b)}).range(this.from,this.to)}},gw=class extends d_{constructor(a,b){super(),this.size=a,this.vertical=b}eq(a){return a.size==this.size&&a.vertical==this.vertical}toDOM(){let a=document.createElement("div");return this.vertical?a.style.height=this.size+"px":(a.style.width=this.size+"px",a.style.height="2px",a.style.display="inline-block"),a}get estimatedHeight(){return this.vertical?this.size:-1}},gx=class{constructor(a){this.state=a,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scrollTop=0,this.scrolledToBottom=!1,this.scaleX=1,this.scaleY=1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=gB,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=es.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let b=a.facet(e0).some(a=>"function"!=typeof a&&"cm-lineWrapping"==a.class);this.heightOracle=new gh(b),this.stateDeco=gC(a),this.heightMap=gl.empty().applyChanges(this.stateDeco,cp.empty,this.heightOracle.setDoc(a.doc),[new fa(0,0,0,a.doc.length)]);for(let a=0;a<2&&(this.viewport=this.getViewport(0,null),this.updateForViewport());a++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=d1.set(this.lineGaps.map(a=>a.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let a=[this.viewport],{main:b}=this.state.selection;for(let c=0;c<=1;c++){let d=c?b.head:b.anchor;if(!a.some(({from:a,to:b})=>d>=a&&d<=b)){let{from:b,to:c}=this.lineBlockAt(d);a.push(new gy(b,c))}}return this.viewports=a.sort((a,b)=>a.from-b.from),this.updateScaler()}updateScaler(){let a=this.scaler;return this.scaler=this.heightMap.height<=7e6?gB:new gD(this.heightOracle,this.heightMap,this.viewports),2*!a.eq(this.scaler)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,a=>{this.viewportLines.push(gE(a,this.scaler))})}update(a,b=null){var c,d;let e;this.state=a.state;let f=this.stateDeco;this.stateDeco=gC(this.state);let g=a.changedRanges,h=fa.extendWithRanges(g,(c=this.stateDeco,d=a?a.changes:cC.empty(this.state.doc.length),e=new gu,dq.compare(f,c,d,e,0),e.changes)),i=this.heightMap.height,j=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);gg=!1,this.heightMap=this.heightMap.applyChanges(this.stateDeco,a.startState.doc,this.heightOracle.setDoc(this.state.doc),h),(this.heightMap.height!=i||gg)&&(a.flags|=2),j?(this.scrollAnchorPos=a.changes.mapPos(j.from,-1),this.scrollAnchorHeight=j.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=i);let k=h.length?this.mapViewport(this.viewport,a.changes):this.viewport;(b&&(b.range.head<k.from||b.range.head>k.to)||!this.viewportIsAppropriate(k))&&(k=this.getViewport(0,b));let l=k.from!=this.viewport.from||k.to!=this.viewport.to;this.viewport=k,a.flags|=this.updateForViewport(),(l||!a.changes.empty||2&a.flags)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,a.changes))),a.flags|=this.computeVisibleRanges(a.changes),b&&(this.scrollTarget=b),!this.mustEnforceCursorAssoc&&(a.selectionSet||a.focusChanged)&&a.view.lineWrapping&&a.state.selection.main.empty&&a.state.selection.main.assoc&&!a.state.facet(eQ)&&(this.mustEnforceCursorAssoc=!0)}measure(a){var b;let c,d,e=a.contentDOM,f=window.getComputedStyle(e),g=this.heightOracle,h=f.whiteSpace;this.defaultTextDirection="rtl"==f.direction?es.RTL:es.LTR;let i=this.heightOracle.mustRefreshForWrapping(h)||this.mustMeasureContent,j=e.getBoundingClientRect(),k=i||this.mustMeasureContent||this.contentDOMHeight!=j.height;this.contentDOMHeight=j.height,this.mustMeasureContent=!1;let l=0,m=0;if(j.width&&j.height){let{scaleX:a,scaleY:b}=ei(e,j);(a>.005&&Math.abs(this.scaleX-a)>.005||b>.005&&Math.abs(this.scaleY-b)>.005)&&(this.scaleX=a,this.scaleY=b,l|=16,i=k=!0)}let n=(parseInt(f.paddingTop)||0)*this.scaleY,o=(parseInt(f.paddingBottom)||0)*this.scaleY;(this.paddingTop!=n||this.paddingBottom!=o)&&(this.paddingTop=n,this.paddingBottom=o,l|=18),this.editorWidth!=a.scrollDOM.clientWidth&&(g.lineWrapping&&(k=!0),this.editorWidth=a.scrollDOM.clientWidth,l|=16);let p=a.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=p&&(this.scrollAnchorHeight=-1,this.scrollTop=p),this.scrolledToBottom=eo(a.scrollDOM);let q=(this.printing?function(a,b){let c=a.getBoundingClientRect();return{left:0,right:c.right-c.left,top:b,bottom:c.bottom-(c.top+b)}}:function(a,b){let c=a.getBoundingClientRect(),d=a.ownerDocument,e=d.defaultView||window,f=Math.max(0,c.left),g=Math.min(e.innerWidth,c.right),h=Math.max(0,c.top),i=Math.min(e.innerHeight,c.bottom);for(let b=a.parentNode;b&&b!=d.body;)if(1==b.nodeType){let c=b,d=window.getComputedStyle(c);if((c.scrollHeight>c.clientHeight||c.scrollWidth>c.clientWidth)&&"visible"!=d.overflow){let d=c.getBoundingClientRect();f=Math.max(f,d.left),g=Math.min(g,d.right),h=Math.max(h,d.top),i=Math.min(b==a.parentNode?e.innerHeight:i,d.bottom)}b="absolute"==d.position||"fixed"==d.position?c.offsetParent:c.parentNode}else if(11==b.nodeType)b=b.host;else break;return{left:f-c.left,right:Math.max(f,g)-c.left,top:h-(c.top+b),bottom:Math.max(h,i)-(c.top+b)}})(e,this.paddingTop),r=q.top-this.pixelViewport.top,s=q.bottom-this.pixelViewport.bottom;this.pixelViewport=q;let t=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(t!=this.inView&&(this.inView=t,t&&(k=!0)),!this.inView&&!this.scrollTarget&&(c=(b=a.dom).getBoundingClientRect(),d=b.ownerDocument.defaultView||window,!(c.left<d.innerWidth)||!(c.right>0)||!(c.top<d.innerHeight)||!(c.bottom>0)))return 0;let u=j.width;if((this.contentDOMWidth!=u||this.editorHeight!=a.scrollDOM.clientHeight)&&(this.contentDOMWidth=j.width,this.editorHeight=a.scrollDOM.clientHeight,l|=16),k){let b=a.docView.measureVisibleLineHeights(this.viewport);if(g.mustRefreshForHeights(b)&&(i=!0),i||g.lineWrapping&&Math.abs(u-this.contentDOMWidth)>g.charWidth){let{lineHeight:c,charWidth:d,textHeight:e}=a.docView.measureTextSize();(i=c>0&&g.refresh(h,c,d,e,Math.max(5,u/d),b))&&(a.docView.minWidth=0,l|=16)}for(let c of(r>0&&s>0?m=Math.max(r,s):r<0&&s<0&&(m=Math.min(r,s)),gg=!1,this.viewports)){let d=c.from==this.viewport.from?b:a.docView.measureVisibleLineHeights(c);this.heightMap=(i?gl.empty().applyChanges(this.stateDeco,cp.empty,this.heightOracle,[new fa(0,0,0,a.state.doc.length)]):this.heightMap).updateHeight(g,0,i,new gi(c.from,d))}gg&&(l|=2)}let v=!this.viewportIsAppropriate(this.viewport,m)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return v&&(2&l&&(l|=this.updateScaler()),this.viewport=this.getViewport(m,this.scrollTarget),l|=this.updateForViewport()),(2&l||v)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(i?[]:this.lineGaps,a)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,a.docView.enforceCursorAssoc()),l}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(a,b){let c=.5-Math.max(-.5,Math.min(.5,a/1e3/2)),d=this.heightMap,e=this.heightOracle,{visibleTop:f,visibleBottom:g}=this,h=new gy(d.lineAt(f-1e3*c,gk.ByHeight,e,0,0).from,d.lineAt(g+(1-c)*1e3,gk.ByHeight,e,0,0).to);if(b){let{head:a}=b.range;if(a<h.from||a>h.to){let c=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),f=d.lineAt(a,gk.ByPos,e,0,0),g;g="center"==b.y?(f.top+f.bottom)/2-c/2:"start"==b.y||"nearest"==b.y&&a<h.from?f.top:f.bottom-c,h=new gy(d.lineAt(g-500,gk.ByHeight,e,0,0).from,d.lineAt(g+c+500,gk.ByHeight,e,0,0).to)}}return h}mapViewport(a,b){let c=b.mapPos(a.from,-1),d=b.mapPos(a.to,1);return new gy(this.heightMap.lineAt(c,gk.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(d,gk.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:a,to:b},c=0){if(!this.inView)return!0;let{top:d}=this.heightMap.lineAt(a,gk.ByPos,this.heightOracle,0,0),{bottom:e}=this.heightMap.lineAt(b,gk.ByPos,this.heightOracle,0,0),{visibleTop:f,visibleBottom:g}=this;return(0==a||d<=f-Math.max(10,Math.min(-c,250)))&&(b==this.state.doc.length||e>=g+Math.max(10,Math.min(c,250)))&&d>f-2e3&&e<g+2e3}mapLineGaps(a,b){if(!a.length||b.empty)return a;let c=[];for(let d of a)b.touchesRange(d.from,d.to)||c.push(new gv(b.mapPos(d.from),b.mapPos(d.to),d.size,d.displaySize));return c}ensureLineGaps(a,b){let c=this.heightOracle.lineWrapping,d=c?1e4:2e3,e=d>>1,f=d<<1;if(this.defaultTextDirection!=es.LTR&&!c)return[];let g=[],h=(d,f,i,j)=>{if(f-d<e)return;let k=this.state.selection.main,l=[k.from];for(let a of(k.empty||l.push(k.to),l))if(a>d&&a<f){h(d,a-10,i,j),h(a+10,f,i,j);return}let m=function(a,b){for(let c of a)if(b(c))return c}(a,a=>a.from>=i.from&&a.to<=i.to&&Math.abs(a.from-d)<e&&Math.abs(a.to-f)<e&&!l.some(b=>a.from<b&&a.to>b));if(!m){if(f<i.to&&b&&c&&b.visibleRanges.some(a=>a.from<=f&&a.to>=f)){let a=b.moveToLineBoundary(cK.cursor(f),!1,!0).head;a>d&&(f=a)}let a=this.gapSize(i,d,f,j),e=c||a<2e6?a:2e6;m=new gv(d,f,a,e)}g.push(m)},i=b=>{var e,g,i;let j,k,l,m,n;if(b.length<f||b.type!=d0.Text)return;let o=(e=b.from,g=b.to,i=this.stateDeco,l=[],m=e,n=0,dq.spans(i,e,g,{span(){},point(a,b){a>m&&(l.push({from:m,to:a}),n+=a-m),m=b}},20),m<g&&(l.push({from:m,to:g}),n+=g-m),{total:n,ranges:l});if(o.total<f)return;let p=this.scrollTarget?this.scrollTarget.range.head:null;if(c){let a,c,e=d/this.heightOracle.lineLength*this.heightOracle.lineHeight;if(null!=p){let d=gA(o,p),f=((this.visibleBottom-this.visibleTop)/2+e)/b.height;a=d-f,c=d+f}else a=(this.visibleTop-b.top-e)/b.height,c=(this.visibleBottom-b.top+e)/b.height;j=gz(o,a),k=gz(o,c)}else{let c,e,f=o.total*this.heightOracle.charWidth,g=d*this.heightOracle.charWidth,h=0;if(f>2e6)for(let c of a)c.from>=b.from&&c.from<b.to&&c.size!=c.displaySize&&c.from*this.heightOracle.charWidth+h<this.pixelViewport.left&&(h=c.size-c.displaySize);let i=this.pixelViewport.left+h,l=this.pixelViewport.right+h;if(null!=p){let a=gA(o,p),b=((l-i)/2+g)/f;c=a-b,e=a+b}else c=(i-g)/f,e=(l+g)/f;j=gz(o,c),k=gz(o,e)}j>b.from&&h(b.from,j,b,o),k<b.to&&h(k,b.to,b,o)};for(let a of this.viewportLines)Array.isArray(a.type)?a.type.forEach(i):i(a);return g}gapSize(a,b,c,d){let e=gA(d,c)-gA(d,b);return this.heightOracle.lineWrapping?a.height*e:d.total*this.heightOracle.charWidth*e}updateLineGaps(a){gv.same(a,this.lineGaps)||(this.lineGaps=a,this.lineGapDeco=d1.set(a.map(a=>a.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(a){let b=this.stateDeco;this.lineGaps.length&&(b=b.concat(this.lineGapDeco));let c=[];dq.spans(b,this.viewport.from,this.viewport.to,{span(a,b){c.push({from:a,to:b})},point(){}},20);let d=0;if(c.length!=this.visibleRanges.length)d=12;else for(let b=0;b<c.length&&!(8&d);b++){let e=this.visibleRanges[b],f=c[b];(e.from!=f.from||e.to!=f.to)&&(d|=4,a&&a.mapPos(e.from,-1)==f.from&&a.mapPos(e.to,1)==f.to||(d|=8))}return this.visibleRanges=c,d}lineBlockAt(a){return a>=this.viewport.from&&a<=this.viewport.to&&this.viewportLines.find(b=>b.from<=a&&b.to>=a)||gE(this.heightMap.lineAt(a,gk.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(a){return a>=this.viewportLines[0].top&&a<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(b=>b.top<=a&&b.bottom>=a)||gE(this.heightMap.lineAt(this.scaler.fromDOM(a),gk.ByHeight,this.heightOracle,0,0),this.scaler)}scrollAnchorAt(a){let b=this.lineBlockAtHeight(a+8);return b.from>=this.viewport.from||this.viewportLines[0].top-a>200?b:this.viewportLines[0]}elementAtHeight(a){return gE(this.heightMap.blockAt(this.scaler.fromDOM(a),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}},gy=class{constructor(a,b){this.from=a,this.to=b}};function gz({total:a,ranges:b},c){if(c<=0)return b[0].from;if(c>=1)return b[b.length-1].to;let d=Math.floor(a*c);for(let a=0;;a++){let{from:c,to:e}=b[a],f=e-c;if(d<=f)return c+d;d-=f}}function gA(a,b){let c=0;for(let{from:d,to:e}of a.ranges){if(b<=e){c+=b-d;break}c+=e-d}return c/a.total}var gB={toDOM:a=>a,fromDOM:a=>a,scale:1,eq(a){return a==this}};function gC(a){let b=a.facet(e1).filter(a=>"function"!=typeof a),c=a.facet(e3).filter(a=>"function"!=typeof a);return c.length&&b.push(dq.join(c)),b}var gD=class a{constructor(a,b,c){let d=0,e=0,f=0;for(let g of(this.viewports=c.map(({from:c,to:e})=>{let f=b.lineAt(c,gk.ByPos,a,0,0).top,g=b.lineAt(e,gk.ByPos,a,0,0).bottom;return d+=g-f,{from:c,to:e,top:f,bottom:g,domTop:0,domBottom:0}}),this.scale=(7e6-d)/(b.height-d),this.viewports))g.domTop=f+(g.top-e)*this.scale,f=g.domBottom=g.domTop+(g.bottom-g.top),e=g.bottom}toDOM(a){for(let b=0,c=0,d=0;;b++){let e=b<this.viewports.length?this.viewports[b]:null;if(!e||a<e.top)return d+(a-c)*this.scale;if(a<=e.bottom)return e.domTop+(a-e.top);c=e.bottom,d=e.domBottom}}fromDOM(a){for(let b=0,c=0,d=0;;b++){let e=b<this.viewports.length?this.viewports[b]:null;if(!e||a<e.domTop)return c+(a-d)/this.scale;if(a<=e.domBottom)return e.top+(a-e.domTop);c=e.bottom,d=e.domBottom}}eq(b){return b instanceof a&&this.scale==b.scale&&this.viewports.length==b.viewports.length&&this.viewports.every((a,c)=>a.from==b.viewports[c].from&&a.to==b.viewports[c].to)}};function gE(a,b){if(1==b.scale)return a;let c=b.toDOM(a.top),d=b.toDOM(a.bottom);return new gj(a.from,a.length,c,d-c,Array.isArray(a._content)?a._content.map(a=>gE(a,b)):a._content)}var gF=cN.define({combine:a=>a.join(" ")}),gG=cN.define({combine:a=>a.indexOf(!0)>-1}),gH=dF.newName(),gI=dF.newName(),gJ=dF.newName(),gK={"&light":"."+gI,"&dark":"."+gJ};function gL(a,b,c){return new dF(b,{finish:b=>/&/.test(b)?b.replace(/&\w*/,b=>{if("&"==b)return a;if(!c||!c[b])throw RangeError(`Unsupported selector: ${b}`);return c[b]}):a+" "+b})}var gM=gL("."+gH,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:'url(\'data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>\')',backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},gK),gN={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},gO=dW.ie&&dW.ie_version<=11,gP=class{constructor(a){this.view=a,this.active=!1,this.editContext=null,this.selectionRange=new ej,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=a.contentDOM,this.observer=new MutationObserver(b=>{for(let a of b)this.queue.push(a);(dW.ie&&dW.ie_version<=11||dW.ios&&a.composing)&&b.some(a=>"childList"==a.type&&a.removedNodes.length||"characterData"==a.type&&a.oldValue.length>a.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&dW.android&&!1!==a.constructor.EDIT_CONTEXT&&!(dW.chrome&&dW.chrome_version<126)&&(this.editContext=new gS(a),a.state.facet(eW)&&(a.contentDOM.editContext=this.editContext.editContext)),gO&&(this.onCharData=a=>{this.queue.push({target:a.target,type:"characterData",oldValue:a.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),"function"==typeof ResizeObserver&&(this.resizeScroll=new ResizeObserver(()=>{var a;(null==(a=this.view.docView)?void 0:a.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(a.scrollDOM)),this.addWindowListeners(this.win=a.win),this.start(),"function"==typeof IntersectionObserver&&(this.intersection=new IntersectionObserver(a=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),a.length>0&&a[a.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(a=>{a.length>0&&a[a.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(a){this.view.inputState.runHandlers("scroll",a),this.intersecting&&this.view.measure()}onScroll(a){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(a)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(a){("change"!=a.type&&a.type||a.matches)&&(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(a){if(this.gapIntersection&&(a.length!=this.gaps.length||this.gaps.some((b,c)=>b!=a[c]))){for(let b of(this.gapIntersection.disconnect(),a))this.gapIntersection.observe(b);this.gaps=a}}onSelectionChange(a){let b=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:c}=this,d=this.selectionRange;if(c.state.facet(eW)?c.root.activeElement!=this.dom:!ea(this.dom,d))return;let e=d.anchorNode&&c.docView.tile.nearest(d.anchorNode);if(e&&e.isWidget()&&e.widget.ignoreEvent(a)){b||(this.selectionChanged=!1);return}(dW.ie&&dW.ie_version<=11||dW.android&&dW.chrome)&&!c.state.selection.main.empty&&d.focusNode&&ec(d.focusNode,d.focusOffset,d.anchorNode,d.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:a}=this,b=d8(a.root);if(!b)return!1;let c=dW.safari&&11==a.root.nodeType&&a.root.activeElement==this.dom&&function(a,b){if(b.getComposedRanges){let c=b.getComposedRanges(a.root)[0];if(c)return gR(a,c)}let c=null;function d(a){a.preventDefault(),a.stopImmediatePropagation(),c=a.getTargetRanges()[0]}return a.contentDOM.addEventListener("beforeinput",d,!0),a.dom.ownerDocument.execCommand("indent"),a.contentDOM.removeEventListener("beforeinput",d,!0),c?gR(a,c):null}(this.view,b)||b;if(!c||this.selectionRange.eq(c))return!1;let d=ea(this.dom,c);return d&&!this.selectionChanged&&a.inputState.lastFocusTime>Date.now()-200&&a.inputState.lastTouchTime<Date.now()-300&&function(a,b){let c=b.focusNode,d=b.focusOffset;if(!c||b.anchorNode!=c||b.anchorOffset!=d)return!1;for(d=Math.min(d,eg(c));;)if(d){if(1!=c.nodeType)return!1;let a=c.childNodes[d-1];"false"==a.contentEditable?d--:d=eg(c=a)}else{if(c==a)return!0;d=ed(c),c=c.parentNode}}(this.dom,c)?(this.view.inputState.lastFocusTime=0,a.docView.updateSelection(),!1):(this.selectionRange.setRange(c),d&&(this.selectionChanged=!0),!0)}setSelectionRange(a,b){this.selectionRange.set(a.node,a.offset,b.node,b.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let a=0,b=null;for(let c=this.dom;c;)if(1==c.nodeType)!b&&a<this.scrollTargets.length&&this.scrollTargets[a]==c?a++:b||(b=this.scrollTargets.slice(0,a)),b&&b.push(c),c=c.assignedSlot||c.parentNode;else if(11==c.nodeType)c=c.host;else break;if(a<this.scrollTargets.length&&!b&&(b=this.scrollTargets.slice(0,a)),b){for(let a of this.scrollTargets)a.removeEventListener("scroll",this.onScroll);for(let a of this.scrollTargets=b)a.addEventListener("scroll",this.onScroll)}}ignore(a){if(!this.active)return a();try{return this.stop(),a()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,gN),gO&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),gO&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(a,b){var c;if(!this.delayedAndroidKey){let a=()=>{let a=this.delayedAndroidKey;a&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=a.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&a.force&&en(this.dom,a.key,a.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(a)}this.delayedAndroidKey&&"Enter"!=a||(this.delayedAndroidKey={key:a,keyCode:b,force:this.lastChange<Date.now()-50||!!(null==(c=this.delayedAndroidKey)?void 0:c.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let a of this.observer.takeRecords())this.queue.push(a);return this.queue}processRecords(){let a=this.pendingRecords();a.length&&(this.queue=[]);let b=-1,c=-1,d=!1;for(let e of a){let a=this.readMutation(e);a&&(a.typeOver&&(d=!0),-1==b?{from:b,to:c}=a:(b=Math.min(a.from,b),c=Math.max(a.to,c)))}return{from:b,to:c,typeOver:d}}readChange(){let{from:a,to:b,typeOver:c}=this.processRecords(),d=this.selectionChanged&&ea(this.dom,this.selectionRange);if(a<0&&!d)return null;a>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let e=new fO(this.view,a,b,c);return this.view.docView.domChanged={newSel:e.newSel?e.newSel.main:null},e}flush(a=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;a&&this.readSelectionRange();let b=this.readChange();if(!b)return this.view.requestMeasure(),!1;let c=this.view.state,d=fP(this.view,b);return this.view.state==c&&(b.domChanged||b.newSel&&!fS(this.view.state.selection,b.newSel.main))&&this.view.update([]),d}readMutation(a){let b=this.view.docView.tile.nearest(a.target);if(!b||b.isWidget())return null;if(b.markDirty("attributes"==a.type),"childList"==a.type){let c=gQ(b,a.previousSibling||a.target.previousSibling,-1),d=gQ(b,a.nextSibling||a.target.nextSibling,1);return{from:c?b.posAfter(c):b.posAtStart,to:d?b.posBefore(d):b.posAtEnd,typeOver:!1}}return"characterData"==a.type?{from:b.posAtStart,to:b.posAtEnd,typeOver:a.target.nodeValue==a.oldValue}:null}setWindow(a){a!=this.win&&(this.removeWindowListeners(this.win),this.win=a,this.addWindowListeners(this.win))}addWindowListeners(a){a.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):a.addEventListener("beforeprint",this.onPrint),a.addEventListener("scroll",this.onScroll),a.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(a){a.removeEventListener("scroll",this.onScroll),a.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):a.removeEventListener("beforeprint",this.onPrint),a.document.removeEventListener("selectionchange",this.onSelectionChange)}update(a){this.editContext&&(this.editContext.update(a),a.startState.facet(eW)!=a.state.facet(eW)&&(a.view.contentDOM.editContext=a.state.facet(eW)?this.editContext.editContext:null))}destroy(){var a,b,c;for(let d of(this.stop(),null==(a=this.intersection)||a.disconnect(),null==(b=this.gapIntersection)||b.disconnect(),null==(c=this.resizeScroll)||c.disconnect(),this.scrollTargets))d.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}};function gQ(a,b,c){for(;b;){let d=fd.get(b);if(d&&d.parent==a)return d;let e=b.parentNode;b=e!=a.dom?e:c>0?b.nextSibling:b.previousSibling}return null}function gR(a,b){let c=b.startContainer,d=b.startOffset,e=b.endContainer,f=b.endOffset,g=a.docView.domAtPos(a.state.selection.main.anchor,1);return ec(g.node,g.offset,e,f)&&([c,d,e,f]=[e,f,c,d]),{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}}var gS=class{constructor(a){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(a.state);let b=this.editContext=new window.EditContext({text:a.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,a.state.selection.main.anchor))),selectionEnd:this.toContextPos(a.state.selection.main.head)});for(let c in this.handlers.textupdate=c=>{let d=a.state.selection.main,{anchor:e,head:f}=d,g=this.toEditorPos(c.updateRangeStart),h=this.toEditorPos(c.updateRangeEnd);a.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:c.updateRangeStart,editorBase:g,drifted:!1});let i=h-g>c.text.length;g==this.from&&e<this.from?g=e:h==this.to&&e>this.to&&(h=e);let j=fR(a.state.sliceDoc(g,h),c.text,(i?d.from:d.to)-g,i?"end":null);if(!j){let b=cK.single(this.toEditorPos(c.selectionStart),this.toEditorPos(c.selectionEnd));fS(b,d)||a.dispatch({selection:b,userEvent:"select"});return}let k={from:j.from+g,to:j.toA+g,insert:cp.of(c.text.slice(j.from,j.toB).split("\n"))};if((dW.mac||dW.android)&&k.from==f-1&&/^\. ?$/.test(c.text)&&"off"==a.contentDOM.getAttribute("autocorrect")&&(k={from:g,to:h,insert:cp.of([c.text.replace("."," ")])}),this.pendingContextChange=k,!a.state.readOnly){let b=this.to-this.from+(k.to-k.from+k.insert.length);fQ(a,k,cK.single(this.toEditorPos(c.selectionStart,b),this.toEditorPos(c.selectionEnd,b)))}this.pendingContextChange&&(this.revertPending(a.state),this.setSelection(a.state)),k.from<k.to&&!k.insert.length&&a.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(b.text.slice(Math.max(0,c.updateRangeStart-1),Math.min(b.text.length,c.updateRangeStart+1)))&&this.handlers.compositionend(c)},this.handlers.characterboundsupdate=c=>{let d=[],e=null;for(let b=this.toEditorPos(c.rangeStart),f=this.toEditorPos(c.rangeEnd);b<f;b++){let c=a.coordsForChar(b);e=c&&new DOMRect(c.left,c.top,c.right-c.left,c.bottom-c.top)||e||new DOMRect,d.push(e)}b.updateCharacterBounds(c.rangeStart,d)},this.handlers.textformatupdate=b=>{let c=[];for(let a of b.getTextFormats()){let b=a.underlineStyle,d=a.underlineThickness;if(!/none/i.test(b)&&!/none/i.test(d)){let e=this.toEditorPos(a.rangeStart),f=this.toEditorPos(a.rangeEnd);if(e<f){let a=`text-decoration: underline ${/^[a-z]/.test(b)?b+" ":"Dashed"==b?"dashed ":"Squiggle"==b?"wavy ":""}${/thin/i.test(d)?1:2}px`;c.push(d1.mark({attributes:{style:a}}).range(e,f))}}}a.dispatch({effects:eU.of(d1.set(c))})},this.handlers.compositionstart=()=>{a.inputState.composing<0&&(a.inputState.composing=0,a.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(a.inputState.composing=-1,a.inputState.compositionFirstChange=null,this.composing){let{drifted:b}=this.composing;this.composing=null,b&&this.reset(a.state)}},this.handlers)b.addEventListener(c,this.handlers[c]);this.measureReq={read:a=>{this.editContext.updateControlBounds(a.contentDOM.getBoundingClientRect());let b=d8(a.root);b&&b.rangeCount&&this.editContext.updateSelectionBounds(b.getRangeAt(0).getBoundingClientRect())}}}applyEdits(a){let b=0,c=!1,d=this.pendingContextChange;return a.changes.iterChanges((e,f,g,h,i)=>{if(c)return;let j=i.length-(f-e);if(d&&f>=d.to)if(d.from==e&&d.to==f&&d.insert.eq(i)){d=this.pendingContextChange=null,b+=j,this.to+=j;return}else d=null,this.revertPending(a.state);if(e+=b,(f+=b)<=this.from)this.from+=j,this.to+=j;else if(e<this.to){if(e<this.from||f>this.to||this.to-this.from+i.length>3e4){c=!0;return}this.editContext.updateText(this.toContextPos(e),this.toContextPos(f),i.toString()),this.to+=j}b+=j}),d&&!c&&this.revertPending(a.state),!c}update(a){let b=this.pendingContextChange,c=a.startState.selection.main;this.composing&&(this.composing.drifted||!a.changes.touchesRange(c.from,c.to)&&a.transactions.some(a=>!a.isUserEvent("input.type")&&a.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=a.changes.mapPos(this.composing.editorBase)):this.applyEdits(a)&&this.rangeIsValid(a.state)?(a.docChanged||a.selectionSet||b)&&this.setSelection(a.state):(this.pendingContextChange=null,this.reset(a.state)),(a.geometryChanged||a.docChanged||a.selectionSet)&&a.view.requestMeasure(this.measureReq)}resetRange(a){let{head:b}=a.selection.main;this.from=Math.max(0,b-1e4),this.to=Math.min(a.doc.length,b+1e4)}reset(a){this.resetRange(a),this.editContext.updateText(0,this.editContext.text.length,a.doc.sliceString(this.from,this.to)),this.setSelection(a)}revertPending(a){let b=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(b.from),this.toContextPos(b.from+b.insert.length),a.doc.sliceString(b.from,b.to))}setSelection(a){let{main:b}=a.selection,c=this.toContextPos(Math.max(this.from,Math.min(this.to,b.anchor))),d=this.toContextPos(b.head);(this.editContext.selectionStart!=c||this.editContext.selectionEnd!=d)&&this.editContext.updateSelection(c,d)}rangeIsValid(a){let{head:b}=a.selection.main;return!(this.from>0&&b-this.from<500||this.to<a.doc.length&&this.to-b<500||this.to-this.from>3e4)}toEditorPos(a,b=this.to-this.from){a=Math.min(a,b);let c=this.composing;return c&&c.drifted?c.editorBase+(a-c.contextBase):a+this.from}toContextPos(a){let b=this.composing;return b&&b.drifted?b.contextBase+(a-b.editorBase):a-this.from}destroy(){for(let a in this.handlers)this.editContext.removeEventListener(a,this.handlers[a])}},gT=class a{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(a={}){var b;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),a.parent&&a.parent.appendChild(this.dom);let{dispatch:c}=a;for(let b of(this.dispatchTransactions=a.dispatchTransactions||c&&(a=>a.forEach(a=>c(a,this)))||(a=>this.update(a)),this.dispatch=this.dispatch.bind(this),this._root=a.root||function(a){for(;a;){if(a&&(9==a.nodeType||11==a.nodeType&&a.host))return a;a=a.assignedSlot||a.parentNode}return null}(a.parent)||document,this.viewState=new gx(a.state||dj.create(a)),a.scrollTo&&a.scrollTo.is(eT)&&(this.viewState.scrollTarget=a.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(eY).map(a=>new e$(a)),this.plugins))b.update(this);this.observer=new gP(this),this.inputState=new fT(this),this.inputState.ensureHandlers(this.plugins),this.docView=new fz(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),(null==(b=document.fonts)?void 0:b.ready)&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent=!0,this.requestMeasure()})}dispatch(...a){let b=1==a.length&&a[0]instanceof dc?a:1==a.length&&Array.isArray(a[0])?a[0]:[this.state.update(...a)];this.dispatchTransactions(b,this)}update(a){if(0!=this.updateState)throw Error("Calls to EditorView.update are not allowed while an update is in progress");let b=!1,c=!1,d,e=this.state;for(let b of a){if(b.startState!=e)throw RangeError("Trying to update state with a transaction that doesn't start from the previous state.");e=b.state}if(this.destroyed){this.viewState.state=e;return}let f=this.hasFocus,g=0,h=null;a.some(a=>a.annotation(gb))?(this.inputState.notifiedFocused=f,g=1):f!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=f,(h=gc(e,f))||(g=1));let i=this.observer.delayedAndroidKey,j=null;if(i?(this.observer.clearDelayedAndroidKey(),((j=this.observer.readChange())&&!this.state.doc.eq(e.doc)||!this.state.selection.eq(e.selection))&&(j=null)):this.observer.clear(),e.facet(dj.phrases)!=this.state.facet(dj.phrases))return this.setState(e);d=fb.create(this,e,a),d.flags|=g;let k=this.viewState.scrollTarget;try{for(let b of(this.updateState=2,a)){if(k&&(k=k.map(b.changes)),b.scrollIntoView){let{main:a}=b.state.selection;k=new eS(a.empty?a:cK.cursor(a.head,a.head>a.anchor?-1:1))}for(let a of b.effects)a.is(eT)&&(k=a.value.clip(this.state))}this.viewState.update(d,k),this.bidiCache=gW.update(this.bidiCache,d.changes),d.empty||(this.updatePlugins(d),this.inputState.update(d)),b=this.docView.update(d),this.state.facet(e9)!=this.styleModules&&this.mountStyles(),c=this.updateAttrs(),this.showAnnouncements(a),this.docView.updateSelection(b,a.some(a=>a.isUserEvent("select.pointer")))}finally{this.updateState=0}if(d.startState.facet(gF)!=d.state.facet(gF)&&(this.viewState.mustMeasureContent=!0),(b||c||k||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),b&&this.docViewUpdate(),!d.empty)for(let a of this.state.facet(eK))try{a(d)}catch(a){eV(this.state,a,"update listener")}(h||j)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),j&&!fP(this,j)&&i.force&&en(this.contentDOM,i.key,i.keyCode)})}setState(a){if(0!=this.updateState)throw Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=a;return}this.updateState=2;let b=this.hasFocus;try{for(let a of this.plugins)a.destroy(this);for(let b of(this.viewState=new gx(a),this.plugins=a.facet(eY).map(a=>new e$(a)),this.pluginMap.clear(),this.plugins))b.update(this);this.docView.destroy(),this.docView=new fz(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}b&&this.focus(),this.requestMeasure()}updatePlugins(a){let b=a.startState.facet(eY),c=a.state.facet(eY);if(b!=c){let d=[];for(let e of c){let c=b.indexOf(e);if(c<0)d.push(new e$(e));else{let b=this.plugins[c];b.mustUpdate=a,d.push(b)}}for(let b of this.plugins)b.mustUpdate!=a&&b.destroy(this);this.plugins=d,this.pluginMap.clear()}else for(let b of this.plugins)b.mustUpdate=a;for(let a=0;a<this.plugins.length;a++)this.plugins[a].update(this);b!=c&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let a of this.plugins){let b=a.value;if(b&&b.docViewUpdate)try{b.docViewUpdate(this)}catch(a){eV(this.state,a,"doc view update listener")}}}measure(a=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,a&&this.observer.forceFlush();let b=null,c=this.scrollDOM,d=c.scrollTop*this.scaleY,{scrollAnchorPos:e,scrollAnchorHeight:f}=this.viewState;Math.abs(d-this.viewState.scrollTop)>1&&(f=-1),this.viewState.scrollAnchorHeight=-1;try{for(let a=0;;a++){if(f<0)if(eo(c))e=-1,f=this.viewState.heightMap.height;else{let a=this.viewState.scrollAnchorAt(d);e=a.from,f=a.top}this.updateState=1;let g=this.viewState.measure(this);if(!g&&!this.measureRequests.length&&null==this.viewState.scrollTarget)break;if(a>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];4&g||([this.measureRequests,h]=[h,this.measureRequests]);let i=h.map(a=>{try{return a.read(this)}catch(a){return eV(this.state,a),gV}}),j=fb.create(this,this.state,[]),k=!1;j.flags|=g,b?b.flags|=g:b=j,this.updateState=2,!j.empty&&(this.updatePlugins(j),this.inputState.update(j),this.updateAttrs(),(k=this.docView.update(j))&&this.docViewUpdate());for(let a=0;a<h.length;a++)if(i[a]!=gV)try{let b=h[a];b.write&&b.write(i[a],this)}catch(a){eV(this.state,a)}if(k&&this.docView.updateSelection(!0),!j.viewportChanged&&0==this.measureRequests.length){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,f=-1;continue}else{let a=(e<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(e).top)-f;if(a>1||a<-1){c.scrollTop=(d+=a)/this.scaleY,f=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(b&&!b.empty)for(let a of this.state.facet(eK))a(b)}get themeClasses(){return gH+" "+(this.state.facet(gG)?gJ:gI)+" "+this.state.facet(gF)}updateAttrs(){let a=gX(this,e_,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),b={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(eW)?"true":"false",class:"cm-content",style:`${dW.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(b["aria-readonly"]="true"),gX(this,e0,b);let c=this.observer.ignore(()=>{let c=d$(this.contentDOM,this.contentAttrs,b),d=d$(this.dom,this.editorAttrs,a);return c||d});return this.editorAttrs=a,this.contentAttrs=b,c}showAnnouncements(b){let c=!0;for(let d of b)for(let b of d.effects)b.is(a.announce)&&(c&&(this.announceDOM.textContent=""),c=!1,this.announceDOM.appendChild(document.createElement("div")).textContent=b.value)}mountStyles(){this.styleModules=this.state.facet(e9);let b=this.state.facet(a.cspNonce);dF.mount(this.root,this.styleModules.concat(gM).reverse(),b?{nonce:b}:void 0)}readMeasured(){if(2==this.updateState)throw Error("Reading the editor layout isn't allowed during an update");0==this.updateState&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(a){if((this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),a)&&!(this.measureRequests.indexOf(a)>-1)){if(null!=a.key){for(let b=0;b<this.measureRequests.length;b++)if(this.measureRequests[b].key===a.key){this.measureRequests[b]=a;return}}this.measureRequests.push(a)}}plugin(a){let b=this.pluginMap.get(a);return(void 0===b||b&&b.plugin!=a)&&this.pluginMap.set(a,b=this.plugins.find(b=>b.plugin==a)||null),b&&b.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(a){return this.readMeasured(),this.viewState.elementAtHeight(a)}lineBlockAtHeight(a){return this.readMeasured(),this.viewState.lineBlockAtHeight(a)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(a){return this.viewState.lineBlockAt(a)}get contentHeight(){return this.viewState.contentHeight}moveByChar(a,b,c){return fI(this,a,fF(this,a,b,c))}moveByGroup(a,b){return fI(this,a,fF(this,a,b,b=>{var c;let d,e;return c=a.head,e=(d=this.state.charCategorizer(c))(b),a=>{let b=d(a);return e==dh.Space&&(e=b),e==b}}))}visualLineSide(a,b){let c=this.bidiSpans(a),d=this.textDirectionAt(a.from),e=c[b?c.length-1:0];return cK.cursor(e.side(b,d)+a.from,e.forward(!b,d)?1:-1)}moveToLineBoundary(a,b,c=!0){return function(a,b,c,d){let e=function(a,b,c){let d=a.lineBlockAt(b);if(Array.isArray(d.type)){let a;for(let e of d.type){if(e.from>b)break;if(!(e.to<b)){if(e.from<b&&e.to>b)return e;(!a||e.type==d0.Text&&(a.type!=e.type||(c<0?e.from<b:e.to>b)))&&(a=e)}}return a||d}return d}(a,b.head,b.assoc||-1),f=d&&e.type==d0.Text&&(a.lineWrapping||e.widgetLineBreaks)?a.coordsAtPos(b.assoc<0&&b.head>e.from?b.head-1:b.head):null;if(f){let b=a.dom.getBoundingClientRect(),d=a.textDirectionAt(e.from),g=a.posAtCoords({x:c==(d==es.LTR)?b.right-1:b.left+1,y:(f.top+f.bottom)/2});if(null!=g)return cK.cursor(g,c?-1:1)}return cK.cursor(c?e.to:e.from,c?-1:1)}(this,a,b,c)}moveVertically(a,b,c){return fI(this,a,function(a,b,c,d){let e=b.head,f=c?1:-1;if(e==(c?a.state.doc.length:0))return cK.cursor(e,b.assoc);let g=b.goalColumn,h,i=a.contentDOM.getBoundingClientRect(),j=a.coordsAtPos(e,(b.empty?b.assoc:0)||(c?1:-1)),k=a.documentTop;if(j)null==g&&(g=j.left-i.left),h=f<0?j.top:j.bottom;else{let b=a.viewState.lineBlockAt(e);null==g&&(g=Math.min(i.right-i.left,a.defaultCharacterWidth*(e-b.from))),h=(f<0?b.top:b.bottom)+k}let l=i.left+g,m=null!=d?d:a.viewState.heightOracle.textHeight>>1,n=fK(a,{x:l,y:h+m*f},!1,f);return cK.cursor(n.pos,n.assoc,void 0,g)}(this,a,b,c))}domAtPos(a,b=1){return this.docView.domAtPos(a,b)}posAtDOM(a,b=0){return this.docView.posFromDOM(a,b)}posAtCoords(a,b=!0){this.readMeasured();let c=fK(this,a,b);return c&&c.pos}posAndSideAtCoords(a,b=!0){return this.readMeasured(),fK(this,a,b)}coordsAtPos(a,b=1){this.readMeasured();let c=this.docView.coordsAt(a,b);if(!c||c.left==c.right)return c;let d=this.state.doc.lineAt(a),e=this.bidiSpans(d);return eh(c,e[eC.find(e,a-d.from,-1,b)].dir==es.LTR==b>0)}coordsForChar(a){return this.readMeasured(),this.docView.coordsForChar(a)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(a){return!this.state.facet(eP)||a<this.viewport.from||a>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(a))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(a){if(a.length>gU)return eE(a.length);let b=this.textDirectionAt(a.from),c;for(let d of this.bidiCache)if(d.from==a.from&&d.dir==b&&(d.fresh||function a(b,c){if(b.length!=c.length)return!1;for(let d=0;d<b.length;d++){let e=b[d],f=c[d];if(e.from!=f.from||e.to!=f.to||e.direction!=f.direction||!a(e.inner,f.inner))return!1}return!0}(d.isolates,c=e6(this,a))))return d.order;c||(c=e6(this,a));let d=function(a,b,c){if(!a)return[new eC(0,0,+(b==eu))];if(b==et&&!c.length&&!eB.test(a))return eE(a.length);if(c.length)for(;a.length>eD.length;)eD[eD.length]=256;let d=[],e=+(b!=et);return function a(b,c,d,e,f,g,h){let i=c%2?2:1;!function(a,b,c,d,e){for(let f=0;f<=d.length;f++){let g=f?d[f-1].to:b,h=f<d.length?d[f].from:c,i=f?256:e;for(let b=g,c=i,d=i;b<h;b++){let e=eA(a.charCodeAt(b));512==e?e=c:8==e&&4==d&&(e=16),eD[b]=4==e?2:e,7&e&&(d=e),c=e}for(let a=g,b=i,d=i;a<h;a++){let e=eD[a];if(128==e)a<h-1&&b==eD[a+1]&&24&b?e=eD[a]=b:eD[a]=256;else if(64==e){let e=a+1;for(;e<h&&64==eD[e];)e++;let f=a&&8==b||e<c&&8==eD[e]?1==d?1:8:256;for(let b=a;b<e;b++)eD[b]=f;a=e-1}else 8==e&&1==d&&(eD[a]=1);b=e,7&e&&(d=e)}}}(b,f,g,e,i),function(a,b,c,d,e){let f=1==e?2:1;for(let g=0,h=0,i=0;g<=d.length;g++){let j=g?d[g-1].to:b,k=g<d.length?d[g].from:c;for(let b=j,c,d,g;b<k;b++)if(d=ey[c=a.charCodeAt(b)])if(d<0){for(let a=h-3;a>=0;a-=3)if(ez[a+1]==-d){let c=ez[a+2],d=2&c?e:4&c?1&c?f:e:0;d&&(eD[b]=eD[ez[a]]=d),h=a;break}}else if(189==ez.length)break;else ez[h++]=b,ez[h++]=c,ez[h++]=i;else if(2==(g=eD[b])||1==g){let a=g==e;i=+!a;for(let b=h-3;b>=0;b-=3){let c=ez[b+2];if(2&c)break;if(a)ez[b+2]|=2;else{if(4&c)break;ez[b+2]|=4}}}}}(b,f,g,e,i),function(a,b,c,d){for(let e=0,f=d;e<=c.length;e++){let g=e?c[e-1].to:a,h=e<c.length?c[e].from:b;for(let i=g;i<h;){let g=eD[i];if(256==g){let g=i+1;for(;;)if(g==h){if(e==c.length)break;g=c[e++].to,h=e<c.length?c[e].from:b}else if(256==eD[g])g++;else break;let j=1==f,k=j==((g<b?eD[g]:d)==1)?j?1:2:d;for(let b=g,d=e,f=d?c[d-1].to:a;b>i;)b==f&&(b=c[--d].from,f=d?c[d-1].to:a),eD[--b]=k;i=g}else f=g,i++}}}(f,g,e,i),function b(c,d,e,f,g,h,i){let j=f%2?2:1;if(f%2==g%2)for(let k=d,l=0;k<e;){let d=!0,m=!1;if(l==h.length||k<h[l].from){let a=eD[k];a!=j&&(d=!1,m=16==a)}let n=d||1!=j?null:[],o=d?f:f+1,p=k;d:for(;;)if(l<h.length&&p==h[l].from){if(m)break;let b=h[l];if(!d)for(let a=b.to,c=l+1;;){if(a==e)break d;if(c<h.length&&h[c].from==a)a=h[c++].to;else if(eD[a]==j)break d;else break}l++,n?n.push(b):(b.from>k&&i.push(new eC(k,b.from,o)),a(c,b.direction==et!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.to),p=b.to}else if(p==e||(d?eD[p]!=j:eD[p]==j))break;else p++;n?b(c,k,p,f+1,g,n,i):k<p&&i.push(new eC(k,p,o)),k=p}else for(let k=e,l=h.length;k>d;){let e=!0,m=!1;if(!l||k>h[l-1].to){let a=eD[k-1];a!=j&&(e=!1,m=16==a)}let n=e||1!=j?null:[],o=e?f:f+1,p=k;d:for(;;)if(l&&p==h[l-1].to){if(m)break;let b=h[--l];if(!e)for(let a=b.from,c=l;;){if(a==d)break d;if(c&&h[c-1].to==a)a=h[--c].from;else if(eD[a-1]==j)break d;else break}n?n.push(b):(b.to<k&&i.push(new eC(b.to,k,o)),a(c,b.direction==et!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.from),p=b.from}else if(p==d||(e?eD[p-1]!=j:eD[p-1]==j))break;else p--;n?b(c,p,k,f+1,g,n,i):p<k&&i.push(new eC(p,k,o)),k=p}}(b,f,g,c,d,e,h)}(a,e,e,c,0,a.length,d),d}(a.text,b,c);return this.bidiCache.push(new gW(a.from,a.to,b,c,!0,d)),d}get hasFocus(){var a;return(this.dom.ownerDocument.hasFocus()||dW.safari&&(null==(a=this.inputState)?void 0:a.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{el(this.contentDOM),this.docView.updateSelection()})}setRoot(a){this._root!=a&&(this._root=a,this.observer.setWindow((9==a.nodeType?a:a.ownerDocument).defaultView||window),this.mountStyles())}destroy(){for(let a of(this.root.activeElement==this.contentDOM&&this.contentDOM.blur(),this.plugins))a.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(a,b={}){return eT.of(new eS("number"==typeof a?cK.cursor(a):a,b.y,b.x,b.yMargin,b.xMargin))}scrollSnapshot(){let{scrollTop:a,scrollLeft:b}=this.scrollDOM,c=this.viewState.scrollAnchorAt(a);return eT.of(new eS(cK.cursor(c.from),"start","start",c.top-a,b,!0))}setTabFocusMode(a){null==a?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:"boolean"==typeof a?this.inputState.tabFocusMode=a?0:-1:0!=this.inputState.tabFocusMode&&(this.inputState.tabFocusMode=Date.now()+a)}static domEventHandlers(a){return eZ.define(()=>({}),{eventHandlers:a})}static domEventObservers(a){return eZ.define(()=>({}),{eventObservers:a})}static theme(a,b){let c=dF.newName(),d=[gF.of(c),e9.of(gL(`.${c}`,a))];return b&&b.dark&&d.push(gG.of(!0)),d}static baseTheme(a){return cW.lowest(e9.of(gL("."+gH,a,gK)))}static findFromDOM(a){var b;let c=a.querySelector(".cm-content"),d=c&&fd.get(c)||fd.get(a);return(null==(b=null==d?void 0:d.root)?void 0:b.view)||null}};gT.styleModule=e9,gT.inputHandler=eL,gT.clipboardInputFilter=eN,gT.clipboardOutputFilter=eO,gT.scrollHandler=eR,gT.focusChangeEffect=eM,gT.perLineTextDirection=eP,gT.exceptionSink=eJ,gT.updateListener=eK,gT.editable=eW,gT.mouseSelectionStyle=eI,gT.dragMovesSelection=eH,gT.clickAddsSelectionRange=eG,gT.decorations=e1,gT.blockWrappers=e2,gT.outerDecorations=e3,gT.atomicRanges=e4,gT.bidiIsolatedRanges=e5,gT.scrollMargins=e7,gT.darkTheme=gG,gT.cspNonce=cN.define({combine:a=>a.length?a[0]:""}),gT.contentAttributes=e0,gT.editorAttributes=e_,gT.lineWrapping=gT.contentAttributes.of({class:"cm-lineWrapping"}),gT.announce=db.define();var gU=4096,gV={},gW=class a{constructor(a,b,c,d,e,f){this.from=a,this.to=b,this.dir=c,this.isolates=d,this.fresh=e,this.order=f}static update(b,c){if(c.empty&&!b.some(a=>a.fresh))return b;let d=[],e=b.length?b[b.length-1].dir:es.LTR;for(let f=Math.max(0,b.length-10);f<b.length;f++){let g=b[f];g.dir!=e||c.touchesRange(g.from,g.to)||d.push(new a(c.mapPos(g.from,1),c.mapPos(g.to,-1),g.dir,g.isolates,!1,g.order))}return d}};function gX(a,b,c){for(let d=a.state.facet(b),e=d.length-1;e>=0;e--){let b=d[e],f="function"==typeof b?b(a):b;f&&dX(f,c)}return c}dW.mac||dW.windows||dW.linux,/x/.unicode;var gY="-10000px",gZ=class{constructor(a,b,c,d){this.facet=b,this.createTooltipView=c,this.removeTooltipView=d,this.input=a.state.facet(b),this.tooltips=this.input.filter(a=>a);let e=null;this.tooltipViews=this.tooltips.map(a=>e=c(a,e))}update(a,b){var c;let d=a.state.facet(this.facet),e=d.filter(a=>a);if(d===this.input){for(let b of this.tooltipViews)b.update&&b.update(a);return!1}let f=[],g=b?[]:null;for(let c=0;c<e.length;c++){let d=e[c],h=-1;if(d){for(let a=0;a<this.tooltips.length;a++){let b=this.tooltips[a];b&&b.create==d.create&&(h=a)}if(h<0)f[c]=this.createTooltipView(d,c?f[c-1]:null),g&&(g[c]=!!d.above);else{let d=f[c]=this.tooltipViews[h];g&&(g[c]=b[h]),d.update&&d.update(a)}}}for(let a of this.tooltipViews)0>f.indexOf(a)&&(this.removeTooltipView(a),null==(c=a.destroy)||c.call(a));return b&&(g.forEach((a,c)=>b[c]=a),b.length=g.length),this.input=d,this.tooltips=e,this.tooltipViews=f,!0}};function g$(a){let b=a.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:b.clientHeight,right:b.clientWidth}}var g_=cN.define({combine:a=>{var b,c,d;return{position:dW.ios?"absolute":(null==(b=a.find(a=>a.position))?void 0:b.position)||"fixed",parent:(null==(c=a.find(a=>a.parent))?void 0:c.parent)||null,tooltipSpace:(null==(d=a.find(a=>a.tooltipSpace))?void 0:d.tooltipSpace)||g$}}}),g0=new WeakMap,g1=eZ.fromClass(class{constructor(a){this.view=a,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let b=a.state.facet(g_);this.position=b.position,this.parent=b.parent,this.classes=a.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver="function"==typeof ResizeObserver?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new gZ(a,g5,(a,b)=>this.createTooltip(a,b),a=>{this.resizeObserver&&this.resizeObserver.unobserve(a.dom),a.dom.remove()}),this.above=this.manager.tooltips.map(a=>!!a.above),this.intersectionObserver="function"==typeof IntersectionObserver?new IntersectionObserver(a=>{Date.now()>this.lastTransaction-50&&a.length>0&&a[a.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),a.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver)for(let a of(this.intersectionObserver.disconnect(),this.manager.tooltipViews))this.intersectionObserver.observe(a.dom)}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(a){a.transactions.length&&(this.lastTransaction=Date.now());let b=this.manager.update(a,this.above);b&&this.observeIntersection();let c=b||a.geometryChanged,d=a.state.facet(g_);if(d.position!=this.position&&!this.madeAbsolute){for(let a of(this.position=d.position,this.manager.tooltipViews))a.dom.style.position=this.position;c=!0}if(d.parent!=this.parent){for(let a of(this.parent&&this.container.remove(),this.parent=d.parent,this.createContainer(),this.manager.tooltipViews))this.container.appendChild(a.dom);c=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);c&&this.maybeMeasure()}createTooltip(a,b){let c=a.create(this.view),d=b?b.dom:null;if(c.dom.classList.add("cm-tooltip"),a.arrow&&!c.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let a=document.createElement("div");a.className="cm-tooltip-arrow",c.dom.appendChild(a)}return c.dom.style.position=this.position,c.dom.style.top=gY,c.dom.style.left="0px",this.container.insertBefore(c.dom,d),c.mount&&c.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(c.dom),c}destroy(){var a,b,c;for(let b of(this.view.win.removeEventListener("resize",this.measureSoon),this.manager.tooltipViews))b.dom.remove(),null==(a=b.destroy)||a.call(b);this.parent&&this.container.remove(),null==(b=this.resizeObserver)||b.disconnect(),null==(c=this.intersectionObserver)||c.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let a=1,b=1,c=!1;if("fixed"==this.position&&this.manager.tooltipViews.length){let{dom:a}=this.manager.tooltipViews[0];if(dW.safari){let b=a.getBoundingClientRect();c=Math.abs(b.top+1e4)>1||Math.abs(b.left)>1}else c=!!a.offsetParent&&a.offsetParent!=this.container.ownerDocument.body}if(c||"absolute"==this.position)if(this.parent){let c=this.parent.getBoundingClientRect();c.width&&c.height&&(a=c.width/this.parent.offsetWidth,b=c.height/this.parent.offsetHeight)}else({scaleX:a,scaleY:b}=this.view.viewState);let d=this.view.scrollDOM.getBoundingClientRect(),e=e8(this.view);return{visible:{left:d.left+e.left,top:d.top+e.top,right:d.right-e.right,bottom:d.bottom-e.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((a,b)=>{let c=this.manager.tooltipViews[b];return c.getCoords?c.getCoords(a.pos):this.view.coordsAtPos(a.pos)}),size:this.manager.tooltipViews.map(({dom:a})=>a.getBoundingClientRect()),space:this.view.state.facet(g_).tooltipSpace(this.view),scaleX:a,scaleY:b,makeAbsolute:c}}writeMeasure(a){var b;if(a.makeAbsolute)for(let a of(this.madeAbsolute=!0,this.position="absolute",this.manager.tooltipViews))a.dom.style.position="absolute";let{visible:c,space:d,scaleX:e,scaleY:f}=a,g=[];for(let h=0;h<this.manager.tooltips.length;h++){let i=this.manager.tooltips[h],j=this.manager.tooltipViews[h],{dom:k}=j,l=a.pos[h],m=a.size[h];if(!l||!1!==i.clip&&(l.bottom<=Math.max(c.top,d.top)||l.top>=Math.min(c.bottom,d.bottom)||l.right<Math.max(c.left,d.left)-.1||l.left>Math.min(c.right,d.right)+.1)){k.style.top=gY;continue}let n=i.arrow?j.dom.querySelector(".cm-tooltip-arrow"):null,o=7*!!n,p=m.right-m.left,q=null!=(b=g0.get(j))?b:m.bottom-m.top,r=j.offset||g4,s=this.view.textDirection==es.LTR,t=m.width>d.right-d.left?s?d.left:d.right-m.width:s?Math.max(d.left,Math.min(l.left-14*!!n+r.x,d.right-p)):Math.min(Math.max(d.left,l.left-p+14*!!n-r.x),d.right-p),u=this.above[h];!i.strictSide&&(u?l.top-q-o-r.y<d.top:l.bottom+q+o+r.y>d.bottom)&&u==d.bottom-l.bottom>l.top-d.top&&(u=this.above[h]=!u);let v=(u?l.top-d.top:d.bottom-l.bottom)-o;if(v<q&&!1!==j.resize){if(v<this.view.defaultLineHeight){k.style.top=gY;continue}g0.set(j,q),k.style.height=(q=v)/f+"px"}else k.style.height&&(k.style.height="");let w=u?l.top-q-o-r.y:l.bottom+o+r.y,x=t+p;if(!0!==j.overlap)for(let a of g)a.left<x&&a.right>t&&a.top<w+q&&a.bottom>w&&(w=u?a.top-q-2-o:a.bottom+o+2);if("absolute"==this.position?(k.style.top=(w-a.parent.top)/f+"px",g2(k,(t-a.parent.left)/e)):(k.style.top=w/f+"px",g2(k,t/e)),n){let a=l.left+(s?r.x:-r.x)-(t+14-7);n.style.left=a/e+"px"}!0!==j.overlap&&g.push({left:t,top:w,right:x,bottom:w+q}),k.classList.toggle("cm-tooltip-above",u),k.classList.toggle("cm-tooltip-below",!u),j.positioned&&j.positioned(a.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView)&&(this.inView=this.view.inView,!this.inView))for(let a of this.manager.tooltipViews)a.dom.style.top=gY}},{eventObservers:{scroll(){this.maybeMeasure()}}});function g2(a,b){let c=parseInt(a.style.left,10);(isNaN(c)||Math.abs(b-c)>1)&&(a.style.left=b+"px")}var g3=gT.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),g4={x:0,y:0},g5=cN.define({enables:[g1,g3]}),g6=cN.define({combine:a=>a.reduce((a,b)=>a.concat(b),[])}),g7=class a{static create(b){return new a(b)}constructor(a){this.view=a,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new gZ(a,g6,(a,b)=>this.createHostedView(a,b),a=>a.dom.remove())}createHostedView(a,b){let c=a.create(this.view);return c.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(c.dom,b?b.dom.nextSibling:this.dom.firstChild),this.mounted&&c.mount&&c.mount(this.view),c}mount(a){for(let b of this.manager.tooltipViews)b.mount&&b.mount(a);this.mounted=!0}positioned(a){for(let b of this.manager.tooltipViews)b.positioned&&b.positioned(a)}update(a){this.manager.update(a)}destroy(){var a;for(let b of this.manager.tooltipViews)null==(a=b.destroy)||a.call(b)}passProp(a){let b;for(let c of this.manager.tooltipViews){let d=c[a];if(void 0!==d){if(void 0===b)b=d;else if(b!==d)return}}return b}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}},g8=(a=>{let b=a.facet(g6);return 0===b.length?null:{pos:Math.min(...b.map(a=>a.pos)),end:Math.max(...b.map(a=>{var b;return null!=(b=a.end)?b:a.pos})),create:g7.create,above:b[0].above,arrow:b.some(a=>a.arrow)}},cN.define({combine(a){let b,c;for(let d of a)b=b||d.topContainer,c=c||d.bottomContainer;return{topContainer:b,bottomContainer:c}}})),g9=eZ.fromClass(class{constructor(a){this.input=a.state.facet(hc),this.specs=this.input.filter(a=>a),this.panels=this.specs.map(b=>b(a));let b=a.state.facet(g8);for(let c of(this.top=new ha(a,!0,b.topContainer),this.bottom=new ha(a,!1,b.bottomContainer),this.top.sync(this.panels.filter(a=>a.top)),this.bottom.sync(this.panels.filter(a=>!a.top)),this.panels))c.dom.classList.add("cm-panel"),c.mount&&c.mount()}update(a){let b=a.state.facet(g8);this.top.container!=b.topContainer&&(this.top.sync([]),this.top=new ha(a.view,!0,b.topContainer)),this.bottom.container!=b.bottomContainer&&(this.bottom.sync([]),this.bottom=new ha(a.view,!1,b.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let c=a.state.facet(hc);if(c!=this.input){let b=c.filter(a=>a),d=[],e=[],f=[],g=[];for(let c of b){let b=this.specs.indexOf(c),h;b<0?(h=c(a.view),g.push(h)):(h=this.panels[b]).update&&h.update(a),d.push(h),(h.top?e:f).push(h)}for(let a of(this.specs=b,this.panels=d,this.top.sync(e),this.bottom.sync(f),g))a.dom.classList.add("cm-panel"),a.mount&&a.mount()}else for(let b of this.panels)b.update&&b.update(a)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:a=>gT.scrollMargins.of(b=>{let c=b.plugin(a);return c&&{top:c.top.scrollMargin(),bottom:c.bottom.scrollMargin()}})}),ha=class{constructor(a,b,c){this.view=a,this.top=b,this.container=c,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(a){for(let b of this.panels)b.destroy&&0>a.indexOf(b)&&b.destroy();this.panels=a,this.syncDOM()}syncDOM(){if(0==this.panels.length){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let a=this.container||this.view.dom;a.insertBefore(this.dom,this.top?a.firstChild:null)}let a=this.dom.firstChild;for(let b of this.panels)if(b.dom.parentNode==this.dom){for(;a!=b.dom;)a=hb(a);a=a.nextSibling}else this.dom.insertBefore(b.dom,a);for(;a;)a=hb(a)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(this.container&&this.classes!=this.view.themeClasses){for(let a of this.classes.split(" "))a&&this.container.classList.remove(a);for(let a of(this.classes=this.view.themeClasses).split(" "))a&&this.container.classList.add(a)}}};function hb(a){let b=a.nextSibling;return a.remove(),b}var hc=cN.define({enables:g9}),hd=class extends dk{compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}eq(a){return!1}destroy(a){}};hd.prototype.elementClass="",hd.prototype.toDOM=void 0,hd.prototype.mapMode=cA.TrackBefore,hd.prototype.startSide=hd.prototype.endSide=-1,hd.prototype.point=!0;var he=class{constructor(a,b,c){this.from=a,this.to=b,this.diagnostic=c}},hf=class a{constructor(a,b,c){this.diagnostics=a,this.panel=b,this.selected=c}static init(b,c,d){let e=d.facet(hm).markerFilter;e&&(b=e(b,d));let f=b.slice().sort((a,b)=>a.from-b.from||a.to-b.to),g=new dr,h=[],i=0,j=d.doc.iter(),k=0,l=d.doc.length;for(let a=0;;){let b,c,d=a==f.length?null:f[a];if(!d&&!h.length)break;if(h.length)b=i,c=h.reduce((a,b)=>Math.min(a,b.to),d&&d.from>b?d.from:1e8);else{if((b=d.from)>l)break;c=d.to,h.push(d),a++}for(;a<f.length;){let d=f[a];if(d.from==b&&(d.to>d.from||d.to==b))h.push(d),a++,c=Math.min(d.to,c);else{c=Math.min(d.from,c);break}}c=Math.min(c,l);let e=!1;if(h.some(a=>a.from==b&&(a.to==c||c==l))&&!(e=b==c)&&c-b<10){let a=b-(k+j.value.length);a>0&&(j.next(a),k=b);for(let a=b;;){if(a>=c){e=!0;break}if(!j.lineBreak&&k+j.value.length>a)break;a=k+j.value.length,k+=j.value.length,j.next()}}let m=function(a){let b="hint",c=1;for(let e of a){var d;let a="error"==(d=e.severity)?4:"warning"==d?3:"info"==d?2:1;a>c&&(c=a,b=e.severity)}return b}(h);if(e)g.add(b,b,d1.widget({widget:new hp(m),diagnostics:h.slice()}));else{let a=h.reduce((a,b)=>b.markClass?a+" "+b.markClass:a,"");g.add(b,c,d1.mark({class:"cm-lintRange cm-lintRange-"+m+a,diagnostics:h.slice(),inclusiveEnd:h.some(a=>a.to>c)}))}if((i=c)==l)break;for(let a=0;a<h.length;a++)h[a].to<=i&&h.splice(a--,1)}let m=g.finish();return new a(m,c,hg(m))}};function hg(a,b=null,c=0){let d=null;return a.between(c,1e9,(a,c,{spec:e})=>{if(!(b&&0>e.diagnostics.indexOf(b)))if(d){if(0>e.diagnostics.indexOf(d.diagnostic))return!1;d=new he(d.from,c,d.diagnostic)}else d=new he(a,c,b||e.diagnostics[0])}),d}var hh=db.define(),hi=db.define(),hj=db.define(),hk=cT.define({create:()=>new hf(d1.none,null,null),update(a,b){if(b.docChanged&&a.diagnostics.size){let c=a.diagnostics.map(b.changes),d=null,e=a.panel;if(a.selected){let e=b.changes.mapPos(a.selected.from,1);d=hg(c,a.selected.diagnostic,e)||hg(c,null,e)}!c.size&&e&&b.state.facet(hm).autoPanel&&(e=null),a=new hf(c,e,d)}for(let c of b.effects)if(c.is(hh)){let d=b.state.facet(hm).autoPanel?c.value.length?hr.open:null:a.panel;a=hf.init(c.value,d,b.state)}else c.is(hi)?a=new hf(a.diagnostics,c.value?hr.open:null,a.selected):c.is(hj)&&(a=new hf(a.diagnostics,a.panel,c.value));return a},provide:a=>[hc.from(a,a=>a.panel),gT.decorations.from(a,a=>a.diagnostics)]}),hl=a=>{let b=a.state.field(hk,!1);return!!b&&!!b.panel&&(a.dispatch({effects:hi.of(!1)}),!0)},hm=cN.define({combine:a=>({sources:a.map(a=>a.source).filter(a=>null!=a),...function(a,b,c={}){let d={};for(let b of a)for(let a of Object.keys(b)){let e=b[a],f=d[a];if(void 0===f)d[a]=e;else if(f===e||void 0===e);else if(Object.hasOwnProperty.call(c,a))d[a]=c[a](f,e);else throw Error("Config merge conflict for field "+a)}for(let a in b)void 0===d[a]&&(d[a]=b[a]);return d}(a.map(a=>a.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:hn,tooltipFilter:hn,needsRefresh:(a,b)=>a?b?c=>a(c)||b(c):a:b,hideOn:(a,b)=>a?b?(c,d,e)=>a(c,d,e)||b(c,d,e):a:b,autoPanel:(a,b)=>a||b})})});function hn(a,b){return a?b?(c,d)=>b(a(c,d),d):a:b}function ho(a){let b=[];if(a)e:for(let{name:c}of a){for(let a=0;a<c.length;a++){let d=c[a];if(/[a-zA-Z]/.test(d)&&!b.some(a=>a.toLowerCase()==d.toLowerCase())){b.push(d);continue e}}b.push("")}return b}var hp=class extends d_{constructor(a){super(),this.sev=a}eq(a){return a.sev==this.sev}toDOM(){return dK("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},hq=class{constructor(a,b){this.diagnostic=b,this.id="item_"+Math.floor(0xffffffff*Math.random()).toString(16),this.dom=function(a,b,c){var d;let e=c?ho(b.actions):[];return dK("li",{class:"cm-diagnostic cm-diagnostic-"+b.severity},dK("span",{class:"cm-diagnosticText"},b.renderMessage?b.renderMessage(a):b.message),null==(d=b.actions)?void 0:d.map((c,d)=>{let f=!1,g=d=>{if(d.preventDefault(),f)return;f=!0;let e=hg(a.state.field(hk).diagnostics,b);e&&c.apply(a,e.from,e.to)},{name:h}=c,i=e[d]?h.indexOf(e[d]):-1,j=i<0?h:[h.slice(0,i),dK("u",h.slice(i,i+1)),h.slice(i+1)];return dK("button",{type:"button",class:"cm-diagnosticAction"+(c.markClass?" "+c.markClass:""),onclick:g,onmousedown:g,"aria-label":` Action: ${h}${i<0?"":` (access key "${e[d]})"`}.`},j)}),b.source&&dK("div",{class:"cm-diagnosticSource"},b.source))}(a,b,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},hr=class a{constructor(a){this.view=a,this.items=[];let b=b=>{if(!b.ctrlKey&&!b.altKey&&!b.metaKey){if(27==b.keyCode)hl(this.view),this.view.focus();else if(38==b.keyCode||33==b.keyCode)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(40==b.keyCode||34==b.keyCode)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(36==b.keyCode)this.moveSelection(0);else if(35==b.keyCode)this.moveSelection(this.items.length-1);else if(13==b.keyCode)this.view.focus();else{if(!(b.keyCode>=65)||!(b.keyCode<=90)||!(this.selectedIndex>=0))return;let{diagnostic:c}=this.items[this.selectedIndex],d=ho(c.actions);for(let e=0;e<d.length;e++)if(d[e].toUpperCase().charCodeAt(0)==b.keyCode){let b=hg(this.view.state.field(hk).diagnostics,c);b&&c.actions[e].apply(a,b.from,b.to)}}b.preventDefault()}},c=a=>{for(let b=0;b<this.items.length;b++)this.items[b].dom.contains(a.target)&&this.moveSelection(b)};this.list=dK("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:b,onclick:c}),this.dom=dK("div",{class:"cm-panel-lint"},this.list,dK("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>hl(this.view)},"\xd7")),this.update()}get selectedIndex(){let a=this.view.state.field(hk).selected;if(!a)return -1;for(let b=0;b<this.items.length;b++)if(this.items[b].diagnostic==a.diagnostic)return b;return -1}update(){let{diagnostics:a,selected:b}=this.view.state.field(hk),c=0,d=!1,e=null,f=new Set;for(a.between(0,this.view.state.doc.length,(a,g,{spec:h})=>{for(let a of h.diagnostics){if(f.has(a))continue;f.add(a);let g=-1,h;for(let b=c;b<this.items.length;b++)if(this.items[b].diagnostic==a){g=b;break}g<0?(h=new hq(this.view,a),this.items.splice(c,0,h),d=!0):(h=this.items[g],g>c&&(this.items.splice(c,g-c),d=!0)),b&&h.diagnostic==b.diagnostic?h.dom.hasAttribute("aria-selected")||(h.dom.setAttribute("aria-selected","true"),e=h):h.dom.hasAttribute("aria-selected")&&h.dom.removeAttribute("aria-selected"),c++}});c<this.items.length&&!(1==this.items.length&&this.items[0].diagnostic.from<0);)d=!0,this.items.pop();0==this.items.length&&(this.items.push(new hq(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),d=!0),e?(this.list.setAttribute("aria-activedescendant",e.id),this.view.requestMeasure({key:this,read:()=>({sel:e.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:a,panel:b})=>{let c=b.height/this.list.offsetHeight;a.top<b.top?this.list.scrollTop-=(b.top-a.top)/c:a.bottom>b.bottom&&(this.list.scrollTop+=(a.bottom-b.bottom)/c)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),d&&this.sync()}sync(){let a=this.list.firstChild;function b(){let b=a;a=b.nextSibling,b.remove()}for(let c of this.items)if(c.dom.parentNode==this.list){for(;a!=c.dom;)b();a=c.dom.nextSibling}else this.list.insertBefore(c.dom,a);for(;a;)b()}moveSelection(a){if(this.selectedIndex<0)return;let b=hg(this.view.state.field(hk).diagnostics,this.items[a].diagnostic);b&&this.view.dispatch({selection:{anchor:b.from,head:b.to},scrollIntoView:!0,effects:hj.of(b)})}static open(b){return new a(b)}},hs=({loading:a,requests:b,onFilterChange:c,onSortChange:d,onPaginationChange:e,rowsPerPage:f,page:g,totalRows:h,onRowClick:i,filterModel:j,filterMode:m,paginationMode:n,sortingMode:o,t:p,emptyContentImgUrl:q})=>{let r=(0,k.useMemo)(()=>b?b.map(a=>({...a,id:a.id,output:a.output||a.status_message,user_id:a.user_id||"N/A"})):[],[b]),s=(0,k.useMemo)(()=>[{field:"input",headerName:p("columnHeader.input"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"output",headerName:p("columnHeader.output"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"prompt_tokens",headerName:p("columnHeader.promptTokens"),width:150,type:"number",headerAlign:"left",align:"left"},{field:"completion_tokens",headerName:p("columnHeader.completionTokens"),width:200,type:"number",headerAlign:"left",align:"left"},{field:"cost",headerName:p("columnHeader.cost"),type:"number",width:110,headerAlign:"left",align:"left",valueFormatter:a=>b4(a,6)},{field:"props",headerName:p("columnHeader.variables"),type:"string",headerAlign:"left",align:"left",width:300},{field:"latency_ms",headerName:p("columnHeader.latency"),type:"number",width:100,headerAlign:"left",align:"left"},{field:"model_used",headerName:p("columnHeader.modelUsed"),type:"string",width:200,headerAlign:"left",align:"left"},{field:"status",headerName:p("columnHeader.status"),type:"string",width:100,headerAlign:"left",align:"left",valueFormatter:a=>2===Number(a)?p("fail"):p("success")},{field:"prompt_name",headerName:p("columnHeader.promptName"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"user_id",headerName:p("columnHeader.user"),type:"string",width:150,headerAlign:"left",align:"left"},{field:"trace_id",headerName:p("columnHeader.traceId"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"ts",headerName:p("columnHeader.date"),type:"date",width:200,headerAlign:"left",align:"left",valueFormatter:a=>new Date(a).toLocaleString()}].map(a=>({...a,filterOperators:"number"===a.type?(0,I.J)().filter(a=>!a.value.includes("Empty")):"date"===a.type?(0,J.Q)():(0,K.n)().filter(a=>!a.value.includes("Empty"))})),[p]);return(0,l.jsx)(b9,{t:p,emptyContentImgUrl:q,onRowClick:a=>i?.(a.row),rows:r,loading:a,columns:s,paginationMode:n,onFilterModelChange:c,filterModel:j,filterMode:m,rowCount:e?h:void 0,showToolbar:!0,paginationModel:"server"===n?{page:g||0,pageSize:f||10}:void 0,onSortModelChange:d,sortingMode:o,pageSizeOptions:[5,10,25],initialState:{pagination:"server"!==n?{paginationModel:{page:0,pageSize:10}}:void 0},rowSelection:!1,onPaginationModelChange:a=>{e?.(a.page,a.pageSize)}})},ht=a=>(0,l.jsxs)(r.A,{direction:"column",spacing:2,children:[(0,l.jsx)(q.A,{variant:"h5",component:"h1",children:a.t("title")}),(0,l.jsx)(H.A,{children:(0,l.jsx)(hs,{...a})})]});function hu({title:a,notFound:b,sx:c,imgUrl:d}){return(0,l.jsx)(y.A,{children:b?(0,l.jsx)(x.A,{colSpan:12,children:(0,l.jsx)(b7,{filled:!0,title:a,sx:{py:10,...c},imgUrl:d})}):(0,l.jsx)(x.A,{colSpan:12,sx:{p:0}})})}var hv=({sessions:a,isLoading:b,sessionCount:c,table:d,onSessionClick:e,t:f,emptyContentImgUrl:g})=>(0,l.jsxs)(L.A,{children:[(0,l.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,l.jsx)(cd,{headLabel:[{id:"sessionId",label:f("sessionId")},{id:"name",label:f("name")},{id:"startTime",label:f("startTime")},{id:"endTime",label:f("endTime")}]}),(0,l.jsxs)(N.A,{children:[a.map(a=>(0,l.jsxs)(y.A,{onClick:()=>e(a),hover:!0,sx:{cursor:"pointer"},children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"primary",sx:{textTransform:"none"},children:a.id})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(q.A,{variant:"body2",children:a.name||"-"})}),(0,l.jsx)(x.A,{children:(0,O.GP)(new Date(1e3*a.start),"MMM d, yyyy h:mm:ss a")}),(0,l.jsx)(x.A,{children:a.end?(0,O.GP)(new Date(1e3*a.end),"MMM d, yyyy h:mm:ss a"):"-"})]},a.id)),b&&(0,l.jsx)(cb,{}),(0,l.jsx)(hu,{title:f("noSessions"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,l.jsx)(ce,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),hw=({trace:a,onClick:b})=>{let c=(0,P.A)();return(0,l.jsxs)(y.A,{onClick:()=>b(a),hover:!0,sx:{cursor:"pointer"},children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"primary",sx:{textTransform:"none"},children:a.name})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(b6,{color:"0"===a.status||"1"===a.status?c.palette.success.main:c.palette.error.main,icon:"0"===a.status||"1"===a.status?"mdi:check-circle-outline":"mdi:close-circle-outline"})}),(0,l.jsx)(x.A,{children:(0,l.jsxs)(cg,{color:"info",startIcon:(0,l.jsx)(b6,{icon:"mdi:clock-outline"}),children:[(parseInt(a.latency)/1e3).toFixed(2),"s"]})}),(0,l.jsx)(x.A,{children:b4(`${a.cost}`||0,5)}),(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"game-icons:token"}),children:b3(a.tokens||0)})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"mdi:layers-outline"}),children:b3(a.spanCount||0)})}),(0,l.jsx)(x.A,{children:(0,O.GP)(new Date(a.start),"MMM d, yyyy h:mm a")})]})},hx=({traces:a,isLoading:b,traceCount:c,table:d,onTraceClick:e,t:f,emptyContentImgUrl:g,emptyContentText:h})=>(0,l.jsxs)(L.A,{children:[(0,l.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,l.jsx)(cd,{headLabel:[{id:"name",label:f("name")},{id:"status",label:f("status")},{id:"latency",label:f("latency")},{id:"cost",label:f("cost")},{id:"tokens",label:f("tokens")},{id:"spans",label:f("spans")},{id:"timestamp",label:f("timestamp")}]}),(0,l.jsxs)(N.A,{children:[a.map(a=>(0,l.jsx)(hw,{trace:a,onClick:e},a.id)),b&&(0,l.jsx)(cb,{}),(0,l.jsx)(hu,{title:h||f("noTraces"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,l.jsx)(ce,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),hy=(0,k.createContext)(void 0),hz=({children:a,traces:b,traceId:c,fetchSpanEvaluations:d,t:e,onSpanChange:f})=>{let[g,h]=(0,k.useState)(null),i=(0,k.useMemo)(()=>{if(!g)return b.length>0&&b[0]?{id:b[0].id,name:b[0].name,data:{...b[0].data||{}},duration:0,timestamp:0}:null;let a=b.find(a=>a.id===g);if(a)return{id:a.id,name:a.name,data:{...a.data},duration:0,timestamp:0,traceId:a.id};let c=b.flatMap(a=>a.spans).find(a=>a.id===g);if(c){let a=b.find(a=>a.spans.some(a=>a.id===c.id));return{...c,traceId:a?.id}}return null},[g,b]),j=(0,k.useMemo)(()=>(a=>{let b=[],c={};return a.forEach(a=>{a.spans.forEach(a=>{c[a.id]={...a,children:[]}})}),a.forEach(a=>{let d=[];a.spans.forEach(a=>{a.parentId&&c[a.parentId]?c[a.parentId].children.push(c[a.id]):d.push(c[a.id])}),b.push({id:a.id,name:a.name,children:d,data:{...a.data,duration:a.data.latency}})}),b})(b),[b]),{treeHeight:m,handleMouseDown:n,isDragging:o}=((a=400)=>{let[b,c]=(0,k.useState)(a),[d,e]=(0,k.useState)(!1),[f,g]=(0,k.useState)({y:0,initialHeight:0});(0,k.useEffect)(()=>{if(d)return document.addEventListener("mousemove",h),document.addEventListener("mouseup",i),()=>{document.removeEventListener("mousemove",h),document.removeEventListener("mouseup",i)}},[d]);let h=a=>{if(d){let b=a.clientY-f.y;c(Math.max(200,Math.min(600,f.initialHeight+b)))}},i=()=>{e(!1)};return{treeHeight:b,isDragging:d,handleMouseDown:a=>{e(!0),g({y:a.clientY,initialHeight:b}),a.preventDefault()},handleMouseMove:h,handleMouseUp:i}})();(0,k.useEffect)(()=>()=>{h(null)},[b]),(0,k.useEffect)(()=>{f&&f(i)},[i]);let p=(0,k.useCallback)(a=>{let b={},c=a=>{if(b[a.id])return b[a.id];if(a.data.tokens>0)return{cost:a.data.cost||0,tokens:a.data.tokens};if(a.children.length>0){let d=a.children.reduce((a,b)=>{let{cost:d,tokens:e}=c(b);return{cost:a.cost+d,tokens:a.tokens+e}},{cost:0,tokens:0});return b[a.id]=d,d}return{cost:Number(a.data.cost)||0,tokens:Number(a.data.tokens)||0}};return c(a)},[]);return(0,l.jsx)(hy.Provider,{value:{traces:b,selectedSpan:i,onSelectSpan:a=>{h(a)},spanTree:j,findCostAndTokens:p,fetchSpanEvaluations:d,traceId:c,setSelectedSpanId:h,treeHeight:m,onMouseDown:n,isDragging:o,t:e,onSpanChange:f},children:a})},hA=()=>{let a=(0,k.useContext)(hy);if(!a)throw Error("useTraceDrawerContext must be used within TraceDrawerProvider");return a};function hB(a,b){switch((a||"").toLowerCase()){case"llm":return{color:b.palette.info.main,icon:"mdi:robot-outline"};case"tool":return{color:b.palette.success.main,icon:"mdi:wrench-outline"};case"retrieval":return{color:"#9c27b0",icon:"mdi:magnify"};case"router":return{color:b.palette.warning.main,icon:"mdi:source-branch"};case"memory":return{color:"#795548",icon:"mdi:database-outline"};case"agent":return{color:b.palette.secondary.main,icon:"mdi:account-cog-outline"};case"start":return{color:b.palette.success.main,icon:"mdi:play-circle"};case"end":return{color:b.palette.error.main,icon:"mdi:stop-circle"};default:return{color:b.palette.primary.main,icon:""}}}var hC={width:220,height:80},hD={width:40,height:40};function hE(a){let b=a.data?.nodeType;return"start"===b||"end"===b?hD:hC}function hF(a,b=!1){if("GENERATION"===(a.type||a.data?.type))return"llm";let c=a.data?.toolCalls;if(c&&"[]"!==c)return"tool";if(b)return"agent";let d=(a.name||"").toLowerCase();return d.includes("retrieval")||d.includes("rag")||d.includes("search")?"retrieval":d.includes("router")||d.includes("route")?"router":d.includes("memory")||d.includes("store")||d.includes("cache")?"memory":d.includes("tool")||d.includes("function")?"tool":"default"}var hG=({open:a,onClose:b,children:c})=>(0,l.jsx)(R.Ay,{anchor:"right",open:a,onClose:b,sx:{"& .MuiDrawer-paper":{width:"80%"}},children:c}),hH=({children:a})=>(0,l.jsx)(r.A,{width:"100%",children:a}),hI=({children:a})=>(0,l.jsx)(q.A,{variant:"h6",children:a}),hJ=()=>{let{selectedSpan:a}=hA();return(0,l.jsx)(q.A,{variant:"subtitle1",color:"primary",children:a?.name})},hK=({children:a})=>(0,l.jsx)(o.default,{p:2,sx:{flexShrink:0,borderBottom:1,borderColor:"divider"},children:a}),hL=({children:a})=>(0,l.jsx)(r.A,{direction:"row",divider:(0,l.jsx)(S.A,{orientation:"vertical",flexItem:!0}),sx:{width:"100%"},height:"100%",children:a}),hM=({children:a})=>(0,l.jsx)(o.default,{width:500,minWidth:500,"data-sidebar":"left",sx:{display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),hN=()=>{let{onMouseDown:a,isDragging:b}=hA();return(0,l.jsx)(o.default,{onMouseDown:a,sx:{height:"8px",backgroundColor:b?"primary.main":"divider",cursor:"row-resize",display:"flex",alignItems:"center",justifyContent:"center",transition:"background-color 0.2s","&:hover":{backgroundColor:"primary.light"}},children:(0,l.jsx)(o.default,{sx:{width:"40px",height:"3px",backgroundColor:"currentColor",borderRadius:"2px",opacity:.6}})})},hO=()=>(0,l.jsxs)(r.A,{height:"100%",divider:(0,l.jsx)(o.default,{sx:{borderBottom:1,borderColor:"divider"}}),children:[(0,l.jsxs)(r.A,{p:2,spacing:1,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:32})," ",(0,l.jsx)(w.A,{variant:"text",width:300,height:24})," ",(0,l.jsx)(w.A,{variant:"text",width:150,height:20})," "]}),(0,l.jsx)(o.default,{sx:{flexGrow:1,display:"flex",overflow:"hidden"},children:(0,l.jsxs)(r.A,{direction:"row",divider:(0,l.jsx)(o.default,{sx:{borderLeft:1,borderColor:"divider"}}),sx:{width:"100%"},children:[(0,l.jsx)(o.default,{width:500,minWidth:500,sx:{overflowY:"auto"},p:2,children:(0,l.jsx)(r.A,{spacing:1,children:[void 0,void 0,void 0,void 0,void 0].map((a,b)=>(0,l.jsxs)(r.A,{spacing:.5,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:24}),(0,l.jsx)(r.A,{spacing:.5,pl:3,children:[void 0,void 0].map((a,b)=>(0,l.jsx)(w.A,{variant:"text",width:180,height:24},b))})]},b))})}),(0,l.jsx)(o.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column"},children:(0,l.jsxs)(r.A,{p:2,spacing:2,children:[(0,l.jsxs)(r.A,{direction:"row",spacing:3,children:[(0,l.jsx)(w.A,{variant:"text",width:200,height:24}),(0,l.jsx)(w.A,{variant:"text",width:200,height:24})]}),(0,l.jsx)(w.A,{variant:"rectangular",width:200,height:32}),(0,l.jsx)(r.A,{spacing:2,pt:1,children:[void 0,void 0,void 0].map((a,b)=>(0,l.jsxs)(r.A,{spacing:1,children:[(0,l.jsx)(w.A,{variant:"rectangular",height:48}),(0,l.jsx)(w.A,{variant:"rectangular",height:100})]},b))})]})})]})})]}),hP=({children:a})=>(0,l.jsx)(o.default,{sx:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),hQ=(0,F.Ay)(U.eB)(({theme:a})=>({color:a.palette.text.secondary})),hR=(0,F.Ay)(U.dt)(({theme:a})=>({flexDirection:"row-reverse",borderRadius:a.spacing(.7),marginBottom:a.spacing(.5),marginTop:a.spacing(.5),padding:a.spacing(.5),paddingRight:a.spacing(1),fontWeight:500,"&.Mui-expanded ":{"&:not(.Mui-focused, .Mui-selected, .Mui-selected.Mui-focused) .labelIcon":{color:"light"===a.palette.mode?a.palette.primary.main:a.palette.primary.dark},"&::before":{content:'""',display:"block",position:"absolute",left:"16px",top:"44px",height:"calc(100% - 48px)",width:"1.5px",backgroundColor:"light"===a.palette.mode?a.palette.grey[300]:a.palette.grey[700]}},"&:hover":{backgroundColor:(0,p.X4)(a.palette.primary.main,.1),color:"light"===a.palette.mode?a.palette.primary.main:"white"},"&.Mui-focused, &.Mui-selected, &.Mui-selected.Mui-focused":{backgroundColor:"light"===a.palette.mode?a.palette.primary.main:a.palette.primary.dark,color:a.palette.primary.contrastText}})),hS=(0,F.Ay)(U.YS)(({theme:a})=>({marginLeft:15,paddingLeft:18,borderLeft:`2px solid ${(0,p.X4)(a.palette.text.primary,.4)}`,"& .content":{paddingLeft:a.spacing(2)}})),hT=k.forwardRef(function({hasChildren:a,...b},c){let d=(0,P.A)(),{id:e,itemId:f,label:g,disabled:h,children:i,bgColor:j,color:k,labelIcon:m,labelInfo:n,colorForDarkMode:p,bgColorForDarkMode:r,loading:s,...t}=b,{getRootProps:u,getContentProps:v,getIconContainerProps:w,getLabelProps:x,getGroupTransitionProps:y,status:z}=(0,V.V)({id:e,itemId:f,children:i,label:g,disabled:h,rootRef:c}),A={"--tree-view-color":"dark"!==d.palette.mode?k:p,"--tree-view-bg-color":"dark"!==d.palette.mode?j:r};return(0,l.jsx)(W.r,{itemId:f,id:e,children:(0,l.jsxs)(hQ,{...u({...t,style:A}),children:[(0,l.jsx)(hR,{...v({className:bS("content",{expanded:z.expanded,selected:z.selected,focused:z.focused})}),children:(0,l.jsxs)(o.default,{sx:{display:"flex",flexGrow:1,p:.5,pr:0,wordBreak:"break-all"},children:[(0,l.jsx)(o.default,{component:m,color:"inherit",sx:{mr:1,mt:"2px",minWidth:20,minHeight:20}}),"string"==typeof g?(0,l.jsx)(q.A,{...x({variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1}})}):g,(0,l.jsx)(q.A,{variant:"caption",color:"inherit",children:n}),Array.isArray(b.children)&&b.children.length>0&&(0,l.jsx)(X.A,{sx:{alignSelf:"center",ml:"auto"},...w({className:bS({expanded:z.expanded})}),children:(0,l.jsx)(b6,{icon:z.expanded?"mdi:chevron-down":"mdi:chevron-right"})})]})}),i&&(0,l.jsx)(hS,{...y()})]})})}),hU=({label:a,status:b,tokens:c,latency:d,cost:e,scores:f})=>{let g=(0,P.A)(),{t:h}=hA(),i=f&&f.length>0;return(0,l.jsxs)(r.A,{spacing:.3,children:[(0,l.jsxs)(r.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,l.jsx)(q.A,{variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1},children:a}),(0,l.jsx)(o.default,{minWidth:16,maxHeight:16,children:(0,l.jsx)(b6,{width:16,color:"0"===b||"1"===b?g.palette.success.main:g.palette.error.main,icon:"0"===b||"1"===b?"mdi:check-circle-outline":"mdi:close-circle-outline"})})]}),(0,l.jsxs)(r.A,{direction:"row",spacing:.5,flexWrap:"wrap",children:[(0,l.jsx)(Y.A,{title:h("latency"),children:(0,l.jsxs)(cg,{sx:{textTransform:"lowercase"},color:"primary",startIcon:(0,l.jsx)(b6,{icon:"mdi:clock-time-four-outline"}),children:[(Number(d)/1e3).toFixed(1),"s"]})}),!!Number(c)&&(0,l.jsx)(Y.A,{title:h("cost"),children:(0,l.jsx)(cg,{color:"info",children:b4(e,5)})}),!!parseInt(c)&&(0,l.jsx)(Y.A,{title:h("tokens"),children:(0,l.jsx)(cg,{color:"default",startIcon:(0,l.jsx)(b6,{icon:"game-icons:token"}),children:b3(c)})})]}),i&&(0,l.jsx)(r.A,{direction:"row",spacing:.5,flexWrap:"wrap",children:f.map(a=>(0,l.jsx)(Y.A,{title:a.reason||`${a.name}: ${"number"==typeof a.score&&isFinite(a.score)?a.score.toFixed(2):String(a.score)}`,children:(0,l.jsx)(Z.A,{label:`${a.name}: ${"number"==typeof a.score&&isFinite(a.score)?a.score.toFixed(2):String(a.score)}`,size:"small",sx:{height:18,fontSize:"0.65rem",fontWeight:600,bgcolor:g.palette.grey[800],color:g.palette.common.white,"& .MuiChip-label":{px:.75},cursor:"default"}})},a.id))})]})},hV=(a,b)=>{if(!a)return null;let{cost:c,tokens:d}=b(a);return(0,l.jsx)(r.A,{children:(0,l.jsx)(hT,{itemId:a.id,labelIcon:a=>(0,l.jsx)(b6,{icon:"system-uicons:timeline",...a}),label:(0,l.jsx)(hU,{label:a.name,status:a.data.status,tokens:d,latency:a.data.duration,cost:c,scores:a.data.scores}),children:a.children.map(a=>hV(a,b))},a.id)},a.id)},hW=()=>{let{spanTree:a,selectedSpan:b,setSelectedSpanId:c,traces:d,findCostAndTokens:e,traceId:f}=hA(),g=(0,k.useMemo)(()=>a.map(a=>hV(a,e)),[a]);return(0,l.jsx)(o.default,{sx:{height:"100%",overflowY:"auto",p:2},children:b?.id&&(0,l.jsx)(T.G,{expansionTrigger:"iconContainer",selectedItems:b?.id||null,onItemSelectionToggle:(a,b,d)=>{d&&c(b)},...f&&d[0]?{defaultExpandedItems:[d[0].id,...d[0].spans.map(a=>a.id)||[]]}:{},children:g})})},hX="__start__",hY="__end__";function hZ(a){return null==a||0===a?null:a.toLocaleString()}function h$(a,b=200){if(!a)return null;let c=a.trim();return c?c.length<=b?c:`${c.slice(0,b)}\u2026`:null}function h_({label:a,value:b}){return(0,l.jsxs)(o.default,{sx:{display:"flex",justifyContent:"space-between",gap:2},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",flexShrink:0},children:a}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.100",textAlign:"right",wordBreak:"break-word",maxWidth:220},children:b})]})}function h0({span:a}){let b=function(a){var b;let c=a.data??{};return{name:a.name??"Unknown",duration:function(a){if(!isFinite(a)||a<0)return console.warn("[formatDuration] Received invalid duration:",a),"N/A";if(a>=6e4){let b=Math.floor(a/6e4),c=(a%6e4/1e3).toFixed(1);return`${b}m ${c}s`}return a>=1e3?`${(a/1e3).toFixed(2)}s`:`${Math.round(a)}ms`}(a.duration??0),model:c.model??c.model_name??null,inputTokens:hZ(c.inputTokens),outputTokens:hZ(c.outputTokens),totalTokens:hZ(c.totalTokens),cost:null==(b=c.cost)||0===b?null:b<1e-4?`$${b.toExponential(2)}`:`$${b.toFixed(4)}`,status:c.status?c.status:c.statusMessage?c.statusMessage:c.finishReason?c.finishReason:null,input:h$(c.input),output:h$(c.output),metadata:c.metadata&&"object"==typeof c.metadata&&Object.keys(c.metadata).length>0?function(a){let b={};for(let[c,d]of Object.entries(a))b[c]=function(a){if("string"==typeof a)return a;try{return JSON.stringify(a)??""}catch{return"[unserializable]"}}(d);return b}(c.metadata):null}}(a),c=[{label:"Duration",value:b.duration},{label:"Model",value:b.model},{label:"Status",value:b.status},{label:"Input tokens",value:b.inputTokens},{label:"Output tokens",value:b.outputTokens},{label:"Total tokens",value:b.totalTokens},{label:"Cost",value:b.cost}].filter(a=>null!==a.value),d=null!==b.input,e=null!==b.output;return(0,l.jsxs)(o.default,{sx:{p:.5,maxWidth:320},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{fontWeight:700,color:"grey.100",display:"block",mb:.5},children:b.name}),c.length>0&&(0,l.jsx)(o.default,{sx:{display:"flex",flexDirection:"column",gap:.25},children:c.map(a=>(0,l.jsx)(h_,{label:a.label,value:a.value},a.label))}),(d||e)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:.75,borderColor:"grey.700"}}),d&&(0,l.jsxs)(o.default,{sx:{mb:.75*!!e},children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",display:"block",mb:.25},children:"Input"}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.200",display:"block",whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"monospace",fontSize:"0.65rem",maxHeight:80,overflow:"hidden"},children:b.input})]}),e&&(0,l.jsxs)(o.default,{children:[(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",display:"block",mb:.25},children:"Output"}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.200",display:"block",whiteSpace:"pre-wrap",wordBreak:"break-word",fontFamily:"monospace",fontSize:"0.65rem",maxHeight:80,overflow:"hidden"},children:b.output})]})]}),b.metadata&&(()=>{let{entries:a,remaining:c}=function(a,b=5){let c=Object.keys(a);return{entries:c.slice(0,b).map(b=>({key:b,value:h$(a[b],100)??""})),remaining:Math.max(0,c.length-b)}}(b.metadata);return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:.75,borderColor:"grey.700"}}),(0,l.jsx)(q.A,{variant:"caption",sx:{color:"grey.400",display:"block",mb:.25},children:"Metadata"}),(0,l.jsx)(o.default,{sx:{display:"flex",flexDirection:"column",gap:.25},children:a.map(a=>(0,l.jsx)(h_,{label:a.key,value:a.value},a.key))}),c>0&&(0,l.jsxs)(q.A,{variant:"caption",sx:{color:"grey.400",mt:.25,display:"block"},children:["+",c," more"]})]})})()]})}var h1={traceNode:(0,k.memo)(function(a){let{id:b,data:c}=a,d=(0,P.A)(),e=c.color||c.branchColor,f=c.spanIds?.length||1,g=f>1,h="start"===c.nodeType||"end"===c.nodeType,i=g?`(${(c.currentSpanIndex??0)+1}/${f})`:"",j=c.spanData?(0,l.jsx)(h0,{span:c.spanData}):null;if(h)return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(_.h7,{type:"target",position:aa.yX.Top,style:{visibility:"hidden"}}),(0,l.jsx)(o.default,{sx:{width:40,height:40,backgroundColor:d.palette.background.paper,borderRadius:"50%",border:`2px solid ${e}`,display:"flex",alignItems:"center",justifyContent:"center",boxShadow:d.shadows[2]},children:c.icon&&(0,l.jsx)(b6,{icon:c.icon,width:24,height:24,color:e})}),(0,l.jsx)(_.h7,{type:"source",position:aa.yX.Bottom,style:{visibility:"hidden"}})]});let k=(0,l.jsxs)(o.default,{sx:{minWidth:160,maxWidth:220,backgroundColor:d.palette.background.paper,borderRadius:2,border:`2px solid ${e}`,display:"flex",alignItems:"center",padding:2,boxShadow:d.shadows[3],cursor:"pointer",gap:1.5,"&:hover":{boxShadow:d.shadows[6],borderColor:e},transition:"box-shadow 0.2s ease-in-out"},onClick:()=>{!h&&(c.onNodeCycleClick&&c.spanIds&&c.spanIds.length>1?c.onNodeCycleClick(b):c.onNodeClick&&c.spanId&&c.onNodeClick(c.spanId))},children:[c.icon&&(0,l.jsx)(b6,{icon:c.icon,width:24,height:24,color:e,style:{flexShrink:0}}),(0,l.jsxs)(o.default,{sx:{flex:1,minWidth:0},children:[(0,l.jsx)(q.A,{variant:"body2",sx:{fontWeight:600,color:d.palette.text.primary,display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:c.label,children:c.label}),g&&(0,l.jsx)(q.A,{variant:"caption",sx:{fontSize:"0.7rem",color:d.palette.text.secondary},children:i})]})]});return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(_.h7,{type:"target",position:aa.yX.Top,style:{visibility:"hidden"}}),j?(0,l.jsx)(Y.A,{title:j,placement:"top",arrow:!0,enterDelay:300,slotProps:{tooltip:{sx:{bgcolor:"grey.900",border:"1px solid",borderColor:"grey.700",borderRadius:1,p:1,maxWidth:340,boxShadow:4}},arrow:{sx:{color:"grey.900"}}},children:k}):k,(0,l.jsx)(_.h7,{type:"source",position:aa.yX.Bottom,style:{visibility:"hidden"}})]})})};function h2({graphData:a,isLoading:b}){let c=(0,P.A)(),{onSelectSpan:d,traces:e}=hA(),f=(0,k.useMemo)(()=>a&&a.length>0?[]:e.flatMap(a=>a.spans.map(a=>({spanId:a.id,parentSpanId:a.parentId,name:a.name,startTime:"string"==typeof a.timestamp?new Date(a.timestamp).getTime():a.timestamp,type:a.data?.type,data:a.data}))),[e,a]),g=(0,k.useMemo)(()=>{let a=new Map;return e.forEach(b=>{b.spans.forEach(b=>{a.has(b.id)&&console.warn("[TraceGraphCanvas] Duplicate span ID in lookup — tooltip data may be incorrect:",b.id),a.set(b.id,b)})}),a},[e]),{nodes:h,edges:i}=(0,k.useMemo)(()=>{if(a&&a.length>0){var b=a;let c=[],d=[],e=new Set,f=new Set;return b.forEach(({displayName:a,nodeId:b,nodeType:g,parentNodeId:h="",spanId:i,spanName:j})=>{if(b&&!e.has(b)&&(e.add(b),c.push({id:b,spanId:i,label:a||j||b,nodeType:g,spanIds:[i],spanCount:1})),h&&""!==h.trim()&&b){let a=`${h}->${b}`;f.has(a)||(f.add(a),d.push({id:a,source:h,target:b}))}}),{nodes:c,edges:d,isAutoGenerated:!1}}if(f&&f.length>0){if(f.some(a=>{let b=a.data;return!!b&&Object.keys(b).some(a=>a.startsWith("graph.node.")||"graphNodeId"===a||"graphNodeType"===a)}))return{nodes:[],edges:[],isAutoGenerated:!1};try{let a=function(a){if(!a||0===a.length)return{nodes:[],edges:[],isAutoGenerated:!0};let b=function(a){let b=new Map;for(let e of a){var c,d;let a=(c=e.parentSpanId,d=e.name,`${c||"root"}:${d}`),f=b.get(a);f?(f.spanIds.push(e.spanId),e.startTime<f.firstStartTime&&(f.firstStartTime=e.startTime)):b.set(a,{key:a,parentSpanId:e.parentSpanId,spanName:e.name,spanIds:[e.spanId],firstStartTime:e.startTime})}return b}(a),c=new Map;for(let[a,d]of b)for(let b of d.spanIds)c.set(b,a);let d=new Set;for(let b of a)if(b.parentSpanId){let a=c.get(b.parentSpanId);a&&d.add(a)}let e=[];for(let[f,g]of b){let b=a.find(a=>a.spanId===g.spanIds[0]);if(!b)continue;let h=d.has(f);e.push({nodeId:f,displayName:g.spanName||"Operation",nodeType:hF(b,h),spanIds:g.spanIds,parentNodeId:g.parentSpanId?c.get(g.parentSpanId):void 0})}let f=function(a,b){let c=new Map;for(let b of a){let a=b.parentSpanId||"root",d=c.get(a)||[];d.push(b),c.set(a,d)}let d=new Map,e=(a,b)=>{let[c,e]=[a,b].sort(),f=`${c}->${e}`,g=d.get(f);g?c===a?g.forward=!0:g.backward=!0:d.set(f,{forward:c===a,backward:c!==a,firstSource:a,firstTarget:b})};for(let[a,d]of c){let c=[...d].sort((a,b)=>a.startTime-b.startTime);if("root"!==a&&c.length>0){let d=b.get(a),f=c[0],g=f?b.get(f.spanId):void 0;d&&g&&d!==g&&e(d,g)}for(let a=0;a<c.length-1;a++){let d=c[a],f=c[a+1],g=b.get(d.spanId),h=b.get(f.spanId);g&&h&&g!==h&&e(g,h)}}let f=[];for(let[a,b]of d)f.push({id:a,source:b.firstSource,target:b.firstTarget,bidirectional:b.forward&&b.backward});return f}(a,c),g=function(a,b){if(0===a.length)return;let c=[...a].sort((a,b)=>a.startTime-b.startTime)[0];return c?b.get(c.spanId):void 0}(a,c),{nodes:h,edges:i}=function(a,b,c,d){if(0===a.length)return{nodes:[],edges:[]};let e=[];if(c)e.push({id:`${hX}->${c}`,source:hX,target:c,bidirectional:!1});else{let c=new Set;for(let a of b)c.add(a.target);for(let b of a.filter(a=>!c.has(a.nodeId)))e.push({id:`${hX}->${b.nodeId}`,source:hX,target:b.nodeId,bidirectional:!1})}let f=[];if(d)f.push({id:`${d}->${hY}`,source:d,target:hY,bidirectional:!1});else{let c=new Set;for(let a of b)c.add(a.source);for(let b of a.filter(a=>!c.has(a.nodeId)))f.push({id:`${b.nodeId}->${hY}`,source:b.nodeId,target:hY,bidirectional:!1})}return{nodes:[{nodeId:hX,displayName:"",nodeType:"start",spanIds:[]},...a,{nodeId:hY,displayName:"",nodeType:"end",spanIds:[]}],edges:[...e,...b,...f]}}(e,f,g,function(a,b){if(0===a.length)return;let c=[...a].sort((a,b)=>b.startTime-a.startTime)[0];return c?b.get(c.spanId):void 0}(a,c));return{nodes:h,edges:i,isAutoGenerated:!0}}(f);return{nodes:a.nodes.map(a=>({id:a.nodeId,spanId:a.spanIds[0]||"",label:a.displayName,nodeType:a.nodeType,spanIds:a.spanIds,spanCount:a.spanIds.length})),edges:a.edges.map(a=>({id:a.id,source:a.source,target:a.target,bidirectional:a.bidirectional})),isAutoGenerated:!0}}catch(a){console.error("Failed to generate workflow graph:",a)}}return{nodes:[],edges:[],isAutoGenerated:!1}},[a,f]),[j,m]=(0,k.useState)(()=>new Map),n=(0,k.useMemo)(()=>{let a=new Map;return h.forEach(b=>a.set(b.id,b)),a},[h]),p=(0,k.useCallback)(a=>{d(a)},[d]),q=(0,k.useCallback)(a=>{let b=n.get(a);if(!b?.spanIds||0===b.spanIds.length)return;let c=((j.get(a)??0)+1)%b.spanIds.length,e=b.spanIds[c];m(b=>{let d=new Map(b);return d.set(a,c),d}),e&&d(e)},[n,j,d]),{reactFlowNodes:r,reactFlowEdges:s}=function({nodes:a,edges:b,onNodeClick:c,onNodeCycleClick:d,nodeSpanIndices:e,spanLookup:f}){let g=(0,P.A)(),h=(0,k.useMemo)(()=>{if(!a.length)return[];let h=a.map(a=>({id:a.id,data:{label:a.label},position:{x:0,y:0}})),i=function(a,b){let c=new Map,d=new Set,e=new Map;return a.forEach(a=>{e.set(a.id,new Set)}),b.forEach(a=>{let b=e.get(a.source),c=e.get(a.target);b&&b.add(a.target),c&&c.add(a.source)}),a.forEach(a=>{d.has(a.id)||function a(b,f){if(d.has(b))return;d.add(b),c.set(b,f);let g=e.get(b);g&&g.forEach(b=>{d.has(b)||a(b,f)})}(a.id,a.id)}),c}(h,b.map(a=>({id:a.id,source:a.source,target:a.target})));return h.map(b=>{let h,j=a.find(a=>a.id===b.id),k=function(a,b){let c=[b.palette.primary.main,b.palette.secondary.main,b.palette.error.main,b.palette.warning.main,b.palette.info.main,b.palette.success.main,"#9c27b0","#795548","#607d8b"],d=0;for(let b=0;b<a.length;b++)d=(d<<5)-d+a.charCodeAt(b),d&=d;return c[Math.abs(d)%c.length]}(i.get(b.id)||b.id,g),{color:l,icon:m}=hB(j?.nodeType,g),n=e?.get(b.id);if(f){let a=j?.spanId;if(a){if(!(h=f.get(a))&&j?.spanIds){for(let a of j.spanIds)if(h=f.get(a))break}h||console.warn("[useGraphData] Span ID not found in lookup for node",b.id,"spanId:",a)}}return{...b,type:"traceNode",data:{label:b.data.label,branchColor:k,spanId:j?.spanId,nodeType:j?.nodeType,color:l,icon:m,onNodeClick:c,spanIds:j?.spanIds,currentSpanIndex:n,onNodeCycleClick:d,spanData:h}}})},[a,b,g,c,d,e,f]),i=(0,k.useMemo)(()=>{let a=[];return b.forEach(b=>{a.push({id:b.id,source:b.source,target:b.target,type:"default",animated:!0})}),a},[b]),{nodes:j,edges:l}=(0,k.useMemo)(()=>(function(a,b){if(0===a.length)return{nodes:[],edges:[]};let c=new Q.graphlib.Graph;return c.setGraph({rankdir:"TB",nodesep:60,ranksep:80,marginx:20,marginy:20}),c.setDefaultEdgeLabel(()=>({})),a.forEach(a=>{let b=hE(a);c.setNode(a.id,{width:b.width,height:b.height})}),b.forEach(a=>{c.setEdge(a.source,a.target)}),Q.layout(c),{nodes:a.map(a=>{let b=c.node(a.id),d=hE(a);return{...a,position:{x:b.x-d.width/2,y:b.y-d.height/2}}}),edges:b}})(h,i),[h,i]);return{reactFlowNodes:j,reactFlowEdges:l}}({nodes:h,edges:i,onNodeClick:p,onNodeCycleClick:q,nodeSpanIndices:j,spanLookup:g}),[t,u]=(0,k.useState)(r),[v,w]=(0,k.useState)(s),[x,y]=(0,k.useState)(-1),z=(0,k.useCallback)(a=>{if(0!==t.length)switch(a.key){case"ArrowRight":case"ArrowDown":a.preventDefault(),y(x<t.length-1?x+1:0);break;case"ArrowLeft":case"ArrowUp":a.preventDefault(),y(x>0?x-1:t.length-1);break;case"Enter":case" ":if(a.preventDefault(),x>=0&&x<t.length){let a=t[x],b=a?.data;b?.spanIds&&b.spanIds.length>1&&a?q(a.id):b?.spanId&&p(b.spanId)}break;case"Tab":-1===x&&t.length>0&&(a.preventDefault(),y(0))}},[t,x,p,q]);return b?(0,l.jsx)(o.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2},children:(0,l.jsx)($.A,{size:20})}):t.length?(0,l.jsx)(o.default,{sx:{flexGrow:1,overflow:"hidden",border:"1px solid",borderColor:"divider",borderRadius:1,m:2,position:"relative",minHeight:0},children:(0,l.jsx)(o.default,{sx:{width:"100%",height:"100%"},tabIndex:0,onKeyDown:z,role:"application","aria-label":"Workflow graph - use arrow keys to navigate between nodes, Enter to select",children:(0,l.jsxs)(_.Gc,{nodes:t,edges:v,nodeTypes:h1,onNodesChange:a=>{u((0,_._0)(a,t))},onEdgesChange:a=>{w((0,_.zW)(a,v))},fitView:!0,zoomOnScroll:!0,panOnScroll:!0,zoomOnPinch:!0,fitViewOptions:{padding:.5},children:[(0,l.jsx)(_.of,{style:{width:80,height:60,backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:4},nodeColor:a=>a.data?.color||a.data?.branchColor||c.palette.primary.main,maskColor:"rgba(0, 0, 0, 0.1)",position:"bottom-right"}),(0,l.jsx)(_.H2,{style:{backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:8,boxShadow:c.shadows[4]}}),(0,l.jsx)(_.VS,{gap:20,size:1})]})})}):(0,l.jsx)(o.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2,color:"text.secondary"},children:"No graph data available"})}var h3={ROW_HEIGHT:28,MIN_BAR_WIDTH:4,DEPTH_INDENT:16,BAR_HEIGHT_RATIO:.7,MIN_SCALE:.5,MAX_SCALE:10,RULER_HEIGHT:24,PADDING:8,LABEL_WIDTH:120};function h4(a){if(a<1e3)return`${Math.round(a)}ms`;if(a<6e4)return`${(a/1e3).toFixed(1)}s`;let b=Math.floor(a/6e4),c=Math.round(a%6e4/1e3);return c>0?`${b}m ${c}s`:`${b}m`}function h5(a){let b=a.data?.status?.toLowerCase();return"error"===b||"failed"===b||"failure"===b}function h6(a,b){let c=b.get(a);return void 0!==c&&c.length>0}function h7(a){if(!a||"string"!=typeof a.id||!a.id)return null;let b="number"==typeof a.timestamp&&Number.isFinite(a.timestamp)?a.timestamp:Date.now(),c="number"==typeof a.duration&&Number.isFinite(a.duration)&&a.duration>=0?a.duration:0,d="string"==typeof a.name?a.name:String(a.id);return{...a,timestamp:b,duration:c,name:d}}var{MIN_SCALE:h8,MAX_SCALE:h9}=h3,{ROW_HEIGHT:ia,MIN_BAR_WIDTH:ib,BAR_HEIGHT_RATIO:ic}=h3,id=(0,k.memo)(function({layout:a,isSelected:b,isFocused:c=!1,onSelect:d,onMouseEnter:e,onMouseLeave:f,timelineWidth:g}){var h;let i=(0,P.A)(),j=hB(a.nodeType,i),k=ia*ic,m=a.row*ia+(ia-k)/2,n=a.x*g,o=Math.max(ib,a.width*g),p=j.color;a.hasError&&(p=i.palette.error.main);let q=b?i.palette.primary.main:c?i.palette.action.focus:"transparent",r=a.hasError?1:.85,s=(h=a.durationMs)<1e3?`${Math.round(h)}ms`:`${(h/1e3).toFixed(1)}s`;return(0,l.jsxs)("g",{className:"timeline-bar","data-span-id":a.spanId,onClick:b=>{b.stopPropagation(),d?.(a.spanId)},onMouseEnter:b=>{e?.(a,b)},onMouseLeave:f,style:{cursor:"pointer"},role:"gridcell","aria-label":`${a.name}: ${s}, ${a.percentOfTrace.toFixed(1)}% of trace`,tabIndex:-1,children:[(0,l.jsx)("rect",{x:n,y:m,width:o,height:k,rx:3,ry:3,fill:p,opacity:r,stroke:q,strokeWidth:b||c?2:0}),o>60&&(0,l.jsx)("text",{x:n+o/2,y:m+k/2,textAnchor:"middle",dominantBaseline:"central",fontSize:10,fill:i.palette.getContrastText(p),style:{pointerEvents:"none",userSelect:"none"},children:s}),a.hasError&&(0,l.jsx)("circle",{cx:n+o-8,cy:m+k/2,r:4,fill:i.palette.error.contrastText,style:{pointerEvents:"none"}})]})}),{RULER_HEIGHT:ie}=h3,ig=(0,k.memo)(function({ticks:a,width:b,height:c=ie}){let d=(0,P.A)(),e=.6*c,f=.3*c;return(0,l.jsxs)("g",{className:"timeline-ruler",role:"presentation",children:[(0,l.jsx)("rect",{x:0,y:0,width:b,height:c,fill:d.palette.background.paper}),(0,l.jsx)("line",{x1:0,y1:c,x2:b,y2:c,stroke:d.palette.divider,strokeWidth:1}),a.map((a,g)=>{let h=a.position*b,i=c-(a.isMajor?e:f);return(0,l.jsxs)("g",{children:[(0,l.jsx)("line",{x1:h,y1:i,x2:h,y2:c,stroke:d.palette.text.secondary,strokeWidth:a.isMajor?1:.5,opacity:a.isMajor?.8:.4}),a.isMajor&&a.label&&(0,l.jsx)("text",{x:h,y:i-4,textAnchor:"middle",fontSize:10,fill:d.palette.text.secondary,style:{userSelect:"none"},children:a.label})]},g)})]})});function ih(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function ii(a,b){if(!a)return"";let c=a.replace(/\n/g," ").trim();return c.length<=b?c:c.slice(0,b)+"..."}var ij=(0,k.memo)(function({layout:a,position:b,visible:c}){var d,e;let f=(0,P.A)(),g=(0,k.useMemo)(()=>{let b=a?.span?.data?.attributes;if(!b)return null;try{return"string"==typeof b?JSON.parse(b):b}catch{return null}},[a?.span?.data?.attributes]);if(!c||!a||!b)return null;let h=hB(a.nodeType,f),i=a.span.data,j=i.model||i.totalTokens||i.cost,m=i.input||i.output,n=i.toolCalls,p=g&&Object.keys(g).length>0,r=b.x+12,s=b.y+12;return(0,l.jsxs)(ab.A,{elevation:8,sx:{position:"fixed",left:r,top:s,zIndex:f.zIndex.tooltip,p:1.5,maxWidth:340,maxHeight:400,overflow:"auto",pointerEvents:"none",backgroundColor:f.palette.background.paper,border:`1px solid ${f.palette.divider}`},children:[(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:1},children:[(0,l.jsx)(o.default,{sx:{width:8,height:8,borderRadius:"50%",backgroundColor:h.color,flexShrink:0}}),(0,l.jsx)(q.A,{variant:"subtitle2",sx:{fontWeight:600,wordBreak:"break-word",color:f.palette.text.primary},children:a.name})]}),(0,l.jsxs)(o.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Duration:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:function(a){if(a<1)return"<1ms";if(a<1e3)return`${Math.round(a)}ms`;if(a<6e4)return`${(a/1e3).toFixed(2)}s`;let b=Math.floor(a/6e4),c=(a%6e4/1e3).toFixed(1);return`${b}m ${c}s`}(a.durationMs)}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Start:"}),(0,l.jsx)(q.A,{variant:"caption",children:(d=a.startTimeMs)<1e3?`+${Math.round(d)}ms`:`+${(d/1e3).toFixed(2)}s`}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"% of trace:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[a.percentOfTrace.toFixed(1),"%"]}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Type:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{textTransform:"capitalize"},children:a.nodeType}),a.hasError&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"error.main",children:"Status:"}),(0,l.jsx)(q.A,{variant:"caption",color:"error.main",fontWeight:500,children:i.statusMessage||"Error"})]})]}),j&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsxs)(o.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[i.model&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Model:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:i.model})]}),(i.inputTokens||i.outputTokens)&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Tokens:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[i.inputTokens?`${ih(i.inputTokens)} in`:"",i.inputTokens&&i.outputTokens?" / ":"",i.outputTokens?`${ih(i.outputTokens)} out`:"",i.totalTokens&&` (${ih(i.totalTokens)} total)`]})]}),i.reasoningTokens&&i.reasoningTokens>0&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Reasoning:"}),(0,l.jsxs)(q.A,{variant:"caption",children:[ih(i.reasoningTokens)," tokens"]})]}),null!=i.cost&&i.cost>0&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Cost:"}),(0,l.jsx)(q.A,{variant:"caption",fontWeight:500,children:(e=i.cost)<.01?`$${e.toFixed(6)}`:e<1?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`})]}),i.finishReason&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",children:"Finish:"}),(0,l.jsx)(q.A,{variant:"caption",children:i.finishReason})]})]})]}),m&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),i.input&&(0,l.jsxs)(o.default,{sx:{mb:.5},children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Input:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.input,100)})]}),i.output&&(0,l.jsxs)(o.default,{children:[(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Output:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.output,100)})]})]}),n&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Tool Calls:"}),(0,l.jsx)(q.A,{variant:"caption",sx:{display:"block",backgroundColor:f.palette.action.hover,borderRadius:.5,p:.5,fontFamily:"monospace",fontSize:"0.7rem",whiteSpace:"pre-wrap",wordBreak:"break-word"},children:ii(i.toolCalls,80)})]}),p&&(0,l.jsxs)(l.Fragment,{children:[(0,l.jsx)(S.A,{sx:{my:1}}),(0,l.jsx)(q.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Attributes:"}),(0,l.jsxs)(o.default,{sx:{display:"flex",flexWrap:"wrap",gap:.5},children:[Object.entries(g).slice(0,5).map(([a,b])=>(0,l.jsx)(Z.A,{label:`${a}: ${ii(String(b),20)}`,size:"small",variant:"outlined",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}},a)),Object.keys(g).length>5&&(0,l.jsx)(Z.A,{label:`+${Object.keys(g).length-5} more`,size:"small",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}})]})]})]})}),ik={llm:"LLM",tool:"Tool",agent:"Agent",retrieval:"Retrieval",router:"Router",memory:"Memory",default:"Other",start:"Start",end:"End"},il=["llm","tool","agent","retrieval","router","memory","default"],im=(0,k.memo)(function({typeBreakdown:a,showCounts:b=!1}){let c=(0,P.A)(),d=il.filter(b=>void 0!==a[b]&&a[b]>0);return 0===d.length?null:(0,l.jsx)(o.default,{sx:{display:"flex",flexWrap:"wrap",gap:1.5,px:1,py:.5,borderTop:`1px solid ${c.palette.divider}`,backgroundColor:c.palette.background.paper},role:"legend","aria-label":"Span type legend",children:d.map(d=>{let e=hB(d,c),f=a[d]||0,g=ik[d];return(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,l.jsx)(o.default,{sx:{width:12,height:12,borderRadius:.5,backgroundColor:e.color,flexShrink:0}}),(0,l.jsxs)(q.A,{variant:"caption",sx:{color:c.palette.text.secondary,lineHeight:1,whiteSpace:"nowrap"},children:[g,b&&f>0&&(0,l.jsxs)(q.A,{component:"span",variant:"caption",sx:{color:c.palette.text.disabled,ml:.5},children:["(",f,")"]})]})]},d)})})}),io=class extends k.Component{constructor(a){super(a),this.handleRetry=()=>{this.setState({hasError:!1,error:null})},this.state={hasError:!1,error:null}}static getDerivedStateFromError(a){return{hasError:!0,error:a}}componentDidCatch(a,b){console.error("Timeline rendering error:",a,b)}render(){return this.state.hasError?this.props.fallback?this.props.fallback:(0,l.jsxs)(o.default,{sx:{p:3,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",minHeight:200,color:"text.secondary",textAlign:"center"},children:[(0,l.jsx)(q.A,{variant:"body1",color:"error",gutterBottom:!0,children:"Failed to render timeline"}),(0,l.jsx)(q.A,{variant:"body2",sx:{mb:2},children:"There was an error processing the span data."}),(0,l.jsx)(ac.A,{variant:"outlined",size:"small",onClick:this.handleRetry,children:"Retry"})]}):this.props.children}},{ROW_HEIGHT:ip,RULER_HEIGHT:iq,PADDING:ir,LABEL_WIDTH:is}=h3,it=(0,k.memo)(function({spans:a,selectedSpanId:b,onSelectSpan:c,showRuler:d=!0,showLegend:e=!0,enableZoom:f=!0,enablePan:g=!0,sx:h,isLoading:i=!1}){let j=(0,P.A)(),m=(0,k.useRef)(null),[n,p]=(0,k.useState)(800),r=(0,k.useRef)(void 0),[s,t]=(0,k.useState)({layout:null,position:null}),[u,v]=(0,k.useState)(0),[x,y]=(0,k.useState)(400),{layouts:z,metrics:A,rulerTicks:B}=(0,k.useMemo)(()=>(function(a){if(!Array.isArray(a)||0===a.length)return{layouts:[],metrics:{totalDurationMs:0,startTimeMs:0,endTimeMs:0,spanCount:0,maxDepth:0,typeBreakdown:{}},rulerTicks:[]};let b=a.map(h7).filter(a=>null!==a);if(0===b.length)return{layouts:[],metrics:{totalDurationMs:0,startTimeMs:0,endTimeMs:0,spanCount:0,maxDepth:0,typeBreakdown:{}},rulerTicks:[]};let c=function(a){let b=new Map;for(let c of a)b.set(c.id,c);return b}(b),d=function(a){let b=new Map;for(let c of a){let a=c.parentId,d=b.get(a)||[];d.push(c),b.set(a,d)}for(let[,a]of b)a.sort((a,b)=>a.timestamp-b.timestamp);return b}(b),e=1/0,f=-1/0;for(let a of b){let b=a.timestamp,c=a.timestamp+Math.max(0,a.duration);b<e&&(e=b),c>f&&(f=c)}let g=f-e,h=a=>0===g?0:(a-e)/g,i=a=>0===g?1:Math.max(0,a)/g,j=[],k=0,l=0,m={};function n(a,b){for(let c of d.get(a)||[]){b>l&&(l=b);let a=h6(c.id,d),f=hF({spanId:c.id,parentSpanId:c.parentId,name:c.name,startTime:c.timestamp,type:c.data?.type,data:c.data},a);m[f]=(m[f]||0)+1;let o=c.timestamp-e,p=Math.max(0,c.duration),q=g>0?p/g*100:100,r={spanId:c.id,name:c.name,x:h(c.timestamp),width:i(p),row:k,depth:b,durationMs:p,startTimeMs:o,percentOfTrace:q,nodeType:f,hasError:h5(c),span:c};j.push(r),k++,n(c.id,b+1)}}for(let a of(n(void 0,0),b))if(a.parentId&&!c.has(a.parentId)){let b=h6(a.id,d),c=hF({spanId:a.id,parentSpanId:a.parentId,name:a.name,startTime:a.timestamp,type:a.data?.type,data:a.data},b);if(!j.find(b=>b.spanId===a.id)){m[c]=(m[c]||0)+1;let b=a.timestamp-e,d=Math.max(0,a.duration),f=g>0?d/g*100:100;j.push({spanId:a.id,name:a.name,x:h(a.timestamp),width:i(d),row:k,depth:0,durationMs:d,startTimeMs:b,percentOfTrace:f,nodeType:c,hasError:h5(a),span:a}),k++,n(a.id,1)}}let{major:o,minor:p}=function(a){let b=a/6,c=[1,2,5,10,20,50,100,200,500,1e3,2e3,5e3,1e4,2e4,3e4,6e4,12e4,3e5,6e5],d=c[0];for(let a of c){if(a>=b){d=a;break}d=a}let e=d/5;return{major:d,minor:e}}(g),q=[];if(g>0){for(let a=0;a<=g;a+=p){let b=a%o==0;q.push({position:a/g,label:b?h4(a):"",isMajor:b})}(0===q.length||q[q.length-1].position<1)&&q.push({position:1,label:h4(g),isMajor:!0})}return{layouts:j,metrics:{totalDurationMs:g,startTimeMs:e,endTimeMs:f,spanCount:b.length,maxDepth:l,typeBreakdown:m},rulerTicks:q}})(a),[a]),C=Math.max(400,n-is-2*ir),D=z.length*ip,E=D+(d?iq:0)+2*ir,{viewState:F,zoomIn:G,zoomOut:H,resetZoom:I,onWheel:J,panHandlers:K}=function(a=1e3,b=500){let[c,d]=(0,k.useState)(()=>({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})),e=(0,k.useRef)(null),f=(0,k.useCallback)(a=>Math.max(h8,Math.min(h9,a)),[]),g=(0,k.useCallback)(()=>{d(a=>{let b=f(1.2*a.scale),c=a.scale/b,d=a.viewBox.x+a.viewBox.width/2,e=a.viewBox.y+a.viewBox.height/2,g=a.viewBox.width*c,h=a.viewBox.height*c;return{...a,viewBox:{x:d-g/2,y:e-h/2,width:g,height:h},scale:b}})},[f]),h=(0,k.useCallback)(()=>{d(a=>{let b=f(a.scale/1.2),c=a.scale/b,d=a.viewBox.x+a.viewBox.width/2,e=a.viewBox.y+a.viewBox.height/2,g=a.viewBox.width*c,h=a.viewBox.height*c;return{...a,viewBox:{x:d-g/2,y:e-h/2,width:g,height:h},scale:b}})},[f]),i=(0,k.useCallback)(()=>{d({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})},[a,b]),j=(0,k.useCallback)(a=>{d(b=>{let c=f(a),d=b.scale/c,e=b.viewBox.x+b.viewBox.width/2,g=b.viewBox.y+b.viewBox.height/2,h=b.viewBox.width*d,i=b.viewBox.height*d;return{...b,viewBox:{x:e-h/2,y:g-i/2,width:h,height:i},scale:c}})},[f]),l=(0,k.useCallback)(a=>{if(!a.ctrlKey&&!a.metaKey)return;try{a.preventDefault()}catch{}let b=a.currentTarget;if(!b)return;let c=b.getBoundingClientRect();if(!c||0===c.width||0===c.height)return;let e=a.deltaY>0?-1:1;d(b=>{let d=f(b.scale*(e>0?1.2:.8333333333333334));if(d===b.scale)return b;let g=b.scale/d,h=a.clientX-c.left,i=a.clientY-c.top,j=b.viewBox.x+h/c.width*b.viewBox.width,k=b.viewBox.y+i/c.height*b.viewBox.height,l=b.viewBox.width*g,m=b.viewBox.height*g,n=j-h/c.width*l,o=k-i/c.height*m;return{...b,viewBox:{x:n,y:o,width:l,height:m},scale:d}})},[f]),m=(0,k.useCallback)(a=>{0===a.button&&(a.preventDefault(),d(b=>(e.current={x:a.clientX,y:a.clientY,viewBoxX:b.viewBox.x,viewBoxY:b.viewBox.y},{...b,isPanning:!0})))},[]),n=(0,k.useCallback)(a=>{if(!e.current)return;let b=a.currentTarget.getBoundingClientRect(),c=a.clientX-e.current.x,f=a.clientY-e.current.y;d(a=>{let d=c/b.width*a.viewBox.width,g=f/b.height*a.viewBox.height;return{...a,viewBox:{...a.viewBox,x:e.current.viewBoxX-d,y:e.current.viewBoxY-g}}})},[]);return{viewState:c,zoomIn:g,zoomOut:h,resetZoom:i,setScale:j,onWheel:l,panHandlers:{onMouseDown:m,onMouseMove:n,onMouseUp:(0,k.useCallback)(()=>{e.current=null,d(a=>({...a,isPanning:!1}))},[]),onMouseLeave:(0,k.useCallback)(()=>{e.current&&(e.current=null,d(a=>({...a,isPanning:!1})))},[])}}}(C,D),{visibleLayouts:L}=(0,k.useMemo)(()=>{if(z.length<100)return{visibleLayouts:z,startIndex:0,endIndex:z.length};let a=Math.floor((u-(d?iq:0)-ir)/ip),b=Math.ceil(x/ip),c=Math.max(0,a-5),e=Math.min(z.length,a+b+5);return{visibleLayouts:z.slice(c,e),startIndex:c,endIndex:e}},[z,u,x,d]);(0,k.useEffect)(()=>{let a=m.current;if(!a)return;let b=new ResizeObserver(a=>{for(let b of a)p(b.contentRect.width),y(b.contentRect.height)}),c=()=>{v(a.scrollTop)};return b.observe(a),a.addEventListener("scroll",c,{passive:!0}),p(a.offsetWidth),y(a.offsetHeight),()=>{b.disconnect(),a.removeEventListener("scroll",c)}},[]),(0,k.useEffect)(()=>{if(!b||b===r.current){r.current=b;return}r.current=b;let a=m.current;if(!a)return;let c=z.find(a=>a.spanId===b);if(!c)return;let e=ir+(d?iq:0)+c.row*ip,f=a.getBoundingClientRect(),g=a.scrollTop,h=g+f.height;(e<g||e+ip>h)&&a.scrollTo({top:e-f.height/2+ip/2,behavior:"smooth"})},[b,z,d]);let M=(0,k.useCallback)(a=>{c?.(a)},[c]),N=(0,k.useCallback)((a,b)=>{t({layout:a,position:{x:b.clientX,y:b.clientY}})},[]),O=(0,k.useCallback)(()=>{t({layout:null,position:null})},[]),[Q,R]=(0,k.useState)(-1),S=(0,k.useCallback)(a=>{if(0!==z.length)switch(a.key){case"ArrowDown":a.preventDefault(),R(a=>a<z.length-1?a+1:a);break;case"ArrowUp":a.preventDefault(),R(a=>a>0?a-1:0);break;case"Enter":case" ":if(a.preventDefault(),Q>=0&&Q<z.length){let a=z[Q];a&&M(a.spanId)}break;case"Home":a.preventDefault(),R(0);break;case"End":a.preventDefault(),R(z.length-1)}},[z,Q,M]);return i?(0,l.jsx)(o.default,{sx:{p:2,...h},children:(0,l.jsx)(w.A,{variant:"rectangular",height:200})}):0===a.length?(0,l.jsx)(o.default,{sx:{p:4,display:"flex",alignItems:"center",justifyContent:"center",color:"text.secondary",...h},children:(0,l.jsx)(q.A,{variant:"body2",children:"No spans to display"})}):(0,l.jsx)(io,{children:(0,l.jsxs)(o.default,{ref:m,sx:{width:"100%",height:"100%",minHeight:0,flex:1,overflow:"auto",backgroundColor:j.palette.background.default,position:"relative",...h},children:[f&&(0,l.jsxs)(o.default,{sx:{position:"sticky",top:4,right:4,zIndex:10,display:"flex",gap:.5,justifyContent:"flex-end",pr:1,pt:.5},children:[(0,l.jsx)(Y.A,{title:"Zoom in",children:(0,l.jsx)(X.A,{size:"small",onClick:G,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom in",children:"+"})}),(0,l.jsx)(Y.A,{title:"Zoom out",children:(0,l.jsx)(X.A,{size:"small",onClick:H,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom out",children:"−"})}),(0,l.jsx)(Y.A,{title:"Fit all",children:(0,l.jsx)(X.A,{size:"small",onClick:I,sx:{backgroundColor:j.palette.background.paper,"&:hover":{backgroundColor:j.palette.action.hover},fontSize:12},"aria-label":"Fit all",children:"⊡"})})]}),(0,l.jsxs)("svg",{width:n,height:E,viewBox:1!==F.scale?`${F.viewBox.x} ${F.viewBox.y} ${F.viewBox.width} ${F.viewBox.height}`:void 0,style:{display:"block",cursor:g&&F.isPanning?"grabbing":g?"grab":"default",outline:"none"},role:"grid","aria-label":"Trace timeline",tabIndex:0,onKeyDown:S,onWheel:f?J:void 0,...g?K:{},children:[d&&(0,l.jsx)("g",{transform:`translate(${is+ir}, ${ir})`,children:(0,l.jsx)(ig,{ticks:B,width:C})}),(0,l.jsx)("g",{transform:`translate(${ir}, ${ir+(d?iq:0)})`,children:L.map(a=>(0,l.jsx)("g",{children:(0,l.jsx)("text",{x:12*a.depth,y:a.row*ip+ip/2,dominantBaseline:"central",fontSize:11,fill:j.palette.text.primary,style:{userSelect:"none",cursor:"pointer"},onClick:()=>M(a.spanId),children:function(a,b){let c=Math.floor(b/6);return a.length<=c?a:a.slice(0,c-3)+"..."}(a.name,is-12*a.depth-8)})},`label-${a.spanId}`))}),(0,l.jsxs)("g",{transform:`translate(${is+ir}, ${ir+(d?iq:0)})`,children:[B.filter(a=>a.isMajor).map((a,b)=>(0,l.jsx)("line",{x1:a.position*C,y1:0,x2:a.position*C,y2:D,stroke:j.palette.divider,strokeWidth:.5,opacity:.5},`grid-${b}`)),L.map(a=>(0,l.jsx)("rect",{x:0,y:a.row*ip,width:C,height:ip,fill:a.row%2==0?"transparent":j.palette.action.hover,opacity:.3},`row-bg-${a.spanId}`)),L.map(a=>{let c=z.findIndex(b=>b.spanId===a.spanId);return(0,l.jsx)(id,{layout:a,isSelected:b===a.spanId,isFocused:Q===c,onSelect:M,onMouseEnter:N,onMouseLeave:O,timelineWidth:C},a.spanId)})]})]}),e&&(0,l.jsx)(im,{typeBreakdown:A.typeBreakdown,showCounts:!0}),(0,l.jsx)(ij,{layout:s.layout,position:s.position,visible:null!==s.layout})]})})}),iu=({children:a})=>(0,l.jsx)(r.A,{width:"100%",height:"100%",overflow:"hidden",children:a}),iv=(0,k.createContext)(void 0),iw=({children:a})=>{let{selectedSpan:b}=hA(),{activeTab:c,setActiveTab:d,tabs:e}=(({span:a})=>{let[b,c]=(0,k.useState)("attributes"),[d,e]=(0,k.useState)([]),f=(0,k.useMemo)(()=>(function(a){return!!a?.data?.input||!!a?.data?.output||!!a?.data?.toolCalls?.length})(a),[a?.data?.input,a?.data?.output,a?.data?.toolCalls]);return(0,k.useEffect)(()=>{if(a?.id){let a=[];f?(a.push({value:"inputOutput",label:"Input/Output"}),c("inputOutput")):c("evaluation"),a.push({value:"evaluation",label:"Evaluations"}),a.push({value:"attributes",label:"Attributes"}),e(a)}},[a?.id,f]),(0,k.useEffect)(()=>{"inputOutput"===b&&f||"evaluation"===b||"attributes"===b||(f?c("inputOutput"):c("evaluation"))},[b,f]),{activeTab:b,setActiveTab:c,tabs:d,hasIOData:f}})({span:b||void 0});return b?(0,l.jsx)(iv.Provider,{value:{span:b,activeTab:c,setActiveTab:d,tabs:e},children:a}):null},ix=()=>{let a=(0,k.useContext)(iv);if(!a)throw Error("useSpanInfo must be used within a SpanInfoProvider");return a},iy=()=>{let{span:a}=ix(),{t:b}=hA(),c=a.data.model;return(0,l.jsxs)(r.A,{direction:"row",spacing:3,sx:{px:2,py:1.5,borderBottom:1,borderColor:"divider"},children:[(0,l.jsxs)(q.A,{variant:"subtitle2",children:[(0,l.jsxs)(q.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("spanId"),":"]})," ",a.id]}),c&&(0,l.jsxs)(q.A,{variant:"subtitle2",children:[(0,l.jsxs)(q.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("modelName"),":"]})," ",c]})]})},iz=({children:a})=>{let{activeTab:b,tabs:c,setActiveTab:d}=ix();return(0,l.jsxs)(ae.Ay,{value:b,children:[(0,l.jsx)(af.A,{onChange:(a,b)=>d(b),scrollButtons:!1,sx:{borderBottom:1,borderColor:"divider"},children:c.map(a=>(0,l.jsx)(ad.A,{label:a.label,value:a.value},a.value))}),a]})},iA=new class{register(a,b=0){this.transformers.push({transformer:a,priority:b}),this.transformers.sort((a,b)=>b.priority-a.priority)}transform(a,b){for(let{transformer:c}of this.transformers)try{let d=c.transform(a,b);if(null!==d)return d}catch(a){console.warn("Transformer error:",a)}return a}constructor(){this.transformers=[]}},iB=class{transform(a,b){if(!b)return null;let c={},d=!1;if(b.model&&(c.model={id:b.model},d=!0),b.settings)try{let a="string"==typeof b.settings?JSON.parse(b.settings):b.settings;a&&Object.keys(a).length>0&&(c.settings=a,d=!0)}catch(a){}let e={};void 0!==b.inputTokens&&(e.inputTokens=b.inputTokens,d=!0),void 0!==b.outputTokens&&(e.outputTokens=b.outputTokens,d=!0),void 0!==b.cost&&(e.cost=b.cost,d=!0),Object.keys(e).length>0&&(c.usage=e);let f={};if(b.finishReason&&(f.finishReason=b.finishReason,d=!0),b.output&&(f.text=b.output,d=!0),b.outputObject)try{let a="string"==typeof b.outputObject?JSON.parse(b.outputObject):b.outputObject;a&&(f.schema=a,d=!0)}catch(a){}if(Object.keys(f).length>0&&(c.response=f),b.toolCalls)try{let a="string"==typeof b.toolCalls?JSON.parse(b.toolCalls):b.toolCalls;if(Array.isArray(a)&&a.length>0){let b=a[0];c.tool={name:b.toolName||b.name,id:b.toolCallId||b.id,args:b.args||b.input,result:b.result},d=!0}}catch(a){}if(b.props)try{c.props="string"==typeof b.props?JSON.parse(b.props):b.props,d=!0}catch{c.props=b.props,d=!0}if(b.metadata)try{let a="string"==typeof b.metadata?JSON.parse(b.metadata):b.metadata;a&&Object.keys(a).length>0&&(c.metadata=a,d=!0)}catch(a){}return d?c:null}},iC={REQUEST_MODEL:"gen_ai.request.model",AI_MODEL_ID:"ai.model.id",AI_OPERATION_ID:"ai.operationId",AI_OPERATION_NAME:"operation.name",AI_MODEL_PROVIDER:"ai.model.provider",GEN_AI_REQUEST_MAX_TOKENS:"gen_ai.request.max_tokens",AI_SETTINGS_MAX_TOKENS:"ai.settings.maxTokens",GEN_AI_REQUEST_TEMPERATURE:"gen_ai.request.temperature",AI_SETTINGS_TEMPERATURE:"ai.settings.temperature",GEN_AI_REQUEST_TOP_P:"gen_ai.request.top_p",AI_SETTINGS_TOP_P:"ai.settings.topP",GEN_AI_REQUEST_PRESENCE_PENALTY:"gen_ai.request.presence_penalty",AI_SETTINGS_PRESENCE_PENALTY:"ai.settings.presencePenalty",AI_TOOL_CALL_NAME:"ai.toolCall.name",AI_TOOL_CALL_ID:"ai.toolCall.id",AI_TOOL_CALL_ARGS:"ai.toolCall.args",AI_TOOL_CALL_RESULT:"ai.toolCall.result",AI_TELEMETRY_METADATA_PREFIX:"ai.telemetry.metadata.",AI_TELEMETRY_METADATA_PROPS:"ai.telemetry.metadata.props",AI_RESPONSE_FINISH_REASON:"ai.response.finishReason",GEN_AI_RESPONSE_FINISH_REASONS:"gen_ai.response.finish_reasons",AI_RESPONSE_TEXT:"ai.response.text",AI_RESPONSE_OBJECT:"ai.response.object",GEN_AI_USAGE_INPUT_TOKENS:"gen_ai.usage.input_tokens",AI_USAGE_PROMPT_TOKENS:"ai.usage.promptTokens",GEN_AI_USAGE_OUTPUT_TOKENS:"gen_ai.usage.output_tokens",AI_USAGE_COMPLETION_TOKENS:"ai.usage.completionTokens",GEN_AI_USAGE_COST:"gen_ai.usage.cost"},iD=class{transform(a,b){try{let b={},c=!1;a[iC.AI_OPERATION_ID]&&(b.operation={id:a[iC.AI_OPERATION_ID],name:a[iC.AI_OPERATION_NAME]},c=!0),(a[iC.REQUEST_MODEL]||a[iC.AI_MODEL_ID])&&(b.model={id:a[iC.REQUEST_MODEL]||a[iC.AI_MODEL_ID],provider:a[iC.AI_MODEL_PROVIDER]},c=!0);let d={};(a[iC.GEN_AI_REQUEST_MAX_TOKENS]||a[iC.AI_SETTINGS_MAX_TOKENS])&&(d.maxTokens=a[iC.GEN_AI_REQUEST_MAX_TOKENS]||a[iC.AI_SETTINGS_MAX_TOKENS],c=!0),(a[iC.GEN_AI_REQUEST_TEMPERATURE]||a[iC.AI_SETTINGS_TEMPERATURE])&&(d.temperature=a[iC.GEN_AI_REQUEST_TEMPERATURE]||a[iC.AI_SETTINGS_TEMPERATURE],c=!0),(a[iC.GEN_AI_REQUEST_TOP_P]||a[iC.AI_SETTINGS_TOP_P])&&(d.topP=a[iC.GEN_AI_REQUEST_TOP_P]||a[iC.AI_SETTINGS_TOP_P],c=!0),(a[iC.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iC.AI_SETTINGS_PRESENCE_PENALTY])&&(d.presencePenalty=a[iC.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iC.AI_SETTINGS_PRESENCE_PENALTY],c=!0),Object.keys(d).length>0&&(b.settings=d),a[iC.AI_TOOL_CALL_NAME]&&(b.tool={name:a[iC.AI_TOOL_CALL_NAME],id:a[iC.AI_TOOL_CALL_ID],args:a[iC.AI_TOOL_CALL_ARGS]?JSON.parse(a[iC.AI_TOOL_CALL_ARGS]):void 0,result:a[iC.AI_TOOL_CALL_RESULT]},c=!0);let e={};if(Object.entries(a).forEach(([a,b])=>{if(a.startsWith(iC.AI_TELEMETRY_METADATA_PREFIX)){let d=a.replace(iC.AI_TELEMETRY_METADATA_PREFIX,"");if("props"!==d){try{e[d]=JSON.parse(b)}catch{e[d]=b}c=!0}}}),Object.keys(e).length>0&&(b.metadata=e),a[iC.AI_TELEMETRY_METADATA_PROPS])try{b.props=JSON.parse(a[iC.AI_TELEMETRY_METADATA_PROPS]),c=!0}catch{b.props=a[iC.AI_TELEMETRY_METADATA_PROPS],c=!0}let f={};if((a[iC.AI_RESPONSE_FINISH_REASON]||a[iC.GEN_AI_RESPONSE_FINISH_REASONS])&&(f.finishReason=a[iC.AI_RESPONSE_FINISH_REASON]||a[iC.GEN_AI_RESPONSE_FINISH_REASONS],c=!0),a[iC.AI_RESPONSE_TEXT]&&(f.text=a[iC.AI_RESPONSE_TEXT],c=!0),a[iC.AI_RESPONSE_OBJECT])try{f.schema=JSON.parse(a[iC.AI_RESPONSE_OBJECT]),c=!0}catch(a){}Object.keys(f).length>0&&(b.response=f);let g={};return(a[iC.GEN_AI_USAGE_INPUT_TOKENS]||a[iC.AI_USAGE_PROMPT_TOKENS])&&(g.inputTokens=a[iC.GEN_AI_USAGE_INPUT_TOKENS]||a[iC.AI_USAGE_PROMPT_TOKENS],c=!0),(a[iC.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iC.AI_USAGE_COMPLETION_TOKENS])&&(g.outputTokens=a[iC.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iC.AI_USAGE_COMPLETION_TOKENS],c=!0),a[iC.GEN_AI_USAGE_COST]&&(g.cost=a[iC.GEN_AI_USAGE_COST],c=!0),Object.keys(g).length>0&&(b.usage=g),c?b:null}catch(a){return null}}};iA.register(new iB,10),iA.register(new iD,5);var iE=({attributes:a})=>(0,l.jsx)(o.default,{position:"relative",children:(0,l.jsx)(o.default,{position:"absolute",left:0,right:0,sx:{width:"100%",overflow:"hidden","& .cm-editor":{borderRadius:1,fontSize:"14px",maxWidth:"100%",overflow:"hidden"}},children:(0,l.jsx)(G.Ay,{value:JSON.stringify(a,null,2),extensions:[(0,ah.Pq)()],basicSetup:{lineNumbers:!0,foldGutter:!0,highlightActiveLine:!1,dropCursor:!1},editable:!1,style:{fontSize:"13px",maxWidth:"100%"},height:"100%"})})}),iF=()=>{let{transformedAttributes:a}=(()=>{let{selectedSpan:a}=hA(),b=(0,k.useMemo)(()=>{if(!a?.data?.attributes)return{};try{return JSON.parse(a.data.attributes)}catch{return{}}},[a]),c=(0,k.useMemo)(()=>((a,b)=>{try{return iA.transform(a,b)}catch(b){return a}})(b,a?.data),[b,a?.data]);return{rawAttributes:b,transformedAttributes:c,isLoading:!a}})();return(0,l.jsx)(({children:a})=>(0,l.jsx)(ag.A,{value:"attributes",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),{children:(0,l.jsx)(iE,{attributes:a})})},iG=({children:a})=>(0,l.jsx)(o.default,{component:"pre",sx:{backgroundColor:"grey.100",p:2,borderRadius:1,overflow:"auto",mb:2,"& code":{fontFamily:"monospace",whiteSpace:"break-spaces",display:"block"}},children:(0,l.jsx)("code",{children:a})}),iH=({content:a})=>(0,l.jsx)(al.oz,{components:{p:({children:a})=>(0,l.jsx)(q.A,{variant:"body2",sx:{whiteSpace:"pre-wrap",mb:1},children:a}),pre:({children:a})=>(0,l.jsx)(iG,{children:a}),code:a=>(0,l.jsx)(q.A,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",p:.5,borderRadius:.5},children:a.children}),strong:({children:a})=>(0,l.jsx)(q.A,{component:"span",sx:{fontWeight:"bold",color:"primary.main"},children:a})},children:a}),iI=({prompt:a})=>{let{t:b}=hA(),c=(a=>"string"==typeof a?a:a.map(a=>"string"==typeof a?a:"text"===a.type?a.text:"tool-call"===a.type||"tool-result"===a.type?(a=>"tool-call"===a.type?`**Tool Call**: \`${a.toolName}\`
|
|
2
2
|
\`\`\`json
|
|
3
3
|
${JSON.stringify(a.args,null,2)}
|
|
4
4
|
\`\`\``:"tool-result"===a.type?`**Tool Result**:
|
|
@@ -19,4 +19,4 @@ ${JSON.stringify(d,null,2)}
|
|
|
19
19
|
\`\`\``),e})(a?.toolCall):null,e=!a?.text&&!c&&!d&&a?.objectResponse?(a=>{if(!a)return null;try{return`**Response Object**:
|
|
20
20
|
\`\`\`json
|
|
21
21
|
${JSON.stringify(a,null,2)}
|
|
22
|
-
\`\`\``}catch{return null}})(a?.objectResponse):null,f=a?.text||c||d||e,g=!!a?.objectResponse,h=!!(a?.toolCall?.name||a?.toolCall?.toolName);return(0,l.jsxs)(ai.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,l.jsx)(aj.A,{expandIcon:(0,l.jsx)(b6,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,l.jsx)(b6,{icon:h?"mdi:tools":g?"mdi:code-json":"mdi:robot"}),(0,l.jsx)(q.A,{fontWeight:700,variant:"body2",children:b(h?"tool":"assistant")})]})}),(0,l.jsx)(ak.A,{children:f?(0,l.jsx)(iH,{content:f}):(0,l.jsx)(q.A,{variant:"body2",children:b("noOutput")})})]})},iL=({outputData:a})=>a?(0,l.jsx)(iK,{outputData:a}):null,iM=()=>{let{prompts:a,outputData:b}=(()=>{let{selectedSpan:a}=hA();return{prompts:(0,k.useMemo)(()=>(a=>{if(!a?.data?.input)return[];try{let b=JSON.parse(a.data.input);return Array.isArray(b)?b:[]}catch{return[]}})(a),[a]),outputData:(0,k.useMemo)(()=>(a=>{if(!a?.data?.output&&!a?.data?.outputObject&&!a?.data?.toolCalls)return null;let b=null,c=a.data.toolCalls;if(c&&"string"==typeof c)try{c=JSON.parse(c),Array.isArray(c)&&c.length>0&&(b=c[0])}catch{c=void 0}let d=null;if(a.data.outputObject)try{d="string"==typeof a.data.outputObject?JSON.parse(a.data.outputObject):a.data.outputObject}catch{d=null}return{text:a.data.output||void 0,toolCalls:c?"string"==typeof c?c:JSON.stringify(c):void 0,toolCall:b,objectResponse:d}})(a),[a]),isLoading:!a}})(),{span:c}=ix();return(0,l.jsxs)(ag.A,{sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},value:"inputOutput",children:[(0,l.jsx)(iJ,{prompts:a}),(0,l.jsx)(iL,{outputData:b}),c.data.statusMessage&&(0,l.jsx)(am.A,{severity:"error",sx:{mt:2},children:c.data.statusMessage})]})},iN=({children:a})=>(0,l.jsx)(ag.A,{value:"evaluation",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),iO=({name:a,score:b,label:c,reason:d,source:e})=>(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:a||"-"}),(0,l.jsx)(x.A,{children:b}),(0,l.jsx)(x.A,{children:c}),(0,l.jsx)(x.A,{sx:{whiteSpace:"pre-wrap"},children:d}),(0,l.jsx)(x.A,{children:(0,l.jsx)(ab.A,{size:"small",label:e||"eval",variant:"annotation"===e?"filled":"outlined",color:"annotation"===e?"primary":"default"})})]}),iP=(0,k.createContext)(void 0),iQ=()=>{let a=(0,k.useContext)(iP);if(!a)throw Error("useEvaluationContext must be used within EvaluationProvider");return a},iR=({children:a,canAddAnnotation:b,scores:c,isLoading:d})=>{let[e,f]=(0,k.useState)(!1);return(0,l.jsx)(iP.Provider,{value:{scores:c,isLoading:d,openAddAnnotationDialog:e,setOpenAddAnnotationDialog:f,canAddAnnotation:b},children:a})},iS=()=>{let{canAddAnnotation:a,isLoading:b,scores:c}=iQ(),{t:d}=hA();return!b||c.length>0?null:(0,l.jsxs)(o.default,{children:[(0,l.jsxs)(r.A,{direction:"row",justifyContent:"space-between",alignItems:"center",sx:{mb:1},children:[(0,l.jsx)(o.default,{}),a&&(0,l.jsx)(w.A,{variant:"rounded",width:120,height:32})]}),(0,l.jsx)(L.A,{component:aa.A,variant:"outlined",children:(0,l.jsxs)(M.A,{children:[(0,l.jsx)(A.A,{children:(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:d("evaluationName")}),(0,l.jsx)(x.A,{children:d("evaluationScore")}),(0,l.jsx)(x.A,{children:d("evaluationLabel")}),(0,l.jsx)(x.A,{children:d("evaluationReason")}),(0,l.jsx)(x.A,{width:120,children:"Source"})]})}),(0,l.jsx)(N.A,{children:Array.from({length:3}).map((a,b)=>(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"60%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"40%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"50%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"80%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"60%"})})]},b))})]})})]})},iT=({emptyContentImgUrl:a})=>{let{scores:b,isLoading:c}=iQ(),{t:d}=hA();return c?(0,l.jsx)(iS,{}):(0,l.jsx)(o.default,{children:(0,l.jsx)(L.A,{component:aa.A,variant:"outlined",children:(0,l.jsxs)(M.A,{children:[(0,l.jsx)(A.A,{children:(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:d("evaluationName")}),(0,l.jsx)(x.A,{children:d("evaluationScore")}),(0,l.jsx)(x.A,{children:d("evaluationLabel")}),(0,l.jsx)(x.A,{children:d("evaluationReason")}),(0,l.jsx)(x.A,{width:120,children:"Source"})]})}),(0,l.jsxs)(N.A,{children:[b.map((a,b)=>(0,l.jsx)(iO,{name:a.name,score:a.score,label:a.label,reason:a.reason,source:a.source},b)),(0,l.jsx)(hu,{title:d("noEvaluationData"),sx:{p:3},notFound:!c&&0===b.length,imgUrl:a})]})]})})})}},9485:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call ThemeProvider() from the server but ThemeProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/theme/theme-provider.tsx","ThemeProvider")},13746:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,58671,23)),Promise.resolve().then(c.t.bind(c,56542,23)),Promise.resolve().then(c.t.bind(c,88248,23)),Promise.resolve().then(c.t.bind(c,49743,23)),Promise.resolve().then(c.t.bind(c,96231,23)),Promise.resolve().then(c.t.bind(c,10959,23)),Promise.resolve().then(c.t.bind(c,72041,23)),Promise.resolve().then(c.t.bind(c,95094,23)),Promise.resolve().then(c.t.bind(c,67487,23))},19671:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});let d=process.env.NEXT_PUBLIC_AGENTMARK_API_PORT||"9418",e=`http://localhost:${d}`},21585:(a,b,c)=>{"use strict";c.d(b,{theme:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call theme() from the server but theme is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/theme/theme.ts","theme")},21867:(a,b,c)=>{"use strict";c.d(b,{WL:()=>g,N_:()=>k});var d=c(78157);c(31768);var e=c(86841),f=c(77438);let g=({icon:a,width:b=20,sx:c,...g})=>(0,d.jsx)(f.default,{component:e.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...g});var h=c(43163),i=c(94496);let j=c.n(i)(),k=a=>(0,d.jsx)(h.default,{component:j,...a});c(89021)},35861:(a,b,c)=>{Promise.resolve().then(c.bind(c,86841)),Promise.resolve().then(c.bind(c,56362)),Promise.resolve().then(c.bind(c,77438)),Promise.resolve().then(c.bind(c,43163)),Promise.resolve().then(c.bind(c,74774)),Promise.resolve().then(c.t.bind(c,94496,23)),Promise.resolve().then(c.bind(c,89021)),Promise.resolve().then(c.bind(c,38755)),Promise.resolve().then(c.bind(c,52575))},37306:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,48365,23)),Promise.resolve().then(c.t.bind(c,64596,23)),Promise.resolve().then(c.t.bind(c,56186,23)),Promise.resolve().then(c.t.bind(c,67805,23)),Promise.resolve().then(c.t.bind(c,27561,23)),Promise.resolve().then(c.t.bind(c,47569,23)),Promise.resolve().then(c.t.bind(c,42747,23)),Promise.resolve().then(c.t.bind(c,56676,23)),Promise.resolve().then(c.bind(c,97225))},38755:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>g});var d=c(78157),e=c(94063),f=c(52575);let g=({children:a})=>(0,d.jsx)(e.A,{theme:f.theme,children:a})},41927:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>i});var d=c(5939);c(11110),c(47399),c(3498);var e=c(94034),f=c(65467);c(21585);var g=c(9485),h=c(53476);function i({children:a}){return(0,d.jsx)("html",{lang:"en",style:{height:"100%"},children:(0,d.jsx)("body",{style:{height:"100%",margin:0},children:(0,d.jsx)(f.A,{children:(0,d.jsx)(h.default,{children:(0,d.jsx)(g.ThemeProvider,{children:(0,d.jsx)(e.Layout,{children:a})})})})})})}},52575:(a,b,c)=>{"use strict";c.d(b,{theme:()=>d});let d=(0,c(74735).A)({})},68720:(a,b,c)=>{var d={"./en.json":[81547,547]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=68720,a.exports=e},80954:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(81761).A)(async()=>({locale:"en",messages:(await c(68720)("./en.json")).default}))},89021:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>C});var d=c(78157),e=c(74222);let f=({children:a})=>(0,d.jsx)(e.A,{maxWidth:"xl",sx:{ml:"240px",height:"100%",pt:"90px",width:"calc(100% - 240px)"},children:a});var g=c(54968),h=c(94554);let i=()=>(0,d.jsx)(g.A,{children:(0,d.jsx)(h.A,{sx:{height:"100%"},children:"Header"})});var j=c(80945),k=c(53692),l=c(28669),m=c(90410),n=c(42987),o=c(91138),p=c(50498),q=c(30032),r=c(32924),s=c(21867),t=c(71159),u=c(72396),v=c(72668),w=c(91712);let x={home:"/",requests:"/requests",traces:"/traces",sessions:"/sessions",experiments:"/experiments"},y=a=>(0,d.jsx)(s.WL,{icon:a}),z={requests:y("gravity-ui:list-check"),traces:y("oui:apm-trace"),sessions:y("mdi:account-group"),experiments:y("mdi:flask-outline")},A=(0,u.A)(j.Ay)({width:240,flexShrink:0,boxSizing:"border-box",[`& .${k.A.paper}`]:{width:240,boxSizing:"border-box"}}),B=()=>{let a=(0,v.c)(),b=(0,t.usePathname)(),c={requests:{label:a("requests.title"),icon:z.requests,href:x.requests},traces:{label:a("traces.title"),icon:z.traces,href:x.traces},sessions:{label:a("sessions.title"),icon:z.sessions,href:x.sessions},experiments:{label:a("experiments.title"),icon:z.experiments,href:x.experiments}};return(0,d.jsxs)(A,{variant:"permanent",children:[(0,d.jsx)(h.A,{children:(0,d.jsx)(s.N_,{href:x.home,children:(0,d.jsxs)(l.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,d.jsx)(w.default,{src:"/logo.svg",alt:"Agentmark",width:24,height:24}),(0,d.jsx)(m.A,{variant:"h6",children:"Agentmark"})]})})}),(0,d.jsx)(n.A,{dense:!0,children:Object.values(c).map(a=>(0,d.jsx)(o.Ay,{component:s.N_,href:a.href,children:(0,d.jsxs)(p.A,{selected:b===a.href,children:[(0,d.jsx)(q.A,{sx:{color:b===a.href?"primary.main":"text.secondary"},children:a.icon}),(0,d.jsx)(r.A,{primary:a.label,sx:{color:b===a.href?"primary.main":"text.secondary"}})]})},a.label))})]})},C=({children:a})=>(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{}),(0,d.jsx)(B,{}),(0,d.jsx)(f,{children:a})]})},94005:(a,b,c)=>{Promise.resolve().then(c.bind(c,47399)),Promise.resolve().then(c.bind(c,53476)),Promise.resolve().then(c.bind(c,48248)),Promise.resolve().then(c.bind(c,57618)),Promise.resolve().then(c.bind(c,69980)),Promise.resolve().then(c.t.bind(c,3498,23)),Promise.resolve().then(c.bind(c,94034)),Promise.resolve().then(c.bind(c,9485)),Promise.resolve().then(c.bind(c,21585))},94034:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call Layout() from the server but Layout is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/components/layout/layout.tsx","Layout")}};
|
|
22
|
+
\`\`\``}catch{return null}})(a?.objectResponse):null,f=a?.text||c||d||e,g=!!a?.objectResponse,h=!!(a?.toolCall?.name||a?.toolCall?.toolName);return(0,l.jsxs)(ai.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,l.jsx)(aj.A,{expandIcon:(0,l.jsx)(b6,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,l.jsxs)(o.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,l.jsx)(b6,{icon:h?"mdi:tools":g?"mdi:code-json":"mdi:robot"}),(0,l.jsx)(q.A,{fontWeight:700,variant:"body2",children:b(h?"tool":"assistant")})]})}),(0,l.jsx)(ak.A,{children:f?(0,l.jsx)(iH,{content:f}):(0,l.jsx)(q.A,{variant:"body2",children:b("noOutput")})})]})},iL=({outputData:a})=>a?(0,l.jsx)(iK,{outputData:a}):null,iM=()=>{let{prompts:a,outputData:b}=(()=>{let{selectedSpan:a}=hA();return{prompts:(0,k.useMemo)(()=>(a=>{if(!a?.data?.input)return[];let b=a.data.input;try{let a=JSON.parse(b);if(Array.isArray(a))return a;if(a&&"object"==typeof a&&Array.isArray(a.messages))return a.messages;return[{role:"user",content:"string"==typeof a?a:b}]}catch{return[{role:"user",content:b}]}})(a),[a]),outputData:(0,k.useMemo)(()=>(a=>{if(!a?.data?.output&&!a?.data?.outputObject&&!a?.data?.toolCalls)return null;let b=null,c=a.data.toolCalls;if(c&&"string"==typeof c)try{c=JSON.parse(c),Array.isArray(c)&&c.length>0&&(b=c[0])}catch{c=void 0}let d=null;if(a.data.outputObject)try{d="string"==typeof a.data.outputObject?JSON.parse(a.data.outputObject):a.data.outputObject}catch{d=null}return{text:a.data.output||void 0,toolCalls:c?"string"==typeof c?c:JSON.stringify(c):void 0,toolCall:b,objectResponse:d}})(a),[a]),isLoading:!a}})(),{span:c}=ix();return(0,l.jsxs)(ag.A,{sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},value:"inputOutput",children:[(0,l.jsx)(iJ,{prompts:a}),(0,l.jsx)(iL,{outputData:b}),c.data.statusMessage&&(0,l.jsx)(am.A,{severity:"error",sx:{mt:2},children:c.data.statusMessage})]})},iN=({children:a})=>(0,l.jsx)(ag.A,{value:"evaluation",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),iO=({name:a,score:b,label:c,reason:d,source:e})=>(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:a||"-"}),(0,l.jsx)(x.A,{children:b}),(0,l.jsx)(x.A,{children:c}),(0,l.jsx)(x.A,{sx:{whiteSpace:"pre-wrap"},children:d}),(0,l.jsx)(x.A,{children:(0,l.jsx)(Z.A,{size:"small",label:e||"eval",variant:"annotation"===e?"filled":"outlined",color:"annotation"===e?"primary":"default"})})]}),iP=(0,k.createContext)(void 0),iQ=()=>{let a=(0,k.useContext)(iP);if(!a)throw Error("useEvaluationContext must be used within EvaluationProvider");return a},iR=({children:a,canAddAnnotation:b,scores:c,isLoading:d})=>{let[e,f]=(0,k.useState)(!1);return(0,l.jsx)(iP.Provider,{value:{scores:c,isLoading:d,openAddAnnotationDialog:e,setOpenAddAnnotationDialog:f,canAddAnnotation:b},children:a})},iS=()=>{let{canAddAnnotation:a,isLoading:b,scores:c}=iQ(),{t:d}=hA();return!b||c.length>0?null:(0,l.jsxs)(o.default,{children:[(0,l.jsxs)(r.A,{direction:"row",justifyContent:"space-between",alignItems:"center",sx:{mb:1},children:[(0,l.jsx)(o.default,{}),a&&(0,l.jsx)(w.A,{variant:"rounded",width:120,height:32})]}),(0,l.jsx)(L.A,{component:ab.A,variant:"outlined",children:(0,l.jsxs)(M.A,{children:[(0,l.jsx)(A.A,{children:(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:d("evaluationName")}),(0,l.jsx)(x.A,{children:d("evaluationScore")}),(0,l.jsx)(x.A,{children:d("evaluationLabel")}),(0,l.jsx)(x.A,{children:d("evaluationReason")}),(0,l.jsx)(x.A,{width:120,children:"Source"})]})}),(0,l.jsx)(N.A,{children:Array.from({length:3}).map((a,b)=>(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"60%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"40%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"50%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"80%"})}),(0,l.jsx)(x.A,{children:(0,l.jsx)(w.A,{variant:"text",width:"60%"})})]},b))})]})})]})},iT=({emptyContentImgUrl:a})=>{let{scores:b,isLoading:c}=iQ(),{t:d}=hA();return c?(0,l.jsx)(iS,{}):(0,l.jsx)(o.default,{children:(0,l.jsx)(L.A,{component:ab.A,variant:"outlined",children:(0,l.jsxs)(M.A,{children:[(0,l.jsx)(A.A,{children:(0,l.jsxs)(y.A,{children:[(0,l.jsx)(x.A,{children:d("evaluationName")}),(0,l.jsx)(x.A,{children:d("evaluationScore")}),(0,l.jsx)(x.A,{children:d("evaluationLabel")}),(0,l.jsx)(x.A,{children:d("evaluationReason")}),(0,l.jsx)(x.A,{width:120,children:"Source"})]})}),(0,l.jsxs)(N.A,{children:[b.map((a,b)=>(0,l.jsx)(iO,{name:a.name,score:a.score,label:a.label,reason:a.reason,source:a.source},b)),(0,l.jsx)(hu,{title:d("noEvaluationData"),sx:{p:3},notFound:!c&&0===b.length,imgUrl:a})]})]})})})}},9485:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call ThemeProvider() from the server but ThemeProvider is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/theme/theme-provider.tsx","ThemeProvider")},13746:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,58671,23)),Promise.resolve().then(c.t.bind(c,56542,23)),Promise.resolve().then(c.t.bind(c,88248,23)),Promise.resolve().then(c.t.bind(c,49743,23)),Promise.resolve().then(c.t.bind(c,96231,23)),Promise.resolve().then(c.t.bind(c,10959,23)),Promise.resolve().then(c.t.bind(c,72041,23)),Promise.resolve().then(c.t.bind(c,95094,23)),Promise.resolve().then(c.t.bind(c,67487,23))},19671:(a,b,c)=>{"use strict";c.d(b,{H:()=>e});let d=process.env.NEXT_PUBLIC_AGENTMARK_API_PORT||"9418",e=`http://localhost:${d}`},21585:(a,b,c)=>{"use strict";c.d(b,{theme:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call theme() from the server but theme is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/theme/theme.ts","theme")},21867:(a,b,c)=>{"use strict";c.d(b,{WL:()=>g,N_:()=>k});var d=c(78157);c(31768);var e=c(86841),f=c(77438);let g=({icon:a,width:b=20,sx:c,...g})=>(0,d.jsx)(f.default,{component:e.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...g});var h=c(43163),i=c(94496);let j=c.n(i)(),k=a=>(0,d.jsx)(h.default,{component:j,...a});c(89021)},35861:(a,b,c)=>{Promise.resolve().then(c.bind(c,86841)),Promise.resolve().then(c.bind(c,56362)),Promise.resolve().then(c.bind(c,77438)),Promise.resolve().then(c.bind(c,43163)),Promise.resolve().then(c.bind(c,74774)),Promise.resolve().then(c.t.bind(c,94496,23)),Promise.resolve().then(c.bind(c,89021)),Promise.resolve().then(c.bind(c,38755)),Promise.resolve().then(c.bind(c,52575))},37306:(a,b,c)=>{Promise.resolve().then(c.t.bind(c,48365,23)),Promise.resolve().then(c.t.bind(c,64596,23)),Promise.resolve().then(c.t.bind(c,56186,23)),Promise.resolve().then(c.t.bind(c,67805,23)),Promise.resolve().then(c.t.bind(c,27561,23)),Promise.resolve().then(c.t.bind(c,47569,23)),Promise.resolve().then(c.t.bind(c,42747,23)),Promise.resolve().then(c.t.bind(c,56676,23)),Promise.resolve().then(c.bind(c,97225))},38755:(a,b,c)=>{"use strict";c.d(b,{ThemeProvider:()=>g});var d=c(78157),e=c(94063),f=c(52575);let g=({children:a})=>(0,d.jsx)(e.A,{theme:f.theme,children:a})},41927:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>i});var d=c(5939);c(11110),c(47399),c(3498);var e=c(94034),f=c(65467);c(21585);var g=c(9485),h=c(53476);function i({children:a}){return(0,d.jsx)("html",{lang:"en",style:{height:"100%"},children:(0,d.jsx)("body",{style:{height:"100%",margin:0},children:(0,d.jsx)(f.A,{children:(0,d.jsx)(h.default,{children:(0,d.jsx)(g.ThemeProvider,{children:(0,d.jsx)(e.Layout,{children:a})})})})})})}},52575:(a,b,c)=>{"use strict";c.d(b,{theme:()=>d});let d=(0,c(74735).A)({})},68720:(a,b,c)=>{var d={"./en.json":[81547,547]};function e(a){if(!c.o(d,a))return Promise.resolve().then(()=>{var b=Error("Cannot find module '"+a+"'");throw b.code="MODULE_NOT_FOUND",b});var b=d[a],e=b[0];return c.e(b[1]).then(()=>c.t(e,19))}e.keys=()=>Object.keys(d),e.id=68720,a.exports=e},80954:(a,b,c)=>{"use strict";c.d(b,{A:()=>d});let d=(0,c(81761).A)(async()=>({locale:"en",messages:(await c(68720)("./en.json")).default}))},89021:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>C});var d=c(78157),e=c(74222);let f=({children:a})=>(0,d.jsx)(e.A,{maxWidth:"xl",sx:{ml:"240px",height:"100%",pt:"90px",width:"calc(100% - 240px)"},children:a});var g=c(54968),h=c(94554);let i=()=>(0,d.jsx)(g.A,{children:(0,d.jsx)(h.A,{sx:{height:"100%"},children:"Header"})});var j=c(80945),k=c(53692),l=c(28669),m=c(90410),n=c(42987),o=c(91138),p=c(50498),q=c(30032),r=c(32924),s=c(21867),t=c(71159),u=c(72396),v=c(72668),w=c(91712);let x={home:"/",requests:"/requests",traces:"/traces",sessions:"/sessions",experiments:"/experiments"},y=a=>(0,d.jsx)(s.WL,{icon:a}),z={requests:y("gravity-ui:list-check"),traces:y("oui:apm-trace"),sessions:y("mdi:account-group"),experiments:y("mdi:flask-outline")},A=(0,u.A)(j.Ay)({width:240,flexShrink:0,boxSizing:"border-box",[`& .${k.A.paper}`]:{width:240,boxSizing:"border-box"}}),B=()=>{let a=(0,v.c)(),b=(0,t.usePathname)(),c={requests:{label:a("requests.title"),icon:z.requests,href:x.requests},traces:{label:a("traces.title"),icon:z.traces,href:x.traces},sessions:{label:a("sessions.title"),icon:z.sessions,href:x.sessions},experiments:{label:a("experiments.title"),icon:z.experiments,href:x.experiments}};return(0,d.jsxs)(A,{variant:"permanent",children:[(0,d.jsx)(h.A,{children:(0,d.jsx)(s.N_,{href:x.home,children:(0,d.jsxs)(l.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,d.jsx)(w.default,{src:"/logo.svg",alt:"Agentmark",width:24,height:24}),(0,d.jsx)(m.A,{variant:"h6",children:"Agentmark"})]})})}),(0,d.jsx)(n.A,{dense:!0,children:Object.values(c).map(a=>(0,d.jsx)(o.Ay,{component:s.N_,href:a.href,children:(0,d.jsxs)(p.A,{selected:b===a.href,children:[(0,d.jsx)(q.A,{sx:{color:b===a.href?"primary.main":"text.secondary"},children:a.icon}),(0,d.jsx)(r.A,{primary:a.label,sx:{color:b===a.href?"primary.main":"text.secondary"}})]})},a.label))})]})},C=({children:a})=>(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{}),(0,d.jsx)(B,{}),(0,d.jsx)(f,{children:a})]})},94005:(a,b,c)=>{Promise.resolve().then(c.bind(c,47399)),Promise.resolve().then(c.bind(c,53476)),Promise.resolve().then(c.bind(c,48248)),Promise.resolve().then(c.bind(c,57618)),Promise.resolve().then(c.bind(c,69980)),Promise.resolve().then(c.t.bind(c,3498,23)),Promise.resolve().then(c.bind(c,94034)),Promise.resolve().then(c.bind(c,9485)),Promise.resolve().then(c.bind(c,21585))},94034:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>d});let d=(0,c(25459).registerClientReference)(function(){throw Error("Attempted to call Layout() from the server but Layout is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agentmark/agentmark/packages/cli/src/components/layout/layout.tsx","Layout")}};
|