@agentmark-ai/cli 0.8.0 → 0.8.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.
Files changed (58) hide show
  1. package/dist/.next/BUILD_ID +1 -1
  2. package/dist/.next/app-build-manifest.json +16 -16
  3. package/dist/.next/build-manifest.json +5 -5
  4. package/dist/.next/cache/.previewinfo +1 -1
  5. package/dist/.next/cache/.rscinfo +1 -1
  6. package/dist/.next/cache/.tsbuildinfo +1 -1
  7. package/dist/.next/cache/config.json +3 -3
  8. package/dist/.next/cache/webpack/client-production/0.pack +0 -0
  9. package/dist/.next/cache/webpack/client-production/index.pack +0 -0
  10. package/dist/.next/cache/webpack/edge-server-production/index.pack +0 -0
  11. package/dist/.next/cache/webpack/server-production/0.pack +0 -0
  12. package/dist/.next/cache/webpack/server-production/index.pack +0 -0
  13. package/dist/.next/diagnostics/framework.json +1 -1
  14. package/dist/.next/images-manifest.json +1 -0
  15. package/dist/.next/prerender-manifest.json +12 -12
  16. package/dist/.next/required-server-files.json +1 -0
  17. package/dist/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  18. package/dist/.next/server/app/_not-found.html +1 -1
  19. package/dist/.next/server/app/_not-found.rsc +5 -5
  20. package/dist/.next/server/app/index.html +1 -1
  21. package/dist/.next/server/app/index.rsc +5 -5
  22. package/dist/.next/server/app/page_client-reference-manifest.js +1 -1
  23. package/dist/.next/server/app/requests/page.js +1 -1
  24. package/dist/.next/server/app/requests/page.js.nft.json +1 -1
  25. package/dist/.next/server/app/requests/page_client-reference-manifest.js +1 -1
  26. package/dist/.next/server/app/requests.html +1 -1
  27. package/dist/.next/server/app/requests.rsc +6 -6
  28. package/dist/.next/server/app/sessions/page.js +1 -1
  29. package/dist/.next/server/app/sessions/page.js.nft.json +1 -1
  30. package/dist/.next/server/app/sessions/page_client-reference-manifest.js +1 -1
  31. package/dist/.next/server/app/sessions.html +1 -1
  32. package/dist/.next/server/app/sessions.rsc +6 -6
  33. package/dist/.next/server/app/traces/page.js +1 -1
  34. package/dist/.next/server/app/traces/page.js.nft.json +1 -1
  35. package/dist/.next/server/app/traces/page_client-reference-manifest.js +1 -1
  36. package/dist/.next/server/app/traces.html +1 -1
  37. package/dist/.next/server/app/traces.rsc +6 -6
  38. package/dist/.next/server/chunks/203.js +2 -2
  39. package/dist/.next/server/chunks/478.js +3 -3
  40. package/dist/.next/server/chunks/{116.js → 525.js} +2 -2
  41. package/dist/.next/server/middleware-build-manifest.js +1 -1
  42. package/dist/.next/server/pages/404.html +1 -1
  43. package/dist/.next/server/pages/500.html +1 -1
  44. package/dist/.next/server/server-reference-manifest.json +1 -1
  45. package/dist/.next/static/chunks/{18-0515d8157d1ae939.js → 18-175d23c8e99dd60b.js} +1 -1
  46. package/dist/.next/static/chunks/{187-8c4e6fed3a2501aa.js → 397-361c64519c49911b.js} +2 -2
  47. package/dist/.next/static/chunks/41-f3c56d50aeb34db9.js +1 -0
  48. package/dist/.next/static/chunks/{602-dd355dd113885069.js → 602-1f23cff16de7187a.js} +1 -1
  49. package/dist/.next/static/chunks/app/requests/{page-def5e5947295b8c0.js → page-91666bcc2877f9ee.js} +1 -1
  50. package/dist/.next/static/chunks/app/sessions/{page-1147c0f270492c51.js → page-679425471f82f56d.js} +1 -1
  51. package/dist/.next/static/chunks/app/traces/{page-603ab43acc11ae0b.js → page-15500a82980abfc8.js} +1 -1
  52. package/dist/.next/static/chunks/main-1ea1f2f1828940ab.js +1 -0
  53. package/dist/.next/trace +54 -54
  54. package/package.json +3 -3
  55. package/dist/.next/static/chunks/41-796a19a381fe4101.js +0 -1
  56. package/dist/.next/static/chunks/main-b8bbbd091fdc2ee4.js +0 -1
  57. /package/dist/.next/static/{XS0BI9XyWUXrRV32gzewv → WSLcfmCh7VwiFiCq08KUc}/_buildManifest.js +0 -0
  58. /package/dist/.next/static/{XS0BI9XyWUXrRV32gzewv → WSLcfmCh7VwiFiCq08KUc}/_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:()=>ik,Ds:()=>i8,Eh:()=>ie,Ek:()=>il,FQ:()=>i2,IO:()=>jg,K2:()=>aI,L8:()=>h4,LE:()=>ih,Lh:()=>jf,Ow:()=>h2,Q$:()=>i1,QK:()=>ii,V5:()=>jm,Zc:()=>iY,_B:()=>iv,_h:()=>iz,eP:()=>iZ,ep:()=>io,gF:()=>i_,lv:()=>hs,qx:()=>h6,rr:()=>im,sK:()=>ij,t3:()=>id,uz:()=>jk,vG:()=>ig});var d,e,f,g,h,i=c(28669),j=c(90410),k=c(39880),l=c(81008),m=c(7502),n=c(20776),o=c(31768),p=c(86841),q=c(77438),r=c(78157),s=c(26743),t=c(17692),u=c(98770),v=c(13666),w=c(33372),x=c(21127),y=c(73517),z=c(18236),A=c(21335),B=c(84155),C=c(40053),D=c(66075),E=c(74034),F=c(50339),G=c(37217),H=c(72396),I=c(86670),J=c(79103),K=c(89508),L=c(13621),M=c(37703),N=c(5955),O=c(53678),P=c(51701),Q=c(80945),R=c(93474),S=c(13647),T=c(48244),U=c(48128),V=c(85506),W=c(54862),X=c(39553),Y=c(87598),Z=c(2952),$=c(53480);c(41973);var _=c(31933),aa=c(24672),ab=c(73995),ac=c(48756),ad=c(96262),ae=c(50392),af=c(36473),ag=c(52830),ah=c(22749),ai=c(80142),aj=c(27132),ak=c(40975),al=c(20969);c(13395);var am=Object.create,an=Object.defineProperty,ao=Object.getOwnPropertyDescriptor,ap=Object.getOwnPropertyNames,aq=Object.getPrototypeOf,ar=Object.prototype.hasOwnProperty,as=(a,b)=>function(){return b||(0,a[ap(a)[0]])((b={exports:{}}).exports,b),b.exports},at=(a,b,c)=>(c=null!=a?am(aq(a)):{},((a,b,c,d)=>{if(b&&"object"==typeof b||"function"==typeof b)for(let e of ap(b))ar.call(a,e)||e===c||an(a,e,{get:()=>b[e],enumerable:!(d=ao(b,e))||d.enumerable});return a})(!b&&a&&a.__esModule?c:an(c,"default",{value:a,enumerable:!0}),a)),au=as({"../../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}});as({"../../node_modules/react-is/cjs/react-is.development.js"(a){}});var av=as({"../../node_modules/react-is/index.js"(a,b){b.exports=au()}}),aw=as({"../../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}}),ax=as({"../../node_modules/prop-types/lib/ReactPropTypesSecret.js"(a,b){b.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"}}),ay=as({"../../node_modules/prop-types/lib/has.js"(a,b){b.exports=Function.call.bind(Object.prototype.hasOwnProperty)}}),az=as({"../../node_modules/prop-types/checkPropTypes.js"(a,b){function c(a,b,c,d,e){}c.resetWarningCache=function(){},b.exports=c}});as({"../../node_modules/prop-types/factoryWithTypeCheckers.js"(a,b){var c=av(),d=aw(),e=ax(),f=ay(),g=az(),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 aA=as({"../../node_modules/prop-types/factoryWithThrowingShims.js"(a,b){var c=ax();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}}}),aB=as({"../../node_modules/prop-types/index.js"(a,b){b.exports=aA()()}}),aC=as({"../../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}});as({"../../node_modules/@mui/utils/node_modules/react-is/cjs/react-is.development.js"(a){}});var aD=as({"../../node_modules/@mui/utils/node_modules/react-is/index.js"(a,b){b.exports=aC()}}),aE=(0,o.forwardRef)(({icon:a,width:b=20,sx:c,...d},e)=>(0,r.jsx)(q.default,{ref:e,component:p.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...d}));function aF({title:a,imgUrl:b,action:c,filled:d=!0,description:e,sx:f,...g}){return(0,r.jsxs)(i.A,{flexGrow:1,alignItems:"center",justifyContent:"center",sx:{px:3,height:500,...d&&{borderRadius:2,bgcolor:a=>(0,s.X4)(a.palette.grey[500],.04),border:a=>`dashed 1px ${(0,s.X4)(a.palette.grey[500],.08)}`},...f},...g,children:[b?(0,r.jsx)(q.default,{component:"img",alt:"empty content",src:b||"/assets/icons/empty/ic_content.svg",sx:{width:1,maxWidth:160}}):(0,r.jsx)(aE,{sx:{color:"text.disabled"},icon:"fluent:collections-empty-20-filled",width:160}),a&&(0,r.jsx)(j.A,{variant:"h6",component:"span",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:a}),e&&(0,r.jsx)(j.A,{variant:"caption",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:e}),c&&c]})}var aG=(0,o.memo)(function(){return(0,r.jsxs)(t.M,{children:[(0,r.jsx)(u.U,{startIcon:(0,r.jsx)(aE,{icon:"solar:eye-bold"}),children:"Columns"}),(0,r.jsx)(v.P,{startIcon:(0,r.jsx)(aE,{icon:"solar:filter-bold"}),children:"Filters"})]})}),aH=({t:a,emptyContentImgUrl:b,...c})=>{let d=(0,o.useMemo)(()=>({toolbar:aG,noRowsOverlay:()=>(0,r.jsx)(aF,{sx:{margin:2},title:a("noResults"),imgUrl:b}),noResultsOverlay:()=>(0,r.jsx)(aF,{title:a("noResults"),sx:{py:10},imgUrl:b})}),[a,b]);return(0,r.jsx)(w.z,{sx:{"--DataGrid-overlayHeight":"530px"},...c,slots:d,slotProps:{loadingOverlay:{sx:{padding:5}},filterPanel:{sx:{maxWidth:"100vw"}},columnsPanel:{sx:{maxWidth:"100vw"}}}})};function aI(a){let[b,c]=(0,o.useState)(!!a?.defaultDense),[d,e]=(0,o.useState)(a?.defaultCurrentPage||0),[f,g]=(0,o.useState)(a?.defaultOrderBy||"name"),[h,i]=(0,o.useState)(a?.defaultRowsPerPage||10),[j,k]=(0,o.useState)(a?.defaultOrder||"asc"),[l,m]=(0,o.useState)(a?.defaultSelected||[]),n=(0,o.useCallback)(a=>{let b=f===a&&"asc"===j;""!==a&&(k(b?"desc":"asc"),g(a))},[j,f]),p=(0,o.useCallback)(a=>{m(l.includes(a)?l.filter(b=>b!==a):[...l,a])},[l]),q=(0,o.useCallback)(a=>{e(0),i(parseInt(a.target.value,10))},[]),r=(0,o.useCallback)(a=>{c(a.target.checked)},[]),s=(0,o.useCallback)((a,b)=>{if(a)return void m(b);m([])},[]),t=(0,o.useCallback)((a,b)=>{e(b)},[]),u=(0,o.useCallback)(()=>{e(0)},[]),v=(0,o.useCallback)(a=>{m([]),d&&a<2&&e(d-1)},[d]),w=(0,o.useCallback)(({totalRows:a,totalRowsInPage:b,totalRowsFiltered:c})=>{let f=l.length;m([]),d&&(f===b?e(d-1):f===c?e(0):f>b&&e(Math.ceil((a-f)/h)-1))},[d,h,l.length]);return{dense:b,order:j,page:d,orderBy:f,rowsPerPage:h,selected:l,onSelectRow:p,onSelectAllRows:s,onSort:n,onChangePage:t,onChangeDense:r,onResetPage:u,onChangeRowsPerPage:q,onUpdatePageDeleteRow:v,onUpdatePageDeleteRows:w,setPage:e,setDense:c,setOrder:k,setOrderBy:g,setSelected:m,setRowsPerPage:i}}function aJ({...a}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})})]})}var aK={border:0,margin:-1,padding:0,width:"1px",height:"1px",overflow:"hidden",position:"absolute",whiteSpace:"nowrap",clip:"rect(0 0 0 0)"};function aL({order:a,orderBy:b,rowCount:c=0,headLabel:d,numSelected:e=0,onSort:f,onSelectAllRows:g,sx:h}){return(0,r.jsx)(B.A,{sx:h,children:(0,r.jsxs)(z.A,{children:[g&&(0,r.jsx)(y.A,{padding:"checkbox",children:(0,r.jsx)(A.A,{indeterminate:!!e&&e<c,checked:!!c&&e===c,onChange:a=>g(a.target.checked)})}),d.map(c=>(0,r.jsx)(y.A,{align:c.align||"left",sortDirection:b===c.id&&a,sx:{width:c.width,minWidth:c.minWidth},children:f?(0,r.jsxs)(C.A,{hideSortIcon:!0,active:b===c.id,direction:b===c.id?a:"asc",onClick:()=>f(c.id),children:[c.label,b===c.id?(0,r.jsx)(q.default,{sx:{...aK},children:"desc"===a?"sorted descending":"sorted ascending"}):null]}):c.label},c.id))]})})}function aM({dense:a,onChangeDense:b,rowsPerPageOptions:c=[5,10,25],sx:d,...e}){return(0,r.jsxs)(q.default,{sx:{position:"relative",...d},children:[(0,r.jsx)(F.A,{rowsPerPageOptions:c,component:"div",...e,sx:{borderTopColor:"transparent"}}),b&&(0,r.jsx)(E.A,{label:"Dense",control:(0,r.jsx)(D.A,{checked:a,onChange:b}),sx:{pl:2,py:1.5,top:0,position:{sm:"absolute"}}})]})}var aN=(0,G.Ay)(q.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,s.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,s.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}}),aO=(0,o.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,r.jsxs)(aN,{ref:h,component:"span",ownerState:{color:b,variant:c},sx:{...d&&{pl:.75},...e&&{pr:.75},...f},...g,children:[d&&(0,r.jsxs)(q.default,{sx:{mr:.75,...i},children:[" ",d," "]}),a,e&&(0,r.jsxs)(q.default,{sx:{ml:.75,...i},children:[" ",e," "]})]})}),aP={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},aQ=/[A-Z]|^ms/g,aR=/_EMO_([^_]+?)_([^]*?)_EMO_/g,aS=function(a){return 45===a.charCodeAt(1)},aT=function(a){return null!=a&&"boolean"!=typeof a},aU=function(a){var b=Object.create(null);return function(c){return void 0===b[c]&&(b[c]=a(c)),b[c]}}(function(a){return aS(a)?a:a.replace(aQ,"-$&").toLowerCase()}),aV=function(a,b){switch(a){case"animation":case"animationName":if("string"==typeof b)return b.replace(aR,function(a,b,c){return d={name:b,styles:c,next:d},b})}return 1===aP[a]||aS(a)||"number"!=typeof b||0===b?b:b+"px"};function aW(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+=aW(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]+"}":aT(g)&&(d+=aU(f)+":"+aV(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++)aT(g[h])&&(d+=aU(f)+":"+aV(f,g[h])+";");else{var i=aW(a,b,g);switch(f){case"animation":case"animationName":d+=aU(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,aW(a,b,g)}}if(null==b)return c;var h=b[c];return void 0!==h?h:c}var aX=/label:\s*([^\s;{]+)\s*(;|$)/g,aY=[];function aZ(a){return aY[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+=aW(void 0,void 0,h)):g+=h[0];for(var i=1;i<a.length;i++)g+=aW(void 0,void 0,a[i]),f&&(g+=h[i]);aX.lastIndex=0;for(var j="";null!==(e=aX.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}}(aY)}var a$=at(aD(),1);function a_(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 a0(a,b,c={clone:!0}){let d=c.clone?{...a}:a;return a_(a)&&a_(b)&&Object.keys(b).forEach(e=>{o.isValidElement(b[e])||(0,a$.isValidElementType)(b[e])?d[e]=b[e]:a_(b[e])&&Object.prototype.hasOwnProperty.call(a,e)&&a_(a[e])?d[e]=a0(a[e],b[e],c):c.clone?d[e]=a_(b[e])?function a(b){if(o.isValidElement(b)||(0,a$.isValidElementType)(b)||!a_(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 a1(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 a2={borderRadius:4};at(aB(),1);var a3=function(a,b){return b?a0(a,b,{clone:!1}):a},a4={xs:0,sm:600,md:900,lg:1200,xl:1536},a5={keys:["xs","sm","md","lg","xl"],up:a=>`@media (min-width:${a4[a]}px)`},a6={containerQueries:a=>({up:b=>{let c="number"==typeof b?b:a4[b]||b;return"number"==typeof c&&(c=`${c}px`),a?`@container ${a} (min-width:${c})`:`@container (min-width:${c})`}})};function a7(a,b,c){let d=a.theme||{};if(Array.isArray(b)){let a=d.breakpoints||a5;return b.reduce((d,e,f)=>(d[a.up(a.keys[f])]=c(b[f]),d),{})}if("object"==typeof b){let a=d.breakpoints||a5;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:a6,f);a&&(e[a]=c(b[f],f))}else Object.keys(a.values||a4).includes(f)?e[a.up(f)]=c(b[f],f):e[f]=b[f];return e},{})}return c(b)}function a8(a={}){return a.keys?.reduce((b,c)=>(b[a.up(c)]={},b),{})||{}}function a9(a,b){return a.reduce((a,b)=>{let c=a[b];return c&&0!==Object.keys(c).length||delete a[b],a},b)}function ba({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 bb(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 bc(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 bd(a,b,c,d=c){let e;return e="function"==typeof a?a(c):Array.isArray(a)?a[c]||d:bc(a,c)||d,b&&(e=b(e,d,a)),e}var be=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=bc(a.theme,d)||{};return a7(a,f,a=>{let d=bd(g,e,a);return(a===d&&"string"==typeof a&&(d=bd(g,e,`${b}${"default"===a?"":bb(a)}`,a)),!1===c)?d:{[c]:d}})};return f.propTypes={},f.filterProps=[b],f},bf={m:"margin",p:"padding"},bg={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},bh={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},bi=function(a){let b={};return c=>(void 0===b[c]&&(b[c]=a(c)),b[c])}(a=>{if(a.length>2)if(!bh[a])return[a];else a=bh[a];let[b,c]=a.split(""),d=bf[b],e=bg[c]||"";return Array.isArray(e)?e.map(a=>d+a):[d+e]}),bj=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],bk=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],bl=[...bj,...bk];function bm(a,b,c,d){let e=bc(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 bn(a){return bm(a,"spacing",8,"spacing")}function bo(a,b){return"string"==typeof b||null==b?b:a(b)}function bp(a,b){let c=bn(a.theme);return Object.keys(a).map(d=>(function(a,b,c,d){var e;if(!b.includes(c))return null;let f=(e=bi(c),a=>e.reduce((b,c)=>(b[c]=bo(d,a),b),{})),g=a[c];return a7(a,g,f)})(a,b,d,c)).reduce(a3,{})}function bq(a){return bp(a,bj)}function br(a){return bp(a,bk)}function bs(a){return bp(a,bl)}bq.propTypes={},bq.filterProps=bj,br.propTypes={},br.filterProps=bk,bs.propTypes={},bs.filterProps=bl;var bt=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]?a3(c,b[d](a)):c,{});return c.propTypes={},c.filterProps=a.reduce((a,b)=>a.concat(b.filterProps),[]),c};function bu(a){return"number"!=typeof a?a:`${a}px solid`}function bv(a,b){return be({prop:a,themeKey:"borders",transform:b})}var bw=bv("border",bu),bx=bv("borderTop",bu),by=bv("borderRight",bu),bz=bv("borderBottom",bu),bA=bv("borderLeft",bu),bB=bv("borderColor"),bC=bv("borderTopColor"),bD=bv("borderRightColor"),bE=bv("borderBottomColor"),bF=bv("borderLeftColor"),bG=bv("outline",bu),bH=bv("outlineColor"),bI=a=>{if(void 0!==a.borderRadius&&null!==a.borderRadius){let b=bm(a.theme,"shape.borderRadius",4,"borderRadius");return a7(a,a.borderRadius,a=>({borderRadius:bo(b,a)}))}return null};bI.propTypes={},bI.filterProps=["borderRadius"],bt(bw,bx,by,bz,bA,bB,bC,bD,bE,bF,bI,bG,bH);var bJ=a=>{if(void 0!==a.gap&&null!==a.gap){let b=bm(a.theme,"spacing",8,"gap");return a7(a,a.gap,a=>({gap:bo(b,a)}))}return null};bJ.propTypes={},bJ.filterProps=["gap"];var bK=a=>{if(void 0!==a.columnGap&&null!==a.columnGap){let b=bm(a.theme,"spacing",8,"columnGap");return a7(a,a.columnGap,a=>({columnGap:bo(b,a)}))}return null};bK.propTypes={},bK.filterProps=["columnGap"];var bL=a=>{if(void 0!==a.rowGap&&null!==a.rowGap){let b=bm(a.theme,"spacing",8,"rowGap");return a7(a,a.rowGap,a=>({rowGap:bo(b,a)}))}return null};function bM(a,b){return"grey"===b?b:a}function bN(a){return a<=1&&0!==a?`${100*a}%`:a}bL.propTypes={},bL.filterProps=["rowGap"],bt(bJ,bK,bL,be({prop:"gridColumn"}),be({prop:"gridRow"}),be({prop:"gridAutoFlow"}),be({prop:"gridAutoColumns"}),be({prop:"gridAutoRows"}),be({prop:"gridTemplateColumns"}),be({prop:"gridTemplateRows"}),be({prop:"gridTemplateAreas"}),be({prop:"gridArea"})),bt(be({prop:"color",themeKey:"palette",transform:bM}),be({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:bM}),be({prop:"backgroundColor",themeKey:"palette",transform:bM}));var bO=be({prop:"width",transform:bN}),bP=a=>void 0!==a.maxWidth&&null!==a.maxWidth?a7(a,a.maxWidth,b=>{let c=a.theme?.breakpoints?.values?.[b]||a4[b];return c?a.theme?.breakpoints?.unit!=="px"?{maxWidth:`${c}${a.theme.breakpoints.unit}`}:{maxWidth:c}:{maxWidth:bN(b)}}):null;bP.filterProps=["maxWidth"];var bQ=be({prop:"minWidth",transform:bN}),bR=be({prop:"height",transform:bN}),bS=be({prop:"maxHeight",transform:bN}),bT=be({prop:"minHeight",transform:bN});be({prop:"size",cssProperty:"width",transform:bN}),be({prop:"size",cssProperty:"height",transform:bN}),bt(bO,bP,bQ,bR,bS,bT,be({prop:"boxSizing"}));var bU={border:{themeKey:"borders",transform:bu},borderTop:{themeKey:"borders",transform:bu},borderRight:{themeKey:"borders",transform:bu},borderBottom:{themeKey:"borders",transform:bu},borderLeft:{themeKey:"borders",transform:bu},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:bu},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:bI},color:{themeKey:"palette",transform:bM},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:bM},backgroundColor:{themeKey:"palette",transform:bM},p:{style:br},pt:{style:br},pr:{style:br},pb:{style:br},pl:{style:br},px:{style:br},py:{style:br},padding:{style:br},paddingTop:{style:br},paddingRight:{style:br},paddingBottom:{style:br},paddingLeft:{style:br},paddingX:{style:br},paddingY:{style:br},paddingInline:{style:br},paddingInlineStart:{style:br},paddingInlineEnd:{style:br},paddingBlock:{style:br},paddingBlockStart:{style:br},paddingBlockEnd:{style:br},m:{style:bq},mt:{style:bq},mr:{style:bq},mb:{style:bq},ml:{style:bq},mx:{style:bq},my:{style:bq},margin:{style:bq},marginTop:{style:bq},marginRight:{style:bq},marginBottom:{style:bq},marginLeft:{style:bq},marginX:{style:bq},marginY:{style:bq},marginInline:{style:bq},marginInlineStart:{style:bq},marginInlineEnd:{style:bq},marginBlock:{style:bq},marginBlockStart:{style:bq},marginBlockEnd:{style:bq},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:bJ},rowGap:{style:bL},columnGap:{style:bK},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:bN},maxWidth:{style:bP},minWidth:{transform:bN},height:{transform:bN},maxHeight:{transform:bN},minHeight:{transform:bN},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"}},bV=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=bc(c,h)||{};return j?j(e):a7(e,b,b=>{let c=bd(k,i,b);return(b===c&&"string"==typeof b&&(c=bd(k,i,`${a}${"default"===b?"":bb(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??bU;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=a8(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=a3(j,a(c,h,e,g));else{let a=a7({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=a3(j,a):j[c]=b({sx:h,theme:e,nested:!0})}else j=a3(j,a(c,h,e,g))}),!f&&e.modularCssLayers)?{"@layer sx":a1(e,a9(i,j))}:a1(e,a9(i,j))}return Array.isArray(d)?d.map(h):h(d)}}();function bW(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:{}}bV.filterProps=["sx"];var bX=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=bn({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=a0({breakpoints:h,direction:"ltr",components:{},palette:{mode:"light",...d},spacing:i,shape:{...a2,...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=bW,(j=b.reduce((a,b)=>a0(a,b),j)).unstable_sxConfig={...bU,...g?.unstable_sxConfig},j.unstable_sx=function(a){return bV({sx:a,theme:this})},j},bY=function(a=null){let b=o.useContext(I.T);return b&&0!==Object.keys(b).length?b:a},bZ=bX();at(aB(),1);var b$=a=>a,b_=(()=>{let a=b$;return{configure(b){a=b},generate:b=>a(b),reset(){a=b$}}})(),b0=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},b1={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,H.A)("div",c))(bV)}({defaultClassName:function(a,b,c="Mui"){let d={};return b.forEach(b=>{d[b]=function(a,b,c="Mui"){let d=b1[b];return d?`${c}-${d}`:`${b_.generate(a)}-${b}`}(a,b,c)}),d}("MuiBox",["root"]).root,generateClassName:b_.generate}),at(aD(),1);var b2=bX();function b3(a){return"ownerState"!==a&&"theme"!==a&&"sx"!==a&&"as"!==a}function b4(a,b){return b&&a&&"object"==typeof a&&a.styles&&!a.styles.startsWith("@layer")&&(a.styles=`@layer ${b}{${String(a.styles)}}`),a}function b5(a,b,c){let d="function"==typeof b?b(a):b;if(Array.isArray(d))return d.flatMap(b=>b5(a,b,c));if(Array.isArray(d?.variants)){let b;if(d.isProcessed)b=c?b4(d.style,c):d.style;else{let{variants:a,...e}=d;b=c?b4(aZ(e),c):e}return b6(a,d.variants,[b],c)}return d?.isProcessed?c?b4(aZ(d.style),c):d.style:c?b4(aZ(d),c):d}function b6(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?b4(aZ(g.style(e)),d):g.style(e))):c.push(d?b4(aZ(g.style),d):g.style)}return c}var b7=function(a={}){let{themeId:b,defaultTheme:c=b2,rootShouldForwardProp:d=b3,slotShouldForwardProp:e=b3}=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,i,j,k,l;Array.isArray(a.__emotion_styles)&&(a.__emotion_styles=(a=>a.filter(a=>a!==bV))(a.__emotion_styles));let{name:m,slot:n,skipVariantsResolver:o,skipSx:p,overridesResolver:q=!(c=(g=n)?g.charAt(0).toLowerCase()+g.slice(1):g)?null:(a,b)=>b[c],...r}=b,s=m&&m.startsWith("Mui")||n?"components":"custom",t=void 0!==o?o:n&&"Root"!==n&&"root"!==n||!1,u=p||!1,v=b3;"Root"===n||"root"===n?v=d:n?v=e:"string"==typeof(h=a)&&h.charCodeAt(0)>96&&(v=void 0);let w=(k=a,l={shouldForwardProp:v,label:(i=0,void(j=0)),...r},(0,H.A)(k,l)),x=a=>{if(a.__emotion_real===a)return a;if("function"==typeof a)return function(b){return b5(b,a,b.theme.modularCssLayers?s:void 0)};if(a_(a)){let b=function(a){let{variants:b,...c}=a,d={variants:b,style:aZ(c),isProcessed:!0};return d.style===c||b&&b.forEach(a=>{"function"!=typeof a.style&&(a.style=aZ(a.style))}),d}(a);return function(a){return b.variants?b5(a,b,a.theme.modularCssLayers?s:void 0):a.theme.modularCssLayers?b4(b.style,s):b.style}}return a},y=(...b)=>{let c=[],d=b.map(x),e=[];if(c.push(f),m&&q&&e.push(function(a){let b=a.theme,c=b.components?.[m]?.styleOverrides;if(!c)return null;let d={};for(let b in c)d[b]=b5(a,c[b],a.theme.modularCssLayers?"theme":void 0);return q(a,d)}),m&&!t&&e.push(function(a){let b=a.theme,c=b?.components?.[m]?.variants;return c?b6(a,c,[],a.theme.modularCssLayers?"theme":void 0):null}),u||e.push(bV),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=w(...c,...d,...e);return a.muiName&&(g.muiName=a.muiName),g};return w.withConfig&&(y.withConfig=w.withConfig),y}}();at(aB(),1),at(aB(),1);var b8=bX(),b9=b7("div",{name:"MuiStack",slot:"Root"});function ca(a){return function({props:a,name:b,defaultTheme:c,themeId:d}){let e=function(a=bZ){return bY(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=b0(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:b8})}var cb=({ownerState:a,theme:b})=>{let c={display:"flex",flexDirection:"column",...a7({theme:b},ba({values:a.direction,breakpoints:b.breakpoints.values}),a=>({flexDirection:a}))};if(a.spacing){let d=bn(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=ba({values:a.direction,base:e}),g=ba({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=a0(c,a7({theme:b},g,(b,c)=>a.useFlexGap?{gap:bo(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]}`]:bo(d,b)}}))}return function(a,...b){let c=a8(a),d=[c,...b].reduce((a,b)=>a0(a,b),{});return a9(Object.keys(c),d)}(b.breakpoints,c)};!function(a={}){let{createStyledComponent:b=b9,useThemeProps:c=ca,componentName:d="MuiStack"}=a;b(cb)}();var cc=[],cd=[];function ce(a){return a>=127462&&a<=127487}function cf(a,b,c){if(b==a.length)return b;b&&ch(a.charCodeAt(b))&&ci(a.charCodeAt(b-1))&&b--;let d=cg(a,b);for(b+=cj(d);b<a.length;){let e=cg(a,b);if(8205==d||8205==e||c&&function(a){if(a<768)return!1;for(let b=0,c=cc.length;;){let d=b+c>>1;if(a<cc[d])c=d;else{if(!(a>=cd[d]))return!0;b=d+1}if(b==c)return!1}}(e))b+=cj(e),d=e;else if(ce(e)){let c=0,d=b-2;for(;d>=0&&ce(cg(a,d));)c++,d-=2;if(c%2==0)break;b+=2}else break}return b}function cg(a,b){let c=a.charCodeAt(b);if(!ci(c)||b+1==a.length)return c;let d=a.charCodeAt(b+1);return ch(d)?(c-55296<<10)+(d-56320)+65536:c}function ch(a){return a>=56320&&a<57344}function ci(a){return a>=55296&&a<56320}function cj(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?cd:cc).push(c+=a[b])})();var ck=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]=cs(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),cm.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]=cs(this,a,b);let c=[];return this.decompose(a,b,c,0),cm.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 co(this),e=new co(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 co(this,a)}iterRange(a,b=this.length){return new cp(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 cq(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 cl(b):cm.from(cl.split(b,[])):a.empty}},cl=class a extends ck{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 cr(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,cn(f,[""],b,c)),Math.min(c,this.length)-Math.max(0,b));if(1&e){let b=d.pop(),c=cn(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]=cs(this,b,c);let g=cn(this.text,cn(d.text,(e=this.text,f=0,cn(e,[""],0,b))),c),h=this.length+d.length-(c-b);return g.length<=32?new a(g,h):cm.from(a.split(g,[]),h)}sliceString(a,b=this.length,c="\n"){[a,b]=cs(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}},cm=class a extends ck{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]=cs(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]=cs(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 cl(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 cl&&i&&(d=k[k.length-1])instanceof cl&&c.lines+d.lines<=32?(i+=c.lines,j+=c.length+1,k[k.length-1]=new cl(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 cn(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}ck.empty=new cl([""],0);var co=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 cl?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 cl?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 cl){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 cl?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)}},cp=class{constructor(a,b,c){this.value="",this.done=!1,this.cursor=new co(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}},cq=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&&(ck.prototype[Symbol.iterator]=function(){return this.iter()},co.prototype[Symbol.iterator]=cp.prototype[Symbol.iterator]=cq.prototype[Symbol.iterator]=function(){return this});var cr=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 cs(a,b,c){return[b=Math.max(0,Math.min(a.length,b)),Math.max(b,Math.min(a.length,c))]}function ct(a,b,c=!0,d=!0){return function(a,b,c=!0,d=!0){return(c?cf:function(a,b,c){for(;b>0;){let d=cf(a,b-2,c);if(d<b)return d;b--}return 0})(a,b,d)}(a,b,c,d)}var cu=/\r\n?|\n/,cv=function(a){return a[a.Simple=0]="Simple",a[a.TrackDel=1]="TrackDel",a[a.TrackBefore=2]="TrackBefore",a[a.TrackAfter=3]="TrackAfter",a}(cv||(cv={})),cw=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){cA(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:cC(this,a)}mapDesc(a,b=!1){return a.empty?this:cB(this,a,b)}mapPos(a,b=-1,c=cv.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!=cv.Simple&&i>=a&&(c==cv.TrackDel&&d<a&&i>a||c==cv.TrackBefore&&d<a||c==cv.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)}},cx=class a extends cw{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 cA(this,(b,c,d,e,f)=>a=a.replace(d,d+(c-b),f),!1),a}mapDesc(a,b=!1){return cB(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(ck.empty);d.push(f?b.slice(e,e+f):ck.empty)}e+=f}return new a(c,d)}compose(a){return this.empty?a:a.empty?this:cC(this,a,!0)}map(a,b=!1){return a.empty?this:cB(this,a,b,!0)}iterChanges(a,b=!1){cA(this,a,b)}get desc(){return cw.create(this.sections)}filter(b){let c=[],d=[],e=[],f=new cD(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);cy(e,a,-1);let b=-1==f.ins?-1:0==f.off?f.ins:0;cy(c,a,b),b>0&&cz(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);cy(c,a,-1),cy(e,a,-1==f.ins?-1:0==f.off?f.ins:0),f.forward(a),g+=a}}return{changes:new a(c,d),filtered:cw.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&&cy(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?ck.of(h.split(d||cu)):h:ck.empty,l=k.length;if(a==b&&0==l)return;a<g&&i(),a>g&&cy(e,a-g,-1),cy(e,b-a,l),cz(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(ck.empty);d[a]=ck.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 cy(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 cz(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(ck.empty);a.push(c)}}function cA(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=ck.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 cB(a,b,c,d=!1){let e=[],f=d?[]:null,g=new cD(a),h=new cD(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);cy(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(cy(e,h.ins,-1);b;){let c=Math.min(g.len,b);g.ins>=0&&a<g.i&&g.len<=c&&(cy(e,0,g.ins),f&&cz(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;cy(e,b,a<g.i?g.ins:0),f&&a<g.i&&cz(f,e,g.text),a=g.i,g.forward(g.len-c)}else if(g.done&&h.done)return f?cx.createSet(e,f):cw.create(e);else throw Error("Mismatched change set lengths")}function cC(a,b,c=!1){let d=[],e=c?[]:null,f=new cD(a),g=new cD(b);for(let a=!1;;)if(f.done&&g.done)return e?cx.createSet(d,e):cw.create(d);else if(0==f.ins)cy(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;cy(d,b,c,a),e&&c&&cz(e,d,g.text)}else -1==g.ins?(cy(d,f.off?0:f.len,b,a),e&&cz(e,d,f.textBit(b))):(cy(d,f.off?0:f.len,g.off?0:g.ins,a),e&&!g.off&&cz(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 cy(d,0,g.ins,a),e&&cz(e,d,g.text),g.next()}var cD=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?ck.empty:a[b]}textBit(a){let{inserted:b}=this.set,c=this.i-2>>1;return c>=b.length&&!a?ck.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)}},cE=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 cF.range(a,b);let c=Math.abs(a-this.anchor)>Math.abs(b-this.anchor)?a:b;return cF.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 cF.range(a.anchor,a.head)}static create(b,c,d){return new a(b,c,d)}},cF=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=>cE.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 cE.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?cE.create(b,a,48|e):cE.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 cG(a,b){for(let c of a.ranges)if(c.to>b)throw RangeError("Selection points outside of document")}var cH=0,cI=class a{constructor(a,b,c,d,e){this.combine=a,this.compareInput=b,this.compare=c,this.isStatic=d,this.id=cH++,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?cJ:(a,b)=>a===b),!!b.static,b.enables)}of(a){return new cK([],this,0,a)}compute(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cK(a,this,1,b)}computeN(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cK(a,this,2,b)}from(a,b){return b||(b=a=>a),this.compute([a],c=>b(c.field(a)))}};function cJ(a,b){return a==b||a.length==b.length&&a.every((a,c)=>a===b[c])}var cK=class{constructor(a,b,c,d){this.dependencies=a,this.facet=b,this.type=c,this.value=d,this.id=cH++}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)||cM(a,j)){let b=c(a);if(g?!cL(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=cX(b,i);if(this.dependencies.every(c=>c instanceof cI?b.facet(c)===a.facet(c):!(c instanceof cO)||b.field(c,!1)==a.field(c,!1))||(g?cL(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 cL(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 cM(a,b){let c=!1;for(let d of b)1&cW(a,d)&&(c=!0);return c}var cN=cI.define({static:!0}),cO=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(cH++,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(cN).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(cN),e=c.facet(cN),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,cN.of({field:this,create:a})]}get extension(){return this}},cP={lowest:4,low:3,default:2,high:1,highest:0};function cQ(a){return b=>new cS(b,a)}var cR={highest:cQ(cP.highest),high:cQ(cP.high),default:cQ(cP.default),low:cQ(cP.low),lowest:cQ(cP.lowest)},cS=class{constructor(a,b){this.inner=a,this.prec=b}},cT=class a{of(a){return new cU(this,a)}reconfigure(b){return a.reconfigure.of({compartment:this,extension:b})}get(a){return a.config.compartments.get(this)}},cU=class{constructor(a,b){this.compartment=a,this.inner=b}},cV=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 cU&&g.delete(b.compartment)}if(i.set(b,c),Array.isArray(b))for(let d of b)a(d,c);else if(b instanceof cU){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 cS)a(b.inner,b.prec);else if(b instanceof cO)h[c].push(b),b.provides&&a(b.provides,c);else if(b instanceof cK)h[c].push(b),b.facet.extensions&&a(b.facet.extensions,cP.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,cP.default),h.reduce((a,b)=>a.concat(b))))a instanceof cO?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,cJ(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=cX(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)cW(a,b);return a.values[g]=h(a),1},update(a,c){if(!cM(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=cM(a,d),i=e.config.facets[b.id],j=e.facet(b);if(i&&!f&&cJ(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 cW(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 cX(a,b){return 1&b?a.config.staticValues[b>>1]:a.values[b>>1]}var cY=cI.define(),cZ=cI.define({combine:a=>a.some(a=>a),static:!0}),c$=cI.define({combine:a=>a.length?a[0]:void 0,static:!0}),c_=cI.define(),c0=cI.define(),c1=cI.define(),c2=cI.define({combine:a=>!!a.length&&a[0]}),c3=class{constructor(a,b){this.type=a,this.value=b}static define(){return new c4}},c4=class{of(a){return new c3(this,a)}},c5=class{constructor(a){this.map=a}of(a){return new c6(this,a)}},c6=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 c5(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}};c6.reconfigure=c6.define(),c6.appendConfig=c6.define();var c7=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&&cG(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 c8(a,b,c){var d;let e,f,g;return c?(e=b.changes,f=cx.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:c6.mapEffects(a.effects,e).concat(c6.mapEffects(b.effects,f)),annotations:a.annotations.length?a.annotations.concat(b.annotations):b.annotations,scrollIntoView:a.scrollIntoView||b.scrollIntoView}}function c9(a,b,c){let d=b.selection,e=db(b.annotations);return b.userEvent&&(e=e.concat(c7.userEvent.of(b.userEvent))),{changes:b.changes instanceof cx?b.changes:cx.of(b.changes||[],c,a.facet(c$)),selection:d&&(d instanceof cF?d:cF.single(d.anchor,d.head)),effects:db(b.effects),annotations:e,scrollIntoView:!!b.scrollIntoView}}c7.time=c3.define(),c7.userEvent=c3.define(),c7.addToHistory=c3.define(),c7.remote=c3.define();var da=[];function db(a){return null==a?da:Array.isArray(a)?a:[a]}var dc=function(a){return a[a.Word=0]="Word",a[a.Space=1]="Space",a[a.Other=2]="Other",a}(dc||(dc={})),dd=/[\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 de=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++)cW(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 cW(this,c),cX(this,c)}update(...a){return function a(b,c,d){let e=c9(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=c8(e,c9(b,c[a],f?e.changes.newLength:b.doc.length),f)}let f=c7.create(b,e.changes,e.selection,e.effects,e.annotations,e.scrollIntoView);return function(a){let b=a.startState,c=b.facet(c1),d=a;for(let e=c.length-1;e>=0;e--){let f=c[e](a);f&&Object.keys(f).length&&(d=c8(d,c9(b,f,a.changes.newLength),!0))}return d==a?a:c7.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(c_)){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=cx.empty(c.doc.length);else{let c=b.changes.filter(d);a=c.changes,e=c.filtered.mapDesc(c.changes).invertedDesc}b=c7.create(c,a,b.selection&&b.selection.map(e),c6.mapEffects(b.effects,e),b.annotations,b.scrollIntoView)}let e=c.facet(c0);for(let d=e.length-1;d>=0;d--){let f=e[d](b);b=f instanceof c7?f:Array.isArray(f)&&1==f.length&&f[0]instanceof c7?f[0]:a(c,db(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(cT.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(c6.reconfigure)?(d=null,e=a.value):a.is(c6.appendConfig)&&(d=null,e=db(e).concat(a.value));c=d?b.startState.values.slice():new a(d=cV.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(cZ)?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:cF.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=db(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=c6.mapEffects(f,i).concat(c6.mapEffects(db(g.effects),j))}return{changes:d,selection:cF.create(e,b.mainIndex),effects:f}}changes(b=[]){return b instanceof cx?b:cx.of(b,this.doc.length,this.facet(a.lineSeparator))}toText(b){return ck.of(b.split(this.facet(a.lineSeparator)||cu))}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:(cW(this,b),cX(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 cO&&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:cF.fromJSON(b.selection),extensions:c.extensions?e.concat([c.extensions]):e})}static create(b={}){let c=cV.resolve(b.extensions||[],new Map),d=b.doc instanceof ck?b.doc:ck.of((b.doc||"").split(c.staticFacet(a.lineSeparator)||cu)),e=b.selection?b.selection instanceof cF?b.selection:cF.single(b.selection.anchor,b.selection.head):cF.single(0);return cG(e,d.length),c.staticFacet(cZ)||(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(c2)}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(cY))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 dc.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()||dd.test(c)))return!0}return!1}(a))return dc.Word;for(let c=0;c<b.length;c++)if(a.indexOf(b[c])>-1)return dc.Word;return dc.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=ct(b,f,!1);if(e(b.slice(a,f))!=dc.Word)break;f=a}for(;g<d;){let a=ct(b,g);if(e(b.slice(g,a))!=dc.Word)break;g=a}return f==g?null:cF.range(f+c,g+c)}};de.allowMultipleSelections=cZ,de.tabSize=cI.define({combine:a=>a.length?a[0]:4}),de.lineSeparator=c$,de.readOnly=c2,de.phrases=cI.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])}}),de.languageData=cY,de.changeFilter=c_,de.transactionFilter=c0,de.transactionExtender=c1,cT.reconfigure=c6.define();var df=class{eq(a){return this==a}range(a,b=a){return dh.create(a,b,this)}};function dg(a,b){return a==b||a.constructor==b.constructor&&a.eq(b)}df.prototype.startSide=df.prototype.endSide=0,df.prototype.point=!1,df.prototype.mapMode=cv.TrackDel;var dh=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 di(a,b){return a.from-b.from||a.value.startSide-b.value.startSide}var dj=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}}},dk=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(di)),this.isEmpty)return c.length?a.of(c):this;let h=new dn(this,null,-1).goto(0),i=0,j=[],k=new dl;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(dh.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 dp.from([this]).goto(a)}get isEmpty(){return this.nextLayer==this}static iter(a,b=0){return dp.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=dm(f,g,c),i=new dr(f,h,e),j=new dr(g,h,e);c.iterGaps((a,b,c)=>ds(i,a,j,b,c,d)),c.empty&&0==c.length&&ds(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=dm(e,f),h=new dr(e,g,0).goto(c),i=new dr(f,g,0).goto(c);for(;;){if(h.to!=i.to||!dt(h.active,i.active)||h.point&&(!i.point||!dg(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 dr(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 dl;for(let d of a instanceof dh?[a]:b?function(a){if(a.length>1)for(let b=a[0],c=1;c<a.length;c++){let d=a[c];if(di(b,d)>0)return a.slice().sort(di);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}};dk.empty=new dk([],[],null,-1),dk.empty.nextLayer=dk.empty;var dl=class a{finishChunk(a){this.chunks.push(new dj(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(dk.empty)}finishInner(a){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return a;let b=dk.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(a):a,this.setMaxPoint);return this.from=null,b}};function dm(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 dn=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}},dp=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 dn(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--)dq(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--)dq(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(),dq(this.heap,0)}}};function dq(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 dr=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=dp.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){du(this.active,a),du(this.activeTo,a),du(this.activeRank,a),this.minActive=dw(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++;dv(this.active,b,c),dv(this.activeTo,b,d),dv(this.activeRank,b,e),a&&dv(a,b,this.cursor.from),this.minActive=dw(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&&du(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 ds(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&&dg(a.point,c.point)&&dt(a.activeForPoint(a.to),c.activeForPoint(c.to))||f.comparePoint(h,l,a.point,c.point),b=!1):(b&&f.boundChange(h),l>h&&!dt(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 dt(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c]&&!dg(a[c],b[c]))return!1;return!0}function du(a,b){for(let c=b,d=a.length-1;c<d;c++)a[c]=a[c+1];a.pop()}function dv(a,b,c){for(let c=a.length-1;c>=b;c--)a[c+1]=a[c];a[b]=c}function dw(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 dx="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),dy="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),dz="undefined"!=typeof globalThis?globalThis:{},dA=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=dz[dx]||1;return dz[dx]=a+1,"ͼ"+a.toString(36)}static mount(a,b,c){let d=a[dy],e=c&&c.nonce;d?e&&d.setNonce(e):d=new dC(a,e),d.mount(Array.isArray(b)?b:[b],a)}},dB=new Map,dC=class{constructor(a,b){let c=a.ownerDocument||a,d=c.defaultView;if(!a.head&&a.adoptedStyleSheets&&d.CSSStyleSheet){let b=dB.get(c);if(b)return a[dy]=b;this.sheet=new d.CSSStyleSheet,dB.set(c,this)}else this.styleTag=c.createElement("style"),b&&this.styleTag.setAttribute("nonce",b);this.modules=[],a[dy]=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)}},dD={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:"'"},dE={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++)dD[48+f]=dD[96+f]=String(f);for(f=1;f<=24;f++)dD[f+111]="F"+f;for(f=65;f<=90;f++)dD[f]=String.fromCharCode(f+32),dE[f]=String.fromCharCode(f);for(g in dD)dE.hasOwnProperty(g)||(dE[g]=dD[g]);function dF(){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 dG="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},dH="undefined"!=typeof document?document:{documentElement:{style:{}}},dI=/Edge\/(\d+)/.exec(dG.userAgent),dJ=/MSIE \d/.test(dG.userAgent),dK=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(dG.userAgent),dL=!!(dJ||dK||dI),dM=!dL&&/gecko\/(\d+)/i.test(dG.userAgent),dN=!dL&&/Chrome\/(\d+)/.exec(dG.userAgent),dO="webkitFontSmoothing"in dH.documentElement.style,dP=!dL&&/Apple Computer/.test(dG.vendor),dQ=dP&&(/Mobile\/\w+/.test(dG.userAgent)||dG.maxTouchPoints>2),dR={mac:dQ||/Mac/.test(dG.platform),windows:/Win/.test(dG.platform),linux:/Linux|X11/.test(dG.platform),ie:dL,ie_version:dJ?dH.documentMode||6:dK?+dK[1]:dI?+dI[1]:0,gecko:dM,gecko_version:dM?+(/Firefox\/(\d+)/.exec(dG.userAgent)||[0,0])[1]:0,chrome:!!dN,chrome_version:dN?+dN[1]:0,ios:dQ,android:/Android\b/.test(dG.userAgent),webkit:dO,webkit_version:dO?+(/\bAppleWebKit\/(\d+)/.exec(dG.userAgent)||[0,0])[1]:0,safari:dP,safari_version:dP?+(/\bVersion\/(\d+(\.\d+)?)/.exec(dG.userAgent)||[0,0])[1]:0,tabSize:null!=dH.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};function dS(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 dT=Object.create(null);function dU(a,b,c){if(a==b)return!0;a||(a=dT),b||(b=dT);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 dV(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 dW=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){}},dX=function(a){return a[a.Text=0]="Text",a[a.WidgetBefore=1]="WidgetBefore",a[a.WidgetAfter=2]="WidgetAfter",a[a.WidgetRange=3]="WidgetRange",a}(dX||(dX={})),dY=class extends df{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 dZ(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 d_(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}=d0(a,b);c=(e?b?-3e8:-1:5e8)-1,d=(f?b?2e8:1:-6e8)+1}return new d_(a,c,d,b,a.widget||null,!0)}static line(a){return new d$(a)}static set(a,b=!1){return dk.of(a,b)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}};dY.none=dk.empty;var dZ=class a extends dY{constructor(a){let{start:b,end:c}=d0(a);super(b?-1:5e8,c?1:-6e8,null,a),this.tagName=a.tagName||"span",this.attrs=a.class&&a.attributes?dS(a.attributes,{class:a.class}):a.class?{class:a.class}:a.attributes||dT}eq(b){return this==b||b instanceof a&&this.tagName==b.tagName&&dU(this.attrs,b.attrs)}range(a,b=a){if(a>=b)throw RangeError("Mark decorations may not be empty");return super.range(a,b)}};dZ.prototype.point=!1;var d$=class a extends dY{constructor(a){super(-2e8,-2e8,null,a)}eq(b){return b instanceof a&&this.spec.class==b.spec.class&&dU(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)}};d$.prototype.mapMode=cv.TrackBefore,d$.prototype.point=!0;var d_=class a extends dY{constructor(a,b,c,d,e,f){super(b,c,e,a),this.block=d,this.isReplace=f,this.mapMode=d?b<=0?cv.TrackBefore:cv.TrackAfter:cv.TrackDel}get type(){return this.startSide!=this.endSide?dX.WidgetRange:this.startSide<=0?dX.WidgetBefore:dX.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 d0(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 d1(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)}d_.prototype.point=!0;var d2=class a extends df{constructor(a,b){super(),this.tagName=a,this.attributes=b}eq(b){return b==this||b instanceof a&&this.tagName==b.tagName&&dU(this.attributes,b.attributes)}static create(b){return new a(b.tagName,b.attributes||dT)}static set(a,b=!1){return dk.of(a,b)}};function d3(a){return(11==a.nodeType?a.getSelection?a:a.ownerDocument:a).getSelection()}function d4(a,b){return!!b&&(a==b||a.contains(1!=b.nodeType?b.parentNode:b))}function d5(a,b){if(!b.anchorNode)return!1;try{return d4(a,b.anchorNode)}catch(a){return!1}}function d6(a){return 3==a.nodeType?eh(a,0,a.nodeValue.length).getClientRects():1==a.nodeType?a.getClientRects():[]}function d7(a,b,c,d){return!!c&&(ea(a,b,c,d,-1)||ea(a,b,c,d,1))}function d8(a){for(var b=0;;b++)if(!(a=a.previousSibling))return b}function d9(a){return 1==a.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(a.nodeName)}function ea(a,b,c,d,e){for(;;){if(a==c&&b==d)return!0;if(b==(e<0?0:eb(a))){if("DIV"==a.nodeName)return!1;let c=a.parentNode;if(!c||1!=c.nodeType)return!1;b=d8(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?eb(a):0}}}function eb(a){return 3==a.nodeType?a.nodeValue.length:a.childNodes.length}function ec(a,b){let c=b?a.left:a.right;return{left:c,right:c,top:a.top,bottom:a.bottom}}function ed(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}}d2.prototype.startSide=d2.prototype.endSide=-1;var ee=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?eb(b):0),c,Math.min(a.focusOffset,c?eb(c):0))}set(a,b,c,d){this.anchorNode=a,this.anchorOffset=b,this.focusNode=c,this.focusOffset=d}},ef=null;function eg(a){if(a.setActive)return a.setActive();if(ef)return a.focus(ef);let b=[];for(let c=a;c&&(b.push(c,c.scrollTop,c.scrollLeft),c!=c.ownerDocument);c=c.parentNode);if(a.focus(null==ef?{get preventScroll(){return ef={preventScroll:!0},!0}}:void 0),!ef){ef=!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 eh(a,b,c=b){let d=h||(h=document.createRange());return d.setEnd(a,c),d.setStart(a,b),d}function ei(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 ej(a){return a.scrollTop>Math.max(1,a.scrollHeight-a.clientHeight-4)}function ek(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=eb(c=c.childNodes[d-1])}else{if(!c.parentNode||d9(c))return null;d=d8(c),c=c.parentNode}}function el(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||d9(c))return null;d=d8(c)+1,c=c.parentNode}}dR.safari&&dR.safari_version>=26&&(ef=!1);var em=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,d8(b),c)}static after(b,c){return new a(b.parentNode,d8(b)+1,c)}},en=function(a){return a[a.LTR=0]="LTR",a[a.RTL=1]="RTL",a}(en||(en={})),eo=en.LTR,ep=en.RTL;function eq(a){let b=[];for(let c=0;c<a.length;c++)b.push(1<<a[c]);return b}var er=eq("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),es=eq("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),et=Object.create(null),eu=[];for(let a of["()","[]","{}"]){let b=a.charCodeAt(0),c=a.charCodeAt(1);et[b]=c,et[c]=-b}function ev(a){return a<=247?er[a]:1424<=a&&a<=1524?2:1536<=a&&a<=1785?es[a-1536]:1774<=a&&a<=2220?4:8192<=a&&a<=8204?256:64336<=a&&a<=65023?4:1}var ew=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,ex=class{get dir(){return this.level%2?ep:eo}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}},ey=[];function ez(a){return[new ex(0,a,0)]}var eA="",eB=cI.define(),eC=cI.define(),eD=cI.define(),eE=cI.define(),eF=cI.define(),eG=cI.define(),eH=cI.define(),eI=cI.define(),eJ=cI.define(),eK=cI.define({combine:a=>a.some(a=>a)}),eL=cI.define({combine:a=>a.some(a=>a)}),eM=cI.define(),eN=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(cF.cursor(b.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},eO=c6.define({map:(a,b)=>a.map(b)}),eP=c6.define();function eQ(a,b,c){let d=a.facet(eE);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 eR=cI.define({combine:a=>!a.length||a[0]}),eS=0,eT=cI.define({combine:a=>a.filter((b,c)=>{for(let d=0;d<c;d++)if(a[d].plugin==b.plugin)return!1;return!0})}),eU=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(eT.of({plugin:this,arg:void 0}))}of(a){return this.baseExtensions.concat(eT.of({plugin:this,arg:a}))}static define(b,c){let{eventHandlers:d,eventObservers:e,provide:f,decorations:g}=c||{};return new a(eS++,b,d,e,a=>{let b=[];return g&&b.push(eY.of(b=>{let c=b.plugin(a);return c?g(c):dY.none})),f&&b.push(f(a)),b})}static fromClass(b,c){return a.define((a,c)=>new b(a,c),c)}},eV=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(eQ(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){eQ(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){eQ(a.state,b,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},eW=cI.define(),eX=cI.define(),eY=cI.define(),eZ=cI.define(),e$=cI.define(),e_=cI.define(),e0=cI.define();function e1(a,b){let c=a.state.facet(e0);if(!c.length)return c;let d=c.map(b=>b instanceof Function?b(a):b),e=[];return dk.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=ev(a.charCodeAt(d));if(1==b)break;if(2==b||4==b)return ep}return eo}(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 e2=cI.define();function e3(a){let b=0,c=0,d=0,e=0;for(let f of a.state.facet(e2)){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 e4=cI.define(),e5=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}},e6=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=cx.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 e5(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}},e7=[],e8=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 e7}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=d8(this.dom),d=this.length?a>0:b>0;return new em(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 fb)return a;return null}static get(a){return a.cmTile}},e9=class extends e8{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=fa(d);else b.insertBefore(g.dom,d);c=g.dom}for(d=c?c.nextSibling:b.firstChild,e&&d&&(e.written=!0);d;)d=fa(d);this.length=f}};function fa(a){let b=a.nextSibling;return a.parentNode.removeChild(a),b}var fb=class extends e9{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=e8.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 fc)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}}},fc=class a extends e9{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}},fd=class a extends e9{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=d6(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 em(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 em(a.dom,0);a==c.tile&&(f=!0)}}return new em(this.dom,0)}},fe=class a extends e9{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}},ff=class a extends e8{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?!(dR.chrome||dR.gecko)&&(a?(d--,f=1):e<c&&(e++,f=-1)):b<0?d--:e<c&&e++;let g=eh(this.dom,d,e).getClientRects();if(!g.length)return null;let h=g[(f?f<0:b>=0)?0:g.length-1];return dR.safari&&!f&&0==h.width&&(h=Array.prototype.find.call(g,a=>a.width)||h),f?ec(h,f<0):h||null}static of(b,c){let d=new a(c||document.createTextNode(b),b);return c||(d.flags|=2),d}},fg=class a extends e8{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 ec(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 ec(c,!d)}}get overrideDOMText(){if(!this.length)return ck.empty;let{root:a}=this;if(!a)return ck.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)}},fh=class extends e8{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 ck.empty}coordsIn(a){return this.dom.getBoundingClientRect()}},fi=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}},fj=class{constructor(a,b,c,d){this.from=a,this.to=b,this.wrapper=c,this.rank=d}},fk=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 ff(g.dom,g.text+a)).parent=f):f.append(d||ff.of(a,null==(e=this.cache.find(ff))?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)?fr(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 fe&&e.mark.eq(c.mark))e.dom!=c.dom&&e.setDOM(fr(c.dom)),d=e;else{if(this.cache.reused.get(c)){let a=e8.get(c.dom);a&&a.setDOM(fr(c.dom))}let a=fe.of(c.mark,c.dom);d.append(a),d=a}this.cache.reused.set(c,2)}let e=e8.get(a.text);e&&this.cache.reused.set(e,2);let f=new ff(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=fq);let d=fd.start(a,b||(null==(c=this.cache.find(fd))?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 fe&&g.mark.eq(f))d=g,b--;else{let a=fe.of(f,null==(c=this.cache.find(fe,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||!fp(this.curLine,!1)||"BR"!=a.dom.nodeName&&a.isWidget()&&!(dR.ios&&fp(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(ft,0,32)||new fg(ft.toDOM(),0,ft,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 fj(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 fc&&d.wrapper.eq(c.wrapper))b=d;else{let d=fc.of(c.wrapper,null==(a=this.cache.find(fc,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(fh,void 0,1);return c&&(c.flags=b),c||new fh(b)}flushBuffer(){this.afterWidget&&!(32&this.afterWidget.flags)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},fl=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}},fm=[fg,fd,ff,fe,fh,fc,fb];for(let a=0;a<fm.length;a++)fm[a].bucket=a;var fn=class{constructor(a){this.view=a,this.buckets=fm.map(()=>[]),this.index=fm.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 fg(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}},fo=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 fn(a),this.text=new fl(a.state.doc),this.builder=new fk(this.cache,new fb(a,a.contentDOM),dk.iter(c)),this.cache.reused.set(b,2),this.old=new fi(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 fe&&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?fg.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 fh)this.cache.add(a);else{if(!(a instanceof fe))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 fe&&d.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?d.length&&(d.length=e=0):a instanceof fe&&(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=dk.spans(this.decorations,a,b,{point:(a,b,f,g,h,i)=>{var j,k,l;if(f instanceof d_){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?fs.block:fs.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)||fg.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&&dS(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=e8.get(d);if(d==this.view.contentDOM)break;a instanceof fe?b.push(a):(null==a?void 0:a.isLine())?c=a:"DIV"!=d.nodeName||c||d==this.view.contentDOM?b.push(fe.of(new dZ({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 fd(d,fq)}return{line:c,marks:b}}};function fp(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 fq={class:"cm-line"};function fr(a){let b=e8.get(a);return b&&b.setDOM(a.cloneNode()),a}var fs=class extends dW{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}};fs.inline=new fs("span"),fs.block=new fs("div");var ft=new class extends dW{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},fu=class{constructor(a){this.view=a,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=dY.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 fb(a,a.contentDOM),this.updateInner([new e5(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=fw(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 e5(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 e5(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,(dR.ie||dR.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 fx,dk.compare(e,f,g,l),l.changes);s.length&&(n=e5.extendWithRanges(n,s));let t=(h=r,i=this.blockWrappers,j=a.changes,m=new fy,dk.compare(h,i,j,m),m.changes);return t.length&&(n=e5.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 fo(this.view,c,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=d.run(a,b),fv(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=dR.chrome||dR.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 fz&&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(eP)&&(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(eR)||d.tabIndex>-1)&&d5(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)),dR.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 em(a,0),h=!0}let l=this.view.observer.selectionRange;!h&&l.focusNode&&(d7(j.node,j.offset,l.anchorNode,l.anchorOffset)&&d7(k.node,k.offset,l.focusNode,l.focusOffset)||this.suppressWidgetCursorChange(l,i))||(this.view.observer.ignore(()=>{dR.android&&dR.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=d3(this.view.root);if(a)if(i.empty){if(dR.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?ek:el)(j.node,j.offset);b&&(j=new em(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 em(l.anchorNode,l.anchorOffset),this.impreciseHead=k.precise?null:new em(l.focusNode,l.focusOffset)}suppressWidgetCursorChange(a,b){return this.hasComposition&&b.empty&&d7(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=d3(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==eb(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&&!e8.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 fz?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=ct(b.text,c);if(a==c)return null;let d=eh(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==en.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 fc)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?d6(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?en.RTL:en.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=d6(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=d6(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(dY.replace({widget:new fz(d),block:!0,inclusive:!0,isBlockGap:!0}).range(c,f))}if(!e)break;c=e.to+1}return dY.set(a)}updateDeco(){let a=1,b=this.view.state.facet(eY).map(b=>(this.dynamicDecorationMap[a++]="function"==typeof b)?b(this.view):b),c=!1,d=this.view.state.facet(e$).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(dk.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(eZ).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(eM))try{if(b(this.view,a.range,a))return!0}catch(a){eQ(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=e3(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}=ed(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==en.LTR)}lineHasWidget(a){let b=a=>a.isWidget()||a.children.some(b);return b(this.tile.resolveBlock(a,1).tile)}destroy(){fv(this.tile)}};function fv(a,b){let c=null==b?void 0:b.get(a);if(1!=c)for(let d of(null==c&&a.destroy(),a.children))fv(d,b)}function fw(a,b){let c=a.observer.selectionRange;if(!c.focusNode)return null;let d=ek(c.focusNode,c.focusOffset),e=el(c.focusNode,c.focusOffset),f=d||e;if(e&&d&&e.node!=d.node){let b=e8.get(e.node);if(!b||b.isText()&&b.text!=e.node.nodeValue)f=e;else if(a.docView.lastCompositionAfterCursor){let a=e8.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 fx=class{constructor(){this.changes=[]}compareRange(a,b){d1(a,b,this.changes)}comparePoint(a,b){d1(a,b,this.changes)}boundChange(a){d1(a,a,this.changes)}},fy=class{constructor(){this.changes=[]}compareRange(a,b){d1(a,b,this.changes)}comparePoint(){}boundChange(a){d1(a,a,this.changes)}},fz=class extends dW{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 fA(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=ex.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=ct(a.text,g,i.forward(e,c));(k<i.from||k>i.to)&&(k=j),eA=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?cF.cursor(l.side(!e,c)+a.from,l.forward(e,c)?1:-1,l.level):cF.cursor(k+a.from,i.forward(e,c)?-1:1,i.level)}(e,f,g,h,c),j=eA;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 fB(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 fC(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=fB(a,e.from,0);b!=e.from&&(f=cF.cursor(b,-1))}else{let b=fB(a,e.from,-1),c=fB(a,e.to,1);(b!=e.from||c!=e.to)&&(f=cF.range(e.from==e.anchor?b:c,e.from==e.head?b:c))}f&&(c||(c=b.ranges.slice()),c[d]=f)}return c?cF.create(c,b.mainIndex):b}function fD(a,b,c){let d=fB(a.state.facet(e_).map(b=>b(a)),c.from,b.head>c.from?-1:1);return d==c.from?c:cF.cursor(d,d<c.from?1:-1)}var fE=class{constructor(a,b){this.pos=a,this.assoc=b}};function fF(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 fE(0,1);if(i>a.viewState.docHeight)return new fE(a.state.doc.length,-1);if(j=a.elementAtHeight(i),null==d)break;if(j.type==dX.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==dX.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=ct(a,d)}return a.length}(g,f,a.state.tabSize)}(a,e,j,g,h);return new fE(b,b==j.from?1:-1)}}if(j.type!=dX.Text)return i<(j.top+j.bottom)/2?new fE(j.from,1):new fE(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 fG(a,g,h,a.textDirectionAt(j.from)).scanTile(k,j.from)}var fG=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[ex.find(d,a-c.from,-1,b)].level==this.baseDir}dirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[ex.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==en.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)==en.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=ct(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 eh(a.dom,e,f).getClientRects()});return d.after?new fE(c[d.i+1],-1):new fE(c[d.i],1)}scanTile(a,b){if(!a.length)return new fE(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:eh(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 fE(c[d.i+1],-1):new fE(f,1)}},fH=class{constructor(a,b){this.points=a,this.view=b,this.text="",this.lineSeparator=b.state.facet(de.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=e8.get(d),f=d.nextSibling;if(f==b){(null==e?void 0:e.breakAfter)&&!f&&c!=this.view.contentDOM&&this.lineBreak();break}let g=e8.get(f);(e&&g?e.breakAfter:(e?e.breakAfter:d9(d))||d9(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=e8.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=e8.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<eb(b))return!1;if(b==a)return!0;c=d8(b)+1,b=b.parentNode}}(a,c.node,c.offset)?0:b))}},fI=class{constructor(a,b){this.node=a,this.offset=b,this.pos=-1}},fJ=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 fI(c,d)),(e!=c||f!=d)&&b.push(new fI(e,f))),b}(a),c=new fH(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?cF.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||!d4(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||!d4(a.contentDOM,b.anchorNode)?a.state.selection.main.anchor:a.docView.posFromDOM(b.anchorNode,b.anchorOffset),g=a.viewport;if((dR.ios||dR.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(cF.range(d,c)):this.newSel=cF.single(d,c)}}};function fK(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||dR.android&&b.text.length<g-d)&&(h=e.to,i="end");let j=fM(a.state.doc.sliceString(d,g,"￿"),b.text,h-d,i);j&&(dR.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:ck.of(b.text.slice(j.from,j.toB).split("￿"))})}else d&&(!a.hasFocus&&a.state.facet(eR)||fN(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)}:(dR.mac||dR.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=cF.single(d.main.anchor-1,d.main.head-1)),c={from:c.from,to:c.to,insert:ck.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)}:dR.chrome&&c&&c.from==c.to&&c.from==e.head&&"\n "==c.insert.toString()&&a.lineWrapping&&(d&&(d=cF.single(d.main.anchor-1,d.main.head-1)),c={from:e.from,to:e.to,insert:ck.of([" "])}),c)return fL(a,c,d,f);if(!d||fN(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=fC(a.state.facet(e_).map(b=>b(a)),d))),a.dispatch({selection:d,scrollIntoView:b,userEvent:c}),!0}}function fL(a,b,c,d=-1){let e;if(dR.ios&&a.inputState.flushIOSKey(b))return!0;let f=a.state.selection.main;if(dR.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&&ei(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)&&ei(a.contentDOM,"Backspace",8)||b.from==f.from&&b.to==f.to+1&&0==b.insert.length&&ei(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=fB(e.facet(e_).map(b=>b(a)),d,c);b.from==h&&(g=h)}if(g>-1)d={changes:b,selection:cF.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&&fw(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?cF.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(eG).some(c=>c(a,b.from,b.to,g,h))||a.dispatch(h()),!0}function fM(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 fN(a,b){return b.head==a.main.head&&b.anchor==a.main.anchor}var fO=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,dR.safari&&a.contentDOM.addEventListener("input",()=>null),dR.gecko&&function(a){f9.has(a)||(f9.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=e8.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(fP(b.value,e))}if(e)for(let a in e){let d=e[a];d&&c(a).observers.push(fP(b.value,d))}}for(let a in fV)c(a).handlers.push(fV[a]);for(let a in fW)c(a).observers.push(fW[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>fS.indexOf(a.keyCode)&&(this.tabFocusMode=-1),dR.android&&dR.chrome&&!a.synthetic&&(13==a.keyCode||8==a.keyCode))?(this.view.observer.delayAndroidKey(a.key,a.keyCode),!0):dR.ios&&!a.synthetic&&!a.altKey&&!a.metaKey&&((b=fQ.find(b=>b.keyCode==a.keyCode))&&!a.ctrlKey||fR.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,ei(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||!!(dR.safari&&!dR.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 fP(a,b){return(c,d)=>{try{return b.call(a,d,c)}catch(a){eQ(c.state,a)}}}var fQ=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],fR="dthko",fS=[16,17,18,20,91,92,224,225];function fT(a){return .7*Math.max(0,a)+8}var fU=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(e_).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(de.allowMultipleSelections)&&function(a,b){let c=a.state.facet(eB);return c.length?c[0](b):dR.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=d3(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==f3(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=e3(this.view);a.clientX-i.left<=e+6?c=-fT(e-a.clientX):a.clientX+i.right>=g-6&&(c=fT(a.clientX-g)),a.clientY-i.top<=f+6?d=-fT(f-a.clientY):a.clientY+i.bottom>=h-6&&(d=fT(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=fC(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)}},fV=Object.create(null),fW=Object.create(null),fX=dR.ie&&dR.ie_version<15||dR.ios&&dR.webkit_version<604;function fY(a,b,c){for(let d of a.facet(b))c=d(c,a);return c}function fZ(a,b){b=fY(a.state,eI,b);let{state:c}=a,d,e=1,f=c.toText(b),g=f.lines==c.selection.ranges.length;if(null!=f5&&c.selection.ranges.every(a=>a.empty)&&f5==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:cF.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:cF.cursor(a.from+b.length)}}):c.replaceSelection(f);a.dispatch(d,{userEvent:"input.paste",scrollIntoView:!0})}function f$(a,b,c,d){if(1==d)return cF.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 cF.cursor(b);0==f?c=1:f==e.length&&(c=-1);let g=f,h=f;c<0?g=ct(e.text,f,!1):h=ct(e.text,f);let i=d(e.text.slice(g,h));for(;g>0;){let a=ct(e.text,g,!1);if(d(e.text.slice(a,g))!=i)break;g=a}for(;h<e.length;){let a=ct(e.text,h);if(d(e.text.slice(h,a))!=i)break;h=a}return cF.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++,cF.range(g,h)}}fW.scroll=a=>{a.inputState.lastScrollTop=a.scrollDOM.scrollTop,a.inputState.lastScrollLeft=a.scrollDOM.scrollLeft},fV.keydown=(a,b)=>(a.inputState.setSelectionOrigin("select"),27==b.keyCode&&0!=a.inputState.tabFocusMode&&(a.inputState.tabFocusMode=Date.now()+2e3),!1),fW.touchstart=(a,b)=>{a.inputState.lastTouchTime=Date.now(),a.inputState.setSelectionOrigin("select.pointer")},fW.touchmove=a=>{a.inputState.setSelectionOrigin("select.pointer")},fV.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(eD))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=f3(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=f$(a,h.pos,h.assoc,d);if(c.pos!=h.pos&&!f){let b=f$(a,c.pos,c.assoc,d),e=Math.min(b.from,j.from),f=Math.max(b.to,j.to);j=e<j.from?cF.range(e,f):cF.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 cF.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):cF.create([j])}}}(a,b)),c){let d=!a.hasFocus;a.inputState.startMouseSelection(new fU(a,b,c,d)),d&&a.observer.ignore(()=>{eg(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 f_=dR.ie&&dR.ie_version<=11,f0=null,f1=0,f2=0;function f3(a){if(!f_)return a.detail;let b=f0,c=f2;return f0=a,f2=Date.now(),f1=!b||c>Date.now()-400&&2>Math.abs(b.clientX-a.clientX)&&2>Math.abs(b.clientY-a.clientY)?(f1+1)%3:1}function f4(a,b,c,d){let e;if(!(c=fY(a.state,eI,c)))return;let f=a.posAtCoords({x:b.clientX,y:b.clientY},!1),{draggedContent:g}=a.inputState,h=d&&g&&((e=a.state.facet(eC)).length?e[0](b):dR.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}fV.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=cF.range(a,b))}}let{inputState:d}=a;return d.mouseSelection&&(d.mouseSelection.dragging=!0),d.draggedContent=c,b.dataTransfer&&(b.dataTransfer.setData("Text",fY(a.state,eJ,a.state.sliceDoc(c.from,c.to))),b.dataTransfer.effectAllowed="copyMove"),!1},fV.dragend=a=>(a.inputState.draggedContent=null,!1),fV.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&&f4(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 f4(a,b,c,!0),!0}return!1},fV.paste=(a,b)=>{if(a.state.readOnly)return!0;a.observer.flush();let c=fX?null:b.clipboardData;return c?(fZ(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(),fZ(a,c.value)},50)}(a),!1)};var f5=null;fV.copy=fV.cut=(a,b)=>{if(!d5(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:fY(a,eJ,b.join(a.lineBreak)),ranges:c,linewise:d}}(a.state);if(!c&&!e)return!1;f5=e?c:null,"cut"!=b.type||a.state.readOnly||a.dispatch({changes:d,scrollIntoView:!0,userEvent:"delete.cut"});let f=fX?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 f6=c3.define();function f7(a,b){let c=[];for(let d of a.facet(eH)){let e=d(a,b);e&&c.push(e)}return c.length?a.update({effects:c,annotations:f6.of(!0)}):null}function f8(a){setTimeout(()=>{let b=a.hasFocus;if(b!=a.inputState.notifiedFocused){let c=f7(a.state,b);c?a.dispatch(c):a.update([])}},10)}fW.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),f8(a)},fW.blur=a=>{a.observer.clearSelectionRange(),f8(a)},fW.compositionstart=fW.compositionupdate=a=>{!a.observer.editContext&&(null==a.inputState.compositionFirstChange&&(a.inputState.compositionFirstChange=!0),a.inputState.composing<0&&(a.inputState.composing=0))},fW.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,dR.chrome&&dR.android?a.observer.flushSoon():a.inputState.compositionPendingChange?Promise.resolve().then(()=>a.observer.flush()):setTimeout(()=>{a.inputState.composing<0&&a.docView.hasComposition&&a.update([])},50))},fW.contextmenu=a=>{a.inputState.lastContextMenu=Date.now()},fV.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 fL(a,{from:c,to:f,insert:a.state.toText(d)},null),!0}}if(dR.chrome&&dR.android&&(e=fQ.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 dR.ios&&"deleteContentForward"==b.inputType&&a.observer.flushSoon(),dR.safari&&"insertText"==b.inputType&&a.inputState.composing>=0&&setTimeout(()=>fW.compositionend(a,b),20),!1};var f9=new Set,ga=["pre-wrap","normal","pre-line","break-spaces"],gb=!1,gc=class{constructor(a){this.lineWrapping=a,this.doc=ck.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 ga.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=ga.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}},gd=class{constructor(a,b){this.from=a,this.heights=b,this.index=0}get more(){return this.index<this.heights.length}},ge=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?dX.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 d_?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)}},gf=function(a){return a[a.ByPos=0]="ByPos",a[a.ByHeight=1]="ByHeight",a[a.ByPosNoHeight=2]="ByPosNoHeight",a}(gf||(gf={})),gg=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&&(gb=!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,gf.ByPosNoHeight,c.setDoc(b),0,0),m=l.to>=i?l:e.lineAt(i,gf.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,gf.ByPosNoHeight,c,0,0));j+=l.from-h,h=l.from;let n=go.build(c.setDoc(f),a,j,k);e=gh(e,e.replace(h,i,n))}return e.updateHeight(c,0)}static empty(){return new gk(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 gm(a.of(b.slice(0,c)),g,a.of(b.slice(d)))}};function gh(a,b){return a==b?a:(a.constructor!=b.constructor&&(gb=!0),b)}gg.prototype.size=1;var gi=dY.replace({}),gj=class extends gg{constructor(a,b,c){super(a,b),this.deco=c,this.spaceAbove=0}mainBlock(a,b){return new ge(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 ge(d,0,c,this.spaceAbove,gi):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,gf.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})`}},gk=class a extends gj{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 ge(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 gl&&4&e.flags)&&10>Math.abs(this.length-e.length)?(e instanceof gl?e=new a(e.length,this.height,this.spaceAbove):e.height=this.height,this.outdated||(e.outdated=!1),e):gg.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:""})`}},gl=class a extends gg{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 ge(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 ge(h,i,c+g*d,g,0)}}lineAt(a,b,c,d,e){if(b==gf.ByHeight)return this.blockAt(a,c,d,e);if(b==gf.ByPosNoHeight){let{from:b,to:d}=c.doc.lineAt(a);return new ge(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 ge(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 ge(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 gg.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 gk(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=gg.of(d);return(h<0||Math.abs(i.height-this.height)>=.001||Math.abs(h-this.heightMetrics(b,c).perLine)>=.001)&&(gb=!0),gh(this,i)}return(d||this.outdated)&&(this.setHeight(b.heightForGap(c,c+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}},gm=class extends gg{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==gf.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==gf.ByPosNoHeight?gf.ByPosNoHeight:gf.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,gf.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&&gn(e,f-1),b<this.length){let a=e.length;this.decomposeRight(b,e),gn(e,a)}return gg.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?gg.of(this.break?[a,null,b]:[a,b]):(this.left=gh(this.left,a),this.right=gh(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 gn(a,b){let c,d;null==a[b]&&(c=a[b-1])instanceof gl&&(d=a[b+1])instanceof gl&&a.splice(b-1,3,new gl(c.length+1+d.length))}var go=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 gk?c.length+=a-this.pos:(a>this.pos||!this.isCovered)&&this.nodes.push(new gk(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 gj(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 gk(this.pos-a,-1,0)),this.writtenTo=this.pos}blankContent(a,b){let c=new gl(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 gk)return a;let b=new gk(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 gk||this.isCovered?(this.writtenTo<this.pos||null==b)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new gk(0,-1,0));let c=a;for(let a of this.nodes)a instanceof gk&&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 dk.spans(c,d,e,f,0),f.finish(d)}},gp=class{constructor(){this.changes=[]}compareRange(){}comparePoint(a,b,c,d){(a<b||c&&c.heightRelevant||d&&d.heightRelevant)&&d1(a,b,this.changes,5)}},gq=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 dY.replace({widget:new gr(this.displaySize*(b?a.scaleY:a.scaleX),b)}).range(this.from,this.to)}},gr=class extends dW{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}},gs=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=gw,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=en.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let b=a.facet(eX).some(a=>"function"!=typeof a&&"cm-lineWrapping"==a.class);this.heightOracle=new gc(b),this.stateDeco=gx(a),this.heightMap=gg.empty().applyChanges(this.stateDeco,ck.empty,this.heightOracle.setDoc(a.doc),[new e5(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=dY.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 gt(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?gw:new gy(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(gz(a,this.scaler))})}update(a,b=null){var c,d;let e;this.state=a.state;let f=this.stateDeco;this.stateDeco=gx(this.state);let g=a.changedRanges,h=e5.extendWithRanges(g,(c=this.stateDeco,d=a?a.changes:cx.empty(this.state.doc.length),e=new gp,dk.compare(f,c,d,e,0),e.changes)),i=this.heightMap.height,j=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);gb=!1,this.heightMap=this.heightMap.applyChanges(this.stateDeco,a.startState.doc,this.heightOracle.setDoc(this.state.doc),h),(this.heightMap.height!=i||gb)&&(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(eL)&&(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?en.RTL:en.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}=ed(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=ej(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)),gb=!1,this.viewports)){let d=c.from==this.viewport.from?b:a.docView.measureVisibleLineHeights(c);this.heightMap=(i?gg.empty().applyChanges(this.stateDeco,ck.empty,this.heightOracle,[new e5(0,0,0,a.state.doc.length)]):this.heightMap).updateHeight(g,0,i,new gd(c.from,d))}gb&&(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 gt(d.lineAt(f-1e3*c,gf.ByHeight,e,0,0).from,d.lineAt(g+(1-c)*1e3,gf.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,gf.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 gt(d.lineAt(g-500,gf.ByHeight,e,0,0).from,d.lineAt(g+c+500,gf.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 gt(this.heightMap.lineAt(c,gf.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(d,gf.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,gf.ByPos,this.heightOracle,0,0),{bottom:e}=this.heightMap.lineAt(b,gf.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 gq(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!=en.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(cF.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 gq(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!=dX.Text)return;let o=(e=b.from,g=b.to,i=this.stateDeco,l=[],m=e,n=0,dk.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=gv(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=gu(o,a),k=gu(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=gv(o,p),b=((l-i)/2+g)/f;c=a-b,e=a+b}else c=(i-g)/f,e=(l+g)/f;j=gu(o,c),k=gu(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=gv(d,c)-gv(d,b);return this.heightOracle.lineWrapping?a.height*e:d.total*this.heightOracle.charWidth*e}updateLineGaps(a){gq.same(a,this.lineGaps)||(this.lineGaps=a,this.lineGapDeco=dY.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=[];dk.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)||gz(this.heightMap.lineAt(a,gf.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)||gz(this.heightMap.lineAt(this.scaler.fromDOM(a),gf.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 gz(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}},gt=class{constructor(a,b){this.from=a,this.to=b}};function gu({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 gv(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 gw={toDOM:a=>a,fromDOM:a=>a,scale:1,eq(a){return a==this}};function gx(a){let b=a.facet(eY).filter(a=>"function"!=typeof a),c=a.facet(e$).filter(a=>"function"!=typeof a);return c.length&&b.push(dk.join(c)),b}var gy=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,gf.ByPos,a,0,0).top,g=b.lineAt(e,gf.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 gz(a,b){if(1==b.scale)return a;let c=b.toDOM(a.top),d=b.toDOM(a.bottom);return new ge(a.from,a.length,c,d-c,Array.isArray(a._content)?a._content.map(a=>gz(a,b)):a._content)}var gA=cI.define({combine:a=>a.join(" ")}),gB=cI.define({combine:a=>a.indexOf(!0)>-1}),gC=dA.newName(),gD=dA.newName(),gE=dA.newName(),gF={"&light":"."+gD,"&dark":"."+gE};function gG(a,b,c){return new dA(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 gH=gG("."+gC,{"&":{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"}},gF),gI={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},gJ=dR.ie&&dR.ie_version<=11,gK=class{constructor(a){this.view=a,this.active=!1,this.editContext=null,this.selectionRange=new ee,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);(dR.ie&&dR.ie_version<=11||dR.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&&dR.android&&!1!==a.constructor.EDIT_CONTEXT&&!(dR.chrome&&dR.chrome_version<126)&&(this.editContext=new gN(a),a.state.facet(eR)&&(a.contentDOM.editContext=this.editContext.editContext)),gJ&&(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(eR)?c.root.activeElement!=this.dom:!d5(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}(dR.ie&&dR.ie_version<=11||dR.android&&dR.chrome)&&!c.state.selection.main.empty&&d.focusNode&&d7(d.focusNode,d.focusOffset,d.anchorNode,d.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:a}=this,b=d3(a.root);if(!b)return!1;let c=dR.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 gM(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?gM(a,c):null}(this.view,b)||b;if(!c||this.selectionRange.eq(c))return!1;let d=d5(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,eb(c));;)if(d){if(1!=c.nodeType)return!1;let a=c.childNodes[d-1];"false"==a.contentEditable?d--:d=eb(c=a)}else{if(c==a)return!0;d=d8(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,gI),gJ&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),gJ&&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&&ei(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&&d5(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 fJ(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=fK(this.view,b);return this.view.state==c&&(b.domChanged||b.newSel&&!fN(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=gL(b,a.previousSibling||a.target.previousSibling,-1),d=gL(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(eR)!=a.state.facet(eR)&&(a.view.contentDOM.editContext=a.state.facet(eR)?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 gL(a,b,c){for(;b;){let d=e8.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 gM(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 d7(g.node,g.offset,e,f)&&([c,d,e,f]=[e,f,c,d]),{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}}var gN=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=fM(a.state.sliceDoc(g,h),c.text,(i?d.from:d.to)-g,i?"end":null);if(!j){let b=cF.single(this.toEditorPos(c.selectionStart),this.toEditorPos(c.selectionEnd));fN(b,d)||a.dispatch({selection:b,userEvent:"select"});return}let k={from:j.from+g,to:j.toA+g,insert:ck.of(c.text.slice(j.from,j.toB).split("\n"))};if((dR.mac||dR.android)&&k.from==f-1&&/^\. ?$/.test(c.text)&&"off"==a.contentDOM.getAttribute("autocorrect")&&(k={from:g,to:h,insert:ck.of([c.text.replace("."," ")])}),this.pendingContextChange=k,!a.state.readOnly){let b=this.to-this.from+(k.to-k.from+k.insert.length);fL(a,k,cF.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(dY.mark({attributes:{style:a}}).range(e,f))}}}a.dispatch({effects:eP.of(dY.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=d3(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])}},gO=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 gs(a.state||de.create(a)),a.scrollTo&&a.scrollTo.is(eO)&&(this.viewState.scrollTarget=a.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(eT).map(a=>new eV(a)),this.plugins))b.update(this);this.observer=new gK(this),this.inputState=new fO(this),this.inputState.ensureHandlers(this.plugins),this.docView=new fu(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 c7?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(f6))?(this.inputState.notifiedFocused=f,g=1):f!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=f,(h=f7(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(de.phrases)!=this.state.facet(de.phrases))return this.setState(e);d=e6.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 eN(a.empty?a:cF.cursor(a.head,a.head>a.anchor?-1:1))}for(let a of b.effects)a.is(eO)&&(k=a.value.clip(this.state))}this.viewState.update(d,k),this.bidiCache=gR.update(this.bidiCache,d.changes),d.empty||(this.updatePlugins(d),this.inputState.update(d)),b=this.docView.update(d),this.state.facet(e4)!=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(gA)!=d.state.facet(gA)&&(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(eF))try{a(d)}catch(a){eQ(this.state,a,"update listener")}(h||j)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),j&&!fK(this,j)&&i.force&&ei(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 gs(a),this.plugins=a.facet(eT).map(a=>new eV(a)),this.pluginMap.clear(),this.plugins))b.update(this);this.docView.destroy(),this.docView=new fu(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(eT),c=a.state.facet(eT);if(b!=c){let d=[];for(let e of c){let c=b.indexOf(e);if(c<0)d.push(new eV(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){eQ(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(ej(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 eQ(this.state,a),gQ}}),j=e6.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]!=gQ)try{let b=h[a];b.write&&b.write(i[a],this)}catch(a){eQ(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(eF))a(b)}get themeClasses(){return gC+" "+(this.state.facet(gB)?gE:gD)+" "+this.state.facet(gA)}updateAttrs(){let a=gS(this,eW,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),b={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(eR)?"true":"false",class:"cm-content",style:`${dR.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(b["aria-readonly"]="true"),gS(this,eX,b);let c=this.observer.ignore(()=>{let c=dV(this.contentDOM,this.contentAttrs,b),d=dV(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(e4);let b=this.state.facet(a.cspNonce);dA.mount(this.root,this.styleModules.concat(gH).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 fD(this,a,fA(this,a,b,c))}moveByGroup(a,b){return fD(this,a,fA(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==dc.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 cF.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==dX.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==dX.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==en.LTR)?b.right-1:b.left+1,y:(f.top+f.bottom)/2});if(null!=g)return cF.cursor(g,c?-1:1)}return cF.cursor(c?e.to:e.from,c?-1:1)}(this,a,b,c)}moveVertically(a,b,c){return fD(this,a,function(a,b,c,d){let e=b.head,f=c?1:-1;if(e==(c?a.state.doc.length:0))return cF.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=fF(a,{x:l,y:h+m*f},!1,f);return cF.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=fF(this,a,b);return c&&c.pos}posAndSideAtCoords(a,b=!0){return this.readMeasured(),fF(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 ec(c,e[ex.find(e,a-d.from,-1,b)].dir==en.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(eK)||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>gP)return ez(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=e1(this,a))))return d.order;c||(c=e1(this,a));let d=function(a,b,c){if(!a)return[new ex(0,0,+(b==ep))];if(b==eo&&!c.length&&!ew.test(a))return ez(a.length);if(c.length)for(;a.length>ey.length;)ey[ey.length]=256;let d=[],e=+(b!=eo);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=ev(a.charCodeAt(b));512==e?e=c:8==e&&4==d&&(e=16),ey[b]=4==e?2:e,7&e&&(d=e),c=e}for(let a=g,b=i,d=i;a<h;a++){let e=ey[a];if(128==e)a<h-1&&b==ey[a+1]&&24&b?e=ey[a]=b:ey[a]=256;else if(64==e){let e=a+1;for(;e<h&&64==ey[e];)e++;let f=a&&8==b||e<c&&8==ey[e]?1==d?1:8:256;for(let b=a;b<e;b++)ey[b]=f;a=e-1}else 8==e&&1==d&&(ey[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=et[c=a.charCodeAt(b)])if(d<0){for(let a=h-3;a>=0;a-=3)if(eu[a+1]==-d){let c=eu[a+2],d=2&c?e:4&c?1&c?f:e:0;d&&(ey[b]=ey[eu[a]]=d),h=a;break}}else if(189==eu.length)break;else eu[h++]=b,eu[h++]=c,eu[h++]=i;else if(2==(g=ey[b])||1==g){let a=g==e;i=+!a;for(let b=h-3;b>=0;b-=3){let c=eu[b+2];if(2&c)break;if(a)eu[b+2]|=2;else{if(4&c)break;eu[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=ey[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==ey[g])g++;else break;let j=1==f,k=j==((g<b?ey[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),ey[--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=ey[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(ey[a]==j)break d;else break}l++,n?n.push(b):(b.from>k&&i.push(new ex(k,b.from,o)),a(c,b.direction==eo!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.to),p=b.to}else if(p==e||(d?ey[p]!=j:ey[p]==j))break;else p++;n?b(c,k,p,f+1,g,n,i):k<p&&i.push(new ex(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=ey[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(ey[a-1]==j)break d;else break}n?n.push(b):(b.to<k&&i.push(new ex(b.to,k,o)),a(c,b.direction==eo!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.from),p=b.from}else if(p==d||(e?ey[p-1]!=j:ey[p-1]==j))break;else p--;n?b(c,p,k,f+1,g,n,i):p<k&&i.push(new ex(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 gR(a.from,a.to,b,c,!0,d)),d}get hasFocus(){var a;return(this.dom.ownerDocument.hasFocus()||dR.safari&&(null==(a=this.inputState)?void 0:a.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{eg(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 eO.of(new eN("number"==typeof a?cF.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 eO.of(new eN(cF.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 eU.define(()=>({}),{eventHandlers:a})}static domEventObservers(a){return eU.define(()=>({}),{eventObservers:a})}static theme(a,b){let c=dA.newName(),d=[gA.of(c),e4.of(gG(`.${c}`,a))];return b&&b.dark&&d.push(gB.of(!0)),d}static baseTheme(a){return cR.lowest(e4.of(gG("."+gC,a,gF)))}static findFromDOM(a){var b;let c=a.querySelector(".cm-content"),d=c&&e8.get(c)||e8.get(a);return(null==(b=null==d?void 0:d.root)?void 0:b.view)||null}};gO.styleModule=e4,gO.inputHandler=eG,gO.clipboardInputFilter=eI,gO.clipboardOutputFilter=eJ,gO.scrollHandler=eM,gO.focusChangeEffect=eH,gO.perLineTextDirection=eK,gO.exceptionSink=eE,gO.updateListener=eF,gO.editable=eR,gO.mouseSelectionStyle=eD,gO.dragMovesSelection=eC,gO.clickAddsSelectionRange=eB,gO.decorations=eY,gO.blockWrappers=eZ,gO.outerDecorations=e$,gO.atomicRanges=e_,gO.bidiIsolatedRanges=e0,gO.scrollMargins=e2,gO.darkTheme=gB,gO.cspNonce=cI.define({combine:a=>a.length?a[0]:""}),gO.contentAttributes=eX,gO.editorAttributes=eW,gO.lineWrapping=gO.contentAttributes.of({class:"cm-lineWrapping"}),gO.announce=c6.define();var gP=4096,gQ={},gR=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:en.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 gS(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&&dS(f,c)}return c}dR.mac||dR.windows||dR.linux,/x/.unicode;var gT="-10000px",gU=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 gV(a){let b=a.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:b.clientHeight,right:b.clientWidth}}var gW=cI.define({combine:a=>{var b,c,d;return{position:dR.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)||gV}}}),gX=new WeakMap,gY=eU.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(gW);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 gU(a,g0,(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(gW);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=gT,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(dR.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=e3(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(gW).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=gT;continue}let n=i.arrow?j.dom.querySelector(".cm-tooltip-arrow"):null,o=7*!!n,p=m.right-m.left,q=null!=(b=gX.get(j))?b:m.bottom-m.top,r=j.offset||g_,s=this.view.textDirection==en.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=gT;continue}gX.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",gZ(k,(t-a.parent.left)/e)):(k.style.top=w/f+"px",gZ(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=gT}},{eventObservers:{scroll(){this.maybeMeasure()}}});function gZ(a,b){let c=parseInt(a.style.left,10);(isNaN(c)||Math.abs(b-c)>1)&&(a.style.left=b+"px")}var g$=gO.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"}}}),g_={x:0,y:0},g0=cI.define({enables:[gY,g$]}),g1=cI.define({combine:a=>a.reduce((a,b)=>a.concat(b),[])}),g2=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 gU(a,g1,(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")}},g3=(a=>{let b=a.facet(g1);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:g2.create,above:b[0].above,arrow:b.some(a=>a.arrow)}},cI.define({combine(a){let b,c;for(let d of a)b=b||d.topContainer,c=c||d.bottomContainer;return{topContainer:b,bottomContainer:c}}})),g4=eU.fromClass(class{constructor(a){this.input=a.state.facet(g7),this.specs=this.input.filter(a=>a),this.panels=this.specs.map(b=>b(a));let b=a.state.facet(g3);for(let c of(this.top=new g5(a,!0,b.topContainer),this.bottom=new g5(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(g3);this.top.container!=b.topContainer&&(this.top.sync([]),this.top=new g5(a.view,!0,b.topContainer)),this.bottom.container!=b.bottomContainer&&(this.bottom.sync([]),this.bottom=new g5(a.view,!1,b.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let c=a.state.facet(g7);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=>gO.scrollMargins.of(b=>{let c=b.plugin(a);return c&&{top:c.top.scrollMargin(),bottom:c.bottom.scrollMargin()}})}),g5=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=g6(a);a=a.nextSibling}else this.dom.insertBefore(b.dom,a);for(;a;)a=g6(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 g6(a){let b=a.nextSibling;return a.remove(),b}var g7=cI.define({enables:g4}),g8=class extends df{compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}eq(a){return!1}destroy(a){}};g8.prototype.elementClass="",g8.prototype.toDOM=void 0,g8.prototype.mapMode=cv.TrackBefore,g8.prototype.startSide=g8.prototype.endSide=-1,g8.prototype.point=!0;var g9=class{constructor(a,b,c){this.from=a,this.to=b,this.diagnostic=c}},ha=class a{constructor(a,b,c){this.diagnostics=a,this.panel=b,this.selected=c}static init(b,c,d){let e=d.facet(hh).markerFilter;e&&(b=e(b,d));let f=b.slice().sort((a,b)=>a.from-b.from||a.to-b.to),g=new dl,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,dY.widget({widget:new hk(m),diagnostics:h.slice()}));else{let a=h.reduce((a,b)=>b.markClass?a+" "+b.markClass:a,"");g.add(b,c,dY.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,hb(m))}};function hb(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 g9(d.from,c,d.diagnostic)}else d=new g9(a,c,b||e.diagnostics[0])}),d}var hc=c6.define(),hd=c6.define(),he=c6.define(),hf=cO.define({create:()=>new ha(dY.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=hb(c,a.selected.diagnostic,e)||hb(c,null,e)}!c.size&&e&&b.state.facet(hh).autoPanel&&(e=null),a=new ha(c,e,d)}for(let c of b.effects)if(c.is(hc)){let d=b.state.facet(hh).autoPanel?c.value.length?hm.open:null:a.panel;a=ha.init(c.value,d,b.state)}else c.is(hd)?a=new ha(a.diagnostics,c.value?hm.open:null,a.selected):c.is(he)&&(a=new ha(a.diagnostics,a.panel,c.value));return a},provide:a=>[g7.from(a,a=>a.panel),gO.decorations.from(a,a=>a.diagnostics)]}),hg=a=>{let b=a.state.field(hf,!1);return!!b&&!!b.panel&&(a.dispatch({effects:hd.of(!1)}),!0)},hh=cI.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:hi,tooltipFilter:hi,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 hi(a,b){return a?b?(c,d)=>b(a(c,d),d):a:b}function hj(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 hk=class extends dW{constructor(a){super(),this.sev=a}eq(a){return a.sev==this.sev}toDOM(){return dF("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},hl=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?hj(b.actions):[];return dF("li",{class:"cm-diagnostic cm-diagnostic-"+b.severity},dF("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=hb(a.state.field(hf).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),dF("u",h.slice(i,i+1)),h.slice(i+1)];return dF("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&&dF("div",{class:"cm-diagnosticSource"},b.source))}(a,b,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},hm=class a{constructor(a){this.view=a,this.items=[];let b=b=>{if(!b.ctrlKey&&!b.altKey&&!b.metaKey){if(27==b.keyCode)hg(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=hj(c.actions);for(let e=0;e<d.length;e++)if(d[e].toUpperCase().charCodeAt(0)==b.keyCode){let b=hb(this.view.state.field(hf).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=dF("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:b,onclick:c}),this.dom=dF("div",{class:"cm-panel-lint"},this.list,dF("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>hg(this.view)},"\xd7")),this.update()}get selectedIndex(){let a=this.view.state.field(hf).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(hf),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 hl(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 hl(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=hb(this.view.state.field(hf).diagnostics,this.items[a].diagnostic);b&&this.view.dispatch({selection:{anchor:b.from,head:b.to},scrollIntoView:!0,effects:he.of(b)})}static open(b){return new a(b)}};function hn(a){return null!=a&&""!==a}function ho(a,b=!1){return b?hq(hn(a)?K(a).format("0,0.[00]"):"",".[00]"):hn(a)?K(a).format():""}function hp(a,b=2){let c=`.${"0".repeat(b)}`;return hq(hn(a)?K(a).format(`$0,0${c}`):"",c)}function hq(a,b=".00"){return a.includes(b)?a.replace(b,""):a}var hr=({loading:a,requests:b,onFilterChange:c,onSortChange:d,onPaginationChange:e,rowsPerPage:f,page:g,totalRows:h,onRowClick:i,filterModel:j,filterMode:k,paginationMode:p,sortingMode:q,t:s,emptyContentImgUrl:t})=>{let u=(0,o.useMemo)(()=>b?b.map(a=>({...a,id:a.id,output:a.output||a.status_message,user_id:a.user_id||"N/A"})):[],[b]),v=(0,o.useMemo)(()=>[{field:"input",headerName:s("columnHeader.input"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"output",headerName:s("columnHeader.output"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"prompt_tokens",headerName:s("columnHeader.promptTokens"),width:150,type:"number",headerAlign:"left",align:"left"},{field:"completion_tokens",headerName:s("columnHeader.completionTokens"),width:200,type:"number",headerAlign:"left",align:"left"},{field:"cost",headerName:s("columnHeader.cost"),type:"number",width:110,headerAlign:"left",align:"left",valueFormatter:a=>hp(a,6)},{field:"props",headerName:s("columnHeader.variables"),type:"string",headerAlign:"left",align:"left",width:300},{field:"latency_ms",headerName:s("columnHeader.latency"),type:"number",width:100,headerAlign:"left",align:"left"},{field:"model_used",headerName:s("columnHeader.modelUsed"),type:"string",width:200,headerAlign:"left",align:"left"},{field:"status",headerName:s("columnHeader.status"),type:"string",width:100,headerAlign:"left",align:"left",valueFormatter:a=>2===Number(a)?s("fail"):s("success")},{field:"prompt_name",headerName:s("columnHeader.promptName"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"user_id",headerName:s("columnHeader.user"),type:"string",width:150,headerAlign:"left",align:"left"},{field:"trace_id",headerName:s("columnHeader.traceId"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"ts",headerName:s("columnHeader.date"),type:"date",width:200,headerAlign:"left",align:"left",valueFormatter:a=>new Date(a).toLocaleString()}].map(a=>({...a,filterOperators:"number"===a.type?(0,l.J)().filter(a=>!a.value.includes("Empty")):"date"===a.type?(0,m.Q)():(0,n.n)().filter(a=>!a.value.includes("Empty"))})),[s]);return(0,r.jsx)(aH,{t:s,emptyContentImgUrl:t,onRowClick:a=>i?.(a.row),rows:u,loading:a,columns:v,paginationMode:p,onFilterModelChange:c,filterModel:j,filterMode:k,rowCount:e?h:void 0,showToolbar:!0,paginationModel:"server"===p?{page:g||0,pageSize:f||10}:void 0,onSortModelChange:d,sortingMode:q,pageSizeOptions:[5,10,25],initialState:{pagination:"server"!==p?{paginationModel:{page:0,pageSize:10}}:void 0},rowSelection:!1,onPaginationModelChange:a=>{e?.(a.page,a.pageSize)}})},hs=a=>(0,r.jsxs)(i.A,{direction:"column",spacing:2,children:[(0,r.jsx)(j.A,{variant:"h5",component:"h1",children:a.t("title")}),(0,r.jsx)(k.A,{children:(0,r.jsx)(hr,{...a})})]}),ht=Symbol.for("constructDateFrom");function hu(a,b){return"function"==typeof a?a(b):a&&"object"==typeof a&&ht in a?a[ht](b):a instanceof Date?new a.constructor(b):new Date(b)}function hv(a,b){return hu(b||a,a)}var hw={};function hx(a,b){let c=b?.weekStartsOn??b?.locale?.options?.weekStartsOn??hw.weekStartsOn??hw.locale?.options?.weekStartsOn??0,d=hv(a,b?.in),e=d.getDay();return d.setDate(d.getDate()-(7*(e<c)+e-c)),d.setHours(0,0,0,0),d}function hy(a,b){return hx(a,{...b,weekStartsOn:1})}function hz(a,b){let c=hv(a,b?.in),d=c.getFullYear(),e=hu(c,0);e.setFullYear(d+1,0,4),e.setHours(0,0,0,0);let f=hy(e),g=hu(c,0);g.setFullYear(d,0,4),g.setHours(0,0,0,0);let h=hy(g);return c.getTime()>=f.getTime()?d+1:c.getTime()>=h.getTime()?d:d-1}function hA(a){let b=hv(a),c=new Date(Date.UTC(b.getFullYear(),b.getMonth(),b.getDate(),b.getHours(),b.getMinutes(),b.getSeconds(),b.getMilliseconds()));return c.setUTCFullYear(b.getFullYear()),a-c}function hB(a,b){let c=hv(a,b?.in);return c.setHours(0,0,0,0),c}var hC={lessThanXSeconds:{one:"less than a second",other:"less than {{count}} seconds"},xSeconds:{one:"1 second",other:"{{count}} seconds"},halfAMinute:"half a minute",lessThanXMinutes:{one:"less than a minute",other:"less than {{count}} minutes"},xMinutes:{one:"1 minute",other:"{{count}} minutes"},aboutXHours:{one:"about 1 hour",other:"about {{count}} hours"},xHours:{one:"1 hour",other:"{{count}} hours"},xDays:{one:"1 day",other:"{{count}} days"},aboutXWeeks:{one:"about 1 week",other:"about {{count}} weeks"},xWeeks:{one:"1 week",other:"{{count}} weeks"},aboutXMonths:{one:"about 1 month",other:"about {{count}} months"},xMonths:{one:"1 month",other:"{{count}} months"},aboutXYears:{one:"about 1 year",other:"about {{count}} years"},xYears:{one:"1 year",other:"{{count}} years"},overXYears:{one:"over 1 year",other:"over {{count}} years"},almostXYears:{one:"almost 1 year",other:"almost {{count}} years"}};function hD(a){return (b={})=>{let c=b.width?String(b.width):a.defaultWidth;return a.formats[c]||a.formats[a.defaultWidth]}}var hE={date:hD({formats:{full:"EEEE, MMMM do, y",long:"MMMM do, y",medium:"MMM d, y",short:"MM/dd/yyyy"},defaultWidth:"full"}),time:hD({formats:{full:"h:mm:ss a zzzz",long:"h:mm:ss a z",medium:"h:mm:ss a",short:"h:mm a"},defaultWidth:"full"}),dateTime:hD({formats:{full:"{{date}} 'at' {{time}}",long:"{{date}} 'at' {{time}}",medium:"{{date}}, {{time}}",short:"{{date}}, {{time}}"},defaultWidth:"full"})},hF={lastWeek:"'last' eeee 'at' p",yesterday:"'yesterday at' p",today:"'today at' p",tomorrow:"'tomorrow at' p",nextWeek:"eeee 'at' p",other:"P"};function hG(a){return(b,c)=>{let d;if("formatting"===(c?.context?String(c.context):"standalone")&&a.formattingValues){let b=a.defaultFormattingWidth||a.defaultWidth,e=c?.width?String(c.width):b;d=a.formattingValues[e]||a.formattingValues[b]}else{let b=a.defaultWidth,e=c?.width?String(c.width):a.defaultWidth;d=a.values[e]||a.values[b]}return d[a.argumentCallback?a.argumentCallback(b):b]}}function hH(a){return(b,c={})=>{let d,e=c.width,f=e&&a.matchPatterns[e]||a.matchPatterns[a.defaultMatchWidth],g=b.match(f);if(!g)return null;let h=g[0],i=e&&a.parsePatterns[e]||a.parsePatterns[a.defaultParseWidth],j=Array.isArray(i)?function(a,b){for(let c=0;c<a.length;c++)if(b(a[c]))return c}(i,a=>a.test(h)):function(a,b){for(let c in a)if(Object.prototype.hasOwnProperty.call(a,c)&&b(a[c]))return c}(i,a=>a.test(h));return d=a.valueCallback?a.valueCallback(j):j,{value:d=c.valueCallback?c.valueCallback(d):d,rest:b.slice(h.length)}}}var hI={code:"en-US",formatDistance:(a,b,c)=>{let d,e=hC[a];if(d="string"==typeof e?e:1===b?e.one:e.other.replace("{{count}}",b.toString()),c?.addSuffix)if(c.comparison&&c.comparison>0)return"in "+d;else return d+" ago";return d},formatLong:hE,formatRelative:(a,b,c,d)=>hF[a],localize:{ordinalNumber:(a,b)=>{let c=Number(a),d=c%100;if(d>20||d<10)switch(d%10){case 1:return c+"st";case 2:return c+"nd";case 3:return c+"rd"}return c+"th"},era:hG({values:{narrow:["B","A"],abbreviated:["BC","AD"],wide:["Before Christ","Anno Domini"]},defaultWidth:"wide"}),quarter:hG({values:{narrow:["1","2","3","4"],abbreviated:["Q1","Q2","Q3","Q4"],wide:["1st quarter","2nd quarter","3rd quarter","4th quarter"]},defaultWidth:"wide",argumentCallback:a=>a-1}),month:hG({values:{narrow:["J","F","M","A","M","J","J","A","S","O","N","D"],abbreviated:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],wide:["January","February","March","April","May","June","July","August","September","October","November","December"]},defaultWidth:"wide"}),day:hG({values:{narrow:["S","M","T","W","T","F","S"],short:["Su","Mo","Tu","We","Th","Fr","Sa"],abbreviated:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],wide:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"]},defaultWidth:"wide"}),dayPeriod:hG({values:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"}},defaultWidth:"wide",formattingValues:{narrow:{am:"a",pm:"p",midnight:"mi",noon:"n",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},abbreviated:{am:"AM",pm:"PM",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"},wide:{am:"a.m.",pm:"p.m.",midnight:"midnight",noon:"noon",morning:"in the morning",afternoon:"in the afternoon",evening:"in the evening",night:"at night"}},defaultFormattingWidth:"wide"})},match:{ordinalNumber:function(a){return(b,c={})=>{let d=b.match(a.matchPattern);if(!d)return null;let e=d[0],f=b.match(a.parsePattern);if(!f)return null;let g=a.valueCallback?a.valueCallback(f[0]):f[0];return{value:g=c.valueCallback?c.valueCallback(g):g,rest:b.slice(e.length)}}}({matchPattern:/^(\d+)(th|st|nd|rd)?/i,parsePattern:/\d+/i,valueCallback:a=>parseInt(a,10)}),era:hH({matchPatterns:{narrow:/^(b|a)/i,abbreviated:/^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,wide:/^(before christ|before common era|anno domini|common era)/i},defaultMatchWidth:"wide",parsePatterns:{any:[/^b/i,/^(a|c)/i]},defaultParseWidth:"any"}),quarter:hH({matchPatterns:{narrow:/^[1234]/i,abbreviated:/^q[1234]/i,wide:/^[1234](th|st|nd|rd)? quarter/i},defaultMatchWidth:"wide",parsePatterns:{any:[/1/i,/2/i,/3/i,/4/i]},defaultParseWidth:"any",valueCallback:a=>a+1}),month:hH({matchPatterns:{narrow:/^[jfmasond]/i,abbreviated:/^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,wide:/^(january|february|march|april|may|june|july|august|september|october|november|december)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^j/i,/^f/i,/^m/i,/^a/i,/^m/i,/^j/i,/^j/i,/^a/i,/^s/i,/^o/i,/^n/i,/^d/i],any:[/^ja/i,/^f/i,/^mar/i,/^ap/i,/^may/i,/^jun/i,/^jul/i,/^au/i,/^s/i,/^o/i,/^n/i,/^d/i]},defaultParseWidth:"any"}),day:hH({matchPatterns:{narrow:/^[smtwf]/i,short:/^(su|mo|tu|we|th|fr|sa)/i,abbreviated:/^(sun|mon|tue|wed|thu|fri|sat)/i,wide:/^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i},defaultMatchWidth:"wide",parsePatterns:{narrow:[/^s/i,/^m/i,/^t/i,/^w/i,/^t/i,/^f/i,/^s/i],any:[/^su/i,/^m/i,/^tu/i,/^w/i,/^th/i,/^f/i,/^sa/i]},defaultParseWidth:"any"}),dayPeriod:hH({matchPatterns:{narrow:/^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,any:/^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i},defaultMatchWidth:"any",parsePatterns:{any:{am:/^a/i,pm:/^p/i,midnight:/^mi/i,noon:/^no/i,morning:/morning/i,afternoon:/afternoon/i,evening:/evening/i,night:/night/i}},defaultParseWidth:"any"})},options:{weekStartsOn:0,firstWeekContainsDate:1}};function hJ(a,b){let c=hv(a,b?.in),d=c.getFullYear(),e=b?.firstWeekContainsDate??b?.locale?.options?.firstWeekContainsDate??hw.firstWeekContainsDate??hw.locale?.options?.firstWeekContainsDate??1,f=hu(b?.in||a,0);f.setFullYear(d+1,0,e),f.setHours(0,0,0,0);let g=hx(f,b),h=hu(b?.in||a,0);h.setFullYear(d,0,e),h.setHours(0,0,0,0);let i=hx(h,b);return+c>=+g?d+1:+c>=+i?d:d-1}function hK(a,b){let c=Math.abs(a).toString().padStart(b,"0");return(a<0?"-":"")+c}var hL={y(a,b){let c=a.getFullYear(),d=c>0?c:1-c;return hK("yy"===b?d%100:d,b.length)},M(a,b){let c=a.getMonth();return"M"===b?String(c+1):hK(c+1,2)},d:(a,b)=>hK(a.getDate(),b.length),a(a,b){let c=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.toUpperCase();case"aaa":return c;case"aaaaa":return c[0];default:return"am"===c?"a.m.":"p.m."}},h:(a,b)=>hK(a.getHours()%12||12,b.length),H:(a,b)=>hK(a.getHours(),b.length),m:(a,b)=>hK(a.getMinutes(),b.length),s:(a,b)=>hK(a.getSeconds(),b.length),S(a,b){let c=b.length;return hK(Math.trunc(a.getMilliseconds()*Math.pow(10,c-3)),b.length)}},hM={midnight:"midnight",noon:"noon",morning:"morning",afternoon:"afternoon",evening:"evening",night:"night"},hN={G:function(a,b,c){let d=+(a.getFullYear()>0);switch(b){case"G":case"GG":case"GGG":return c.era(d,{width:"abbreviated"});case"GGGGG":return c.era(d,{width:"narrow"});default:return c.era(d,{width:"wide"})}},y:function(a,b,c){if("yo"===b){let b=a.getFullYear();return c.ordinalNumber(b>0?b:1-b,{unit:"year"})}return hL.y(a,b)},Y:function(a,b,c,d){let e=hJ(a,d),f=e>0?e:1-e;return"YY"===b?hK(f%100,2):"Yo"===b?c.ordinalNumber(f,{unit:"year"}):hK(f,b.length)},R:function(a,b){return hK(hz(a),b.length)},u:function(a,b){return hK(a.getFullYear(),b.length)},Q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"Q":return String(d);case"QQ":return hK(d,2);case"Qo":return c.ordinalNumber(d,{unit:"quarter"});case"QQQ":return c.quarter(d,{width:"abbreviated",context:"formatting"});case"QQQQQ":return c.quarter(d,{width:"narrow",context:"formatting"});default:return c.quarter(d,{width:"wide",context:"formatting"})}},q:function(a,b,c){let d=Math.ceil((a.getMonth()+1)/3);switch(b){case"q":return String(d);case"qq":return hK(d,2);case"qo":return c.ordinalNumber(d,{unit:"quarter"});case"qqq":return c.quarter(d,{width:"abbreviated",context:"standalone"});case"qqqqq":return c.quarter(d,{width:"narrow",context:"standalone"});default:return c.quarter(d,{width:"wide",context:"standalone"})}},M:function(a,b,c){let d=a.getMonth();switch(b){case"M":case"MM":return hL.M(a,b);case"Mo":return c.ordinalNumber(d+1,{unit:"month"});case"MMM":return c.month(d,{width:"abbreviated",context:"formatting"});case"MMMMM":return c.month(d,{width:"narrow",context:"formatting"});default:return c.month(d,{width:"wide",context:"formatting"})}},L:function(a,b,c){let d=a.getMonth();switch(b){case"L":return String(d+1);case"LL":return hK(d+1,2);case"Lo":return c.ordinalNumber(d+1,{unit:"month"});case"LLL":return c.month(d,{width:"abbreviated",context:"standalone"});case"LLLLL":return c.month(d,{width:"narrow",context:"standalone"});default:return c.month(d,{width:"wide",context:"standalone"})}},w:function(a,b,c,d){let e=function(a,b){let c=hv(a,b?.in);return Math.round((hx(c,b)-function(a,b){let c=b?.firstWeekContainsDate??b?.locale?.options?.firstWeekContainsDate??hw.firstWeekContainsDate??hw.locale?.options?.firstWeekContainsDate??1,d=hJ(a,b),e=hu(b?.in||a,0);return e.setFullYear(d,0,c),e.setHours(0,0,0,0),hx(e,b)}(c,b))/6048e5)+1}(a,d);return"wo"===b?c.ordinalNumber(e,{unit:"week"}):hK(e,b.length)},I:function(a,b,c){let d=function(a,b){let c=hv(a,void 0);return Math.round((hy(c)-function(a,b){let c=hz(a,void 0),d=hu(a,0);return d.setFullYear(c,0,4),d.setHours(0,0,0,0),hy(d)}(c))/6048e5)+1}(a);return"Io"===b?c.ordinalNumber(d,{unit:"week"}):hK(d,b.length)},d:function(a,b,c){return"do"===b?c.ordinalNumber(a.getDate(),{unit:"date"}):hL.d(a,b)},D:function(a,b,c){let d=function(a,b){let c=hv(a,void 0);return function(a,b,c){let[d,e]=function(a,...b){let c=hu.bind(null,a||b.find(a=>"object"==typeof a));return b.map(c)}(void 0,a,b),f=hB(d),g=hB(e);return Math.round((f-hA(f)-(g-hA(g)))/864e5)}(c,function(a,b){let c=hv(a,void 0);return c.setFullYear(c.getFullYear(),0,1),c.setHours(0,0,0,0),c}(c))+1}(a);return"Do"===b?c.ordinalNumber(d,{unit:"dayOfYear"}):hK(d,b.length)},E:function(a,b,c){let d=a.getDay();switch(b){case"E":case"EE":case"EEE":return c.day(d,{width:"abbreviated",context:"formatting"});case"EEEEE":return c.day(d,{width:"narrow",context:"formatting"});case"EEEEEE":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},e:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"e":return String(f);case"ee":return hK(f,2);case"eo":return c.ordinalNumber(f,{unit:"day"});case"eee":return c.day(e,{width:"abbreviated",context:"formatting"});case"eeeee":return c.day(e,{width:"narrow",context:"formatting"});case"eeeeee":return c.day(e,{width:"short",context:"formatting"});default:return c.day(e,{width:"wide",context:"formatting"})}},c:function(a,b,c,d){let e=a.getDay(),f=(e-d.weekStartsOn+8)%7||7;switch(b){case"c":return String(f);case"cc":return hK(f,b.length);case"co":return c.ordinalNumber(f,{unit:"day"});case"ccc":return c.day(e,{width:"abbreviated",context:"standalone"});case"ccccc":return c.day(e,{width:"narrow",context:"standalone"});case"cccccc":return c.day(e,{width:"short",context:"standalone"});default:return c.day(e,{width:"wide",context:"standalone"})}},i:function(a,b,c){let d=a.getDay(),e=0===d?7:d;switch(b){case"i":return String(e);case"ii":return hK(e,b.length);case"io":return c.ordinalNumber(e,{unit:"day"});case"iii":return c.day(d,{width:"abbreviated",context:"formatting"});case"iiiii":return c.day(d,{width:"narrow",context:"formatting"});case"iiiiii":return c.day(d,{width:"short",context:"formatting"});default:return c.day(d,{width:"wide",context:"formatting"})}},a:function(a,b,c){let d=a.getHours()/12>=1?"pm":"am";switch(b){case"a":case"aa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"aaa":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"aaaaa":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},b:function(a,b,c){let d,e=a.getHours();switch(d=12===e?hM.noon:0===e?hM.midnight:e/12>=1?"pm":"am",b){case"b":case"bb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"bbb":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"}).toLowerCase();case"bbbbb":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},B:function(a,b,c){let d,e=a.getHours();switch(d=e>=17?hM.evening:e>=12?hM.afternoon:e>=4?hM.morning:hM.night,b){case"B":case"BB":case"BBB":return c.dayPeriod(d,{width:"abbreviated",context:"formatting"});case"BBBBB":return c.dayPeriod(d,{width:"narrow",context:"formatting"});default:return c.dayPeriod(d,{width:"wide",context:"formatting"})}},h:function(a,b,c){if("ho"===b){let b=a.getHours()%12;return 0===b&&(b=12),c.ordinalNumber(b,{unit:"hour"})}return hL.h(a,b)},H:function(a,b,c){return"Ho"===b?c.ordinalNumber(a.getHours(),{unit:"hour"}):hL.H(a,b)},K:function(a,b,c){let d=a.getHours()%12;return"Ko"===b?c.ordinalNumber(d,{unit:"hour"}):hK(d,b.length)},k:function(a,b,c){let d=a.getHours();return(0===d&&(d=24),"ko"===b)?c.ordinalNumber(d,{unit:"hour"}):hK(d,b.length)},m:function(a,b,c){return"mo"===b?c.ordinalNumber(a.getMinutes(),{unit:"minute"}):hL.m(a,b)},s:function(a,b,c){return"so"===b?c.ordinalNumber(a.getSeconds(),{unit:"second"}):hL.s(a,b)},S:function(a,b){return hL.S(a,b)},X:function(a,b,c){let d=a.getTimezoneOffset();if(0===d)return"Z";switch(b){case"X":return hP(d);case"XXXX":case"XX":return hQ(d);default:return hQ(d,":")}},x:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"x":return hP(d);case"xxxx":case"xx":return hQ(d);default:return hQ(d,":")}},O:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"O":case"OO":case"OOO":return"GMT"+hO(d,":");default:return"GMT"+hQ(d,":")}},z:function(a,b,c){let d=a.getTimezoneOffset();switch(b){case"z":case"zz":case"zzz":return"GMT"+hO(d,":");default:return"GMT"+hQ(d,":")}},t:function(a,b,c){return hK(Math.trunc(a/1e3),b.length)},T:function(a,b,c){return hK(+a,b.length)}};function hO(a,b=""){let c=a>0?"-":"+",d=Math.abs(a),e=Math.trunc(d/60),f=d%60;return 0===f?c+String(e):c+String(e)+b+hK(f,2)}function hP(a,b){return a%60==0?(a>0?"-":"+")+hK(Math.abs(a)/60,2):hQ(a,b)}function hQ(a,b=""){let c=Math.abs(a);return(a>0?"-":"+")+hK(Math.trunc(c/60),2)+b+hK(c%60,2)}var hR=(a,b)=>{switch(a){case"P":return b.date({width:"short"});case"PP":return b.date({width:"medium"});case"PPP":return b.date({width:"long"});default:return b.date({width:"full"})}},hS=(a,b)=>{switch(a){case"p":return b.time({width:"short"});case"pp":return b.time({width:"medium"});case"ppp":return b.time({width:"long"});default:return b.time({width:"full"})}},hT={p:hS,P:(a,b)=>{let c,d=a.match(/(P+)(p+)?/)||[],e=d[1],f=d[2];if(!f)return hR(a,b);switch(e){case"P":c=b.dateTime({width:"short"});break;case"PP":c=b.dateTime({width:"medium"});break;case"PPP":c=b.dateTime({width:"long"});break;default:c=b.dateTime({width:"full"})}return c.replace("{{date}}",hR(e,b)).replace("{{time}}",hS(f,b))}},hU=/^D+$/,hV=/^Y+$/,hW=["D","DD","YY","YYYY"],hX=/[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g,hY=/P+p+|P+|p+|''|'(''|[^'])+('|$)|./g,hZ=/^'([^]*?)'?$/,h$=/''/g,h_=/[a-zA-Z]/;function h0(a,b,c){let d=c?.locale??hw.locale??hI,e=c?.firstWeekContainsDate??c?.locale?.options?.firstWeekContainsDate??hw.firstWeekContainsDate??hw.locale?.options?.firstWeekContainsDate??1,f=c?.weekStartsOn??c?.locale?.options?.weekStartsOn??hw.weekStartsOn??hw.locale?.options?.weekStartsOn??0,g=hv(a,c?.in);if(!(g instanceof Date||"object"==typeof g&&"[object Date]"===Object.prototype.toString.call(g))&&"number"!=typeof g||isNaN(+hv(g)))throw RangeError("Invalid time value");let h=b.match(hY).map(a=>{let b=a[0];return"p"===b||"P"===b?(0,hT[b])(a,d.formatLong):a}).join("").match(hX).map(a=>{if("''"===a)return{isToken:!1,value:"'"};let b=a[0];if("'"===b)return{isToken:!1,value:function(a){let b=a.match(hZ);return b?b[1].replace(h$,"'"):a}(a)};if(hN[b])return{isToken:!0,value:a};if(b.match(h_))throw RangeError("Format string contains an unescaped latin alphabet character `"+b+"`");return{isToken:!1,value:a}});d.localize.preprocessor&&(h=d.localize.preprocessor(g,h));let i={firstWeekContainsDate:e,weekStartsOn:f,locale:d};return h.map(e=>{if(!e.isToken)return e.value;let f=e.value;return(!c?.useAdditionalWeekYearTokens&&hV.test(f)||!c?.useAdditionalDayOfYearTokens&&hU.test(f))&&function(a,b,c){let d=function(a,b,c){let d="Y"===a[0]?"years":"days of the month";return`Use \`${a.toLowerCase()}\` instead of \`${a}\` (in \`${b}\`) for formatting ${d} to the input \`${c}\`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md`}(a,b,c);if(console.warn(d),hW.includes(a))throw RangeError(d)}(f,b,String(a)),(0,hN[f[0]])(g,f,d.localize,i)}).join("")}function h1({title:a,notFound:b,sx:c,imgUrl:d}){return(0,r.jsx)(z.A,{children:b?(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(aF,{filled:!0,title:a,sx:{py:10,...c},imgUrl:d})}):(0,r.jsx)(y.A,{colSpan:12,sx:{p:0}})})}var h2=({sessions:a,isLoading:b,sessionCount:c,table:d,onSessionClick:e,t:f,emptyContentImgUrl:g})=>(0,r.jsxs)(L.A,{children:[(0,r.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,r.jsx)(aL,{headLabel:[{id:"sessionId",label:f("sessionId")},{id:"name",label:f("name")},{id:"startTime",label:f("startTime")},{id:"endTime",label:f("endTime")}]}),(0,r.jsxs)(N.A,{children:[a.map(a=>(0,r.jsxs)(z.A,{onClick:()=>e(a),hover:!0,sx:{cursor:"pointer"},children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(aO,{color:"primary",sx:{textTransform:"none"},children:a.id})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(j.A,{variant:"body2",children:a.name||"-"})}),(0,r.jsx)(y.A,{children:h0(new Date(1e3*a.start),"MMM d, yyyy h:mm:ss a")}),(0,r.jsx)(y.A,{children:a.end?h0(new Date(1e3*a.end),"MMM d, yyyy h:mm:ss a"):"-"})]},a.id)),b&&(0,r.jsx)(aJ,{}),(0,r.jsx)(h1,{title:f("noSessions"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,r.jsx)(aM,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),h3=({trace:a,onClick:b})=>{let c=(0,O.A)();return(0,r.jsxs)(z.A,{onClick:()=>b(a),hover:!0,sx:{cursor:"pointer"},children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(aO,{color:"primary",sx:{textTransform:"none"},children:a.name})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(aE,{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,r.jsx)(y.A,{children:(0,r.jsxs)(aO,{color:"info",startIcon:(0,r.jsx)(aE,{icon:"mdi:clock-outline"}),children:[(parseInt(a.latency)/1e3).toFixed(2),"s"]})}),(0,r.jsx)(y.A,{children:hp(`${a.cost}`||0,5)}),(0,r.jsx)(y.A,{children:(0,r.jsx)(aO,{color:"default",startIcon:(0,r.jsx)(aE,{icon:"game-icons:token"}),children:ho(a.tokens||0)})}),(0,r.jsx)(y.A,{children:h0(new Date(a.start),"MMM d, yyyy h:mm a")})]})},h4=({traces:a,isLoading:b,traceCount:c,table:d,onTraceClick:e,t:f,emptyContentImgUrl:g,emptyContentText:h})=>(0,r.jsxs)(L.A,{children:[(0,r.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,r.jsx)(aL,{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:"timestamp",label:f("timestamp")}]}),(0,r.jsxs)(N.A,{children:[a.map(a=>(0,r.jsx)(h3,{trace:a,onClick:e},a.id)),b&&(0,r.jsx)(aJ,{}),(0,r.jsx)(h1,{title:h||f("noTraces"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,r.jsx)(aM,{rowsPerPageOptions:[10,20,30],count:c,rowsPerPage:d.rowsPerPage,page:d.page,dense:d.dense,onChangeDense:d.onChangeDense,onPageChange:d.onChangePage,onRowsPerPageChange:d.onChangeRowsPerPage})]}),h5=(0,o.createContext)(void 0),h6=({children:a,traces:b,traceId:c,fetchSpanEvaluations:d,t:e,onSpanChange:f})=>{let[g,h]=(0,o.useState)(null),i=(0,o.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,o.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:k,handleMouseDown:l,isDragging:m}=((a=400)=>{let[b,c]=(0,o.useState)(a),[d,e]=(0,o.useState)(!1),[f,g]=(0,o.useState)({y:0,initialHeight:0});(0,o.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,o.useEffect)(()=>()=>{h(null)},[b]),(0,o.useEffect)(()=>{f&&f(i)},[i]);let n=(0,o.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,r.jsx)(h5.Provider,{value:{traces:b,selectedSpan:i,onSelectSpan:a=>{h(a)},spanTree:j,findCostAndTokens:n,fetchSpanEvaluations:d,traceId:c,setSelectedSpanId:h,treeHeight:k,onMouseDown:l,isDragging:m,t:e,onSpanChange:f},children:a})},h7=()=>{let a=(0,o.useContext)(h5);if(!a)throw Error("useTraceDrawerContext must be used within TraceDrawerProvider");return a};function h8(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 h9={width:160,height:60},ia={width:40,height:40};function ib(a){let b=a.data?.nodeType;return"start"===b||"end"===b?ia:h9}function ic(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 id=({open:a,onClose:b,children:c})=>(0,r.jsx)(Q.Ay,{anchor:"right",open:a,onClose:b,sx:{"& .MuiDrawer-paper":{width:"80%"}},children:c}),ie=({children:a})=>(0,r.jsx)(i.A,{width:"100%",children:a}),ig=({children:a})=>(0,r.jsx)(j.A,{variant:"h6",children:a}),ih=()=>{let{selectedSpan:a}=h7();return(0,r.jsx)(j.A,{variant:"subtitle1",color:"primary",children:a?.name})},ii=({children:a})=>(0,r.jsx)(q.default,{p:2,sx:{flexShrink:0,borderBottom:1,borderColor:"divider"},children:a}),ij=({children:a})=>(0,r.jsx)(i.A,{direction:"row",divider:(0,r.jsx)(R.A,{orientation:"vertical",flexItem:!0}),sx:{width:"100%"},height:"100%",children:a}),ik=({children:a})=>(0,r.jsx)(q.default,{width:500,minWidth:500,"data-sidebar":"left",sx:{display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),il=()=>{let{onMouseDown:a,isDragging:b}=h7();return(0,r.jsx)(q.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,r.jsx)(q.default,{sx:{width:"40px",height:"3px",backgroundColor:"currentColor",borderRadius:"2px",opacity:.6}})})},im=()=>(0,r.jsxs)(i.A,{height:"100%",divider:(0,r.jsx)(q.default,{sx:{borderBottom:1,borderColor:"divider"}}),children:[(0,r.jsxs)(i.A,{p:2,spacing:1,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:32})," ",(0,r.jsx)(x.A,{variant:"text",width:300,height:24})," ",(0,r.jsx)(x.A,{variant:"text",width:150,height:20})," "]}),(0,r.jsx)(q.default,{sx:{flexGrow:1,display:"flex",overflow:"hidden"},children:(0,r.jsxs)(i.A,{direction:"row",divider:(0,r.jsx)(q.default,{sx:{borderLeft:1,borderColor:"divider"}}),sx:{width:"100%"},children:[(0,r.jsx)(q.default,{width:500,minWidth:500,sx:{overflowY:"auto"},p:2,children:(0,r.jsx)(i.A,{spacing:1,children:[void 0,void 0,void 0,void 0,void 0].map((a,b)=>(0,r.jsxs)(i.A,{spacing:.5,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:24}),(0,r.jsx)(i.A,{spacing:.5,pl:3,children:[void 0,void 0].map((a,b)=>(0,r.jsx)(x.A,{variant:"text",width:180,height:24},b))})]},b))})}),(0,r.jsx)(q.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column"},children:(0,r.jsxs)(i.A,{p:2,spacing:2,children:[(0,r.jsxs)(i.A,{direction:"row",spacing:3,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:24}),(0,r.jsx)(x.A,{variant:"text",width:200,height:24})]}),(0,r.jsx)(x.A,{variant:"rectangular",width:200,height:32}),(0,r.jsx)(i.A,{spacing:2,pt:1,children:[void 0,void 0,void 0].map((a,b)=>(0,r.jsxs)(i.A,{spacing:1,children:[(0,r.jsx)(x.A,{variant:"rectangular",height:48}),(0,r.jsx)(x.A,{variant:"rectangular",height:100})]},b))})]})})]})})]}),io=({children:a})=>(0,r.jsx)(q.default,{sx:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),ip=(0,G.Ay)(T.eB)(({theme:a})=>({color:a.palette.text.secondary})),iq=(0,G.Ay)(T.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,s.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}})),ir=(0,G.Ay)(T.YS)(({theme:a})=>({marginLeft:15,paddingLeft:18,borderLeft:`2px solid ${(0,s.X4)(a.palette.text.primary,.4)}`,"& .content":{paddingLeft:a.spacing(2)}})),is=o.forwardRef(function({hasChildren:a,...b},c){let d=(0,O.A)(),{id:e,itemId:f,label:g,disabled:h,children:i,bgColor:k,color:l,labelIcon:m,labelInfo:n,colorForDarkMode:o,bgColorForDarkMode:p,loading:s,...t}=b,{getRootProps:u,getContentProps:v,getIconContainerProps:w,getLabelProps:x,getGroupTransitionProps:y,status:z}=(0,U.V)({id:e,itemId:f,children:i,label:g,disabled:h,rootRef:c}),A={"--tree-view-color":"dark"!==d.palette.mode?l:o,"--tree-view-bg-color":"dark"!==d.palette.mode?k:p};return(0,r.jsx)(V.r,{itemId:f,id:e,children:(0,r.jsxs)(ip,{...u({...t,style:A}),children:[(0,r.jsx)(iq,{...v({className:b0("content",{expanded:z.expanded,selected:z.selected,focused:z.focused})}),children:(0,r.jsxs)(q.default,{sx:{display:"flex",flexGrow:1,p:.5,pr:0,wordBreak:"break-all"},children:[(0,r.jsx)(q.default,{component:m,color:"inherit",sx:{mr:1,mt:"2px",minWidth:20,minHeight:20}}),"string"==typeof g?(0,r.jsx)(j.A,{...x({variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1}})}):g,(0,r.jsx)(j.A,{variant:"caption",color:"inherit",children:n}),Array.isArray(b.children)&&b.children.length>0&&(0,r.jsx)(W.A,{sx:{alignSelf:"center",ml:"auto"},...w({className:b0({expanded:z.expanded})}),children:(0,r.jsx)(aE,{icon:z.expanded?"mdi:chevron-down":"mdi:chevron-right"})})]})}),i&&(0,r.jsx)(ir,{...y()})]})})}),it=({label:a,status:b,tokens:c,latency:d,cost:e})=>{let f=(0,O.A)(),{t:g}=h7();return(0,r.jsxs)(i.A,{spacing:.3,children:[(0,r.jsxs)(i.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,r.jsx)(j.A,{variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1},children:a}),(0,r.jsx)(q.default,{minWidth:16,maxHeight:16,children:(0,r.jsx)(aE,{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,r.jsxs)(i.A,{direction:"row",spacing:.5,flexWrap:"wrap",children:[(0,r.jsx)(X.A,{title:g("latency"),children:(0,r.jsxs)(aO,{sx:{textTransform:"lowercase"},color:"primary",startIcon:(0,r.jsx)(aE,{icon:"mdi:clock-time-four-outline"}),children:[(Number(d)/1e3).toFixed(1),"s"]})}),!!Number(c)&&(0,r.jsx)(X.A,{title:g("cost"),children:(0,r.jsx)(aO,{color:"info",children:hp(e,5)})}),!!parseInt(c)&&(0,r.jsx)(X.A,{title:g("tokens"),children:(0,r.jsx)(aO,{color:"default",startIcon:(0,r.jsx)(aE,{icon:"game-icons:token"}),children:ho(c)})})]})]})},iu=(a,b)=>{if(!a)return null;let{cost:c,tokens:d}=b(a);return(0,r.jsx)(i.A,{children:(0,r.jsx)(is,{itemId:a.id,labelIcon:a=>(0,r.jsx)(aE,{icon:"system-uicons:timeline",...a}),label:(0,r.jsx)(it,{label:a.name,status:a.data.status,tokens:d,latency:a.data.duration,cost:c}),children:a.children.map(a=>iu(a,b))},a.id)},a.id)},iv=()=>{let{spanTree:a,selectedSpan:b,setSelectedSpanId:c,traces:d,findCostAndTokens:e,traceId:f}=h7(),g=(0,o.useMemo)(()=>a.map(a=>iu(a,e)),[a]);return(0,r.jsx)(q.default,{sx:{height:"100%",overflowY:"auto",p:2},children:b?.id&&(0,r.jsx)(S.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})})},iw="__start__",ix="__end__",iy={traceNode:(0,o.memo)(function(a){let{id:b,data:c}=a,d=(0,O.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})`:"";return h?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(Z.h7,{type:"target",position:$.yX.Top,style:{visibility:"hidden"}}),(0,r.jsx)(q.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,r.jsx)(aE,{icon:c.icon,width:24,height:24,color:e})}),(0,r.jsx)(Z.h7,{type:"source",position:$.yX.Bottom,style:{visibility:"hidden"}})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(Z.h7,{type:"target",position:$.yX.Top,style:{visibility:"hidden"}}),(0,r.jsxs)(q.default,{sx:{minWidth:120,maxWidth:180,backgroundColor:d.palette.background.paper,borderRadius:2,border:`2px solid ${e}`,display:"flex",alignItems:"center",padding:1.5,boxShadow:d.shadows[2],cursor:"pointer",gap:1,"&:hover":{boxShadow:d.shadows[4],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,r.jsx)(aE,{icon:c.icon,width:20,height:20,color:e,style:{flexShrink:0}}),(0,r.jsxs)(q.default,{sx:{flex:1,minWidth:0},children:[(0,r.jsx)(j.A,{variant:"caption",sx:{fontWeight:600,color:d.palette.text.primary,display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:c.label,children:c.label}),g&&(0,r.jsx)(j.A,{variant:"caption",sx:{fontSize:"0.65rem",color:d.palette.text.secondary},children:i})]})]}),(0,r.jsx)(Z.h7,{type:"source",position:$.yX.Bottom,style:{visibility:"hidden"}})]})})};function iz({graphData:a,isLoading:b}){let c=(0,O.A)(),{onSelectSpan:d,traces:e}=h7(),f=(0,o.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]),{nodes:g,edges:h}=(0,o.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:ic(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:`${iw}->${c}`,source:iw,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:`${iw}->${b.nodeId}`,source:iw,target:b.nodeId,bidirectional:!1})}let f=[];if(d)f.push({id:`${d}->${ix}`,source:d,target:ix,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}->${ix}`,source:b.nodeId,target:ix,bidirectional:!1})}return{nodes:[{nodeId:iw,displayName:"",nodeType:"start",spanIds:[]},...a,{nodeId:ix,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]),[i,j]=(0,o.useState)(()=>new Map),k=(0,o.useMemo)(()=>{let a=new Map;return g.forEach(b=>a.set(b.id,b)),a},[g]),l=(0,o.useCallback)(a=>{d(a)},[d]),m=(0,o.useCallback)(a=>{let b=k.get(a);if(!b?.spanIds||0===b.spanIds.length)return;let c=((i.get(a)??0)+1)%b.spanIds.length,e=b.spanIds[c];j(b=>{let d=new Map(b);return d.set(a,c),d}),e&&d(e)},[k,i,d]),{reactFlowNodes:n,reactFlowEdges:p}=function({nodes:a,edges:b,onNodeClick:c,onNodeCycleClick:d,nodeSpanIndices:e}){let f=(0,O.A)(),g=(0,o.useMemo)(()=>{if(!a.length)return[];let g=a.map(a=>({id:a.id,data:{label:a.label},position:{x:0,y:0}})),h=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}(g,b.map(a=>({id:a.id,source:a.source,target:a.target})));return g.map(b=>{let g=a.find(a=>a.id===b.id),i=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]}(h.get(b.id)||b.id,f),{color:j,icon:k}=h8(g?.nodeType,f),l=e?.get(b.id);return{...b,type:"traceNode",data:{label:b.data.label,branchColor:i,spanId:g?.spanId,nodeType:g?.nodeType,color:j,icon:k,onNodeClick:c,spanIds:g?.spanIds,currentSpanIndex:l,onNodeCycleClick:d}}})},[a,b,f,c,d,e]),h=(0,o.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:i,edges:j}=(0,o.useMemo)(()=>(function(a,b){if(0===a.length)return{nodes:[],edges:[]};let c=new P.graphlib.Graph;return c.setGraph({rankdir:"TB",nodesep:60,ranksep:80,marginx:20,marginy:20}),c.setDefaultEdgeLabel(()=>({})),a.forEach(a=>{let b=ib(a);c.setNode(a.id,{width:b.width,height:b.height})}),b.forEach(a=>{c.setEdge(a.source,a.target)}),P.layout(c),{nodes:a.map(a=>{let b=c.node(a.id),d=ib(a);return{...a,position:{x:b.x-d.width/2,y:b.y-d.height/2}}}),edges:b}})(g,h),[g,h]);return{reactFlowNodes:i,reactFlowEdges:j}}({nodes:g,edges:h,onNodeClick:l,onNodeCycleClick:m,nodeSpanIndices:i}),[s,t]=(0,o.useState)(n),[u,v]=(0,o.useState)(p),[w,x]=(0,o.useState)(-1),y=(0,o.useCallback)(a=>{if(0!==s.length)switch(a.key){case"ArrowRight":case"ArrowDown":a.preventDefault(),x(w<s.length-1?w+1:0);break;case"ArrowLeft":case"ArrowUp":a.preventDefault(),x(w>0?w-1:s.length-1);break;case"Enter":case" ":if(a.preventDefault(),w>=0&&w<s.length){let a=s[w],b=a?.data;b?.spanIds&&b.spanIds.length>1&&a?m(a.id):b?.spanId&&l(b.spanId)}break;case"Tab":-1===w&&s.length>0&&(a.preventDefault(),x(0))}},[s,w,l,m]);return b?(0,r.jsx)(q.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2},children:(0,r.jsx)(Y.A,{size:20})}):s.length?(0,r.jsx)(q.default,{sx:{flexGrow:1,overflow:"hidden",border:"1px solid",borderColor:"divider",borderRadius:1,m:2,position:"relative",minHeight:0},children:(0,r.jsx)(q.default,{sx:{width:"100%",height:"100%"},tabIndex:0,onKeyDown:y,role:"application","aria-label":"Workflow graph - use arrow keys to navigate between nodes, Enter to select",children:(0,r.jsxs)(Z.Gc,{nodes:s,edges:u,nodeTypes:iy,onNodesChange:a=>{t((0,Z._0)(a,s))},onEdgesChange:a=>{v((0,Z.zW)(a,u))},fitView:!0,zoomOnScroll:!0,panOnScroll:!0,zoomOnPinch:!0,fitViewOptions:{padding:.5},children:[(0,r.jsx)(Z.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,r.jsx)(Z.H2,{style:{backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:8,boxShadow:c.shadows[4]}}),(0,r.jsx)(Z.VS,{gap:20,size:1})]})})}):(0,r.jsx)(q.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2,color:"text.secondary"},children:"No graph data available"})}var iA={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 iB(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 iC(a){let b=a.data?.status?.toLowerCase();return"error"===b||"failed"===b||"failure"===b}function iD(a,b){let c=b.get(a);return void 0!==c&&c.length>0}function iE(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:iF,MAX_SCALE:iG}=iA,{ROW_HEIGHT:iH,MIN_BAR_WIDTH:iI,BAR_HEIGHT_RATIO:iJ}=iA,iK=(0,o.memo)(function({layout:a,isSelected:b,isFocused:c=!1,onSelect:d,onMouseEnter:e,onMouseLeave:f,timelineWidth:g}){var h;let i=(0,O.A)(),j=h8(a.nodeType,i),k=iH*iJ,l=a.row*iH+(iH-k)/2,m=a.x*g,n=Math.max(iI,a.width*g),o=j.color;a.hasError&&(o=i.palette.error.main);let p=b?i.palette.primary.main:c?i.palette.action.focus:"transparent",q=a.hasError?1:.85,s=(h=a.durationMs)<1e3?`${Math.round(h)}ms`:`${(h/1e3).toFixed(1)}s`;return(0,r.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,r.jsx)("rect",{x:m,y:l,width:n,height:k,rx:3,ry:3,fill:o,opacity:q,stroke:p,strokeWidth:b||c?2:0}),n>60&&(0,r.jsx)("text",{x:m+n/2,y:l+k/2,textAnchor:"middle",dominantBaseline:"central",fontSize:10,fill:i.palette.getContrastText(o),style:{pointerEvents:"none",userSelect:"none"},children:s}),a.hasError&&(0,r.jsx)("circle",{cx:m+n-8,cy:l+k/2,r:4,fill:i.palette.error.contrastText,style:{pointerEvents:"none"}})]})}),{RULER_HEIGHT:iL}=iA,iM=(0,o.memo)(function({ticks:a,width:b,height:c=iL}){let d=(0,O.A)(),e=.6*c,f=.3*c;return(0,r.jsxs)("g",{className:"timeline-ruler",role:"presentation",children:[(0,r.jsx)("rect",{x:0,y:0,width:b,height:c,fill:d.palette.background.paper}),(0,r.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,r.jsxs)("g",{children:[(0,r.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,r.jsx)("text",{x:h,y:i-4,textAnchor:"middle",fontSize:10,fill:d.palette.text.secondary,style:{userSelect:"none"},children:a.label})]},g)})]})});function iN(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function iO(a,b){if(!a)return"";let c=a.replace(/\n/g," ").trim();return c.length<=b?c:c.slice(0,b)+"..."}var iP=(0,o.memo)(function({layout:a,position:b,visible:c}){var d,e;let f=(0,O.A)(),g=(0,o.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=h8(a.nodeType,f),i=a.span.data,k=i.model||i.totalTokens||i.cost,l=i.input||i.output,m=i.toolCalls,n=g&&Object.keys(g).length>0,p=b.x+12,s=b.y+12;return(0,r.jsxs)(_.A,{elevation:8,sx:{position:"fixed",left:p,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,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:1},children:[(0,r.jsx)(q.default,{sx:{width:8,height:8,borderRadius:"50%",backgroundColor:h.color,flexShrink:0}}),(0,r.jsx)(j.A,{variant:"subtitle2",sx:{fontWeight:600,wordBreak:"break-word",color:f.palette.text.primary},children:a.name})]}),(0,r.jsxs)(q.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Duration:"}),(0,r.jsx)(j.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,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Start:"}),(0,r.jsx)(j.A,{variant:"caption",children:(d=a.startTimeMs)<1e3?`+${Math.round(d)}ms`:`+${(d/1e3).toFixed(2)}s`}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"% of trace:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[a.percentOfTrace.toFixed(1),"%"]}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Type:"}),(0,r.jsx)(j.A,{variant:"caption",sx:{textTransform:"capitalize"},children:a.nodeType}),a.hasError&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"error.main",children:"Status:"}),(0,r.jsx)(j.A,{variant:"caption",color:"error.main",fontWeight:500,children:i.statusMessage||"Error"})]})]}),k&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(R.A,{sx:{my:1}}),(0,r.jsxs)(q.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[i.model&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Model:"}),(0,r.jsx)(j.A,{variant:"caption",fontWeight:500,children:i.model})]}),(i.inputTokens||i.outputTokens)&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Tokens:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[i.inputTokens?`${iN(i.inputTokens)} in`:"",i.inputTokens&&i.outputTokens?" / ":"",i.outputTokens?`${iN(i.outputTokens)} out`:"",i.totalTokens&&` (${iN(i.totalTokens)} total)`]})]}),i.reasoningTokens&&i.reasoningTokens>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Reasoning:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[iN(i.reasoningTokens)," tokens"]})]}),null!=i.cost&&i.cost>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Cost:"}),(0,r.jsx)(j.A,{variant:"caption",fontWeight:500,children:(e=i.cost)<.01?`$${e.toFixed(6)}`:e<1?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`})]}),i.finishReason&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Finish:"}),(0,r.jsx)(j.A,{variant:"caption",children:i.finishReason})]})]})]}),l&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(R.A,{sx:{my:1}}),i.input&&(0,r.jsxs)(q.default,{sx:{mb:.5},children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Input:"}),(0,r.jsx)(j.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:iO(i.input,100)})]}),i.output&&(0,r.jsxs)(q.default,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Output:"}),(0,r.jsx)(j.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:iO(i.output,100)})]})]}),m&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(R.A,{sx:{my:1}}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Tool Calls:"}),(0,r.jsx)(j.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:iO(i.toolCalls,80)})]}),n&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(R.A,{sx:{my:1}}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Attributes:"}),(0,r.jsxs)(q.default,{sx:{display:"flex",flexWrap:"wrap",gap:.5},children:[Object.entries(g).slice(0,5).map(([a,b])=>(0,r.jsx)(aa.A,{label:`${a}: ${iO(String(b),20)}`,size:"small",variant:"outlined",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}},a)),Object.keys(g).length>5&&(0,r.jsx)(aa.A,{label:`+${Object.keys(g).length-5} more`,size:"small",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}})]})]})]})}),iQ={llm:"LLM",tool:"Tool",agent:"Agent",retrieval:"Retrieval",router:"Router",memory:"Memory",default:"Other",start:"Start",end:"End"},iR=["llm","tool","agent","retrieval","router","memory","default"],iS=(0,o.memo)(function({typeBreakdown:a,showCounts:b=!1}){let c=(0,O.A)(),d=iR.filter(b=>void 0!==a[b]&&a[b]>0);return 0===d.length?null:(0,r.jsx)(q.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=h8(d,c),f=a[d]||0,g=iQ[d];return(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,r.jsx)(q.default,{sx:{width:12,height:12,borderRadius:.5,backgroundColor:e.color,flexShrink:0}}),(0,r.jsxs)(j.A,{variant:"caption",sx:{color:c.palette.text.secondary,lineHeight:1,whiteSpace:"nowrap"},children:[g,b&&f>0&&(0,r.jsxs)(j.A,{component:"span",variant:"caption",sx:{color:c.palette.text.disabled,ml:.5},children:["(",f,")"]})]})]},d)})})}),iT=class extends o.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,r.jsxs)(q.default,{sx:{p:3,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",minHeight:200,color:"text.secondary",textAlign:"center"},children:[(0,r.jsx)(j.A,{variant:"body1",color:"error",gutterBottom:!0,children:"Failed to render timeline"}),(0,r.jsx)(j.A,{variant:"body2",sx:{mb:2},children:"There was an error processing the span data."}),(0,r.jsx)(ab.A,{variant:"outlined",size:"small",onClick:this.handleRetry,children:"Retry"})]}):this.props.children}},{ROW_HEIGHT:iU,RULER_HEIGHT:iV,PADDING:iW,LABEL_WIDTH:iX}=iA,iY=(0,o.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 k=(0,O.A)(),l=(0,o.useRef)(null),[m,n]=(0,o.useState)(800),p=(0,o.useRef)(void 0),[s,t]=(0,o.useState)({layout:null,position:null}),[u,v]=(0,o.useState)(0),[w,y]=(0,o.useState)(400),{layouts:z,metrics:A,rulerTicks:B}=(0,o.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(iE).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=iD(c.id,d),f=ic({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:iC(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=iD(a.id,d),c=ic({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:iC(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?iB(a):"",isMajor:b})}(0===q.length||q[q.length-1].position<1)&&q.push({position:1,label:iB(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,m-iX-2*iW),D=z.length*iU,E=D+(d?iV:0)+2*iW,{viewState:F,zoomIn:G,zoomOut:H,resetZoom:I,onWheel:J,panHandlers:K}=function(a=1e3,b=500){let[c,d]=(0,o.useState)(()=>({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})),e=(0,o.useRef)(null),f=(0,o.useCallback)(a=>Math.max(iF,Math.min(iG,a)),[]),g=(0,o.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,o.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,o.useCallback)(()=>{d({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})},[a,b]),j=(0,o.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]),k=(0,o.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]),l=(0,o.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})))},[]),m=(0,o.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:k,panHandlers:{onMouseDown:l,onMouseMove:m,onMouseUp:(0,o.useCallback)(()=>{e.current=null,d(a=>({...a,isPanning:!1}))},[]),onMouseLeave:(0,o.useCallback)(()=>{e.current&&(e.current=null,d(a=>({...a,isPanning:!1})))},[])}}}(C,D),{visibleLayouts:L}=(0,o.useMemo)(()=>{if(z.length<100)return{visibleLayouts:z,startIndex:0,endIndex:z.length};let a=Math.floor((u-(d?iV:0)-iW)/iU),b=Math.ceil(w/iU),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,w,d]);(0,o.useEffect)(()=>{let a=l.current;if(!a)return;let b=new ResizeObserver(a=>{for(let b of a)n(b.contentRect.width),y(b.contentRect.height)}),c=()=>{v(a.scrollTop)};return b.observe(a),a.addEventListener("scroll",c,{passive:!0}),n(a.offsetWidth),y(a.offsetHeight),()=>{b.disconnect(),a.removeEventListener("scroll",c)}},[]),(0,o.useEffect)(()=>{if(!b||b===p.current){p.current=b;return}p.current=b;let a=l.current;if(!a)return;let c=z.find(a=>a.spanId===b);if(!c)return;let e=iW+(d?iV:0)+c.row*iU,f=a.getBoundingClientRect(),g=a.scrollTop,h=g+f.height;(e<g||e+iU>h)&&a.scrollTo({top:e-f.height/2+iU/2,behavior:"smooth"})},[b,z,d]);let M=(0,o.useCallback)(a=>{c?.(a)},[c]),N=(0,o.useCallback)((a,b)=>{t({layout:a,position:{x:b.clientX,y:b.clientY}})},[]),P=(0,o.useCallback)(()=>{t({layout:null,position:null})},[]),[Q,R]=(0,o.useState)(-1),S=(0,o.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,r.jsx)(q.default,{sx:{p:2,...h},children:(0,r.jsx)(x.A,{variant:"rectangular",height:200})}):0===a.length?(0,r.jsx)(q.default,{sx:{p:4,display:"flex",alignItems:"center",justifyContent:"center",color:"text.secondary",...h},children:(0,r.jsx)(j.A,{variant:"body2",children:"No spans to display"})}):(0,r.jsx)(iT,{children:(0,r.jsxs)(q.default,{ref:l,sx:{width:"100%",height:"100%",minHeight:0,flex:1,overflow:"auto",backgroundColor:k.palette.background.default,position:"relative",...h},children:[f&&(0,r.jsxs)(q.default,{sx:{position:"sticky",top:4,right:4,zIndex:10,display:"flex",gap:.5,justifyContent:"flex-end",pr:1,pt:.5},children:[(0,r.jsx)(X.A,{title:"Zoom in",children:(0,r.jsx)(W.A,{size:"small",onClick:G,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom in",children:"+"})}),(0,r.jsx)(X.A,{title:"Zoom out",children:(0,r.jsx)(W.A,{size:"small",onClick:H,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom out",children:"−"})}),(0,r.jsx)(X.A,{title:"Fit all",children:(0,r.jsx)(W.A,{size:"small",onClick:I,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:12},"aria-label":"Fit all",children:"⊡"})})]}),(0,r.jsxs)("svg",{width:m,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,r.jsx)("g",{transform:`translate(${iX+iW}, ${iW})`,children:(0,r.jsx)(iM,{ticks:B,width:C})}),(0,r.jsx)("g",{transform:`translate(${iW}, ${iW+(d?iV:0)})`,children:L.map(a=>(0,r.jsx)("g",{children:(0,r.jsx)("text",{x:12*a.depth,y:a.row*iU+iU/2,dominantBaseline:"central",fontSize:11,fill:k.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,iX-12*a.depth-8)})},`label-${a.spanId}`))}),(0,r.jsxs)("g",{transform:`translate(${iX+iW}, ${iW+(d?iV:0)})`,children:[B.filter(a=>a.isMajor).map((a,b)=>(0,r.jsx)("line",{x1:a.position*C,y1:0,x2:a.position*C,y2:D,stroke:k.palette.divider,strokeWidth:.5,opacity:.5},`grid-${b}`)),L.map(a=>(0,r.jsx)("rect",{x:0,y:a.row*iU,width:C,height:iU,fill:a.row%2==0?"transparent":k.palette.action.hover,opacity:.3},`row-bg-${a.spanId}`)),L.map(a=>{let c=z.findIndex(b=>b.spanId===a.spanId);return(0,r.jsx)(iK,{layout:a,isSelected:b===a.spanId,isFocused:Q===c,onSelect:M,onMouseEnter:N,onMouseLeave:P,timelineWidth:C},a.spanId)})]})]}),e&&(0,r.jsx)(iS,{typeBreakdown:A.typeBreakdown,showCounts:!0}),(0,r.jsx)(iP,{layout:s.layout,position:s.position,visible:null!==s.layout})]})})}),iZ=({children:a})=>(0,r.jsx)(i.A,{width:"100%",height:"100%",overflow:"hidden",children:a}),i$=(0,o.createContext)(void 0),i_=({children:a})=>{let{selectedSpan:b}=h7(),{activeTab:c,setActiveTab:d,tabs:e}=(({span:a})=>{let[b,c]=(0,o.useState)("attributes"),[d,e]=(0,o.useState)([]),f=(0,o.useMemo)(()=>a?.data?.type==="GENERATION"||!!a?.data?.model,[a?.data?.type,a?.data?.model]);return(0,o.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,o.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,r.jsx)(i$.Provider,{value:{span:b,activeTab:c,setActiveTab:d,tabs:e},children:a}):null},i0=()=>{let a=(0,o.useContext)(i$);if(!a)throw Error("useSpanInfo must be used within a SpanInfoProvider");return a},i1=()=>{let{span:a}=i0(),{t:b}=h7(),c=a.data.model;return(0,r.jsxs)(i.A,{direction:"row",spacing:3,sx:{px:2,py:1.5,borderBottom:1,borderColor:"divider"},children:[(0,r.jsxs)(j.A,{variant:"subtitle2",children:[(0,r.jsxs)(j.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("spanId"),":"]})," ",a.id]}),c&&(0,r.jsxs)(j.A,{variant:"subtitle2",children:[(0,r.jsxs)(j.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("modelName"),":"]})," ",c]})]})},i2=({children:a})=>{let{activeTab:b,tabs:c,setActiveTab:d}=i0();return(0,r.jsxs)(ad.Ay,{value:b,children:[(0,r.jsx)(ae.A,{onChange:(a,b)=>d(b),scrollButtons:!1,sx:{borderBottom:1,borderColor:"divider"},children:c.map(a=>(0,r.jsx)(ac.A,{label:a.label,value:a.value},a.value))}),a]})},i3=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=[]}},i4=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}},i5={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"},i6=class{transform(a,b){try{let b={},c=!1;a[i5.AI_OPERATION_ID]&&(b.operation={id:a[i5.AI_OPERATION_ID],name:a[i5.AI_OPERATION_NAME]},c=!0),(a[i5.REQUEST_MODEL]||a[i5.AI_MODEL_ID])&&(b.model={id:a[i5.REQUEST_MODEL]||a[i5.AI_MODEL_ID],provider:a[i5.AI_MODEL_PROVIDER]},c=!0);let d={};(a[i5.GEN_AI_REQUEST_MAX_TOKENS]||a[i5.AI_SETTINGS_MAX_TOKENS])&&(d.maxTokens=a[i5.GEN_AI_REQUEST_MAX_TOKENS]||a[i5.AI_SETTINGS_MAX_TOKENS],c=!0),(a[i5.GEN_AI_REQUEST_TEMPERATURE]||a[i5.AI_SETTINGS_TEMPERATURE])&&(d.temperature=a[i5.GEN_AI_REQUEST_TEMPERATURE]||a[i5.AI_SETTINGS_TEMPERATURE],c=!0),(a[i5.GEN_AI_REQUEST_TOP_P]||a[i5.AI_SETTINGS_TOP_P])&&(d.topP=a[i5.GEN_AI_REQUEST_TOP_P]||a[i5.AI_SETTINGS_TOP_P],c=!0),(a[i5.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[i5.AI_SETTINGS_PRESENCE_PENALTY])&&(d.presencePenalty=a[i5.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[i5.AI_SETTINGS_PRESENCE_PENALTY],c=!0),Object.keys(d).length>0&&(b.settings=d),a[i5.AI_TOOL_CALL_NAME]&&(b.tool={name:a[i5.AI_TOOL_CALL_NAME],id:a[i5.AI_TOOL_CALL_ID],args:a[i5.AI_TOOL_CALL_ARGS]?JSON.parse(a[i5.AI_TOOL_CALL_ARGS]):void 0,result:a[i5.AI_TOOL_CALL_RESULT]},c=!0);let e={};if(Object.entries(a).forEach(([a,b])=>{if(a.startsWith(i5.AI_TELEMETRY_METADATA_PREFIX)){let d=a.replace(i5.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[i5.AI_TELEMETRY_METADATA_PROPS])try{b.props=JSON.parse(a[i5.AI_TELEMETRY_METADATA_PROPS]),c=!0}catch{b.props=a[i5.AI_TELEMETRY_METADATA_PROPS],c=!0}let f={};if((a[i5.AI_RESPONSE_FINISH_REASON]||a[i5.GEN_AI_RESPONSE_FINISH_REASONS])&&(f.finishReason=a[i5.AI_RESPONSE_FINISH_REASON]||a[i5.GEN_AI_RESPONSE_FINISH_REASONS],c=!0),a[i5.AI_RESPONSE_TEXT]&&(f.text=a[i5.AI_RESPONSE_TEXT],c=!0),a[i5.AI_RESPONSE_OBJECT])try{f.schema=JSON.parse(a[i5.AI_RESPONSE_OBJECT]),c=!0}catch(a){}Object.keys(f).length>0&&(b.response=f);let g={};return(a[i5.GEN_AI_USAGE_INPUT_TOKENS]||a[i5.AI_USAGE_PROMPT_TOKENS])&&(g.inputTokens=a[i5.GEN_AI_USAGE_INPUT_TOKENS]||a[i5.AI_USAGE_PROMPT_TOKENS],c=!0),(a[i5.GEN_AI_USAGE_OUTPUT_TOKENS]||a[i5.AI_USAGE_COMPLETION_TOKENS])&&(g.outputTokens=a[i5.GEN_AI_USAGE_OUTPUT_TOKENS]||a[i5.AI_USAGE_COMPLETION_TOKENS],c=!0),a[i5.GEN_AI_USAGE_COST]&&(g.cost=a[i5.GEN_AI_USAGE_COST],c=!0),Object.keys(g).length>0&&(b.usage=g),c?b:null}catch(a){return null}}};i3.register(new i4,10),i3.register(new i6,5);var i7=({attributes:a})=>(0,r.jsx)(q.default,{position:"relative",children:(0,r.jsx)(q.default,{position:"absolute",left:0,right:0,sx:{width:"100%",overflow:"hidden","& .cm-editor":{borderRadius:1,fontSize:"14px",maxWidth:"100%",overflow:"hidden"}},children:(0,r.jsx)(J.Ay,{value:JSON.stringify(a,null,2),extensions:[(0,ag.Pq)()],basicSetup:{lineNumbers:!0,foldGutter:!0,highlightActiveLine:!1,dropCursor:!1},editable:!1,style:{fontSize:"13px",maxWidth:"100%"},height:"100%"})})}),i8=()=>{let{transformedAttributes:a}=(()=>{let{selectedSpan:a}=h7(),b=(0,o.useMemo)(()=>{if(!a?.data?.attributes)return{};try{return JSON.parse(a.data.attributes)}catch{return{}}},[a]),c=(0,o.useMemo)(()=>((a,b)=>{try{return i3.transform(a,b)}catch(b){return a}})(b,a?.data),[b,a?.data]);return{rawAttributes:b,transformedAttributes:c,isLoading:!a}})();return(0,r.jsx)(({children:a})=>(0,r.jsx)(af.A,{value:"attributes",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),{children:(0,r.jsx)(i7,{attributes:a})})},i9=({children:a})=>(0,r.jsx)(q.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,r.jsx)("code",{children:a})}),ja=({content:a})=>(0,r.jsx)(ak.oz,{components:{p:({children:a})=>(0,r.jsx)(j.A,{variant:"body2",sx:{whiteSpace:"pre-wrap",mb:1},children:a}),pre:({children:a})=>(0,r.jsx)(i9,{children:a}),code:a=>(0,r.jsx)(j.A,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",p:.5,borderRadius:.5},children:a.children}),strong:({children:a})=>(0,r.jsx)(j.A,{component:"span",sx:{fontWeight:"bold",color:"primary.main"},children:a})},children:a}),jb=({prompt:a})=>{let{t:b}=h7(),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:()=>iB,Eh:()=>hH,Ek:()=>hN,FQ:()=>iv,IO:()=>iJ,K2:()=>aJ,L8:()=>hx,LE:()=>hJ,Lh:()=>iI,Ow:()=>hv,Q$:()=>iu,QK:()=>hK,V5:()=>iP,Zc:()=>ip,_B:()=>hW,_h:()=>h$,eP:()=>iq,ep:()=>hP,gF:()=>is,lv:()=>ht,qx:()=>hz,rr:()=>hO,sK:()=>hL,t3:()=>hG,uz:()=>iN,vG:()=>hI});var d,e,f,g,h,i=c(28669),j=c(90410),k=c(39880),l=c(81008),m=c(7502),n=c(20776),o=c(31768),p=c(86841),q=c(77438),r=c(78157),s=c(26743),t=c(17692),u=c(98770),v=c(13666),w=c(33372),x=c(21127),y=c(73517),z=c(18236),A=c(21335),B=c(84155),C=c(40053),D=c(66075),E=c(74034),F=c(50339),G=c(37217),H=c(72396),I=c(86670),J=c(79103),K=c(89508),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=(0,o.forwardRef)(({icon:a,width:b=20,sx:c,...d},e)=>(0,r.jsx)(q.default,{ref:e,component:p.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...d}));function aG({title:a,imgUrl:b,action:c,filled:d=!0,description:e,sx:f,...g}){return(0,r.jsxs)(i.A,{flexGrow:1,alignItems:"center",justifyContent:"center",sx:{px:3,height:500,...d&&{borderRadius:2,bgcolor:a=>(0,s.X4)(a.palette.grey[500],.04),border:a=>`dashed 1px ${(0,s.X4)(a.palette.grey[500],.08)}`},...f},...g,children:[b?(0,r.jsx)(q.default,{component:"img",alt:"empty content",src:b||"/assets/icons/empty/ic_content.svg",sx:{width:1,maxWidth:160}}):(0,r.jsx)(aF,{sx:{color:"text.disabled"},icon:"fluent:collections-empty-20-filled",width:160}),a&&(0,r.jsx)(j.A,{variant:"h6",component:"span",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:a}),e&&(0,r.jsx)(j.A,{variant:"caption",sx:{mt:1,color:"text.disabled",textAlign:"center"},children:e}),c&&c]})}var aH=(0,o.memo)(function(){return(0,r.jsxs)(t.M,{children:[(0,r.jsx)(u.U,{startIcon:(0,r.jsx)(aF,{icon:"solar:eye-bold"}),children:"Columns"}),(0,r.jsx)(v.P,{startIcon:(0,r.jsx)(aF,{icon:"solar:filter-bold"}),children:"Filters"})]})}),aI=({t:a,emptyContentImgUrl:b,...c})=>{let d=(0,o.useMemo)(()=>({toolbar:aH,noRowsOverlay:()=>(0,r.jsx)(aG,{sx:{margin:2},title:a("noResults"),imgUrl:b}),noResultsOverlay:()=>(0,r.jsx)(aG,{title:a("noResults"),sx:{py:10},imgUrl:b})}),[a,b]);return(0,r.jsx)(w.z,{sx:{"--DataGrid-overlayHeight":"530px"},...c,slots:d,slotProps:{loadingOverlay:{sx:{padding:5}},filterPanel:{sx:{maxWidth:"100vw"}},columnsPanel:{sx:{maxWidth:"100vw"}}}})};function aJ(a){let[b,c]=(0,o.useState)(!!a?.defaultDense),[d,e]=(0,o.useState)(a?.defaultCurrentPage||0),[f,g]=(0,o.useState)(a?.defaultOrderBy||"name"),[h,i]=(0,o.useState)(a?.defaultRowsPerPage||10),[j,k]=(0,o.useState)(a?.defaultOrder||"asc"),[l,m]=(0,o.useState)(a?.defaultSelected||[]),n=(0,o.useCallback)(a=>{let b=f===a&&"asc"===j;""!==a&&(k(b?"desc":"asc"),g(a))},[j,f]),p=(0,o.useCallback)(a=>{m(l.includes(a)?l.filter(b=>b!==a):[...l,a])},[l]),q=(0,o.useCallback)(a=>{e(0),i(parseInt(a.target.value,10))},[]),r=(0,o.useCallback)(a=>{c(a.target.checked)},[]),s=(0,o.useCallback)((a,b)=>{if(a)return void m(b);m([])},[]),t=(0,o.useCallback)((a,b)=>{e(b)},[]),u=(0,o.useCallback)(()=>{e(0)},[]),v=(0,o.useCallback)(a=>{m([]),d&&a<2&&e(d-1)},[d]),w=(0,o.useCallback)(({totalRows:a,totalRowsInPage:b,totalRowsFiltered:c})=>{let f=l.length;m([]),d&&(f===b?e(d-1):f===c?e(0):f>b&&e(Math.ceil((a-f)/h)-1))},[d,h,l.length]);return{dense:b,order:j,page:d,orderBy:f,rowsPerPage:h,selected:l,onSelectRow:p,onSelectAllRows:s,onSort:n,onChangePage:t,onChangeDense:r,onResetPage:u,onChangeRowsPerPage:q,onUpdatePageDeleteRow:v,onUpdatePageDeleteRows:w,setPage:e,setDense:c,setOrder:k,setOrderBy:g,setSelected:m,setRowsPerPage:i}}function aK({...a}){return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})}),(0,r.jsx)(z.A,{...a,children:(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(x.A,{sx:{width:"100%",height:12}})})})]})}var aL={border:0,margin:-1,padding:0,width:"1px",height:"1px",overflow:"hidden",position:"absolute",whiteSpace:"nowrap",clip:"rect(0 0 0 0)"};function aM({order:a,orderBy:b,rowCount:c=0,headLabel:d,numSelected:e=0,onSort:f,onSelectAllRows:g,sx:h}){return(0,r.jsx)(B.A,{sx:h,children:(0,r.jsxs)(z.A,{children:[g&&(0,r.jsx)(y.A,{padding:"checkbox",children:(0,r.jsx)(A.A,{indeterminate:!!e&&e<c,checked:!!c&&e===c,onChange:a=>g(a.target.checked)})}),d.map(c=>(0,r.jsx)(y.A,{align:c.align||"left",sortDirection:b===c.id&&a,sx:{width:c.width,minWidth:c.minWidth},children:f?(0,r.jsxs)(C.A,{hideSortIcon:!0,active:b===c.id,direction:b===c.id?a:"asc",onClick:()=>f(c.id),children:[c.label,b===c.id?(0,r.jsx)(q.default,{sx:{...aL},children:"desc"===a?"sorted descending":"sorted ascending"}):null]}):c.label},c.id))]})})}function aN({dense:a,onChangeDense:b,rowsPerPageOptions:c=[5,10,25],sx:d,...e}){return(0,r.jsxs)(q.default,{sx:{position:"relative",...d},children:[(0,r.jsx)(F.A,{rowsPerPageOptions:c,component:"div",...e,sx:{borderTopColor:"transparent"}}),b&&(0,r.jsx)(E.A,{label:"Dense",control:(0,r.jsx)(D.A,{checked:a,onChange:b}),sx:{pl:2,py:1.5,top:0,position:{sm:"absolute"}}})]})}var aO=(0,G.Ay)(q.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,s.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,s.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}}),aP=(0,o.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,r.jsxs)(aO,{ref:h,component:"span",ownerState:{color:b,variant:c},sx:{...d&&{pl:.75},...e&&{pr:.75},...f},...g,children:[d&&(0,r.jsxs)(q.default,{sx:{mr:.75,...i},children:[" ",d," "]}),a,e&&(0,r.jsxs)(q.default,{sx:{ml:.75,...i},children:[" ",e," "]})]})}),aQ={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},aR=/[A-Z]|^ms/g,aS=/_EMO_([^_]+?)_([^]*?)_EMO_/g,aT=function(a){return 45===a.charCodeAt(1)},aU=function(a){return null!=a&&"boolean"!=typeof a},aV=function(a){var b=Object.create(null);return function(c){return void 0===b[c]&&(b[c]=a(c)),b[c]}}(function(a){return aT(a)?a:a.replace(aR,"-$&").toLowerCase()}),aW=function(a,b){switch(a){case"animation":case"animationName":if("string"==typeof b)return b.replace(aS,function(a,b,c){return d={name:b,styles:c,next:d},b})}return 1===aQ[a]||aT(a)||"number"!=typeof b||0===b?b:b+"px"};function aX(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+=aX(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]+"}":aU(g)&&(d+=aV(f)+":"+aW(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++)aU(g[h])&&(d+=aV(f)+":"+aW(f,g[h])+";");else{var i=aX(a,b,g);switch(f){case"animation":case"animationName":d+=aV(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,aX(a,b,g)}}if(null==b)return c;var h=b[c];return void 0!==h?h:c}var aY=/label:\s*([^\s;{]+)\s*(;|$)/g,aZ=[];function a$(a){return aZ[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+=aX(void 0,void 0,h)):g+=h[0];for(var i=1;i<a.length;i++)g+=aX(void 0,void 0,a[i]),f&&(g+=h[i]);aY.lastIndex=0;for(var j="";null!==(e=aY.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}}(aZ)}var a_=au(aE(),1);function a0(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 a1(a,b,c={clone:!0}){let d=c.clone?{...a}:a;return a0(a)&&a0(b)&&Object.keys(b).forEach(e=>{o.isValidElement(b[e])||(0,a_.isValidElementType)(b[e])?d[e]=b[e]:a0(b[e])&&Object.prototype.hasOwnProperty.call(a,e)&&a0(a[e])?d[e]=a1(a[e],b[e],c):c.clone?d[e]=a0(b[e])?function a(b){if(o.isValidElement(b)||(0,a_.isValidElementType)(b)||!a0(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 a2(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 a3={borderRadius:4};au(aC(),1);var a4=function(a,b){return b?a1(a,b,{clone:!1}):a},a5={xs:0,sm:600,md:900,lg:1200,xl:1536},a6={keys:["xs","sm","md","lg","xl"],up:a=>`@media (min-width:${a5[a]}px)`},a7={containerQueries:a=>({up:b=>{let c="number"==typeof b?b:a5[b]||b;return"number"==typeof c&&(c=`${c}px`),a?`@container ${a} (min-width:${c})`:`@container (min-width:${c})`}})};function a8(a,b,c){let d=a.theme||{};if(Array.isArray(b)){let a=d.breakpoints||a6;return b.reduce((d,e,f)=>(d[a.up(a.keys[f])]=c(b[f]),d),{})}if("object"==typeof b){let a=d.breakpoints||a6;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:a7,f);a&&(e[a]=c(b[f],f))}else Object.keys(a.values||a5).includes(f)?e[a.up(f)]=c(b[f],f):e[f]=b[f];return e},{})}return c(b)}function a9(a={}){return a.keys?.reduce((b,c)=>(b[a.up(c)]={},b),{})||{}}function ba(a,b){return a.reduce((a,b)=>{let c=a[b];return c&&0!==Object.keys(c).length||delete a[b],a},b)}function bb({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 bc(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 bd(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 be(a,b,c,d=c){let e;return e="function"==typeof a?a(c):Array.isArray(a)?a[c]||d:bd(a,c)||d,b&&(e=b(e,d,a)),e}var bf=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=bd(a.theme,d)||{};return a8(a,f,a=>{let d=be(g,e,a);return(a===d&&"string"==typeof a&&(d=be(g,e,`${b}${"default"===a?"":bc(a)}`,a)),!1===c)?d:{[c]:d}})};return f.propTypes={},f.filterProps=[b],f},bg={m:"margin",p:"padding"},bh={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},bi={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},bj=function(a){let b={};return c=>(void 0===b[c]&&(b[c]=a(c)),b[c])}(a=>{if(a.length>2)if(!bi[a])return[a];else a=bi[a];let[b,c]=a.split(""),d=bg[b],e=bh[c]||"";return Array.isArray(e)?e.map(a=>d+a):[d+e]}),bk=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],bl=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],bm=[...bk,...bl];function bn(a,b,c,d){let e=bd(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 bo(a){return bn(a,"spacing",8,"spacing")}function bp(a,b){return"string"==typeof b||null==b?b:a(b)}function bq(a,b){let c=bo(a.theme);return Object.keys(a).map(d=>(function(a,b,c,d){var e;if(!b.includes(c))return null;let f=(e=bj(c),a=>e.reduce((b,c)=>(b[c]=bp(d,a),b),{})),g=a[c];return a8(a,g,f)})(a,b,d,c)).reduce(a4,{})}function br(a){return bq(a,bk)}function bs(a){return bq(a,bl)}function bt(a){return bq(a,bm)}br.propTypes={},br.filterProps=bk,bs.propTypes={},bs.filterProps=bl,bt.propTypes={},bt.filterProps=bm;var bu=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]?a4(c,b[d](a)):c,{});return c.propTypes={},c.filterProps=a.reduce((a,b)=>a.concat(b.filterProps),[]),c};function bv(a){return"number"!=typeof a?a:`${a}px solid`}function bw(a,b){return bf({prop:a,themeKey:"borders",transform:b})}var bx=bw("border",bv),by=bw("borderTop",bv),bz=bw("borderRight",bv),bA=bw("borderBottom",bv),bB=bw("borderLeft",bv),bC=bw("borderColor"),bD=bw("borderTopColor"),bE=bw("borderRightColor"),bF=bw("borderBottomColor"),bG=bw("borderLeftColor"),bH=bw("outline",bv),bI=bw("outlineColor"),bJ=a=>{if(void 0!==a.borderRadius&&null!==a.borderRadius){let b=bn(a.theme,"shape.borderRadius",4,"borderRadius");return a8(a,a.borderRadius,a=>({borderRadius:bp(b,a)}))}return null};bJ.propTypes={},bJ.filterProps=["borderRadius"],bu(bx,by,bz,bA,bB,bC,bD,bE,bF,bG,bJ,bH,bI);var bK=a=>{if(void 0!==a.gap&&null!==a.gap){let b=bn(a.theme,"spacing",8,"gap");return a8(a,a.gap,a=>({gap:bp(b,a)}))}return null};bK.propTypes={},bK.filterProps=["gap"];var bL=a=>{if(void 0!==a.columnGap&&null!==a.columnGap){let b=bn(a.theme,"spacing",8,"columnGap");return a8(a,a.columnGap,a=>({columnGap:bp(b,a)}))}return null};bL.propTypes={},bL.filterProps=["columnGap"];var bM=a=>{if(void 0!==a.rowGap&&null!==a.rowGap){let b=bn(a.theme,"spacing",8,"rowGap");return a8(a,a.rowGap,a=>({rowGap:bp(b,a)}))}return null};function bN(a,b){return"grey"===b?b:a}function bO(a){return a<=1&&0!==a?`${100*a}%`:a}bM.propTypes={},bM.filterProps=["rowGap"],bu(bK,bL,bM,bf({prop:"gridColumn"}),bf({prop:"gridRow"}),bf({prop:"gridAutoFlow"}),bf({prop:"gridAutoColumns"}),bf({prop:"gridAutoRows"}),bf({prop:"gridTemplateColumns"}),bf({prop:"gridTemplateRows"}),bf({prop:"gridTemplateAreas"}),bf({prop:"gridArea"})),bu(bf({prop:"color",themeKey:"palette",transform:bN}),bf({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:bN}),bf({prop:"backgroundColor",themeKey:"palette",transform:bN}));var bP=bf({prop:"width",transform:bO}),bQ=a=>void 0!==a.maxWidth&&null!==a.maxWidth?a8(a,a.maxWidth,b=>{let c=a.theme?.breakpoints?.values?.[b]||a5[b];return c?a.theme?.breakpoints?.unit!=="px"?{maxWidth:`${c}${a.theme.breakpoints.unit}`}:{maxWidth:c}:{maxWidth:bO(b)}}):null;bQ.filterProps=["maxWidth"];var bR=bf({prop:"minWidth",transform:bO}),bS=bf({prop:"height",transform:bO}),bT=bf({prop:"maxHeight",transform:bO}),bU=bf({prop:"minHeight",transform:bO});bf({prop:"size",cssProperty:"width",transform:bO}),bf({prop:"size",cssProperty:"height",transform:bO}),bu(bP,bQ,bR,bS,bT,bU,bf({prop:"boxSizing"}));var bV={border:{themeKey:"borders",transform:bv},borderTop:{themeKey:"borders",transform:bv},borderRight:{themeKey:"borders",transform:bv},borderBottom:{themeKey:"borders",transform:bv},borderLeft:{themeKey:"borders",transform:bv},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:bv},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:bJ},color:{themeKey:"palette",transform:bN},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:bN},backgroundColor:{themeKey:"palette",transform:bN},p:{style:bs},pt:{style:bs},pr:{style:bs},pb:{style:bs},pl:{style:bs},px:{style:bs},py:{style:bs},padding:{style:bs},paddingTop:{style:bs},paddingRight:{style:bs},paddingBottom:{style:bs},paddingLeft:{style:bs},paddingX:{style:bs},paddingY:{style:bs},paddingInline:{style:bs},paddingInlineStart:{style:bs},paddingInlineEnd:{style:bs},paddingBlock:{style:bs},paddingBlockStart:{style:bs},paddingBlockEnd:{style:bs},m:{style:br},mt:{style:br},mr:{style:br},mb:{style:br},ml:{style:br},mx:{style:br},my:{style:br},margin:{style:br},marginTop:{style:br},marginRight:{style:br},marginBottom:{style:br},marginLeft:{style:br},marginX:{style:br},marginY:{style:br},marginInline:{style:br},marginInlineStart:{style:br},marginInlineEnd:{style:br},marginBlock:{style:br},marginBlockStart:{style:br},marginBlockEnd:{style:br},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:bK},rowGap:{style:bM},columnGap:{style:bL},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:bO},maxWidth:{style:bQ},minWidth:{transform:bO},height:{transform:bO},maxHeight:{transform:bO},minHeight:{transform:bO},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"}},bW=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=bd(c,h)||{};return j?j(e):a8(e,b,b=>{let c=be(k,i,b);return(b===c&&"string"==typeof b&&(c=be(k,i,`${a}${"default"===b?"":bc(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??bV;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=a9(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=a4(j,a(c,h,e,g));else{let a=a8({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=a4(j,a):j[c]=b({sx:h,theme:e,nested:!0})}else j=a4(j,a(c,h,e,g))}),!f&&e.modularCssLayers)?{"@layer sx":a2(e,ba(i,j))}:a2(e,ba(i,j))}return Array.isArray(d)?d.map(h):h(d)}}();function bX(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:{}}bW.filterProps=["sx"];var bY=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=bo({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=a1({breakpoints:h,direction:"ltr",components:{},palette:{mode:"light",...d},spacing:i,shape:{...a3,...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=bX,(j=b.reduce((a,b)=>a1(a,b),j)).unstable_sxConfig={...bV,...g?.unstable_sxConfig},j.unstable_sx=function(a){return bW({sx:a,theme:this})},j},bZ=function(a=null){let b=o.useContext(I.T);return b&&0!==Object.keys(b).length?b:a},b$=bY();au(aC(),1);var b_=a=>a,b0=(()=>{let a=b_;return{configure(b){a=b},generate:b=>a(b),reset(){a=b_}}})(),b1=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},b2={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,H.A)("div",c))(bW)}({defaultClassName:function(a,b,c="Mui"){let d={};return b.forEach(b=>{d[b]=function(a,b,c="Mui"){let d=b2[b];return d?`${c}-${d}`:`${b0.generate(a)}-${b}`}(a,b,c)}),d}("MuiBox",["root"]).root,generateClassName:b0.generate}),au(aE(),1);var b3=bY();function b4(a){return"ownerState"!==a&&"theme"!==a&&"sx"!==a&&"as"!==a}function b5(a,b){return b&&a&&"object"==typeof a&&a.styles&&!a.styles.startsWith("@layer")&&(a.styles=`@layer ${b}{${String(a.styles)}}`),a}function b6(a,b,c){let d="function"==typeof b?b(a):b;if(Array.isArray(d))return d.flatMap(b=>b6(a,b,c));if(Array.isArray(d?.variants)){let b;if(d.isProcessed)b=c?b5(d.style,c):d.style;else{let{variants:a,...e}=d;b=c?b5(a$(e),c):e}return b7(a,d.variants,[b],c)}return d?.isProcessed?c?b5(a$(d.style),c):d.style:c?b5(a$(d),c):d}function b7(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?b5(a$(g.style(e)),d):g.style(e))):c.push(d?b5(a$(g.style),d):g.style)}return c}var b8=function(a={}){let{themeId:b,defaultTheme:c=b3,rootShouldForwardProp:d=b4,slotShouldForwardProp:e=b4}=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,i,j,k,l;Array.isArray(a.__emotion_styles)&&(a.__emotion_styles=(a=>a.filter(a=>a!==bW))(a.__emotion_styles));let{name:m,slot:n,skipVariantsResolver:o,skipSx:p,overridesResolver:q=!(c=(g=n)?g.charAt(0).toLowerCase()+g.slice(1):g)?null:(a,b)=>b[c],...r}=b,s=m&&m.startsWith("Mui")||n?"components":"custom",t=void 0!==o?o:n&&"Root"!==n&&"root"!==n||!1,u=p||!1,v=b4;"Root"===n||"root"===n?v=d:n?v=e:"string"==typeof(h=a)&&h.charCodeAt(0)>96&&(v=void 0);let w=(k=a,l={shouldForwardProp:v,label:(i=0,void(j=0)),...r},(0,H.A)(k,l)),x=a=>{if(a.__emotion_real===a)return a;if("function"==typeof a)return function(b){return b6(b,a,b.theme.modularCssLayers?s:void 0)};if(a0(a)){let b=function(a){let{variants:b,...c}=a,d={variants:b,style:a$(c),isProcessed:!0};return d.style===c||b&&b.forEach(a=>{"function"!=typeof a.style&&(a.style=a$(a.style))}),d}(a);return function(a){return b.variants?b6(a,b,a.theme.modularCssLayers?s:void 0):a.theme.modularCssLayers?b5(b.style,s):b.style}}return a},y=(...b)=>{let c=[],d=b.map(x),e=[];if(c.push(f),m&&q&&e.push(function(a){let b=a.theme,c=b.components?.[m]?.styleOverrides;if(!c)return null;let d={};for(let b in c)d[b]=b6(a,c[b],a.theme.modularCssLayers?"theme":void 0);return q(a,d)}),m&&!t&&e.push(function(a){let b=a.theme,c=b?.components?.[m]?.variants;return c?b7(a,c,[],a.theme.modularCssLayers?"theme":void 0):null}),u||e.push(bW),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=w(...c,...d,...e);return a.muiName&&(g.muiName=a.muiName),g};return w.withConfig&&(y.withConfig=w.withConfig),y}}();au(aC(),1),au(aC(),1);var b9=bY(),ca=b8("div",{name:"MuiStack",slot:"Root"});function cb(a){return function({props:a,name:b,defaultTheme:c,themeId:d}){let e=function(a=b$){return bZ(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=b1(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:b9})}var cc=({ownerState:a,theme:b})=>{let c={display:"flex",flexDirection:"column",...a8({theme:b},bb({values:a.direction,breakpoints:b.breakpoints.values}),a=>({flexDirection:a}))};if(a.spacing){let d=bo(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=bb({values:a.direction,base:e}),g=bb({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=a1(c,a8({theme:b},g,(b,c)=>a.useFlexGap?{gap:bp(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]}`]:bp(d,b)}}))}return function(a,...b){let c=a9(a),d=[c,...b].reduce((a,b)=>a1(a,b),{});return ba(Object.keys(c),d)}(b.breakpoints,c)};!function(a={}){let{createStyledComponent:b=ca,useThemeProps:c=cb,componentName:d="MuiStack"}=a;b(cc)}();var cd=[],ce=[];function cf(a){return a>=127462&&a<=127487}function cg(a,b,c){if(b==a.length)return b;b&&ci(a.charCodeAt(b))&&cj(a.charCodeAt(b-1))&&b--;let d=ch(a,b);for(b+=ck(d);b<a.length;){let e=ch(a,b);if(8205==d||8205==e||c&&function(a){if(a<768)return!1;for(let b=0,c=cd.length;;){let d=b+c>>1;if(a<cd[d])c=d;else{if(!(a>=ce[d]))return!0;b=d+1}if(b==c)return!1}}(e))b+=ck(e),d=e;else if(cf(e)){let c=0,d=b-2;for(;d>=0&&cf(ch(a,d));)c++,d-=2;if(c%2==0)break;b+=2}else break}return b}function ch(a,b){let c=a.charCodeAt(b);if(!cj(c)||b+1==a.length)return c;let d=a.charCodeAt(b+1);return ci(d)?(c-55296<<10)+(d-56320)+65536:c}function ci(a){return a>=56320&&a<57344}function cj(a){return a>=55296&&a<56320}function ck(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?ce:cd).push(c+=a[b])})();var cl=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]=ct(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),cn.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]=ct(this,a,b);let c=[];return this.decompose(a,b,c,0),cn.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 cp(this),e=new cp(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 cp(this,a)}iterRange(a,b=this.length){return new cq(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 cr(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 cm(b):cn.from(cm.split(b,[])):a.empty}},cm=class a extends cl{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 cs(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,co(f,[""],b,c)),Math.min(c,this.length)-Math.max(0,b));if(1&e){let b=d.pop(),c=co(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]=ct(this,b,c);let g=co(this.text,co(d.text,(e=this.text,f=0,co(e,[""],0,b))),c),h=this.length+d.length-(c-b);return g.length<=32?new a(g,h):cn.from(a.split(g,[]),h)}sliceString(a,b=this.length,c="\n"){[a,b]=ct(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}},cn=class a extends cl{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]=ct(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]=ct(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 cm(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 cm&&i&&(d=k[k.length-1])instanceof cm&&c.lines+d.lines<=32?(i+=c.lines,j+=c.length+1,k[k.length-1]=new cm(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 co(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}cl.empty=new cm([""],0);var cp=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 cm?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 cm?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 cm){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 cm?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)}},cq=class{constructor(a,b,c){this.value="",this.done=!1,this.cursor=new cp(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}},cr=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&&(cl.prototype[Symbol.iterator]=function(){return this.iter()},cp.prototype[Symbol.iterator]=cq.prototype[Symbol.iterator]=cr.prototype[Symbol.iterator]=function(){return this});var cs=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 ct(a,b,c){return[b=Math.max(0,Math.min(a.length,b)),Math.max(b,Math.min(a.length,c))]}function cu(a,b,c=!0,d=!0){return function(a,b,c=!0,d=!0){return(c?cg:function(a,b,c){for(;b>0;){let d=cg(a,b-2,c);if(d<b)return d;b--}return 0})(a,b,d)}(a,b,c,d)}var cv=/\r\n?|\n/,cw=function(a){return a[a.Simple=0]="Simple",a[a.TrackDel=1]="TrackDel",a[a.TrackBefore=2]="TrackBefore",a[a.TrackAfter=3]="TrackAfter",a}(cw||(cw={})),cx=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){cB(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:cD(this,a)}mapDesc(a,b=!1){return a.empty?this:cC(this,a,b)}mapPos(a,b=-1,c=cw.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!=cw.Simple&&i>=a&&(c==cw.TrackDel&&d<a&&i>a||c==cw.TrackBefore&&d<a||c==cw.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)}},cy=class a extends cx{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 cB(this,(b,c,d,e,f)=>a=a.replace(d,d+(c-b),f),!1),a}mapDesc(a,b=!1){return cC(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(cl.empty);d.push(f?b.slice(e,e+f):cl.empty)}e+=f}return new a(c,d)}compose(a){return this.empty?a:a.empty?this:cD(this,a,!0)}map(a,b=!1){return a.empty?this:cC(this,a,b,!0)}iterChanges(a,b=!1){cB(this,a,b)}get desc(){return cx.create(this.sections)}filter(b){let c=[],d=[],e=[],f=new cE(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);cz(e,a,-1);let b=-1==f.ins?-1:0==f.off?f.ins:0;cz(c,a,b),b>0&&cA(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);cz(c,a,-1),cz(e,a,-1==f.ins?-1:0==f.off?f.ins:0),f.forward(a),g+=a}}return{changes:new a(c,d),filtered:cx.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&&cz(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?cl.of(h.split(d||cv)):h:cl.empty,l=k.length;if(a==b&&0==l)return;a<g&&i(),a>g&&cz(e,a-g,-1),cz(e,b-a,l),cA(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(cl.empty);d[a]=cl.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 cz(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 cA(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(cl.empty);a.push(c)}}function cB(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=cl.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 cC(a,b,c,d=!1){let e=[],f=d?[]:null,g=new cE(a),h=new cE(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);cz(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(cz(e,h.ins,-1);b;){let c=Math.min(g.len,b);g.ins>=0&&a<g.i&&g.len<=c&&(cz(e,0,g.ins),f&&cA(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;cz(e,b,a<g.i?g.ins:0),f&&a<g.i&&cA(f,e,g.text),a=g.i,g.forward(g.len-c)}else if(g.done&&h.done)return f?cy.createSet(e,f):cx.create(e);else throw Error("Mismatched change set lengths")}function cD(a,b,c=!1){let d=[],e=c?[]:null,f=new cE(a),g=new cE(b);for(let a=!1;;)if(f.done&&g.done)return e?cy.createSet(d,e):cx.create(d);else if(0==f.ins)cz(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;cz(d,b,c,a),e&&c&&cA(e,d,g.text)}else -1==g.ins?(cz(d,f.off?0:f.len,b,a),e&&cA(e,d,f.textBit(b))):(cz(d,f.off?0:f.len,g.off?0:g.ins,a),e&&!g.off&&cA(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 cz(d,0,g.ins,a),e&&cA(e,d,g.text),g.next()}var cE=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?cl.empty:a[b]}textBit(a){let{inserted:b}=this.set,c=this.i-2>>1;return c>=b.length&&!a?cl.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)}},cF=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 cG.range(a,b);let c=Math.abs(a-this.anchor)>Math.abs(b-this.anchor)?a:b;return cG.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 cG.range(a.anchor,a.head)}static create(b,c,d){return new a(b,c,d)}},cG=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=>cF.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 cF.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?cF.create(b,a,48|e):cF.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 cH(a,b){for(let c of a.ranges)if(c.to>b)throw RangeError("Selection points outside of document")}var cI=0,cJ=class a{constructor(a,b,c,d,e){this.combine=a,this.compareInput=b,this.compare=c,this.isStatic=d,this.id=cI++,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?cK:(a,b)=>a===b),!!b.static,b.enables)}of(a){return new cL([],this,0,a)}compute(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cL(a,this,1,b)}computeN(a,b){if(this.isStatic)throw Error("Can't compute a static facet");return new cL(a,this,2,b)}from(a,b){return b||(b=a=>a),this.compute([a],c=>b(c.field(a)))}};function cK(a,b){return a==b||a.length==b.length&&a.every((a,c)=>a===b[c])}var cL=class{constructor(a,b,c,d){this.dependencies=a,this.facet=b,this.type=c,this.value=d,this.id=cI++}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)||cN(a,j)){let b=c(a);if(g?!cM(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=cY(b,i);if(this.dependencies.every(c=>c instanceof cJ?b.facet(c)===a.facet(c):!(c instanceof cP)||b.field(c,!1)==a.field(c,!1))||(g?cM(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 cM(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 cN(a,b){let c=!1;for(let d of b)1&cX(a,d)&&(c=!0);return c}var cO=cJ.define({static:!0}),cP=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(cI++,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(cO).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(cO),e=c.facet(cO),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,cO.of({field:this,create:a})]}get extension(){return this}},cQ={lowest:4,low:3,default:2,high:1,highest:0};function cR(a){return b=>new cT(b,a)}var cS={highest:cR(cQ.highest),high:cR(cQ.high),default:cR(cQ.default),low:cR(cQ.low),lowest:cR(cQ.lowest)},cT=class{constructor(a,b){this.inner=a,this.prec=b}},cU=class a{of(a){return new cV(this,a)}reconfigure(b){return a.reconfigure.of({compartment:this,extension:b})}get(a){return a.config.compartments.get(this)}},cV=class{constructor(a,b){this.compartment=a,this.inner=b}},cW=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 cV&&g.delete(b.compartment)}if(i.set(b,c),Array.isArray(b))for(let d of b)a(d,c);else if(b instanceof cV){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 cT)a(b.inner,b.prec);else if(b instanceof cP)h[c].push(b),b.provides&&a(b.provides,c);else if(b instanceof cL)h[c].push(b),b.facet.extensions&&a(b.facet.extensions,cQ.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,cQ.default),h.reduce((a,b)=>a.concat(b))))a instanceof cP?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,cK(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=cY(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)cX(a,b);return a.values[g]=h(a),1},update(a,c){if(!cN(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=cN(a,d),i=e.config.facets[b.id],j=e.facet(b);if(i&&!f&&cK(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 cX(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 cY(a,b){return 1&b?a.config.staticValues[b>>1]:a.values[b>>1]}var cZ=cJ.define(),c$=cJ.define({combine:a=>a.some(a=>a),static:!0}),c_=cJ.define({combine:a=>a.length?a[0]:void 0,static:!0}),c0=cJ.define(),c1=cJ.define(),c2=cJ.define(),c3=cJ.define({combine:a=>!!a.length&&a[0]}),c4=class{constructor(a,b){this.type=a,this.value=b}static define(){return new c5}},c5=class{of(a){return new c4(this,a)}},c6=class{constructor(a){this.map=a}of(a){return new c7(this,a)}},c7=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 c6(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}};c7.reconfigure=c7.define(),c7.appendConfig=c7.define();var c8=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&&cH(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 c9(a,b,c){var d;let e,f,g;return c?(e=b.changes,f=cy.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:c7.mapEffects(a.effects,e).concat(c7.mapEffects(b.effects,f)),annotations:a.annotations.length?a.annotations.concat(b.annotations):b.annotations,scrollIntoView:a.scrollIntoView||b.scrollIntoView}}function da(a,b,c){let d=b.selection,e=dc(b.annotations);return b.userEvent&&(e=e.concat(c8.userEvent.of(b.userEvent))),{changes:b.changes instanceof cy?b.changes:cy.of(b.changes||[],c,a.facet(c_)),selection:d&&(d instanceof cG?d:cG.single(d.anchor,d.head)),effects:dc(b.effects),annotations:e,scrollIntoView:!!b.scrollIntoView}}c8.time=c4.define(),c8.userEvent=c4.define(),c8.addToHistory=c4.define(),c8.remote=c4.define();var db=[];function dc(a){return null==a?db:Array.isArray(a)?a:[a]}var dd=function(a){return a[a.Word=0]="Word",a[a.Space=1]="Space",a[a.Other=2]="Other",a}(dd||(dd={})),de=/[\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 df=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++)cX(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 cX(this,c),cY(this,c)}update(...a){return function a(b,c,d){let e=da(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=c9(e,da(b,c[a],f?e.changes.newLength:b.doc.length),f)}let f=c8.create(b,e.changes,e.selection,e.effects,e.annotations,e.scrollIntoView);return function(a){let b=a.startState,c=b.facet(c2),d=a;for(let e=c.length-1;e>=0;e--){let f=c[e](a);f&&Object.keys(f).length&&(d=c9(d,da(b,f,a.changes.newLength),!0))}return d==a?a:c8.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(c0)){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=cy.empty(c.doc.length);else{let c=b.changes.filter(d);a=c.changes,e=c.filtered.mapDesc(c.changes).invertedDesc}b=c8.create(c,a,b.selection&&b.selection.map(e),c7.mapEffects(b.effects,e),b.annotations,b.scrollIntoView)}let e=c.facet(c1);for(let d=e.length-1;d>=0;d--){let f=e[d](b);b=f instanceof c8?f:Array.isArray(f)&&1==f.length&&f[0]instanceof c8?f[0]:a(c,dc(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(cU.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(c7.reconfigure)?(d=null,e=a.value):a.is(c7.appendConfig)&&(d=null,e=dc(e).concat(a.value));c=d?b.startState.values.slice():new a(d=cW.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(c$)?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:cG.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=dc(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=c7.mapEffects(f,i).concat(c7.mapEffects(dc(g.effects),j))}return{changes:d,selection:cG.create(e,b.mainIndex),effects:f}}changes(b=[]){return b instanceof cy?b:cy.of(b,this.doc.length,this.facet(a.lineSeparator))}toText(b){return cl.of(b.split(this.facet(a.lineSeparator)||cv))}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:(cX(this,b),cY(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 cP&&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:cG.fromJSON(b.selection),extensions:c.extensions?e.concat([c.extensions]):e})}static create(b={}){let c=cW.resolve(b.extensions||[],new Map),d=b.doc instanceof cl?b.doc:cl.of((b.doc||"").split(c.staticFacet(a.lineSeparator)||cv)),e=b.selection?b.selection instanceof cG?b.selection:cG.single(b.selection.anchor,b.selection.head):cG.single(0);return cH(e,d.length),c.staticFacet(c$)||(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(c3)}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(cZ))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 dd.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()||de.test(c)))return!0}return!1}(a))return dd.Word;for(let c=0;c<b.length;c++)if(a.indexOf(b[c])>-1)return dd.Word;return dd.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=cu(b,f,!1);if(e(b.slice(a,f))!=dd.Word)break;f=a}for(;g<d;){let a=cu(b,g);if(e(b.slice(g,a))!=dd.Word)break;g=a}return f==g?null:cG.range(f+c,g+c)}};df.allowMultipleSelections=c$,df.tabSize=cJ.define({combine:a=>a.length?a[0]:4}),df.lineSeparator=c_,df.readOnly=c3,df.phrases=cJ.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])}}),df.languageData=cZ,df.changeFilter=c0,df.transactionFilter=c1,df.transactionExtender=c2,cU.reconfigure=c7.define();var dg=class{eq(a){return this==a}range(a,b=a){return di.create(a,b,this)}};function dh(a,b){return a==b||a.constructor==b.constructor&&a.eq(b)}dg.prototype.startSide=dg.prototype.endSide=0,dg.prototype.point=!1,dg.prototype.mapMode=cw.TrackDel;var di=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 dj(a,b){return a.from-b.from||a.value.startSide-b.value.startSide}var dk=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}}},dl=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(dj)),this.isEmpty)return c.length?a.of(c):this;let h=new dp(this,null,-1).goto(0),i=0,j=[],k=new dm;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(di.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 dq.from([this]).goto(a)}get isEmpty(){return this.nextLayer==this}static iter(a,b=0){return dq.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=dn(f,g,c),i=new ds(f,h,e),j=new ds(g,h,e);c.iterGaps((a,b,c)=>dt(i,a,j,b,c,d)),c.empty&&0==c.length&&dt(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=dn(e,f),h=new ds(e,g,0).goto(c),i=new ds(f,g,0).goto(c);for(;;){if(h.to!=i.to||!du(h.active,i.active)||h.point&&(!i.point||!dh(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 ds(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 dm;for(let d of a instanceof di?[a]:b?function(a){if(a.length>1)for(let b=a[0],c=1;c<a.length;c++){let d=a[c];if(dj(b,d)>0)return a.slice().sort(dj);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}};dl.empty=new dl([],[],null,-1),dl.empty.nextLayer=dl.empty;var dm=class a{finishChunk(a){this.chunks.push(new dk(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(dl.empty)}finishInner(a){if(this.from.length&&this.finishChunk(!1),0==this.chunks.length)return a;let b=dl.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(a):a,this.setMaxPoint);return this.from=null,b}};function dn(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 dp=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}},dq=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 dp(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--)dr(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--)dr(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(),dr(this.heap,0)}}};function dr(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 ds=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=dq.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){dv(this.active,a),dv(this.activeTo,a),dv(this.activeRank,a),this.minActive=dx(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++;dw(this.active,b,c),dw(this.activeTo,b,d),dw(this.activeRank,b,e),a&&dw(a,b,this.cursor.from),this.minActive=dx(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&&dv(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 dt(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&&dh(a.point,c.point)&&du(a.activeForPoint(a.to),c.activeForPoint(c.to))||f.comparePoint(h,l,a.point,c.point),b=!1):(b&&f.boundChange(h),l>h&&!du(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 du(a,b){if(a.length!=b.length)return!1;for(let c=0;c<a.length;c++)if(a[c]!=b[c]&&!dh(a[c],b[c]))return!1;return!0}function dv(a,b){for(let c=b,d=a.length-1;c<d;c++)a[c]=a[c+1];a.pop()}function dw(a,b,c){for(let c=a.length-1;c>=b;c--)a[c+1]=a[c];a[b]=c}function dx(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 dy="undefined"==typeof Symbol?"__ͼ":Symbol.for("ͼ"),dz="undefined"==typeof Symbol?"__styleSet"+Math.floor(1e8*Math.random()):Symbol("styleSet"),dA="undefined"!=typeof globalThis?globalThis:{},dB=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=dA[dy]||1;return dA[dy]=a+1,"ͼ"+a.toString(36)}static mount(a,b,c){let d=a[dz],e=c&&c.nonce;d?e&&d.setNonce(e):d=new dD(a,e),d.mount(Array.isArray(b)?b:[b],a)}},dC=new Map,dD=class{constructor(a,b){let c=a.ownerDocument||a,d=c.defaultView;if(!a.head&&a.adoptedStyleSheets&&d.CSSStyleSheet){let b=dC.get(c);if(b)return a[dz]=b;this.sheet=new d.CSSStyleSheet,dC.set(c,this)}else this.styleTag=c.createElement("style"),b&&this.styleTag.setAttribute("nonce",b);this.modules=[],a[dz]=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)}},dE={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:"'"},dF={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++)dE[48+f]=dE[96+f]=String(f);for(f=1;f<=24;f++)dE[f+111]="F"+f;for(f=65;f<=90;f++)dE[f]=String.fromCharCode(f+32),dF[f]=String.fromCharCode(f);for(g in dE)dF.hasOwnProperty(g)||(dF[g]=dE[g]);function dG(){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 dH="undefined"!=typeof navigator?navigator:{userAgent:"",vendor:"",platform:""},dI="undefined"!=typeof document?document:{documentElement:{style:{}}},dJ=/Edge\/(\d+)/.exec(dH.userAgent),dK=/MSIE \d/.test(dH.userAgent),dL=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(dH.userAgent),dM=!!(dK||dL||dJ),dN=!dM&&/gecko\/(\d+)/i.test(dH.userAgent),dO=!dM&&/Chrome\/(\d+)/.exec(dH.userAgent),dP="webkitFontSmoothing"in dI.documentElement.style,dQ=!dM&&/Apple Computer/.test(dH.vendor),dR=dQ&&(/Mobile\/\w+/.test(dH.userAgent)||dH.maxTouchPoints>2),dS={mac:dR||/Mac/.test(dH.platform),windows:/Win/.test(dH.platform),linux:/Linux|X11/.test(dH.platform),ie:dM,ie_version:dK?dI.documentMode||6:dL?+dL[1]:dJ?+dJ[1]:0,gecko:dN,gecko_version:dN?+(/Firefox\/(\d+)/.exec(dH.userAgent)||[0,0])[1]:0,chrome:!!dO,chrome_version:dO?+dO[1]:0,ios:dR,android:/Android\b/.test(dH.userAgent),webkit:dP,webkit_version:dP?+(/\bAppleWebKit\/(\d+)/.exec(dH.userAgent)||[0,0])[1]:0,safari:dQ,safari_version:dQ?+(/\bVersion\/(\d+(\.\d+)?)/.exec(dH.userAgent)||[0,0])[1]:0,tabSize:null!=dI.documentElement.style.tabSize?"tab-size":"-moz-tab-size"};function dT(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 dU=Object.create(null);function dV(a,b,c){if(a==b)return!0;a||(a=dU),b||(b=dU);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 dW(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 dX=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){}},dY=function(a){return a[a.Text=0]="Text",a[a.WidgetBefore=1]="WidgetBefore",a[a.WidgetAfter=2]="WidgetAfter",a[a.WidgetRange=3]="WidgetRange",a}(dY||(dY={})),dZ=class extends dg{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 d$(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 d0(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}=d1(a,b);c=(e?b?-3e8:-1:5e8)-1,d=(f?b?2e8:1:-6e8)+1}return new d0(a,c,d,b,a.widget||null,!0)}static line(a){return new d_(a)}static set(a,b=!1){return dl.of(a,b)}hasHeight(){return!!this.widget&&this.widget.estimatedHeight>-1}};dZ.none=dl.empty;var d$=class a extends dZ{constructor(a){let{start:b,end:c}=d1(a);super(b?-1:5e8,c?1:-6e8,null,a),this.tagName=a.tagName||"span",this.attrs=a.class&&a.attributes?dT(a.attributes,{class:a.class}):a.class?{class:a.class}:a.attributes||dU}eq(b){return this==b||b instanceof a&&this.tagName==b.tagName&&dV(this.attrs,b.attrs)}range(a,b=a){if(a>=b)throw RangeError("Mark decorations may not be empty");return super.range(a,b)}};d$.prototype.point=!1;var d_=class a extends dZ{constructor(a){super(-2e8,-2e8,null,a)}eq(b){return b instanceof a&&this.spec.class==b.spec.class&&dV(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)}};d_.prototype.mapMode=cw.TrackBefore,d_.prototype.point=!0;var d0=class a extends dZ{constructor(a,b,c,d,e,f){super(b,c,e,a),this.block=d,this.isReplace=f,this.mapMode=d?b<=0?cw.TrackBefore:cw.TrackAfter:cw.TrackDel}get type(){return this.startSide!=this.endSide?dY.WidgetRange:this.startSide<=0?dY.WidgetBefore:dY.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 d1(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 d2(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)}d0.prototype.point=!0;var d3=class a extends dg{constructor(a,b){super(),this.tagName=a,this.attributes=b}eq(b){return b==this||b instanceof a&&this.tagName==b.tagName&&dV(this.attributes,b.attributes)}static create(b){return new a(b.tagName,b.attributes||dU)}static set(a,b=!1){return dl.of(a,b)}};function d4(a){return(11==a.nodeType?a.getSelection?a:a.ownerDocument:a).getSelection()}function d5(a,b){return!!b&&(a==b||a.contains(1!=b.nodeType?b.parentNode:b))}function d6(a,b){if(!b.anchorNode)return!1;try{return d5(a,b.anchorNode)}catch(a){return!1}}function d7(a){return 3==a.nodeType?ei(a,0,a.nodeValue.length).getClientRects():1==a.nodeType?a.getClientRects():[]}function d8(a,b,c,d){return!!c&&(eb(a,b,c,d,-1)||eb(a,b,c,d,1))}function d9(a){for(var b=0;;b++)if(!(a=a.previousSibling))return b}function ea(a){return 1==a.nodeType&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(a.nodeName)}function eb(a,b,c,d,e){for(;;){if(a==c&&b==d)return!0;if(b==(e<0?0:ec(a))){if("DIV"==a.nodeName)return!1;let c=a.parentNode;if(!c||1!=c.nodeType)return!1;b=d9(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?ec(a):0}}}function ec(a){return 3==a.nodeType?a.nodeValue.length:a.childNodes.length}function ed(a,b){let c=b?a.left:a.right;return{left:c,right:c,top:a.top,bottom:a.bottom}}function ee(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}}d3.prototype.startSide=d3.prototype.endSide=-1;var ef=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?ec(b):0),c,Math.min(a.focusOffset,c?ec(c):0))}set(a,b,c,d){this.anchorNode=a,this.anchorOffset=b,this.focusNode=c,this.focusOffset=d}},eg=null;function eh(a){if(a.setActive)return a.setActive();if(eg)return a.focus(eg);let b=[];for(let c=a;c&&(b.push(c,c.scrollTop,c.scrollLeft),c!=c.ownerDocument);c=c.parentNode);if(a.focus(null==eg?{get preventScroll(){return eg={preventScroll:!0},!0}}:void 0),!eg){eg=!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 ei(a,b,c=b){let d=h||(h=document.createRange());return d.setEnd(a,c),d.setStart(a,b),d}function ej(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 ek(a){return a.scrollTop>Math.max(1,a.scrollHeight-a.clientHeight-4)}function el(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=ec(c=c.childNodes[d-1])}else{if(!c.parentNode||ea(c))return null;d=d9(c),c=c.parentNode}}function em(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||ea(c))return null;d=d9(c)+1,c=c.parentNode}}dS.safari&&dS.safari_version>=26&&(eg=!1);var en=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,d9(b),c)}static after(b,c){return new a(b.parentNode,d9(b)+1,c)}},eo=function(a){return a[a.LTR=0]="LTR",a[a.RTL=1]="RTL",a}(eo||(eo={})),ep=eo.LTR,eq=eo.RTL;function er(a){let b=[];for(let c=0;c<a.length;c++)b.push(1<<a[c]);return b}var es=er("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),et=er("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),eu=Object.create(null),ev=[];for(let a of["()","[]","{}"]){let b=a.charCodeAt(0),c=a.charCodeAt(1);eu[b]=c,eu[c]=-b}function ew(a){return a<=247?es[a]:1424<=a&&a<=1524?2:1536<=a&&a<=1785?et[a-1536]:1774<=a&&a<=2220?4:8192<=a&&a<=8204?256:64336<=a&&a<=65023?4:1}var ex=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/,ey=class{get dir(){return this.level%2?eq:ep}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}},ez=[];function eA(a){return[new ey(0,a,0)]}var eB="",eC=cJ.define(),eD=cJ.define(),eE=cJ.define(),eF=cJ.define(),eG=cJ.define(),eH=cJ.define(),eI=cJ.define(),eJ=cJ.define(),eK=cJ.define(),eL=cJ.define({combine:a=>a.some(a=>a)}),eM=cJ.define({combine:a=>a.some(a=>a)}),eN=cJ.define(),eO=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(cG.cursor(b.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},eP=c7.define({map:(a,b)=>a.map(b)}),eQ=c7.define();function eR(a,b,c){let d=a.facet(eF);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 eS=cJ.define({combine:a=>!a.length||a[0]}),eT=0,eU=cJ.define({combine:a=>a.filter((b,c)=>{for(let d=0;d<c;d++)if(a[d].plugin==b.plugin)return!1;return!0})}),eV=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(eU.of({plugin:this,arg:void 0}))}of(a){return this.baseExtensions.concat(eU.of({plugin:this,arg:a}))}static define(b,c){let{eventHandlers:d,eventObservers:e,provide:f,decorations:g}=c||{};return new a(eT++,b,d,e,a=>{let b=[];return g&&b.push(eZ.of(b=>{let c=b.plugin(a);return c?g(c):dZ.none})),f&&b.push(f(a)),b})}static fromClass(b,c){return a.define((a,c)=>new b(a,c),c)}},eW=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(eR(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){eR(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){eR(a.state,b,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},eX=cJ.define(),eY=cJ.define(),eZ=cJ.define(),e$=cJ.define(),e_=cJ.define(),e0=cJ.define(),e1=cJ.define();function e2(a,b){let c=a.state.facet(e1);if(!c.length)return c;let d=c.map(b=>b instanceof Function?b(a):b),e=[];return dl.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=ew(a.charCodeAt(d));if(1==b)break;if(2==b||4==b)return eq}return ep}(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 e3=cJ.define();function e4(a){let b=0,c=0,d=0,e=0;for(let f of a.state.facet(e3)){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 e5=cJ.define(),e6=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}},e7=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=cy.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 e6(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}},e8=[],e9=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 e8}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=d9(this.dom),d=this.length?a>0:b>0;return new en(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 fc)return a;return null}static get(a){return a.cmTile}},fa=class extends e9{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=fb(d);else b.insertBefore(g.dom,d);c=g.dom}for(d=c?c.nextSibling:b.firstChild,e&&d&&(e.written=!0);d;)d=fb(d);this.length=f}};function fb(a){let b=a.nextSibling;return a.parentNode.removeChild(a),b}var fc=class extends fa{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=e9.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 fd)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}}},fd=class a extends fa{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}},fe=class a extends fa{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=d7(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 en(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 en(a.dom,0);a==c.tile&&(f=!0)}}return new en(this.dom,0)}},ff=class a extends fa{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}},fg=class a extends e9{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?!(dS.chrome||dS.gecko)&&(a?(d--,f=1):e<c&&(e++,f=-1)):b<0?d--:e<c&&e++;let g=ei(this.dom,d,e).getClientRects();if(!g.length)return null;let h=g[(f?f<0:b>=0)?0:g.length-1];return dS.safari&&!f&&0==h.width&&(h=Array.prototype.find.call(g,a=>a.width)||h),f?ed(h,f<0):h||null}static of(b,c){let d=new a(c||document.createTextNode(b),b);return c||(d.flags|=2),d}},fh=class a extends e9{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 ed(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 ed(c,!d)}}get overrideDOMText(){if(!this.length)return cl.empty;let{root:a}=this;if(!a)return cl.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)}},fi=class extends e9{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 cl.empty}coordsIn(a){return this.dom.getBoundingClientRect()}},fj=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}},fk=class{constructor(a,b,c,d){this.from=a,this.to=b,this.wrapper=c,this.rank=d}},fl=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 fg(g.dom,g.text+a)).parent=f):f.append(d||fg.of(a,null==(e=this.cache.find(fg))?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)?fs(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 ff&&e.mark.eq(c.mark))e.dom!=c.dom&&e.setDOM(fs(c.dom)),d=e;else{if(this.cache.reused.get(c)){let a=e9.get(c.dom);a&&a.setDOM(fs(c.dom))}let a=ff.of(c.mark,c.dom);d.append(a),d=a}this.cache.reused.set(c,2)}let e=e9.get(a.text);e&&this.cache.reused.set(e,2);let f=new fg(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=fr);let d=fe.start(a,b||(null==(c=this.cache.find(fe))?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 ff&&g.mark.eq(f))d=g,b--;else{let a=ff.of(f,null==(c=this.cache.find(ff,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||!fq(this.curLine,!1)||"BR"!=a.dom.nodeName&&a.isWidget()&&!(dS.ios&&fq(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(fu,0,32)||new fh(fu.toDOM(),0,fu,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 fk(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 fd&&d.wrapper.eq(c.wrapper))b=d;else{let d=fd.of(c.wrapper,null==(a=this.cache.find(fd,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(fi,void 0,1);return c&&(c.flags=b),c||new fi(b)}flushBuffer(){this.afterWidget&&!(32&this.afterWidget.flags)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}},fm=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}},fn=[fh,fe,fg,ff,fi,fd,fc];for(let a=0;a<fn.length;a++)fn[a].bucket=a;var fo=class{constructor(a){this.view=a,this.buckets=fn.map(()=>[]),this.index=fn.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 fh(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}},fp=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 fo(a),this.text=new fm(a.state.doc),this.builder=new fl(this.cache,new fc(a,a.contentDOM),dl.iter(c)),this.cache.reused.set(b,2),this.old=new fj(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 ff&&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?fh.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 fi)this.cache.add(a);else{if(!(a instanceof ff))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 ff&&d.unshift(a.mark)),this.openWidget=!1},leave:a=>{a.isLine()?d.length&&(d.length=e=0):a instanceof ff&&(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=dl.spans(this.decorations,a,b,{point:(a,b,f,g,h,i)=>{var j,k,l;if(f instanceof d0){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?ft.block:ft.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)||fh.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&&dT(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=e9.get(d);if(d==this.view.contentDOM)break;a instanceof ff?b.push(a):(null==a?void 0:a.isLine())?c=a:"DIV"!=d.nodeName||c||d==this.view.contentDOM?b.push(ff.of(new d$({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 fe(d,fr)}return{line:c,marks:b}}};function fq(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 fr={class:"cm-line"};function fs(a){let b=e9.get(a);return b&&b.setDOM(a.cloneNode()),a}var ft=class extends dX{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}};ft.inline=new ft("span"),ft.block=new ft("div");var fu=new class extends dX{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}},fv=class{constructor(a){this.view=a,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=dZ.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 fc(a,a.contentDOM),this.updateInner([new e6(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=fx(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 e6(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 e6(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,(dS.ie||dS.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 fy,dl.compare(e,f,g,l),l.changes);s.length&&(n=e6.extendWithRanges(n,s));let t=(h=r,i=this.blockWrappers,j=a.changes,m=new fz,dl.compare(h,i,j,m),m.changes);return t.length&&(n=e6.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 fp(this.view,c,this.blockWrappers,this.decorations,this.dynamicDecorationMap);this.tile=d.run(a,b),fw(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=dS.chrome||dS.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 fA&&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(eQ)&&(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(eS)||d.tabIndex>-1)&&d6(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)),dS.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 en(a,0),h=!0}let l=this.view.observer.selectionRange;!h&&l.focusNode&&(d8(j.node,j.offset,l.anchorNode,l.anchorOffset)&&d8(k.node,k.offset,l.focusNode,l.focusOffset)||this.suppressWidgetCursorChange(l,i))||(this.view.observer.ignore(()=>{dS.android&&dS.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=d4(this.view.root);if(a)if(i.empty){if(dS.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?el:em)(j.node,j.offset);b&&(j=new en(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 en(l.anchorNode,l.anchorOffset),this.impreciseHead=k.precise?null:new en(l.focusNode,l.focusOffset)}suppressWidgetCursorChange(a,b){return this.hasComposition&&b.empty&&d8(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=d4(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==ec(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&&!e9.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 fA?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=cu(b.text,c);if(a==c)return null;let d=ei(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==eo.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 fd)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?d7(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?eo.RTL:eo.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=d7(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=d7(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(dZ.replace({widget:new fA(d),block:!0,inclusive:!0,isBlockGap:!0}).range(c,f))}if(!e)break;c=e.to+1}return dZ.set(a)}updateDeco(){let a=1,b=this.view.state.facet(eZ).map(b=>(this.dynamicDecorationMap[a++]="function"==typeof b)?b(this.view):b),c=!1,d=this.view.state.facet(e_).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(dl.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(e$).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(eN))try{if(b(this.view,a.range,a))return!0}catch(a){eR(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=e4(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}=ee(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==eo.LTR)}lineHasWidget(a){let b=a=>a.isWidget()||a.children.some(b);return b(this.tile.resolveBlock(a,1).tile)}destroy(){fw(this.tile)}};function fw(a,b){let c=null==b?void 0:b.get(a);if(1!=c)for(let d of(null==c&&a.destroy(),a.children))fw(d,b)}function fx(a,b){let c=a.observer.selectionRange;if(!c.focusNode)return null;let d=el(c.focusNode,c.focusOffset),e=em(c.focusNode,c.focusOffset),f=d||e;if(e&&d&&e.node!=d.node){let b=e9.get(e.node);if(!b||b.isText()&&b.text!=e.node.nodeValue)f=e;else if(a.docView.lastCompositionAfterCursor){let a=e9.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 fy=class{constructor(){this.changes=[]}compareRange(a,b){d2(a,b,this.changes)}comparePoint(a,b){d2(a,b,this.changes)}boundChange(a){d2(a,a,this.changes)}},fz=class{constructor(){this.changes=[]}compareRange(a,b){d2(a,b,this.changes)}comparePoint(){}boundChange(a){d2(a,a,this.changes)}},fA=class extends dX{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 fB(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=ey.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=cu(a.text,g,i.forward(e,c));(k<i.from||k>i.to)&&(k=j),eB=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?cG.cursor(l.side(!e,c)+a.from,l.forward(e,c)?1:-1,l.level):cG.cursor(k+a.from,i.forward(e,c)?-1:1,i.level)}(e,f,g,h,c),j=eB;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 fC(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 fD(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=fC(a,e.from,0);b!=e.from&&(f=cG.cursor(b,-1))}else{let b=fC(a,e.from,-1),c=fC(a,e.to,1);(b!=e.from||c!=e.to)&&(f=cG.range(e.from==e.anchor?b:c,e.from==e.head?b:c))}f&&(c||(c=b.ranges.slice()),c[d]=f)}return c?cG.create(c,b.mainIndex):b}function fE(a,b,c){let d=fC(a.state.facet(e0).map(b=>b(a)),c.from,b.head>c.from?-1:1);return d==c.from?c:cG.cursor(d,d<c.from?1:-1)}var fF=class{constructor(a,b){this.pos=a,this.assoc=b}};function fG(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 fF(0,1);if(i>a.viewState.docHeight)return new fF(a.state.doc.length,-1);if(j=a.elementAtHeight(i),null==d)break;if(j.type==dY.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==dY.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=cu(a,d)}return a.length}(g,f,a.state.tabSize)}(a,e,j,g,h);return new fF(b,b==j.from?1:-1)}}if(j.type!=dY.Text)return i<(j.top+j.bottom)/2?new fF(j.from,1):new fF(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 fH(a,g,h,a.textDirectionAt(j.from)).scanTile(k,j.from)}var fH=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[ey.find(d,a-c.from,-1,b)].level==this.baseDir}dirAt(a,b){let{line:c,spans:d}=this.bidiSpansAt(a);return d[ey.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==eo.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)==eo.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=cu(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 ei(a.dom,e,f).getClientRects()});return d.after?new fF(c[d.i+1],-1):new fF(c[d.i],1)}scanTile(a,b){if(!a.length)return new fF(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:ei(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 fF(c[d.i+1],-1):new fF(f,1)}},fI=class{constructor(a,b){this.points=a,this.view=b,this.text="",this.lineSeparator=b.state.facet(df.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=e9.get(d),f=d.nextSibling;if(f==b){(null==e?void 0:e.breakAfter)&&!f&&c!=this.view.contentDOM&&this.lineBreak();break}let g=e9.get(f);(e&&g?e.breakAfter:(e?e.breakAfter:ea(d))||ea(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=e9.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=e9.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<ec(b))return!1;if(b==a)return!0;c=d9(b)+1,b=b.parentNode}}(a,c.node,c.offset)?0:b))}},fJ=class{constructor(a,b){this.node=a,this.offset=b,this.pos=-1}},fK=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 fJ(c,d)),(e!=c||f!=d)&&b.push(new fJ(e,f))),b}(a),c=new fI(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?cG.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||!d5(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||!d5(a.contentDOM,b.anchorNode)?a.state.selection.main.anchor:a.docView.posFromDOM(b.anchorNode,b.anchorOffset),g=a.viewport;if((dS.ios||dS.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(cG.range(d,c)):this.newSel=cG.single(d,c)}}};function fL(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||dS.android&&b.text.length<g-d)&&(h=e.to,i="end");let j=fN(a.state.doc.sliceString(d,g,"￿"),b.text,h-d,i);j&&(dS.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:cl.of(b.text.slice(j.from,j.toB).split("￿"))})}else d&&(!a.hasFocus&&a.state.facet(eS)||fO(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)}:(dS.mac||dS.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=cG.single(d.main.anchor-1,d.main.head-1)),c={from:c.from,to:c.to,insert:cl.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)}:dS.chrome&&c&&c.from==c.to&&c.from==e.head&&"\n "==c.insert.toString()&&a.lineWrapping&&(d&&(d=cG.single(d.main.anchor-1,d.main.head-1)),c={from:e.from,to:e.to,insert:cl.of([" "])}),c)return fM(a,c,d,f);if(!d||fO(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=fD(a.state.facet(e0).map(b=>b(a)),d))),a.dispatch({selection:d,scrollIntoView:b,userEvent:c}),!0}}function fM(a,b,c,d=-1){let e;if(dS.ios&&a.inputState.flushIOSKey(b))return!0;let f=a.state.selection.main;if(dS.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&&ej(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)&&ej(a.contentDOM,"Backspace",8)||b.from==f.from&&b.to==f.to+1&&0==b.insert.length&&ej(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=fC(e.facet(e0).map(b=>b(a)),d,c);b.from==h&&(g=h)}if(g>-1)d={changes:b,selection:cG.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&&fx(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?cG.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(eH).some(c=>c(a,b.from,b.to,g,h))||a.dispatch(h()),!0}function fN(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 fO(a,b){return b.head==a.main.head&&b.anchor==a.main.anchor}var fP=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,dS.safari&&a.contentDOM.addEventListener("input",()=>null),dS.gecko&&function(a){ga.has(a)||(ga.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=e9.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(fQ(b.value,e))}if(e)for(let a in e){let d=e[a];d&&c(a).observers.push(fQ(b.value,d))}}for(let a in fW)c(a).handlers.push(fW[a]);for(let a in fX)c(a).observers.push(fX[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>fT.indexOf(a.keyCode)&&(this.tabFocusMode=-1),dS.android&&dS.chrome&&!a.synthetic&&(13==a.keyCode||8==a.keyCode))?(this.view.observer.delayAndroidKey(a.key,a.keyCode),!0):dS.ios&&!a.synthetic&&!a.altKey&&!a.metaKey&&((b=fR.find(b=>b.keyCode==a.keyCode))&&!a.ctrlKey||fS.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,ej(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||!!(dS.safari&&!dS.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 fQ(a,b){return(c,d)=>{try{return b.call(a,d,c)}catch(a){eR(c.state,a)}}}var fR=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],fS="dthko",fT=[16,17,18,20,91,92,224,225];function fU(a){return .7*Math.max(0,a)+8}var fV=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(e0).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(df.allowMultipleSelections)&&function(a,b){let c=a.state.facet(eC);return c.length?c[0](b):dS.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=d4(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==f4(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=e4(this.view);a.clientX-i.left<=e+6?c=-fU(e-a.clientX):a.clientX+i.right>=g-6&&(c=fU(a.clientX-g)),a.clientY-i.top<=f+6?d=-fU(f-a.clientY):a.clientY+i.bottom>=h-6&&(d=fU(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=fD(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)}},fW=Object.create(null),fX=Object.create(null),fY=dS.ie&&dS.ie_version<15||dS.ios&&dS.webkit_version<604;function fZ(a,b,c){for(let d of a.facet(b))c=d(c,a);return c}function f$(a,b){b=fZ(a.state,eJ,b);let{state:c}=a,d,e=1,f=c.toText(b),g=f.lines==c.selection.ranges.length;if(null!=f6&&c.selection.ranges.every(a=>a.empty)&&f6==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:cG.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:cG.cursor(a.from+b.length)}}):c.replaceSelection(f);a.dispatch(d,{userEvent:"input.paste",scrollIntoView:!0})}function f_(a,b,c,d){if(1==d)return cG.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 cG.cursor(b);0==f?c=1:f==e.length&&(c=-1);let g=f,h=f;c<0?g=cu(e.text,f,!1):h=cu(e.text,f);let i=d(e.text.slice(g,h));for(;g>0;){let a=cu(e.text,g,!1);if(d(e.text.slice(a,g))!=i)break;g=a}for(;h<e.length;){let a=cu(e.text,h);if(d(e.text.slice(h,a))!=i)break;h=a}return cG.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++,cG.range(g,h)}}fX.scroll=a=>{a.inputState.lastScrollTop=a.scrollDOM.scrollTop,a.inputState.lastScrollLeft=a.scrollDOM.scrollLeft},fW.keydown=(a,b)=>(a.inputState.setSelectionOrigin("select"),27==b.keyCode&&0!=a.inputState.tabFocusMode&&(a.inputState.tabFocusMode=Date.now()+2e3),!1),fX.touchstart=(a,b)=>{a.inputState.lastTouchTime=Date.now(),a.inputState.setSelectionOrigin("select.pointer")},fX.touchmove=a=>{a.inputState.setSelectionOrigin("select.pointer")},fW.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(eE))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=f4(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=f_(a,h.pos,h.assoc,d);if(c.pos!=h.pos&&!f){let b=f_(a,c.pos,c.assoc,d),e=Math.min(b.from,j.from),f=Math.max(b.to,j.to);j=e<j.from?cG.range(e,f):cG.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 cG.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):cG.create([j])}}}(a,b)),c){let d=!a.hasFocus;a.inputState.startMouseSelection(new fV(a,b,c,d)),d&&a.observer.ignore(()=>{eh(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 f0=dS.ie&&dS.ie_version<=11,f1=null,f2=0,f3=0;function f4(a){if(!f0)return a.detail;let b=f1,c=f3;return f1=a,f3=Date.now(),f2=!b||c>Date.now()-400&&2>Math.abs(b.clientX-a.clientX)&&2>Math.abs(b.clientY-a.clientY)?(f2+1)%3:1}function f5(a,b,c,d){let e;if(!(c=fZ(a.state,eJ,c)))return;let f=a.posAtCoords({x:b.clientX,y:b.clientY},!1),{draggedContent:g}=a.inputState,h=d&&g&&((e=a.state.facet(eD)).length?e[0](b):dS.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}fW.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=cG.range(a,b))}}let{inputState:d}=a;return d.mouseSelection&&(d.mouseSelection.dragging=!0),d.draggedContent=c,b.dataTransfer&&(b.dataTransfer.setData("Text",fZ(a.state,eK,a.state.sliceDoc(c.from,c.to))),b.dataTransfer.effectAllowed="copyMove"),!1},fW.dragend=a=>(a.inputState.draggedContent=null,!1),fW.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&&f5(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 f5(a,b,c,!0),!0}return!1},fW.paste=(a,b)=>{if(a.state.readOnly)return!0;a.observer.flush();let c=fY?null:b.clipboardData;return c?(f$(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(),f$(a,c.value)},50)}(a),!1)};var f6=null;fW.copy=fW.cut=(a,b)=>{if(!d6(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:fZ(a,eK,b.join(a.lineBreak)),ranges:c,linewise:d}}(a.state);if(!c&&!e)return!1;f6=e?c:null,"cut"!=b.type||a.state.readOnly||a.dispatch({changes:d,scrollIntoView:!0,userEvent:"delete.cut"});let f=fY?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 f7=c4.define();function f8(a,b){let c=[];for(let d of a.facet(eI)){let e=d(a,b);e&&c.push(e)}return c.length?a.update({effects:c,annotations:f7.of(!0)}):null}function f9(a){setTimeout(()=>{let b=a.hasFocus;if(b!=a.inputState.notifiedFocused){let c=f8(a.state,b);c?a.dispatch(c):a.update([])}},10)}fX.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),f9(a)},fX.blur=a=>{a.observer.clearSelectionRange(),f9(a)},fX.compositionstart=fX.compositionupdate=a=>{!a.observer.editContext&&(null==a.inputState.compositionFirstChange&&(a.inputState.compositionFirstChange=!0),a.inputState.composing<0&&(a.inputState.composing=0))},fX.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,dS.chrome&&dS.android?a.observer.flushSoon():a.inputState.compositionPendingChange?Promise.resolve().then(()=>a.observer.flush()):setTimeout(()=>{a.inputState.composing<0&&a.docView.hasComposition&&a.update([])},50))},fX.contextmenu=a=>{a.inputState.lastContextMenu=Date.now()},fW.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 fM(a,{from:c,to:f,insert:a.state.toText(d)},null),!0}}if(dS.chrome&&dS.android&&(e=fR.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 dS.ios&&"deleteContentForward"==b.inputType&&a.observer.flushSoon(),dS.safari&&"insertText"==b.inputType&&a.inputState.composing>=0&&setTimeout(()=>fX.compositionend(a,b),20),!1};var ga=new Set,gb=["pre-wrap","normal","pre-line","break-spaces"],gc=!1,gd=class{constructor(a){this.lineWrapping=a,this.doc=cl.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 gb.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=gb.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}},ge=class{constructor(a,b){this.from=a,this.heights=b,this.index=0}get more(){return this.index<this.heights.length}},gf=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?dY.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 d0?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)}},gg=function(a){return a[a.ByPos=0]="ByPos",a[a.ByHeight=1]="ByHeight",a[a.ByPosNoHeight=2]="ByPosNoHeight",a}(gg||(gg={})),gh=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&&(gc=!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,gg.ByPosNoHeight,c.setDoc(b),0,0),m=l.to>=i?l:e.lineAt(i,gg.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,gg.ByPosNoHeight,c,0,0));j+=l.from-h,h=l.from;let n=gp.build(c.setDoc(f),a,j,k);e=gi(e,e.replace(h,i,n))}return e.updateHeight(c,0)}static empty(){return new gl(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 gn(a.of(b.slice(0,c)),g,a.of(b.slice(d)))}};function gi(a,b){return a==b?a:(a.constructor!=b.constructor&&(gc=!0),b)}gh.prototype.size=1;var gj=dZ.replace({}),gk=class extends gh{constructor(a,b,c){super(a,b),this.deco=c,this.spaceAbove=0}mainBlock(a,b){return new gf(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 gf(d,0,c,this.spaceAbove,gj):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,gg.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})`}},gl=class a extends gk{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 gf(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 gm&&4&e.flags)&&10>Math.abs(this.length-e.length)?(e instanceof gm?e=new a(e.length,this.height,this.spaceAbove):e.height=this.height,this.outdated||(e.outdated=!1),e):gh.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:""})`}},gm=class a extends gh{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 gf(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 gf(h,i,c+g*d,g,0)}}lineAt(a,b,c,d,e){if(b==gg.ByHeight)return this.blockAt(a,c,d,e);if(b==gg.ByPosNoHeight){let{from:b,to:d}=c.doc.lineAt(a);return new gf(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 gf(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 gf(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 gh.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 gl(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=gh.of(d);return(h<0||Math.abs(i.height-this.height)>=.001||Math.abs(h-this.heightMetrics(b,c).perLine)>=.001)&&(gc=!0),gi(this,i)}return(d||this.outdated)&&(this.setHeight(b.heightForGap(c,c+this.length)),this.outdated=!1),this}toString(){return`gap(${this.length})`}},gn=class extends gh{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==gg.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==gg.ByPosNoHeight?gg.ByPosNoHeight:gg.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,gg.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&&go(e,f-1),b<this.length){let a=e.length;this.decomposeRight(b,e),go(e,a)}return gh.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?gh.of(this.break?[a,null,b]:[a,b]):(this.left=gi(this.left,a),this.right=gi(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 go(a,b){let c,d;null==a[b]&&(c=a[b-1])instanceof gm&&(d=a[b+1])instanceof gm&&a.splice(b-1,3,new gm(c.length+1+d.length))}var gp=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 gl?c.length+=a-this.pos:(a>this.pos||!this.isCovered)&&this.nodes.push(new gl(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 gk(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 gl(this.pos-a,-1,0)),this.writtenTo=this.pos}blankContent(a,b){let c=new gm(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 gl)return a;let b=new gl(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 gl||this.isCovered?(this.writtenTo<this.pos||null==b)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos)):this.nodes.push(new gl(0,-1,0));let c=a;for(let a of this.nodes)a instanceof gl&&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 dl.spans(c,d,e,f,0),f.finish(d)}},gq=class{constructor(){this.changes=[]}compareRange(){}comparePoint(a,b,c,d){(a<b||c&&c.heightRelevant||d&&d.heightRelevant)&&d2(a,b,this.changes,5)}},gr=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 dZ.replace({widget:new gs(this.displaySize*(b?a.scaleY:a.scaleX),b)}).range(this.from,this.to)}},gs=class extends dX{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}},gt=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=gx,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=eo.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let b=a.facet(eY).some(a=>"function"!=typeof a&&"cm-lineWrapping"==a.class);this.heightOracle=new gd(b),this.stateDeco=gy(a),this.heightMap=gh.empty().applyChanges(this.stateDeco,cl.empty,this.heightOracle.setDoc(a.doc),[new e6(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=dZ.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 gu(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?gx:new gz(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(gA(a,this.scaler))})}update(a,b=null){var c,d;let e;this.state=a.state;let f=this.stateDeco;this.stateDeco=gy(this.state);let g=a.changedRanges,h=e6.extendWithRanges(g,(c=this.stateDeco,d=a?a.changes:cy.empty(this.state.doc.length),e=new gq,dl.compare(f,c,d,e,0),e.changes)),i=this.heightMap.height,j=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);gc=!1,this.heightMap=this.heightMap.applyChanges(this.stateDeco,a.startState.doc,this.heightOracle.setDoc(this.state.doc),h),(this.heightMap.height!=i||gc)&&(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(eM)&&(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?eo.RTL:eo.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}=ee(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=ek(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)),gc=!1,this.viewports)){let d=c.from==this.viewport.from?b:a.docView.measureVisibleLineHeights(c);this.heightMap=(i?gh.empty().applyChanges(this.stateDeco,cl.empty,this.heightOracle,[new e6(0,0,0,a.state.doc.length)]):this.heightMap).updateHeight(g,0,i,new ge(c.from,d))}gc&&(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 gu(d.lineAt(f-1e3*c,gg.ByHeight,e,0,0).from,d.lineAt(g+(1-c)*1e3,gg.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,gg.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 gu(d.lineAt(g-500,gg.ByHeight,e,0,0).from,d.lineAt(g+c+500,gg.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 gu(this.heightMap.lineAt(c,gg.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(d,gg.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,gg.ByPos,this.heightOracle,0,0),{bottom:e}=this.heightMap.lineAt(b,gg.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 gr(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!=eo.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(cG.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 gr(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!=dY.Text)return;let o=(e=b.from,g=b.to,i=this.stateDeco,l=[],m=e,n=0,dl.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=gw(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=gv(o,a),k=gv(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=gw(o,p),b=((l-i)/2+g)/f;c=a-b,e=a+b}else c=(i-g)/f,e=(l+g)/f;j=gv(o,c),k=gv(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=gw(d,c)-gw(d,b);return this.heightOracle.lineWrapping?a.height*e:d.total*this.heightOracle.charWidth*e}updateLineGaps(a){gr.same(a,this.lineGaps)||(this.lineGaps=a,this.lineGapDeco=dZ.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=[];dl.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)||gA(this.heightMap.lineAt(a,gg.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)||gA(this.heightMap.lineAt(this.scaler.fromDOM(a),gg.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 gA(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}},gu=class{constructor(a,b){this.from=a,this.to=b}};function gv({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 gw(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 gx={toDOM:a=>a,fromDOM:a=>a,scale:1,eq(a){return a==this}};function gy(a){let b=a.facet(eZ).filter(a=>"function"!=typeof a),c=a.facet(e_).filter(a=>"function"!=typeof a);return c.length&&b.push(dl.join(c)),b}var gz=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,gg.ByPos,a,0,0).top,g=b.lineAt(e,gg.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 gA(a,b){if(1==b.scale)return a;let c=b.toDOM(a.top),d=b.toDOM(a.bottom);return new gf(a.from,a.length,c,d-c,Array.isArray(a._content)?a._content.map(a=>gA(a,b)):a._content)}var gB=cJ.define({combine:a=>a.join(" ")}),gC=cJ.define({combine:a=>a.indexOf(!0)>-1}),gD=dB.newName(),gE=dB.newName(),gF=dB.newName(),gG={"&light":"."+gE,"&dark":"."+gF};function gH(a,b,c){return new dB(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 gI=gH("."+gD,{"&":{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"}},gG),gJ={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},gK=dS.ie&&dS.ie_version<=11,gL=class{constructor(a){this.view=a,this.active=!1,this.editContext=null,this.selectionRange=new ef,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);(dS.ie&&dS.ie_version<=11||dS.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&&dS.android&&!1!==a.constructor.EDIT_CONTEXT&&!(dS.chrome&&dS.chrome_version<126)&&(this.editContext=new gO(a),a.state.facet(eS)&&(a.contentDOM.editContext=this.editContext.editContext)),gK&&(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(eS)?c.root.activeElement!=this.dom:!d6(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}(dS.ie&&dS.ie_version<=11||dS.android&&dS.chrome)&&!c.state.selection.main.empty&&d.focusNode&&d8(d.focusNode,d.focusOffset,d.anchorNode,d.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:a}=this,b=d4(a.root);if(!b)return!1;let c=dS.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 gN(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?gN(a,c):null}(this.view,b)||b;if(!c||this.selectionRange.eq(c))return!1;let d=d6(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,ec(c));;)if(d){if(1!=c.nodeType)return!1;let a=c.childNodes[d-1];"false"==a.contentEditable?d--:d=ec(c=a)}else{if(c==a)return!0;d=d9(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,gJ),gK&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),gK&&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&&ej(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&&d6(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 fK(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=fL(this.view,b);return this.view.state==c&&(b.domChanged||b.newSel&&!fO(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=gM(b,a.previousSibling||a.target.previousSibling,-1),d=gM(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(eS)!=a.state.facet(eS)&&(a.view.contentDOM.editContext=a.state.facet(eS)?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 gM(a,b,c){for(;b;){let d=e9.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 gN(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 d8(g.node,g.offset,e,f)&&([c,d,e,f]=[e,f,c,d]),{anchorNode:c,anchorOffset:d,focusNode:e,focusOffset:f}}var gO=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=fN(a.state.sliceDoc(g,h),c.text,(i?d.from:d.to)-g,i?"end":null);if(!j){let b=cG.single(this.toEditorPos(c.selectionStart),this.toEditorPos(c.selectionEnd));fO(b,d)||a.dispatch({selection:b,userEvent:"select"});return}let k={from:j.from+g,to:j.toA+g,insert:cl.of(c.text.slice(j.from,j.toB).split("\n"))};if((dS.mac||dS.android)&&k.from==f-1&&/^\. ?$/.test(c.text)&&"off"==a.contentDOM.getAttribute("autocorrect")&&(k={from:g,to:h,insert:cl.of([c.text.replace("."," ")])}),this.pendingContextChange=k,!a.state.readOnly){let b=this.to-this.from+(k.to-k.from+k.insert.length);fM(a,k,cG.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(dZ.mark({attributes:{style:a}}).range(e,f))}}}a.dispatch({effects:eQ.of(dZ.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=d4(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])}},gP=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 gt(a.state||df.create(a)),a.scrollTo&&a.scrollTo.is(eP)&&(this.viewState.scrollTarget=a.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(eU).map(a=>new eW(a)),this.plugins))b.update(this);this.observer=new gL(this),this.inputState=new fP(this),this.inputState.ensureHandlers(this.plugins),this.docView=new fv(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 c8?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(f7))?(this.inputState.notifiedFocused=f,g=1):f!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=f,(h=f8(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(df.phrases)!=this.state.facet(df.phrases))return this.setState(e);d=e7.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 eO(a.empty?a:cG.cursor(a.head,a.head>a.anchor?-1:1))}for(let a of b.effects)a.is(eP)&&(k=a.value.clip(this.state))}this.viewState.update(d,k),this.bidiCache=gS.update(this.bidiCache,d.changes),d.empty||(this.updatePlugins(d),this.inputState.update(d)),b=this.docView.update(d),this.state.facet(e5)!=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(gB)!=d.state.facet(gB)&&(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(eG))try{a(d)}catch(a){eR(this.state,a,"update listener")}(h||j)&&Promise.resolve().then(()=>{h&&this.state==h.startState&&this.dispatch(h),j&&!fL(this,j)&&i.force&&ej(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 gt(a),this.plugins=a.facet(eU).map(a=>new eW(a)),this.pluginMap.clear(),this.plugins))b.update(this);this.docView.destroy(),this.docView=new fv(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(eU),c=a.state.facet(eU);if(b!=c){let d=[];for(let e of c){let c=b.indexOf(e);if(c<0)d.push(new eW(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){eR(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(ek(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 eR(this.state,a),gR}}),j=e7.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]!=gR)try{let b=h[a];b.write&&b.write(i[a],this)}catch(a){eR(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(eG))a(b)}get themeClasses(){return gD+" "+(this.state.facet(gC)?gF:gE)+" "+this.state.facet(gB)}updateAttrs(){let a=gT(this,eX,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),b={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(eS)?"true":"false",class:"cm-content",style:`${dS.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(b["aria-readonly"]="true"),gT(this,eY,b);let c=this.observer.ignore(()=>{let c=dW(this.contentDOM,this.contentAttrs,b),d=dW(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(e5);let b=this.state.facet(a.cspNonce);dB.mount(this.root,this.styleModules.concat(gI).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 fE(this,a,fB(this,a,b,c))}moveByGroup(a,b){return fE(this,a,fB(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==dd.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 cG.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==dY.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==dY.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==eo.LTR)?b.right-1:b.left+1,y:(f.top+f.bottom)/2});if(null!=g)return cG.cursor(g,c?-1:1)}return cG.cursor(c?e.to:e.from,c?-1:1)}(this,a,b,c)}moveVertically(a,b,c){return fE(this,a,function(a,b,c,d){let e=b.head,f=c?1:-1;if(e==(c?a.state.doc.length:0))return cG.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=fG(a,{x:l,y:h+m*f},!1,f);return cG.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=fG(this,a,b);return c&&c.pos}posAndSideAtCoords(a,b=!0){return this.readMeasured(),fG(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 ed(c,e[ey.find(e,a-d.from,-1,b)].dir==eo.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(eL)||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>gQ)return eA(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=e2(this,a))))return d.order;c||(c=e2(this,a));let d=function(a,b,c){if(!a)return[new ey(0,0,+(b==eq))];if(b==ep&&!c.length&&!ex.test(a))return eA(a.length);if(c.length)for(;a.length>ez.length;)ez[ez.length]=256;let d=[],e=+(b!=ep);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=ew(a.charCodeAt(b));512==e?e=c:8==e&&4==d&&(e=16),ez[b]=4==e?2:e,7&e&&(d=e),c=e}for(let a=g,b=i,d=i;a<h;a++){let e=ez[a];if(128==e)a<h-1&&b==ez[a+1]&&24&b?e=ez[a]=b:ez[a]=256;else if(64==e){let e=a+1;for(;e<h&&64==ez[e];)e++;let f=a&&8==b||e<c&&8==ez[e]?1==d?1:8:256;for(let b=a;b<e;b++)ez[b]=f;a=e-1}else 8==e&&1==d&&(ez[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=eu[c=a.charCodeAt(b)])if(d<0){for(let a=h-3;a>=0;a-=3)if(ev[a+1]==-d){let c=ev[a+2],d=2&c?e:4&c?1&c?f:e:0;d&&(ez[b]=ez[ev[a]]=d),h=a;break}}else if(189==ev.length)break;else ev[h++]=b,ev[h++]=c,ev[h++]=i;else if(2==(g=ez[b])||1==g){let a=g==e;i=+!a;for(let b=h-3;b>=0;b-=3){let c=ev[b+2];if(2&c)break;if(a)ev[b+2]|=2;else{if(4&c)break;ev[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=ez[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==ez[g])g++;else break;let j=1==f,k=j==((g<b?ez[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),ez[--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=ez[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(ez[a]==j)break d;else break}l++,n?n.push(b):(b.from>k&&i.push(new ey(k,b.from,o)),a(c,b.direction==ep!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.to),p=b.to}else if(p==e||(d?ez[p]!=j:ez[p]==j))break;else p++;n?b(c,k,p,f+1,g,n,i):k<p&&i.push(new ey(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=ez[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(ez[a-1]==j)break d;else break}n?n.push(b):(b.to<k&&i.push(new ey(b.to,k,o)),a(c,b.direction==ep!=!(o%2)?f+1:f,g,b.inner,b.from,b.to,i),k=b.from),p=b.from}else if(p==d||(e?ez[p-1]!=j:ez[p-1]==j))break;else p--;n?b(c,p,k,f+1,g,n,i):p<k&&i.push(new ey(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 gS(a.from,a.to,b,c,!0,d)),d}get hasFocus(){var a;return(this.dom.ownerDocument.hasFocus()||dS.safari&&(null==(a=this.inputState)?void 0:a.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{eh(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 eP.of(new eO("number"==typeof a?cG.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 eP.of(new eO(cG.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 eV.define(()=>({}),{eventHandlers:a})}static domEventObservers(a){return eV.define(()=>({}),{eventObservers:a})}static theme(a,b){let c=dB.newName(),d=[gB.of(c),e5.of(gH(`.${c}`,a))];return b&&b.dark&&d.push(gC.of(!0)),d}static baseTheme(a){return cS.lowest(e5.of(gH("."+gD,a,gG)))}static findFromDOM(a){var b;let c=a.querySelector(".cm-content"),d=c&&e9.get(c)||e9.get(a);return(null==(b=null==d?void 0:d.root)?void 0:b.view)||null}};gP.styleModule=e5,gP.inputHandler=eH,gP.clipboardInputFilter=eJ,gP.clipboardOutputFilter=eK,gP.scrollHandler=eN,gP.focusChangeEffect=eI,gP.perLineTextDirection=eL,gP.exceptionSink=eF,gP.updateListener=eG,gP.editable=eS,gP.mouseSelectionStyle=eE,gP.dragMovesSelection=eD,gP.clickAddsSelectionRange=eC,gP.decorations=eZ,gP.blockWrappers=e$,gP.outerDecorations=e_,gP.atomicRanges=e0,gP.bidiIsolatedRanges=e1,gP.scrollMargins=e3,gP.darkTheme=gC,gP.cspNonce=cJ.define({combine:a=>a.length?a[0]:""}),gP.contentAttributes=eY,gP.editorAttributes=eX,gP.lineWrapping=gP.contentAttributes.of({class:"cm-lineWrapping"}),gP.announce=c7.define();var gQ=4096,gR={},gS=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:eo.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 gT(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&&dT(f,c)}return c}dS.mac||dS.windows||dS.linux,/x/.unicode;var gU="-10000px",gV=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 gW(a){let b=a.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:b.clientHeight,right:b.clientWidth}}var gX=cJ.define({combine:a=>{var b,c,d;return{position:dS.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)||gW}}}),gY=new WeakMap,gZ=eV.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(gX);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 gV(a,g1,(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(gX);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=gU,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(dS.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=e4(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(gX).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=gU;continue}let n=i.arrow?j.dom.querySelector(".cm-tooltip-arrow"):null,o=7*!!n,p=m.right-m.left,q=null!=(b=gY.get(j))?b:m.bottom-m.top,r=j.offset||g0,s=this.view.textDirection==eo.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=gU;continue}gY.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",g$(k,(t-a.parent.left)/e)):(k.style.top=w/f+"px",g$(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=gU}},{eventObservers:{scroll(){this.maybeMeasure()}}});function g$(a,b){let c=parseInt(a.style.left,10);(isNaN(c)||Math.abs(b-c)>1)&&(a.style.left=b+"px")}var g_=gP.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"}}}),g0={x:0,y:0},g1=cJ.define({enables:[gZ,g_]}),g2=cJ.define({combine:a=>a.reduce((a,b)=>a.concat(b),[])}),g3=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 gV(a,g2,(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")}},g4=(a=>{let b=a.facet(g2);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:g3.create,above:b[0].above,arrow:b.some(a=>a.arrow)}},cJ.define({combine(a){let b,c;for(let d of a)b=b||d.topContainer,c=c||d.bottomContainer;return{topContainer:b,bottomContainer:c}}})),g5=eV.fromClass(class{constructor(a){this.input=a.state.facet(g8),this.specs=this.input.filter(a=>a),this.panels=this.specs.map(b=>b(a));let b=a.state.facet(g4);for(let c of(this.top=new g6(a,!0,b.topContainer),this.bottom=new g6(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(g4);this.top.container!=b.topContainer&&(this.top.sync([]),this.top=new g6(a.view,!0,b.topContainer)),this.bottom.container!=b.bottomContainer&&(this.bottom.sync([]),this.bottom=new g6(a.view,!1,b.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let c=a.state.facet(g8);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=>gP.scrollMargins.of(b=>{let c=b.plugin(a);return c&&{top:c.top.scrollMargin(),bottom:c.bottom.scrollMargin()}})}),g6=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=g7(a);a=a.nextSibling}else this.dom.insertBefore(b.dom,a);for(;a;)a=g7(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 g7(a){let b=a.nextSibling;return a.remove(),b}var g8=cJ.define({enables:g5}),g9=class extends dg{compare(a){return this==a||this.constructor==a.constructor&&this.eq(a)}eq(a){return!1}destroy(a){}};g9.prototype.elementClass="",g9.prototype.toDOM=void 0,g9.prototype.mapMode=cw.TrackBefore,g9.prototype.startSide=g9.prototype.endSide=-1,g9.prototype.point=!0;var ha=class{constructor(a,b,c){this.from=a,this.to=b,this.diagnostic=c}},hb=class a{constructor(a,b,c){this.diagnostics=a,this.panel=b,this.selected=c}static init(b,c,d){let e=d.facet(hi).markerFilter;e&&(b=e(b,d));let f=b.slice().sort((a,b)=>a.from-b.from||a.to-b.to),g=new dm,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,dZ.widget({widget:new hl(m),diagnostics:h.slice()}));else{let a=h.reduce((a,b)=>b.markClass?a+" "+b.markClass:a,"");g.add(b,c,dZ.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,hc(m))}};function hc(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 ha(d.from,c,d.diagnostic)}else d=new ha(a,c,b||e.diagnostics[0])}),d}var hd=c7.define(),he=c7.define(),hf=c7.define(),hg=cP.define({create:()=>new hb(dZ.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=hc(c,a.selected.diagnostic,e)||hc(c,null,e)}!c.size&&e&&b.state.facet(hi).autoPanel&&(e=null),a=new hb(c,e,d)}for(let c of b.effects)if(c.is(hd)){let d=b.state.facet(hi).autoPanel?c.value.length?hn.open:null:a.panel;a=hb.init(c.value,d,b.state)}else c.is(he)?a=new hb(a.diagnostics,c.value?hn.open:null,a.selected):c.is(hf)&&(a=new hb(a.diagnostics,a.panel,c.value));return a},provide:a=>[g8.from(a,a=>a.panel),gP.decorations.from(a,a=>a.diagnostics)]}),hh=a=>{let b=a.state.field(hg,!1);return!!b&&!!b.panel&&(a.dispatch({effects:he.of(!1)}),!0)},hi=cJ.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:hj,tooltipFilter:hj,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 hj(a,b){return a?b?(c,d)=>b(a(c,d),d):a:b}function hk(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 hl=class extends dX{constructor(a){super(),this.sev=a}eq(a){return a.sev==this.sev}toDOM(){return dG("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}},hm=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?hk(b.actions):[];return dG("li",{class:"cm-diagnostic cm-diagnostic-"+b.severity},dG("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=hc(a.state.field(hg).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),dG("u",h.slice(i,i+1)),h.slice(i+1)];return dG("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&&dG("div",{class:"cm-diagnosticSource"},b.source))}(a,b,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}},hn=class a{constructor(a){this.view=a,this.items=[];let b=b=>{if(!b.ctrlKey&&!b.altKey&&!b.metaKey){if(27==b.keyCode)hh(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=hk(c.actions);for(let e=0;e<d.length;e++)if(d[e].toUpperCase().charCodeAt(0)==b.keyCode){let b=hc(this.view.state.field(hg).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=dG("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:b,onclick:c}),this.dom=dG("div",{class:"cm-panel-lint"},this.list,dG("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>hh(this.view)},"\xd7")),this.update()}get selectedIndex(){let a=this.view.state.field(hg).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(hg),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 hm(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 hm(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=hc(this.view.state.field(hg).diagnostics,this.items[a].diagnostic);b&&this.view.dispatch({selection:{anchor:b.from,head:b.to},scrollIntoView:!0,effects:hf.of(b)})}static open(b){return new a(b)}};function ho(a){return null!=a&&""!==a}function hp(a,b=!1){return b?hr(ho(a)?K(a).format("0,0.[00]"):"",".[00]"):ho(a)?K(a).format():""}function hq(a,b=2){let c=`.${"0".repeat(b)}`;return hr(ho(a)?K(a).format(`$0,0${c}`):"",c)}function hr(a,b=".00"){return a.includes(b)?a.replace(b,""):a}var hs=({loading:a,requests:b,onFilterChange:c,onSortChange:d,onPaginationChange:e,rowsPerPage:f,page:g,totalRows:h,onRowClick:i,filterModel:j,filterMode:k,paginationMode:p,sortingMode:q,t:s,emptyContentImgUrl:t})=>{let u=(0,o.useMemo)(()=>b?b.map(a=>({...a,id:a.id,output:a.output||a.status_message,user_id:a.user_id||"N/A"})):[],[b]),v=(0,o.useMemo)(()=>[{field:"input",headerName:s("columnHeader.input"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"output",headerName:s("columnHeader.output"),width:300,type:"string",headerAlign:"left",align:"left"},{field:"prompt_tokens",headerName:s("columnHeader.promptTokens"),width:150,type:"number",headerAlign:"left",align:"left"},{field:"completion_tokens",headerName:s("columnHeader.completionTokens"),width:200,type:"number",headerAlign:"left",align:"left"},{field:"cost",headerName:s("columnHeader.cost"),type:"number",width:110,headerAlign:"left",align:"left",valueFormatter:a=>hq(a,6)},{field:"props",headerName:s("columnHeader.variables"),type:"string",headerAlign:"left",align:"left",width:300},{field:"latency_ms",headerName:s("columnHeader.latency"),type:"number",width:100,headerAlign:"left",align:"left"},{field:"model_used",headerName:s("columnHeader.modelUsed"),type:"string",width:200,headerAlign:"left",align:"left"},{field:"status",headerName:s("columnHeader.status"),type:"string",width:100,headerAlign:"left",align:"left",valueFormatter:a=>2===Number(a)?s("fail"):s("success")},{field:"prompt_name",headerName:s("columnHeader.promptName"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"user_id",headerName:s("columnHeader.user"),type:"string",width:150,headerAlign:"left",align:"left"},{field:"trace_id",headerName:s("columnHeader.traceId"),width:200,type:"string",headerAlign:"left",align:"left"},{field:"ts",headerName:s("columnHeader.date"),type:"date",width:200,headerAlign:"left",align:"left",valueFormatter:a=>new Date(a).toLocaleString()}].map(a=>({...a,filterOperators:"number"===a.type?(0,l.J)().filter(a=>!a.value.includes("Empty")):"date"===a.type?(0,m.Q)():(0,n.n)().filter(a=>!a.value.includes("Empty"))})),[s]);return(0,r.jsx)(aI,{t:s,emptyContentImgUrl:t,onRowClick:a=>i?.(a.row),rows:u,loading:a,columns:v,paginationMode:p,onFilterModelChange:c,filterModel:j,filterMode:k,rowCount:e?h:void 0,showToolbar:!0,paginationModel:"server"===p?{page:g||0,pageSize:f||10}:void 0,onSortModelChange:d,sortingMode:q,pageSizeOptions:[5,10,25],initialState:{pagination:"server"!==p?{paginationModel:{page:0,pageSize:10}}:void 0},rowSelection:!1,onPaginationModelChange:a=>{e?.(a.page,a.pageSize)}})},ht=a=>(0,r.jsxs)(i.A,{direction:"column",spacing:2,children:[(0,r.jsx)(j.A,{variant:"h5",component:"h1",children:a.t("title")}),(0,r.jsx)(k.A,{children:(0,r.jsx)(hs,{...a})})]});function hu({title:a,notFound:b,sx:c,imgUrl:d}){return(0,r.jsx)(z.A,{children:b?(0,r.jsx)(y.A,{colSpan:12,children:(0,r.jsx)(aG,{filled:!0,title:a,sx:{py:10,...c},imgUrl:d})}):(0,r.jsx)(y.A,{colSpan:12,sx:{p:0}})})}var hv=({sessions:a,isLoading:b,sessionCount:c,table:d,onSessionClick:e,t:f,emptyContentImgUrl:g})=>(0,r.jsxs)(L.A,{children:[(0,r.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,r.jsx)(aM,{headLabel:[{id:"sessionId",label:f("sessionId")},{id:"name",label:f("name")},{id:"startTime",label:f("startTime")},{id:"endTime",label:f("endTime")}]}),(0,r.jsxs)(N.A,{children:[a.map(a=>(0,r.jsxs)(z.A,{onClick:()=>e(a),hover:!0,sx:{cursor:"pointer"},children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(aP,{color:"primary",sx:{textTransform:"none"},children:a.id})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(j.A,{variant:"body2",children:a.name||"-"})}),(0,r.jsx)(y.A,{children:(0,O.GP)(new Date(1e3*a.start),"MMM d, yyyy h:mm:ss a")}),(0,r.jsx)(y.A,{children:a.end?(0,O.GP)(new Date(1e3*a.end),"MMM d, yyyy h:mm:ss a"):"-"})]},a.id)),b&&(0,r.jsx)(aK,{}),(0,r.jsx)(hu,{title:f("noSessions"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,r.jsx)(aN,{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,r.jsxs)(z.A,{onClick:()=>b(a),hover:!0,sx:{cursor:"pointer"},children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(aP,{color:"primary",sx:{textTransform:"none"},children:a.name})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(aF,{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,r.jsx)(y.A,{children:(0,r.jsxs)(aP,{color:"info",startIcon:(0,r.jsx)(aF,{icon:"mdi:clock-outline"}),children:[(parseInt(a.latency)/1e3).toFixed(2),"s"]})}),(0,r.jsx)(y.A,{children:hq(`${a.cost}`||0,5)}),(0,r.jsx)(y.A,{children:(0,r.jsx)(aP,{color:"default",startIcon:(0,r.jsx)(aF,{icon:"game-icons:token"}),children:hp(a.tokens||0)})}),(0,r.jsx)(y.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,r.jsxs)(L.A,{children:[(0,r.jsxs)(M.A,{size:d.dense?"small":"medium",children:[(0,r.jsx)(aM,{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:"timestamp",label:f("timestamp")}]}),(0,r.jsxs)(N.A,{children:[a.map(a=>(0,r.jsx)(hw,{trace:a,onClick:e},a.id)),b&&(0,r.jsx)(aK,{}),(0,r.jsx)(hu,{title:h||f("noTraces"),sx:{p:3},notFound:!b&&0===a.length,imgUrl:g})]})]}),(0,r.jsx)(aN,{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,o.createContext)(void 0),hz=({children:a,traces:b,traceId:c,fetchSpanEvaluations:d,t:e,onSpanChange:f})=>{let[g,h]=(0,o.useState)(null),i=(0,o.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,o.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:k,handleMouseDown:l,isDragging:m}=((a=400)=>{let[b,c]=(0,o.useState)(a),[d,e]=(0,o.useState)(!1),[f,g]=(0,o.useState)({y:0,initialHeight:0});(0,o.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,o.useEffect)(()=>()=>{h(null)},[b]),(0,o.useEffect)(()=>{f&&f(i)},[i]);let n=(0,o.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,r.jsx)(hy.Provider,{value:{traces:b,selectedSpan:i,onSelectSpan:a=>{h(a)},spanTree:j,findCostAndTokens:n,fetchSpanEvaluations:d,traceId:c,setSelectedSpanId:h,treeHeight:k,onMouseDown:l,isDragging:m,t:e,onSpanChange:f},children:a})},hA=()=>{let a=(0,o.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:160,height:60},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,r.jsx)(R.Ay,{anchor:"right",open:a,onClose:b,sx:{"& .MuiDrawer-paper":{width:"80%"}},children:c}),hH=({children:a})=>(0,r.jsx)(i.A,{width:"100%",children:a}),hI=({children:a})=>(0,r.jsx)(j.A,{variant:"h6",children:a}),hJ=()=>{let{selectedSpan:a}=hA();return(0,r.jsx)(j.A,{variant:"subtitle1",color:"primary",children:a?.name})},hK=({children:a})=>(0,r.jsx)(q.default,{p:2,sx:{flexShrink:0,borderBottom:1,borderColor:"divider"},children:a}),hL=({children:a})=>(0,r.jsx)(i.A,{direction:"row",divider:(0,r.jsx)(S.A,{orientation:"vertical",flexItem:!0}),sx:{width:"100%"},height:"100%",children:a}),hM=({children:a})=>(0,r.jsx)(q.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,r.jsx)(q.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,r.jsx)(q.default,{sx:{width:"40px",height:"3px",backgroundColor:"currentColor",borderRadius:"2px",opacity:.6}})})},hO=()=>(0,r.jsxs)(i.A,{height:"100%",divider:(0,r.jsx)(q.default,{sx:{borderBottom:1,borderColor:"divider"}}),children:[(0,r.jsxs)(i.A,{p:2,spacing:1,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:32})," ",(0,r.jsx)(x.A,{variant:"text",width:300,height:24})," ",(0,r.jsx)(x.A,{variant:"text",width:150,height:20})," "]}),(0,r.jsx)(q.default,{sx:{flexGrow:1,display:"flex",overflow:"hidden"},children:(0,r.jsxs)(i.A,{direction:"row",divider:(0,r.jsx)(q.default,{sx:{borderLeft:1,borderColor:"divider"}}),sx:{width:"100%"},children:[(0,r.jsx)(q.default,{width:500,minWidth:500,sx:{overflowY:"auto"},p:2,children:(0,r.jsx)(i.A,{spacing:1,children:[void 0,void 0,void 0,void 0,void 0].map((a,b)=>(0,r.jsxs)(i.A,{spacing:.5,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:24}),(0,r.jsx)(i.A,{spacing:.5,pl:3,children:[void 0,void 0].map((a,b)=>(0,r.jsx)(x.A,{variant:"text",width:180,height:24},b))})]},b))})}),(0,r.jsx)(q.default,{sx:{flexGrow:1,display:"flex",flexDirection:"column"},children:(0,r.jsxs)(i.A,{p:2,spacing:2,children:[(0,r.jsxs)(i.A,{direction:"row",spacing:3,children:[(0,r.jsx)(x.A,{variant:"text",width:200,height:24}),(0,r.jsx)(x.A,{variant:"text",width:200,height:24})]}),(0,r.jsx)(x.A,{variant:"rectangular",width:200,height:32}),(0,r.jsx)(i.A,{spacing:2,pt:1,children:[void 0,void 0,void 0].map((a,b)=>(0,r.jsxs)(i.A,{spacing:1,children:[(0,r.jsx)(x.A,{variant:"rectangular",height:48}),(0,r.jsx)(x.A,{variant:"rectangular",height:100})]},b))})]})})]})})]}),hP=({children:a})=>(0,r.jsx)(q.default,{sx:{height:"100%",display:"flex",flexDirection:"column",overflow:"hidden"},children:a}),hQ=(0,G.Ay)(U.eB)(({theme:a})=>({color:a.palette.text.secondary})),hR=(0,G.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,s.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,G.Ay)(U.YS)(({theme:a})=>({marginLeft:15,paddingLeft:18,borderLeft:`2px solid ${(0,s.X4)(a.palette.text.primary,.4)}`,"& .content":{paddingLeft:a.spacing(2)}})),hT=o.forwardRef(function({hasChildren:a,...b},c){let d=(0,P.A)(),{id:e,itemId:f,label:g,disabled:h,children:i,bgColor:k,color:l,labelIcon:m,labelInfo:n,colorForDarkMode:o,bgColorForDarkMode:p,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?l:o,"--tree-view-bg-color":"dark"!==d.palette.mode?k:p};return(0,r.jsx)(W.r,{itemId:f,id:e,children:(0,r.jsxs)(hQ,{...u({...t,style:A}),children:[(0,r.jsx)(hR,{...v({className:b1("content",{expanded:z.expanded,selected:z.selected,focused:z.focused})}),children:(0,r.jsxs)(q.default,{sx:{display:"flex",flexGrow:1,p:.5,pr:0,wordBreak:"break-all"},children:[(0,r.jsx)(q.default,{component:m,color:"inherit",sx:{mr:1,mt:"2px",minWidth:20,minHeight:20}}),"string"==typeof g?(0,r.jsx)(j.A,{...x({variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1}})}):g,(0,r.jsx)(j.A,{variant:"caption",color:"inherit",children:n}),Array.isArray(b.children)&&b.children.length>0&&(0,r.jsx)(X.A,{sx:{alignSelf:"center",ml:"auto"},...w({className:b1({expanded:z.expanded})}),children:(0,r.jsx)(aF,{icon:z.expanded?"mdi:chevron-down":"mdi:chevron-right"})})]})}),i&&(0,r.jsx)(hS,{...y()})]})})}),hU=({label:a,status:b,tokens:c,latency:d,cost:e})=>{let f=(0,P.A)(),{t:g}=hA();return(0,r.jsxs)(i.A,{spacing:.3,children:[(0,r.jsxs)(i.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,r.jsx)(j.A,{variant:"body2",sx:{display:"flex",fontWeight:"inherit",flexGrow:1},children:a}),(0,r.jsx)(q.default,{minWidth:16,maxHeight:16,children:(0,r.jsx)(aF,{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,r.jsxs)(i.A,{direction:"row",spacing:.5,flexWrap:"wrap",children:[(0,r.jsx)(Y.A,{title:g("latency"),children:(0,r.jsxs)(aP,{sx:{textTransform:"lowercase"},color:"primary",startIcon:(0,r.jsx)(aF,{icon:"mdi:clock-time-four-outline"}),children:[(Number(d)/1e3).toFixed(1),"s"]})}),!!Number(c)&&(0,r.jsx)(Y.A,{title:g("cost"),children:(0,r.jsx)(aP,{color:"info",children:hq(e,5)})}),!!parseInt(c)&&(0,r.jsx)(Y.A,{title:g("tokens"),children:(0,r.jsx)(aP,{color:"default",startIcon:(0,r.jsx)(aF,{icon:"game-icons:token"}),children:hp(c)})})]})]})},hV=(a,b)=>{if(!a)return null;let{cost:c,tokens:d}=b(a);return(0,r.jsx)(i.A,{children:(0,r.jsx)(hT,{itemId:a.id,labelIcon:a=>(0,r.jsx)(aF,{icon:"system-uicons:timeline",...a}),label:(0,r.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,o.useMemo)(()=>a.map(a=>hV(a,e)),[a]);return(0,r.jsx)(q.default,{sx:{height:"100%",overflowY:"auto",p:2},children:b?.id&&(0,r.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__",hZ={traceNode:(0,o.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})`:"";return h?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)($.h7,{type:"target",position:_.yX.Top,style:{visibility:"hidden"}}),(0,r.jsx)(q.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,r.jsx)(aF,{icon:c.icon,width:24,height:24,color:e})}),(0,r.jsx)($.h7,{type:"source",position:_.yX.Bottom,style:{visibility:"hidden"}})]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)($.h7,{type:"target",position:_.yX.Top,style:{visibility:"hidden"}}),(0,r.jsxs)(q.default,{sx:{minWidth:120,maxWidth:180,backgroundColor:d.palette.background.paper,borderRadius:2,border:`2px solid ${e}`,display:"flex",alignItems:"center",padding:1.5,boxShadow:d.shadows[2],cursor:"pointer",gap:1,"&:hover":{boxShadow:d.shadows[4],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,r.jsx)(aF,{icon:c.icon,width:20,height:20,color:e,style:{flexShrink:0}}),(0,r.jsxs)(q.default,{sx:{flex:1,minWidth:0},children:[(0,r.jsx)(j.A,{variant:"caption",sx:{fontWeight:600,color:d.palette.text.primary,display:"block",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:c.label,children:c.label}),g&&(0,r.jsx)(j.A,{variant:"caption",sx:{fontSize:"0.65rem",color:d.palette.text.secondary},children:i})]})]}),(0,r.jsx)($.h7,{type:"source",position:_.yX.Bottom,style:{visibility:"hidden"}})]})})};function h$({graphData:a,isLoading:b}){let c=(0,P.A)(),{onSelectSpan:d,traces:e}=hA(),f=(0,o.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]),{nodes:g,edges:h}=(0,o.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]),[i,j]=(0,o.useState)(()=>new Map),k=(0,o.useMemo)(()=>{let a=new Map;return g.forEach(b=>a.set(b.id,b)),a},[g]),l=(0,o.useCallback)(a=>{d(a)},[d]),m=(0,o.useCallback)(a=>{let b=k.get(a);if(!b?.spanIds||0===b.spanIds.length)return;let c=((i.get(a)??0)+1)%b.spanIds.length,e=b.spanIds[c];j(b=>{let d=new Map(b);return d.set(a,c),d}),e&&d(e)},[k,i,d]),{reactFlowNodes:n,reactFlowEdges:p}=function({nodes:a,edges:b,onNodeClick:c,onNodeCycleClick:d,nodeSpanIndices:e}){let f=(0,P.A)(),g=(0,o.useMemo)(()=>{if(!a.length)return[];let g=a.map(a=>({id:a.id,data:{label:a.label},position:{x:0,y:0}})),h=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}(g,b.map(a=>({id:a.id,source:a.source,target:a.target})));return g.map(b=>{let g=a.find(a=>a.id===b.id),i=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]}(h.get(b.id)||b.id,f),{color:j,icon:k}=hB(g?.nodeType,f),l=e?.get(b.id);return{...b,type:"traceNode",data:{label:b.data.label,branchColor:i,spanId:g?.spanId,nodeType:g?.nodeType,color:j,icon:k,onNodeClick:c,spanIds:g?.spanIds,currentSpanIndex:l,onNodeCycleClick:d}}})},[a,b,f,c,d,e]),h=(0,o.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:i,edges:j}=(0,o.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}})(g,h),[g,h]);return{reactFlowNodes:i,reactFlowEdges:j}}({nodes:g,edges:h,onNodeClick:l,onNodeCycleClick:m,nodeSpanIndices:i}),[s,t]=(0,o.useState)(n),[u,v]=(0,o.useState)(p),[w,x]=(0,o.useState)(-1),y=(0,o.useCallback)(a=>{if(0!==s.length)switch(a.key){case"ArrowRight":case"ArrowDown":a.preventDefault(),x(w<s.length-1?w+1:0);break;case"ArrowLeft":case"ArrowUp":a.preventDefault(),x(w>0?w-1:s.length-1);break;case"Enter":case" ":if(a.preventDefault(),w>=0&&w<s.length){let a=s[w],b=a?.data;b?.spanIds&&b.spanIds.length>1&&a?m(a.id):b?.spanId&&l(b.spanId)}break;case"Tab":-1===w&&s.length>0&&(a.preventDefault(),x(0))}},[s,w,l,m]);return b?(0,r.jsx)(q.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2},children:(0,r.jsx)(Z.A,{size:20})}):s.length?(0,r.jsx)(q.default,{sx:{flexGrow:1,overflow:"hidden",border:"1px solid",borderColor:"divider",borderRadius:1,m:2,position:"relative",minHeight:0},children:(0,r.jsx)(q.default,{sx:{width:"100%",height:"100%"},tabIndex:0,onKeyDown:y,role:"application","aria-label":"Workflow graph - use arrow keys to navigate between nodes, Enter to select",children:(0,r.jsxs)($.Gc,{nodes:s,edges:u,nodeTypes:hZ,onNodesChange:a=>{t((0,$._0)(a,s))},onEdgesChange:a=>{v((0,$.zW)(a,u))},fitView:!0,zoomOnScroll:!0,panOnScroll:!0,zoomOnPinch:!0,fitViewOptions:{padding:.5},children:[(0,r.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,r.jsx)($.H2,{style:{backgroundColor:c.palette.background.paper,border:`1px solid ${c.palette.divider}`,borderRadius:8,boxShadow:c.shadows[4]}}),(0,r.jsx)($.VS,{gap:20,size:1})]})})}):(0,r.jsx)(q.default,{sx:{display:"flex",justifyContent:"center",alignItems:"center",p:2,color:"text.secondary"},children:"No graph data available"})}var h_={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 h0(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 h1(a){let b=a.data?.status?.toLowerCase();return"error"===b||"failed"===b||"failure"===b}function h2(a,b){let c=b.get(a);return void 0!==c&&c.length>0}function h3(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:h4,MAX_SCALE:h5}=h_,{ROW_HEIGHT:h6,MIN_BAR_WIDTH:h7,BAR_HEIGHT_RATIO:h8}=h_,h9=(0,o.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=h6*h8,l=a.row*h6+(h6-k)/2,m=a.x*g,n=Math.max(h7,a.width*g),o=j.color;a.hasError&&(o=i.palette.error.main);let p=b?i.palette.primary.main:c?i.palette.action.focus:"transparent",q=a.hasError?1:.85,s=(h=a.durationMs)<1e3?`${Math.round(h)}ms`:`${(h/1e3).toFixed(1)}s`;return(0,r.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,r.jsx)("rect",{x:m,y:l,width:n,height:k,rx:3,ry:3,fill:o,opacity:q,stroke:p,strokeWidth:b||c?2:0}),n>60&&(0,r.jsx)("text",{x:m+n/2,y:l+k/2,textAnchor:"middle",dominantBaseline:"central",fontSize:10,fill:i.palette.getContrastText(o),style:{pointerEvents:"none",userSelect:"none"},children:s}),a.hasError&&(0,r.jsx)("circle",{cx:m+n-8,cy:l+k/2,r:4,fill:i.palette.error.contrastText,style:{pointerEvents:"none"}})]})}),{RULER_HEIGHT:ia}=h_,ib=(0,o.memo)(function({ticks:a,width:b,height:c=ia}){let d=(0,P.A)(),e=.6*c,f=.3*c;return(0,r.jsxs)("g",{className:"timeline-ruler",role:"presentation",children:[(0,r.jsx)("rect",{x:0,y:0,width:b,height:c,fill:d.palette.background.paper}),(0,r.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,r.jsxs)("g",{children:[(0,r.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,r.jsx)("text",{x:h,y:i-4,textAnchor:"middle",fontSize:10,fill:d.palette.text.secondary,style:{userSelect:"none"},children:a.label})]},g)})]})});function ic(a){return a>=1e6?`${(a/1e6).toFixed(1)}M`:a>=1e3?`${(a/1e3).toFixed(1)}K`:String(a)}function id(a,b){if(!a)return"";let c=a.replace(/\n/g," ").trim();return c.length<=b?c:c.slice(0,b)+"..."}var ie=(0,o.memo)(function({layout:a,position:b,visible:c}){var d,e;let f=(0,P.A)(),g=(0,o.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,k=i.model||i.totalTokens||i.cost,l=i.input||i.output,m=i.toolCalls,n=g&&Object.keys(g).length>0,p=b.x+12,s=b.y+12;return(0,r.jsxs)(aa.A,{elevation:8,sx:{position:"fixed",left:p,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,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1,mb:1},children:[(0,r.jsx)(q.default,{sx:{width:8,height:8,borderRadius:"50%",backgroundColor:h.color,flexShrink:0}}),(0,r.jsx)(j.A,{variant:"subtitle2",sx:{fontWeight:600,wordBreak:"break-word",color:f.palette.text.primary},children:a.name})]}),(0,r.jsxs)(q.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Duration:"}),(0,r.jsx)(j.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,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Start:"}),(0,r.jsx)(j.A,{variant:"caption",children:(d=a.startTimeMs)<1e3?`+${Math.round(d)}ms`:`+${(d/1e3).toFixed(2)}s`}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"% of trace:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[a.percentOfTrace.toFixed(1),"%"]}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Type:"}),(0,r.jsx)(j.A,{variant:"caption",sx:{textTransform:"capitalize"},children:a.nodeType}),a.hasError&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"error.main",children:"Status:"}),(0,r.jsx)(j.A,{variant:"caption",color:"error.main",fontWeight:500,children:i.statusMessage||"Error"})]})]}),k&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(S.A,{sx:{my:1}}),(0,r.jsxs)(q.default,{sx:{display:"grid",gridTemplateColumns:"auto 1fr",gap:.5,rowGap:.25},children:[i.model&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Model:"}),(0,r.jsx)(j.A,{variant:"caption",fontWeight:500,children:i.model})]}),(i.inputTokens||i.outputTokens)&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Tokens:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[i.inputTokens?`${ic(i.inputTokens)} in`:"",i.inputTokens&&i.outputTokens?" / ":"",i.outputTokens?`${ic(i.outputTokens)} out`:"",i.totalTokens&&` (${ic(i.totalTokens)} total)`]})]}),i.reasoningTokens&&i.reasoningTokens>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Reasoning:"}),(0,r.jsxs)(j.A,{variant:"caption",children:[ic(i.reasoningTokens)," tokens"]})]}),null!=i.cost&&i.cost>0&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Cost:"}),(0,r.jsx)(j.A,{variant:"caption",fontWeight:500,children:(e=i.cost)<.01?`$${e.toFixed(6)}`:e<1?`$${e.toFixed(4)}`:`$${e.toFixed(2)}`})]}),i.finishReason&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",children:"Finish:"}),(0,r.jsx)(j.A,{variant:"caption",children:i.finishReason})]})]})]}),l&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(S.A,{sx:{my:1}}),i.input&&(0,r.jsxs)(q.default,{sx:{mb:.5},children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Input:"}),(0,r.jsx)(j.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:id(i.input,100)})]}),i.output&&(0,r.jsxs)(q.default,{children:[(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Output:"}),(0,r.jsx)(j.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:id(i.output,100)})]})]}),m&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(S.A,{sx:{my:1}}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.25},children:"Tool Calls:"}),(0,r.jsx)(j.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:id(i.toolCalls,80)})]}),n&&(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(S.A,{sx:{my:1}}),(0,r.jsx)(j.A,{variant:"caption",color:"text.secondary",sx:{display:"block",mb:.5},children:"Attributes:"}),(0,r.jsxs)(q.default,{sx:{display:"flex",flexWrap:"wrap",gap:.5},children:[Object.entries(g).slice(0,5).map(([a,b])=>(0,r.jsx)(ab.A,{label:`${a}: ${id(String(b),20)}`,size:"small",variant:"outlined",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}},a)),Object.keys(g).length>5&&(0,r.jsx)(ab.A,{label:`+${Object.keys(g).length-5} more`,size:"small",sx:{height:20,fontSize:"0.65rem","& .MuiChip-label":{px:.75}}})]})]})]})}),ig={llm:"LLM",tool:"Tool",agent:"Agent",retrieval:"Retrieval",router:"Router",memory:"Memory",default:"Other",start:"Start",end:"End"},ih=["llm","tool","agent","retrieval","router","memory","default"],ii=(0,o.memo)(function({typeBreakdown:a,showCounts:b=!1}){let c=(0,P.A)(),d=ih.filter(b=>void 0!==a[b]&&a[b]>0);return 0===d.length?null:(0,r.jsx)(q.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=ig[d];return(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:.5},children:[(0,r.jsx)(q.default,{sx:{width:12,height:12,borderRadius:.5,backgroundColor:e.color,flexShrink:0}}),(0,r.jsxs)(j.A,{variant:"caption",sx:{color:c.palette.text.secondary,lineHeight:1,whiteSpace:"nowrap"},children:[g,b&&f>0&&(0,r.jsxs)(j.A,{component:"span",variant:"caption",sx:{color:c.palette.text.disabled,ml:.5},children:["(",f,")"]})]})]},d)})})}),ij=class extends o.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,r.jsxs)(q.default,{sx:{p:3,display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",height:"100%",minHeight:200,color:"text.secondary",textAlign:"center"},children:[(0,r.jsx)(j.A,{variant:"body1",color:"error",gutterBottom:!0,children:"Failed to render timeline"}),(0,r.jsx)(j.A,{variant:"body2",sx:{mb:2},children:"There was an error processing the span data."}),(0,r.jsx)(ac.A,{variant:"outlined",size:"small",onClick:this.handleRetry,children:"Retry"})]}):this.props.children}},{ROW_HEIGHT:ik,RULER_HEIGHT:il,PADDING:im,LABEL_WIDTH:io}=h_,ip=(0,o.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 k=(0,P.A)(),l=(0,o.useRef)(null),[m,n]=(0,o.useState)(800),p=(0,o.useRef)(void 0),[s,t]=(0,o.useState)({layout:null,position:null}),[u,v]=(0,o.useState)(0),[w,y]=(0,o.useState)(400),{layouts:z,metrics:A,rulerTicks:B}=(0,o.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(h3).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=h2(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:h1(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=h2(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:h1(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?h0(a):"",isMajor:b})}(0===q.length||q[q.length-1].position<1)&&q.push({position:1,label:h0(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,m-io-2*im),D=z.length*ik,E=D+(d?il:0)+2*im,{viewState:F,zoomIn:G,zoomOut:H,resetZoom:I,onWheel:J,panHandlers:K}=function(a=1e3,b=500){let[c,d]=(0,o.useState)(()=>({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})),e=(0,o.useRef)(null),f=(0,o.useCallback)(a=>Math.max(h4,Math.min(h5,a)),[]),g=(0,o.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,o.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,o.useCallback)(()=>{d({viewBox:{x:0,y:0,width:a,height:b},scale:1,isPanning:!1})},[a,b]),j=(0,o.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]),k=(0,o.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]),l=(0,o.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})))},[]),m=(0,o.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:k,panHandlers:{onMouseDown:l,onMouseMove:m,onMouseUp:(0,o.useCallback)(()=>{e.current=null,d(a=>({...a,isPanning:!1}))},[]),onMouseLeave:(0,o.useCallback)(()=>{e.current&&(e.current=null,d(a=>({...a,isPanning:!1})))},[])}}}(C,D),{visibleLayouts:L}=(0,o.useMemo)(()=>{if(z.length<100)return{visibleLayouts:z,startIndex:0,endIndex:z.length};let a=Math.floor((u-(d?il:0)-im)/ik),b=Math.ceil(w/ik),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,w,d]);(0,o.useEffect)(()=>{let a=l.current;if(!a)return;let b=new ResizeObserver(a=>{for(let b of a)n(b.contentRect.width),y(b.contentRect.height)}),c=()=>{v(a.scrollTop)};return b.observe(a),a.addEventListener("scroll",c,{passive:!0}),n(a.offsetWidth),y(a.offsetHeight),()=>{b.disconnect(),a.removeEventListener("scroll",c)}},[]),(0,o.useEffect)(()=>{if(!b||b===p.current){p.current=b;return}p.current=b;let a=l.current;if(!a)return;let c=z.find(a=>a.spanId===b);if(!c)return;let e=im+(d?il:0)+c.row*ik,f=a.getBoundingClientRect(),g=a.scrollTop,h=g+f.height;(e<g||e+ik>h)&&a.scrollTo({top:e-f.height/2+ik/2,behavior:"smooth"})},[b,z,d]);let M=(0,o.useCallback)(a=>{c?.(a)},[c]),N=(0,o.useCallback)((a,b)=>{t({layout:a,position:{x:b.clientX,y:b.clientY}})},[]),O=(0,o.useCallback)(()=>{t({layout:null,position:null})},[]),[Q,R]=(0,o.useState)(-1),S=(0,o.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,r.jsx)(q.default,{sx:{p:2,...h},children:(0,r.jsx)(x.A,{variant:"rectangular",height:200})}):0===a.length?(0,r.jsx)(q.default,{sx:{p:4,display:"flex",alignItems:"center",justifyContent:"center",color:"text.secondary",...h},children:(0,r.jsx)(j.A,{variant:"body2",children:"No spans to display"})}):(0,r.jsx)(ij,{children:(0,r.jsxs)(q.default,{ref:l,sx:{width:"100%",height:"100%",minHeight:0,flex:1,overflow:"auto",backgroundColor:k.palette.background.default,position:"relative",...h},children:[f&&(0,r.jsxs)(q.default,{sx:{position:"sticky",top:4,right:4,zIndex:10,display:"flex",gap:.5,justifyContent:"flex-end",pr:1,pt:.5},children:[(0,r.jsx)(Y.A,{title:"Zoom in",children:(0,r.jsx)(X.A,{size:"small",onClick:G,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom in",children:"+"})}),(0,r.jsx)(Y.A,{title:"Zoom out",children:(0,r.jsx)(X.A,{size:"small",onClick:H,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:16,fontWeight:"bold"},"aria-label":"Zoom out",children:"−"})}),(0,r.jsx)(Y.A,{title:"Fit all",children:(0,r.jsx)(X.A,{size:"small",onClick:I,sx:{backgroundColor:k.palette.background.paper,"&:hover":{backgroundColor:k.palette.action.hover},fontSize:12},"aria-label":"Fit all",children:"⊡"})})]}),(0,r.jsxs)("svg",{width:m,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,r.jsx)("g",{transform:`translate(${io+im}, ${im})`,children:(0,r.jsx)(ib,{ticks:B,width:C})}),(0,r.jsx)("g",{transform:`translate(${im}, ${im+(d?il:0)})`,children:L.map(a=>(0,r.jsx)("g",{children:(0,r.jsx)("text",{x:12*a.depth,y:a.row*ik+ik/2,dominantBaseline:"central",fontSize:11,fill:k.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,io-12*a.depth-8)})},`label-${a.spanId}`))}),(0,r.jsxs)("g",{transform:`translate(${io+im}, ${im+(d?il:0)})`,children:[B.filter(a=>a.isMajor).map((a,b)=>(0,r.jsx)("line",{x1:a.position*C,y1:0,x2:a.position*C,y2:D,stroke:k.palette.divider,strokeWidth:.5,opacity:.5},`grid-${b}`)),L.map(a=>(0,r.jsx)("rect",{x:0,y:a.row*ik,width:C,height:ik,fill:a.row%2==0?"transparent":k.palette.action.hover,opacity:.3},`row-bg-${a.spanId}`)),L.map(a=>{let c=z.findIndex(b=>b.spanId===a.spanId);return(0,r.jsx)(h9,{layout:a,isSelected:b===a.spanId,isFocused:Q===c,onSelect:M,onMouseEnter:N,onMouseLeave:O,timelineWidth:C},a.spanId)})]})]}),e&&(0,r.jsx)(ii,{typeBreakdown:A.typeBreakdown,showCounts:!0}),(0,r.jsx)(ie,{layout:s.layout,position:s.position,visible:null!==s.layout})]})})}),iq=({children:a})=>(0,r.jsx)(i.A,{width:"100%",height:"100%",overflow:"hidden",children:a}),ir=(0,o.createContext)(void 0),is=({children:a})=>{let{selectedSpan:b}=hA(),{activeTab:c,setActiveTab:d,tabs:e}=(({span:a})=>{let[b,c]=(0,o.useState)("attributes"),[d,e]=(0,o.useState)([]),f=(0,o.useMemo)(()=>a?.data?.type==="GENERATION"||!!a?.data?.model,[a?.data?.type,a?.data?.model]);return(0,o.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,o.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,r.jsx)(ir.Provider,{value:{span:b,activeTab:c,setActiveTab:d,tabs:e},children:a}):null},it=()=>{let a=(0,o.useContext)(ir);if(!a)throw Error("useSpanInfo must be used within a SpanInfoProvider");return a},iu=()=>{let{span:a}=it(),{t:b}=hA(),c=a.data.model;return(0,r.jsxs)(i.A,{direction:"row",spacing:3,sx:{px:2,py:1.5,borderBottom:1,borderColor:"divider"},children:[(0,r.jsxs)(j.A,{variant:"subtitle2",children:[(0,r.jsxs)(j.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("spanId"),":"]})," ",a.id]}),c&&(0,r.jsxs)(j.A,{variant:"subtitle2",children:[(0,r.jsxs)(j.A,{component:"span",color:"text.secondary",variant:"subtitle2",children:[b("modelName"),":"]})," ",c]})]})},iv=({children:a})=>{let{activeTab:b,tabs:c,setActiveTab:d}=it();return(0,r.jsxs)(ae.Ay,{value:b,children:[(0,r.jsx)(af.A,{onChange:(a,b)=>d(b),scrollButtons:!1,sx:{borderBottom:1,borderColor:"divider"},children:c.map(a=>(0,r.jsx)(ad.A,{label:a.label,value:a.value},a.value))}),a]})},iw=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=[]}},ix=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}},iy={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"},iz=class{transform(a,b){try{let b={},c=!1;a[iy.AI_OPERATION_ID]&&(b.operation={id:a[iy.AI_OPERATION_ID],name:a[iy.AI_OPERATION_NAME]},c=!0),(a[iy.REQUEST_MODEL]||a[iy.AI_MODEL_ID])&&(b.model={id:a[iy.REQUEST_MODEL]||a[iy.AI_MODEL_ID],provider:a[iy.AI_MODEL_PROVIDER]},c=!0);let d={};(a[iy.GEN_AI_REQUEST_MAX_TOKENS]||a[iy.AI_SETTINGS_MAX_TOKENS])&&(d.maxTokens=a[iy.GEN_AI_REQUEST_MAX_TOKENS]||a[iy.AI_SETTINGS_MAX_TOKENS],c=!0),(a[iy.GEN_AI_REQUEST_TEMPERATURE]||a[iy.AI_SETTINGS_TEMPERATURE])&&(d.temperature=a[iy.GEN_AI_REQUEST_TEMPERATURE]||a[iy.AI_SETTINGS_TEMPERATURE],c=!0),(a[iy.GEN_AI_REQUEST_TOP_P]||a[iy.AI_SETTINGS_TOP_P])&&(d.topP=a[iy.GEN_AI_REQUEST_TOP_P]||a[iy.AI_SETTINGS_TOP_P],c=!0),(a[iy.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iy.AI_SETTINGS_PRESENCE_PENALTY])&&(d.presencePenalty=a[iy.GEN_AI_REQUEST_PRESENCE_PENALTY]||a[iy.AI_SETTINGS_PRESENCE_PENALTY],c=!0),Object.keys(d).length>0&&(b.settings=d),a[iy.AI_TOOL_CALL_NAME]&&(b.tool={name:a[iy.AI_TOOL_CALL_NAME],id:a[iy.AI_TOOL_CALL_ID],args:a[iy.AI_TOOL_CALL_ARGS]?JSON.parse(a[iy.AI_TOOL_CALL_ARGS]):void 0,result:a[iy.AI_TOOL_CALL_RESULT]},c=!0);let e={};if(Object.entries(a).forEach(([a,b])=>{if(a.startsWith(iy.AI_TELEMETRY_METADATA_PREFIX)){let d=a.replace(iy.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[iy.AI_TELEMETRY_METADATA_PROPS])try{b.props=JSON.parse(a[iy.AI_TELEMETRY_METADATA_PROPS]),c=!0}catch{b.props=a[iy.AI_TELEMETRY_METADATA_PROPS],c=!0}let f={};if((a[iy.AI_RESPONSE_FINISH_REASON]||a[iy.GEN_AI_RESPONSE_FINISH_REASONS])&&(f.finishReason=a[iy.AI_RESPONSE_FINISH_REASON]||a[iy.GEN_AI_RESPONSE_FINISH_REASONS],c=!0),a[iy.AI_RESPONSE_TEXT]&&(f.text=a[iy.AI_RESPONSE_TEXT],c=!0),a[iy.AI_RESPONSE_OBJECT])try{f.schema=JSON.parse(a[iy.AI_RESPONSE_OBJECT]),c=!0}catch(a){}Object.keys(f).length>0&&(b.response=f);let g={};return(a[iy.GEN_AI_USAGE_INPUT_TOKENS]||a[iy.AI_USAGE_PROMPT_TOKENS])&&(g.inputTokens=a[iy.GEN_AI_USAGE_INPUT_TOKENS]||a[iy.AI_USAGE_PROMPT_TOKENS],c=!0),(a[iy.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iy.AI_USAGE_COMPLETION_TOKENS])&&(g.outputTokens=a[iy.GEN_AI_USAGE_OUTPUT_TOKENS]||a[iy.AI_USAGE_COMPLETION_TOKENS],c=!0),a[iy.GEN_AI_USAGE_COST]&&(g.cost=a[iy.GEN_AI_USAGE_COST],c=!0),Object.keys(g).length>0&&(b.usage=g),c?b:null}catch(a){return null}}};iw.register(new ix,10),iw.register(new iz,5);var iA=({attributes:a})=>(0,r.jsx)(q.default,{position:"relative",children:(0,r.jsx)(q.default,{position:"absolute",left:0,right:0,sx:{width:"100%",overflow:"hidden","& .cm-editor":{borderRadius:1,fontSize:"14px",maxWidth:"100%",overflow:"hidden"}},children:(0,r.jsx)(J.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%"})})}),iB=()=>{let{transformedAttributes:a}=(()=>{let{selectedSpan:a}=hA(),b=(0,o.useMemo)(()=>{if(!a?.data?.attributes)return{};try{return JSON.parse(a.data.attributes)}catch{return{}}},[a]),c=(0,o.useMemo)(()=>((a,b)=>{try{return iw.transform(a,b)}catch(b){return a}})(b,a?.data),[b,a?.data]);return{rawAttributes:b,transformedAttributes:c,isLoading:!a}})();return(0,r.jsx)(({children:a})=>(0,r.jsx)(ag.A,{value:"attributes",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),{children:(0,r.jsx)(iA,{attributes:a})})},iC=({children:a})=>(0,r.jsx)(q.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,r.jsx)("code",{children:a})}),iD=({content:a})=>(0,r.jsx)(al.oz,{components:{p:({children:a})=>(0,r.jsx)(j.A,{variant:"body2",sx:{whiteSpace:"pre-wrap",mb:1},children:a}),pre:({children:a})=>(0,r.jsx)(iC,{children:a}),code:a=>(0,r.jsx)(j.A,{component:"code",sx:{fontFamily:"monospace",backgroundColor:"grey.100",p:.5,borderRadius:.5},children:a.children}),strong:({children:a})=>(0,r.jsx)(j.A,{component:"span",sx:{fontWeight:"bold",color:"primary.main"},children:a})},children:a}),iE=({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**:
@@ -6,7 +6,7 @@ ${JSON.stringify(a.args,null,2)}
6
6
  ${JSON.stringify(a.result,null,2)}
7
7
  \`\`\``:a.text||"")(a):`\`\`\`json
8
8
  ${JSON.stringify(a,null,2)}
9
- \`\`\``).join("\n\n"))(a.content);return(0,r.jsxs)(ah.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,r.jsx)(ai.A,{expandIcon:(0,r.jsx)(aE,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,r.jsx)(aE,{icon:"system"===a.role?"mdi:cog":"user"===a.role?"mdi:account":"assistant"===a.role?"mdi:robot":"tool"===a.role?"mdi:tools":"mdi:message"}),(0,r.jsx)(j.A,{fontWeight:700,variant:"body2",children:(a=>{switch(a){case"system":return b("system");case"user":return b("user");case"assistant":return b("assistant");case"tool":return b("tool");default:return a}})(a.role)})]})}),(0,r.jsx)(aj.A,{children:(0,r.jsx)(ja,{content:c})})]})},jc=({prompts:a})=>(0,r.jsx)(q.default,{children:a.map((a,b)=>(0,r.jsx)(jb,{prompt:a},b))}),jd=({outputData:a})=>{let{t:b}=h7(),c=!a?.text&&a?.toolCalls?(a=>{if(!a)return null;try{return JSON.parse(a).map(a=>{let b,c=a.toolName||a.name;if(!c)return null;try{b="string"==typeof a.args?JSON.parse(a.args):a.args||{}}catch{b={}}return`**Tool Call**: \`${c}\`
9
+ \`\`\``).join("\n\n"))(a.content);return(0,r.jsxs)(ai.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,r.jsx)(aj.A,{expandIcon:(0,r.jsx)(aF,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,r.jsx)(aF,{icon:"system"===a.role?"mdi:cog":"user"===a.role?"mdi:account":"assistant"===a.role?"mdi:robot":"tool"===a.role?"mdi:tools":"mdi:message"}),(0,r.jsx)(j.A,{fontWeight:700,variant:"body2",children:(a=>{switch(a){case"system":return b("system");case"user":return b("user");case"assistant":return b("assistant");case"tool":return b("tool");default:return a}})(a.role)})]})}),(0,r.jsx)(ak.A,{children:(0,r.jsx)(iD,{content:c})})]})},iF=({prompts:a})=>(0,r.jsx)(q.default,{children:a.map((a,b)=>(0,r.jsx)(iE,{prompt:a},b))}),iG=({outputData:a})=>{let{t:b}=hA(),c=!a?.text&&a?.toolCalls?(a=>{if(!a)return null;try{return JSON.parse(a).map(a=>{let b,c=a.toolName||a.name;if(!c)return null;try{b="string"==typeof a.args?JSON.parse(a.args):a.args||{}}catch{b={}}return`**Tool Call**: \`${c}\`
10
10
  \`\`\`json
11
11
  ${JSON.stringify(b,null,2)}
12
12
  \`\`\``}).filter(Boolean).join("\n\n")}catch{return null}})(a?.toolCalls):null,d=!a?.text&&!c&&(a?.toolCall?.name||a?.toolCall?.toolName)?(a=>{let b,c=a?.name||a?.toolName;if(!c)return null;try{b="string"==typeof a.args?JSON.parse(a.args):a.args||{}}catch{b={}}let d=null;if(void 0!==a.result)try{d="string"==typeof a.result?JSON.parse(a.result):a.result}catch{d=a.result}let e=`**Tool Call**: \`${c}\`
@@ -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,r.jsxs)(ah.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,r.jsx)(ai.A,{expandIcon:(0,r.jsx)(aE,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,r.jsx)(aE,{icon:h?"mdi:tools":g?"mdi:code-json":"mdi:robot"}),(0,r.jsx)(j.A,{fontWeight:700,variant:"body2",children:b(h?"tool":"assistant")})]})}),(0,r.jsx)(aj.A,{children:f?(0,r.jsx)(ja,{content:f}):(0,r.jsx)(j.A,{variant:"body2",children:b("noOutput")})})]})},je=({outputData:a})=>a?(0,r.jsx)(jd,{outputData:a}):null,jf=()=>{let{prompts:a,outputData:b}=(()=>{let{selectedSpan:a}=h7();return{prompts:(0,o.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,o.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}=i0();return(0,r.jsxs)(af.A,{sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},value:"inputOutput",children:[(0,r.jsx)(jc,{prompts:a}),(0,r.jsx)(je,{outputData:b}),c.data.statusMessage&&(0,r.jsx)(al.A,{severity:"error",sx:{mt:2},children:c.data.statusMessage})]})},jg=({children:a})=>(0,r.jsx)(af.A,{value:"evaluation",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),jh=({name:a,score:b,label:c,reason:d,source:e})=>(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:a||"-"}),(0,r.jsx)(y.A,{children:b}),(0,r.jsx)(y.A,{children:c}),(0,r.jsx)(y.A,{sx:{whiteSpace:"pre-wrap"},children:d}),(0,r.jsx)(y.A,{children:(0,r.jsx)(aa.A,{size:"small",label:e||"eval",variant:"annotation"===e?"filled":"outlined",color:"annotation"===e?"primary":"default"})})]}),ji=(0,o.createContext)(void 0),jj=()=>{let a=(0,o.useContext)(ji);if(!a)throw Error("useEvaluationContext must be used within EvaluationProvider");return a},jk=({children:a,canAddAnnotation:b,scores:c,isLoading:d})=>{let[e,f]=(0,o.useState)(!1);return(0,r.jsx)(ji.Provider,{value:{scores:c,isLoading:d,openAddAnnotationDialog:e,setOpenAddAnnotationDialog:f,canAddAnnotation:b},children:a})},jl=()=>{let{canAddAnnotation:a,isLoading:b,scores:c}=jj(),{t:d}=h7();return!b||c.length>0?null:(0,r.jsxs)(q.default,{children:[(0,r.jsxs)(i.A,{direction:"row",justifyContent:"space-between",alignItems:"center",sx:{mb:1},children:[(0,r.jsx)(q.default,{}),a&&(0,r.jsx)(x.A,{variant:"rounded",width:120,height:32})]}),(0,r.jsx)(L.A,{component:_.A,variant:"outlined",children:(0,r.jsxs)(M.A,{children:[(0,r.jsx)(B.A,{children:(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:d("evaluationName")}),(0,r.jsx)(y.A,{children:d("evaluationScore")}),(0,r.jsx)(y.A,{children:d("evaluationLabel")}),(0,r.jsx)(y.A,{children:d("evaluationReason")}),(0,r.jsx)(y.A,{width:120,children:"Source"})]})}),(0,r.jsx)(N.A,{children:Array.from({length:3}).map((a,b)=>(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"60%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"40%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"50%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"80%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"60%"})})]},b))})]})})]})},jm=({emptyContentImgUrl:a})=>{let{scores:b,isLoading:c}=jj(),{t:d}=h7();return c?(0,r.jsx)(jl,{}):(0,r.jsx)(q.default,{children:(0,r.jsx)(L.A,{component:_.A,variant:"outlined",children:(0,r.jsxs)(M.A,{children:[(0,r.jsx)(B.A,{children:(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:d("evaluationName")}),(0,r.jsx)(y.A,{children:d("evaluationScore")}),(0,r.jsx)(y.A,{children:d("evaluationLabel")}),(0,r.jsx)(y.A,{children:d("evaluationReason")}),(0,r.jsx)(y.A,{width:120,children:"Source"})]})}),(0,r.jsxs)(N.A,{children:[b.map((a,b)=>(0,r.jsx)(jh,{name:a.name,score:a.score,label:a.label,reason:a.reason,source:a.source},b)),(0,r.jsx)(h1,{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")},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,72408)),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},72408:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>I});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);c(31768);var s=c(86841),t=c(77438);let u=({icon:a,width:b=20,sx:c,...e})=>(0,d.jsx)(t.default,{component:s.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...e});var v=c(43163),w=c(94496);let x=c.n(w)(),y=a=>(0,d.jsx)(v.default,{component:x,...a});var z=c(71159),A=c(72396),B=c(72668),C=c(91712);let D={home:"/",requests:"/requests",traces:"/traces",sessions:"/sessions"},E=a=>(0,d.jsx)(u,{icon:a}),F={requests:E("gravity-ui:list-check"),traces:E("oui:apm-trace"),sessions:E("mdi:account-group")},G=(0,A.A)(j.Ay)({width:240,flexShrink:0,boxSizing:"border-box",[`& .${k.A.paper}`]:{width:240,boxSizing:"border-box"}}),H=()=>{let a=(0,B.c)(),b=(0,z.usePathname)(),c={requests:{label:a("requests.title"),icon:F.requests,href:D.requests},traces:{label:a("traces.title"),icon:F.traces,href:D.traces},sessions:{label:a("sessions.title"),icon:F.sessions,href:D.sessions}};return(0,d.jsxs)(G,{variant:"permanent",children:[(0,d.jsx)(h.A,{children:(0,d.jsx)(y,{href:D.home,children:(0,d.jsxs)(l.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,d.jsx)(C.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:y,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))})]})},I=({children:a})=>(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{}),(0,d.jsx)(H,{}),(0,d.jsx)(f,{children:a})]})},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}))},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,r.jsxs)(ai.A,{sx:{backgroundColor:"white"},defaultExpanded:!0,children:[(0,r.jsx)(aj.A,{expandIcon:(0,r.jsx)(aF,{icon:"mdi:chevron-down"}),sx:{"& .MuiAccordionSummary-content":{alignItems:"center"}},children:(0,r.jsxs)(q.default,{sx:{display:"flex",alignItems:"center",gap:1},children:[(0,r.jsx)(aF,{icon:h?"mdi:tools":g?"mdi:code-json":"mdi:robot"}),(0,r.jsx)(j.A,{fontWeight:700,variant:"body2",children:b(h?"tool":"assistant")})]})}),(0,r.jsx)(ak.A,{children:f?(0,r.jsx)(iD,{content:f}):(0,r.jsx)(j.A,{variant:"body2",children:b("noOutput")})})]})},iH=({outputData:a})=>a?(0,r.jsx)(iG,{outputData:a}):null,iI=()=>{let{prompts:a,outputData:b}=(()=>{let{selectedSpan:a}=hA();return{prompts:(0,o.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,o.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}=it();return(0,r.jsxs)(ag.A,{sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},value:"inputOutput",children:[(0,r.jsx)(iF,{prompts:a}),(0,r.jsx)(iH,{outputData:b}),c.data.statusMessage&&(0,r.jsx)(am.A,{severity:"error",sx:{mt:2},children:c.data.statusMessage})]})},iJ=({children:a})=>(0,r.jsx)(ag.A,{value:"evaluation",sx:{height:"100%",overflow:"auto",p:1,"&.MuiTabPanel-root":{padding:1}},children:a}),iK=({name:a,score:b,label:c,reason:d,source:e})=>(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:a||"-"}),(0,r.jsx)(y.A,{children:b}),(0,r.jsx)(y.A,{children:c}),(0,r.jsx)(y.A,{sx:{whiteSpace:"pre-wrap"},children:d}),(0,r.jsx)(y.A,{children:(0,r.jsx)(ab.A,{size:"small",label:e||"eval",variant:"annotation"===e?"filled":"outlined",color:"annotation"===e?"primary":"default"})})]}),iL=(0,o.createContext)(void 0),iM=()=>{let a=(0,o.useContext)(iL);if(!a)throw Error("useEvaluationContext must be used within EvaluationProvider");return a},iN=({children:a,canAddAnnotation:b,scores:c,isLoading:d})=>{let[e,f]=(0,o.useState)(!1);return(0,r.jsx)(iL.Provider,{value:{scores:c,isLoading:d,openAddAnnotationDialog:e,setOpenAddAnnotationDialog:f,canAddAnnotation:b},children:a})},iO=()=>{let{canAddAnnotation:a,isLoading:b,scores:c}=iM(),{t:d}=hA();return!b||c.length>0?null:(0,r.jsxs)(q.default,{children:[(0,r.jsxs)(i.A,{direction:"row",justifyContent:"space-between",alignItems:"center",sx:{mb:1},children:[(0,r.jsx)(q.default,{}),a&&(0,r.jsx)(x.A,{variant:"rounded",width:120,height:32})]}),(0,r.jsx)(L.A,{component:aa.A,variant:"outlined",children:(0,r.jsxs)(M.A,{children:[(0,r.jsx)(B.A,{children:(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:d("evaluationName")}),(0,r.jsx)(y.A,{children:d("evaluationScore")}),(0,r.jsx)(y.A,{children:d("evaluationLabel")}),(0,r.jsx)(y.A,{children:d("evaluationReason")}),(0,r.jsx)(y.A,{width:120,children:"Source"})]})}),(0,r.jsx)(N.A,{children:Array.from({length:3}).map((a,b)=>(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"60%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"40%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"50%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"80%"})}),(0,r.jsx)(y.A,{children:(0,r.jsx)(x.A,{variant:"text",width:"60%"})})]},b))})]})})]})},iP=({emptyContentImgUrl:a})=>{let{scores:b,isLoading:c}=iM(),{t:d}=hA();return c?(0,r.jsx)(iO,{}):(0,r.jsx)(q.default,{children:(0,r.jsx)(L.A,{component:aa.A,variant:"outlined",children:(0,r.jsxs)(M.A,{children:[(0,r.jsx)(B.A,{children:(0,r.jsxs)(z.A,{children:[(0,r.jsx)(y.A,{children:d("evaluationName")}),(0,r.jsx)(y.A,{children:d("evaluationScore")}),(0,r.jsx)(y.A,{children:d("evaluationLabel")}),(0,r.jsx)(y.A,{children:d("evaluationReason")}),(0,r.jsx)(y.A,{width:120,children:"Source"})]})}),(0,r.jsxs)(N.A,{children:[b.map((a,b)=>(0,r.jsx)(iK,{name:a.name,score:a.score,label:a.label,reason:a.reason,source:a.source},b)),(0,r.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")},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,72408)),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},72408:(a,b,c)=>{"use strict";c.d(b,{Layout:()=>I});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);c(31768);var s=c(86841),t=c(77438);let u=({icon:a,width:b=20,sx:c,...e})=>(0,d.jsx)(t.default,{component:s.Icon,className:"component-iconify",icon:a,sx:{width:b,height:b,...c},...e});var v=c(43163),w=c(94496);let x=c.n(w)(),y=a=>(0,d.jsx)(v.default,{component:x,...a});var z=c(71159),A=c(72396),B=c(72668),C=c(91712);let D={home:"/",requests:"/requests",traces:"/traces",sessions:"/sessions"},E=a=>(0,d.jsx)(u,{icon:a}),F={requests:E("gravity-ui:list-check"),traces:E("oui:apm-trace"),sessions:E("mdi:account-group")},G=(0,A.A)(j.Ay)({width:240,flexShrink:0,boxSizing:"border-box",[`& .${k.A.paper}`]:{width:240,boxSizing:"border-box"}}),H=()=>{let a=(0,B.c)(),b=(0,z.usePathname)(),c={requests:{label:a("requests.title"),icon:F.requests,href:D.requests},traces:{label:a("traces.title"),icon:F.traces,href:D.traces},sessions:{label:a("sessions.title"),icon:F.sessions,href:D.sessions}};return(0,d.jsxs)(G,{variant:"permanent",children:[(0,d.jsx)(h.A,{children:(0,d.jsx)(y,{href:D.home,children:(0,d.jsxs)(l.A,{direction:"row",alignItems:"center",spacing:1,children:[(0,d.jsx)(C.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:y,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))})]})},I=({children:a})=>(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(i,{}),(0,d.jsx)(H,{}),(0,d.jsx)(f,{children:a})]})},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}))},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")}};